uview-plus 3.8.55 → 3.8.106

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 (229) hide show
  1. package/changelog.md +2147 -1828
  2. package/components/u-action-sheet/props.js +3 -1
  3. package/components/u-action-sheet/u-action-sheet.vue +22 -2
  4. package/components/u-album/props.js +3 -1
  5. package/components/u-alert/props.js +4 -2
  6. package/components/u-avatar/props.js +4 -1
  7. package/components/u-avatar-group/props.js +4 -1
  8. package/components/u-back-top/props.js +4 -1
  9. package/components/u-badge/props.js +4 -1
  10. package/components/u-barcode/u-barcode.vue +44 -15
  11. package/components/u-box/props.js +5 -2
  12. package/components/u-button/props.js +4 -1
  13. package/components/u-button/u-button.vue +2 -5
  14. package/components/u-button/vue.scss +3 -3
  15. package/components/u-calendar/calendar.js +8 -0
  16. package/components/u-calendar/props.js +43 -1
  17. package/components/u-calendar/u-calendar.vue +16 -0
  18. package/components/u-calendar-strip/props.js +3 -1
  19. package/components/u-canvas/u-canvas.vue +1028 -423
  20. package/components/u-car-keyboard/props.js +3 -1
  21. package/components/u-card/props.js +3 -1
  22. package/components/u-cell/props.js +4 -1
  23. package/components/u-cell/u-cell.vue +9 -1
  24. package/components/u-cell-group/props.js +4 -1
  25. package/components/u-checkbox/props.js +4 -1
  26. package/components/u-checkbox/u-checkbox.vue +7 -3
  27. package/components/u-checkbox-group/props.js +3 -1
  28. package/components/u-circle-progress/props.js +4 -1
  29. package/components/u-code/props.js +4 -1
  30. package/components/u-code-input/props.js +4 -1
  31. package/components/u-col/props.js +4 -1
  32. package/components/u-collapse/props.js +4 -1
  33. package/components/u-collapse-item/props.js +4 -1
  34. package/components/u-color-picker/u-color-picker.vue +1 -0
  35. package/components/u-column-notice/props.js +4 -1
  36. package/components/u-count-down/props.js +4 -1
  37. package/components/u-count-to/props.js +4 -1
  38. package/components/u-cropper/u-cropper.vue +95 -51
  39. package/components/u-datetime-picker/props.js +4 -1
  40. package/components/u-datetime-picker/u-datetime-picker.vue +53 -4
  41. package/components/u-divider/props.js +4 -1
  42. package/components/u-dragsort/u-dragsort.vue +57 -32
  43. package/components/u-dropdown/props.js +3 -1
  44. package/components/u-dropdown-item/props.js +3 -1
  45. package/components/u-empty/props.js +4 -1
  46. package/components/u-form/props.js +4 -1
  47. package/components/u-form-item/props.js +4 -1
  48. package/components/u-gap/props.js +4 -1
  49. package/components/u-grid/props.js +4 -1
  50. package/components/u-grid-item/props.js +4 -1
  51. package/components/u-guide/props.js +3 -1
  52. package/components/u-icon/props.js +4 -1
  53. package/components/u-icon/u-icon.vue +11 -2
  54. package/components/u-icon/upicon.ttf +0 -0
  55. package/components/u-icon/util.js +103 -10
  56. package/components/u-image/props.js +4 -1
  57. package/components/u-image/u-image.vue +280 -267
  58. package/components/u-index-anchor/props.js +4 -1
  59. package/components/u-index-item/props.js +2 -1
  60. package/components/u-index-item/u-index-item.vue +1 -1
  61. package/components/u-index-list/props.js +4 -1
  62. package/components/u-index-list/u-index-list.vue +1 -1
  63. package/components/u-input/props.js +3 -1
  64. package/components/u-keyboard/props.js +4 -1
  65. package/components/u-line/props.js +4 -1
  66. package/components/u-line-progress/props.js +6 -3
  67. package/components/u-link/props.js +4 -1
  68. package/components/u-list/props.js +4 -1
  69. package/components/u-list-item/props.js +4 -1
  70. package/components/u-loading-icon/props.js +4 -1
  71. package/components/u-loading-page/props.js +3 -1
  72. package/components/u-loadmore/props.js +4 -1
  73. package/components/u-markdown/u-markdown.vue +45 -3
  74. package/components/u-modal/props.js +4 -1
  75. package/components/u-navbar/props.js +4 -2
  76. package/components/u-navbar/u-navbar.vue +15 -9
  77. package/components/u-no-network/props.js +4 -1
  78. package/components/u-notice-bar/props.js +4 -1
  79. package/components/u-notify/props.js +4 -1
  80. package/components/u-novel-reader/content-normalizer.js +80 -0
  81. package/components/u-novel-reader/layout-engine.js +225 -0
  82. package/components/u-novel-reader/measure-adapter.js +69 -0
  83. package/components/u-novel-reader/novelReader.js +35 -0
  84. package/components/u-novel-reader/persistence.js +144 -0
  85. package/components/u-novel-reader/props.js +100 -0
  86. package/components/u-novel-reader/reader-catalog.vue +234 -0
  87. package/components/u-novel-reader/reader-content.vue +226 -0
  88. package/components/u-novel-reader/reader-core.js +151 -0
  89. package/components/u-novel-reader/reader-settings.vue +325 -0
  90. package/components/u-novel-reader/reader-toolbar.vue +313 -0
  91. package/components/u-novel-reader/theme-vars.scss +49 -0
  92. package/components/u-novel-reader/u-novel-reader.vue +836 -0
  93. package/components/u-number-box/props.js +4 -1
  94. package/components/u-number-box/u-number-box.vue +2 -2
  95. package/components/u-number-keyboard/props.js +4 -1
  96. package/components/u-overlay/props.js +4 -1
  97. package/components/u-pagination/u-pagination.vue +60 -39
  98. package/components/u-parse/props.js +4 -1
  99. package/components/u-picker/props.js +4 -1
  100. package/components/u-picker-column/props.js +3 -1
  101. package/components/u-popover/props.js +2 -1
  102. package/components/u-popup/props.js +4 -1
  103. package/components/u-poster/u-poster.vue +246 -214
  104. package/components/u-qrcode/qrcode.js +105 -97
  105. package/components/u-qrcode/u-qrcode.vue +242 -289
  106. package/components/u-radio/props.js +4 -1
  107. package/components/u-radio/u-radio.vue +7 -3
  108. package/components/u-radio-group/props.js +4 -1
  109. package/components/u-rate/props.js +4 -1
  110. package/components/u-read-more/props.js +4 -1
  111. package/components/u-row/props.js +4 -1
  112. package/components/u-row-notice/props.js +4 -1
  113. package/components/u-safe-bottom/props.js +2 -1
  114. package/components/u-scroll-list/props.js +4 -1
  115. package/components/u-scroll-list/scrollWxs.wxs +1 -1
  116. package/components/u-search/props.js +3 -1
  117. package/components/u-skeleton/props.js +4 -1
  118. package/components/u-slider/props.js +3 -1
  119. package/components/u-slider/u-slider.vue +71 -29
  120. package/components/u-status-bar/props.js +4 -1
  121. package/components/u-steps/props.js +4 -1
  122. package/components/u-steps-item/props.js +4 -1
  123. package/components/u-sticky/props.js +4 -1
  124. package/components/u-sticky/u-sticky.vue +11 -0
  125. package/components/u-subsection/props.js +3 -1
  126. package/components/u-swipe-action/props.js +4 -1
  127. package/components/u-swipe-action-item/index.wxs +43 -25
  128. package/components/u-swipe-action-item/nvue.js +9 -0
  129. package/components/u-swipe-action-item/other.js +32 -21
  130. package/components/u-swipe-action-item/props.js +9 -1
  131. package/components/u-swipe-action-item/swipeActionItem.js +1 -0
  132. package/components/u-swipe-action-item/u-swipe-action-item.vue +42 -4
  133. package/components/u-swiper/props.js +9 -1
  134. package/components/u-swiper/swiper.js +1 -0
  135. package/components/u-swiper/u-swiper.vue +2 -0
  136. package/components/u-swiper-indicator/props.js +4 -1
  137. package/components/u-switch/props.js +4 -1
  138. package/components/u-switch/u-switch.vue +1 -1
  139. package/components/u-tabbar/props.js +3 -1
  140. package/components/u-tabbar/u-tabbar.vue +2 -1
  141. package/components/u-tabbar-item/props.js +4 -1
  142. package/components/u-tabbar-item/u-tabbar-item.vue +64 -21
  143. package/components/u-table/props.js +3 -1
  144. package/components/u-table2/tableRow.vue +155 -69
  145. package/components/u-table2/u-table2.vue +327 -137
  146. package/components/u-tabs/props.js +4 -1
  147. package/components/u-tabs/u-tabs.vue +11 -8
  148. package/components/u-tabs-item/props.js +3 -1
  149. package/components/u-tabs-pro/u-tabs-pro.vue +212 -0
  150. package/components/u-tag/props.js +4 -1
  151. package/components/u-td/props.js +3 -1
  152. package/components/u-text/props.js +4 -1
  153. package/components/u-text/text.js +1 -1
  154. package/components/u-text/u-text.vue +18 -6
  155. package/components/u-textarea/props.js +3 -1
  156. package/components/u-textarea/u-textarea.vue +16 -5
  157. package/components/u-th/props.js +3 -1
  158. package/components/u-toolbar/props.js +4 -1
  159. package/components/u-tooltip/props.js +10 -2
  160. package/components/u-tooltip/tooltip.js +2 -1
  161. package/components/u-tooltip/u-tooltip.vue +31 -3
  162. package/components/u-tr/props.js +3 -1
  163. package/components/u-transition/nvue-ani-map.js +75 -68
  164. package/components/u-transition/props.js +4 -1
  165. package/components/u-transition/transitionMixin.js +164 -163
  166. package/components/u-upload/props.js +4 -1
  167. package/components/u-upload/u-upload.vue +48 -41
  168. package/components/u-waterfall/u-waterfall.vue +162 -110
  169. package/index.js +65 -8
  170. package/libs/config/config.js +1 -1
  171. package/libs/config/props.js +180 -204
  172. package/libs/css/components.scss +3 -0
  173. package/libs/function/index.js +66 -0
  174. package/libs/function/uni-api-shims.js +29 -0
  175. package/libs/i18n/index.js +71 -36
  176. package/libs/i18n/locale-packs.js +11 -0
  177. package/libs/i18n/locales/all.js +23 -0
  178. package/libs/i18n/locales/{de.json → de.js} +1 -1
  179. package/libs/i18n/locales/{en.json → en.js} +2 -2
  180. package/libs/i18n/locales/{es.json → es.js} +1 -1
  181. package/libs/i18n/locales/{fr.json → fr.js} +2 -2
  182. package/libs/i18n/locales/{ja.json → ja.js} +1 -1
  183. package/libs/i18n/locales/{ko.json → ko.js} +1 -1
  184. package/libs/i18n/locales/{ru.json → ru.js} +1 -1
  185. package/libs/i18n/locales/{th.json → th.js} +1 -1
  186. package/libs/i18n/locales/{zh-Hans.json → zh-Hans.js} +1 -1
  187. package/libs/i18n/locales/{zh-Hant.json → zh-Hant.js} +1 -1
  188. package/libs/mixin/mixin.js +18 -54
  189. package/libs/root/index.js +78 -5
  190. package/libs/root/page.js +7 -7
  191. package/libs/root/root.js +73 -3
  192. package/libs/util/app-nvue-webview-canvas.js +486 -0
  193. package/libs/util/gcanvas/bridge/bridge-weex.js +10 -7
  194. package/libs/util/gcanvas/context-2d/FillStyleLinearGradient.js +0 -0
  195. package/libs/util/gcanvas/context-2d/FillStylePattern.js +0 -0
  196. package/libs/util/gcanvas/context-2d/FillStyleRadialGradient.js +0 -0
  197. package/libs/util/gcanvas/context-2d/RenderingContext.js +0 -0
  198. package/libs/util/gcanvas/context-webgl/ActiveInfo.js +0 -0
  199. package/libs/util/gcanvas/context-webgl/Buffer.js +0 -0
  200. package/libs/util/gcanvas/context-webgl/Framebuffer.js +0 -0
  201. package/libs/util/gcanvas/context-webgl/GLenum.js +0 -0
  202. package/libs/util/gcanvas/context-webgl/GLmethod.js +0 -0
  203. package/libs/util/gcanvas/context-webgl/GLtype.js +0 -0
  204. package/libs/util/gcanvas/context-webgl/Program.js +0 -0
  205. package/libs/util/gcanvas/context-webgl/Renderbuffer.js +0 -0
  206. package/libs/util/gcanvas/context-webgl/RenderingContext.js +0 -0
  207. package/libs/util/gcanvas/context-webgl/Shader.js +0 -0
  208. package/libs/util/gcanvas/context-webgl/ShaderPrecisionFormat.js +0 -0
  209. package/libs/util/gcanvas/context-webgl/Texture.js +0 -0
  210. package/libs/util/gcanvas/context-webgl/UniformLocation.js +0 -0
  211. package/libs/util/gcanvas/context-webgl/classUtils.js +0 -0
  212. package/libs/util/gcanvas/env/canvas.js +0 -0
  213. package/libs/util/gcanvas/env/image.js +0 -0
  214. package/libs/util/gcanvas/env/tool.js +0 -0
  215. package/libs/util/gcanvas/index.js +3 -3
  216. package/package.json +4 -5
  217. package/tsconfig.json +18 -0
  218. package/types/comps/calendar.d.ts +38 -0
  219. package/types/comps/checkbox.d.ts +12 -0
  220. package/types/comps/lineProgress.d.ts +5 -0
  221. package/types/comps/navbar.d.ts +3 -3
  222. package/types/comps/swipeActionItem.d.ts +13 -0
  223. package/types/comps/swiper.d.ts +5 -0
  224. package/types/comps/tabs.d.ts +2 -1
  225. package/types/comps/text.d.ts +1 -1
  226. package/types/comps/tooltip.d.ts +36 -1
  227. package/types/func.d.ts +23 -0
  228. package/types/index.d.ts +1 -0
  229. /package/components/u-markdown/{marked.esm.js → marked.esm.mjs} +0 -0
@@ -0,0 +1,313 @@
1
+ <template>
2
+ <view
3
+ class="up-novel-reader__toolbar"
4
+ :class="[
5
+ `up-novel-reader__toolbar--${position}`,
6
+ { 'is-dark': isDark }
7
+ ]"
8
+ :style="toolbarStyle"
9
+ @tap.stop="handleToggleControls"
10
+ >
11
+ <view v-if="position === 'top'" class="up-novel-reader__toolbar-row">
12
+ <view class="up-novel-reader__toolbar-group">
13
+ <view
14
+ v-if="showBack"
15
+ class="up-novel-reader__toolbar-button"
16
+ hover-class="up-novel-reader__toolbar-button--hover"
17
+ @tap.stop="handleBack"
18
+ >
19
+ <u-icon :name="backIcon" size="21" :color="textColor"></u-icon>
20
+ </view>
21
+ <text class="up-novel-reader__toolbar-title">{{ title || '小说阅读' }}</text>
22
+ </view>
23
+ <view class="up-novel-reader__toolbar-group">
24
+ <slot name="top"></slot>
25
+ <view
26
+ class="up-novel-reader__toolbar-button"
27
+ hover-class="up-novel-reader__toolbar-button--hover"
28
+ @tap.stop="handleToggleCatalog"
29
+ >
30
+ <u-icon name="list" size="20" :color="textColor"></u-icon>
31
+ </view>
32
+ <view
33
+ class="up-novel-reader__toolbar-button"
34
+ hover-class="up-novel-reader__toolbar-button--hover"
35
+ @tap.stop="handleToggleBookmark"
36
+ >
37
+ <u-icon
38
+ name="bookmark"
39
+ size="20"
40
+ :color="isBookmarked ? activeColor : textColor"
41
+ :bold="isBookmarked"
42
+ ></u-icon>
43
+ </view>
44
+ <slot name="toolbar-extra"></slot>
45
+ <view
46
+ class="up-novel-reader__toolbar-button"
47
+ hover-class="up-novel-reader__toolbar-button--hover"
48
+ @tap.stop="handleToggleControls"
49
+ >
50
+ <u-icon name="close" size="19" :color="textColor"></u-icon>
51
+ </view>
52
+ </view>
53
+ </view>
54
+ <view v-else class="up-novel-reader__toolbar-row up-novel-reader__toolbar-row--bottom">
55
+ <view class="up-novel-reader__progress">
56
+ <text class="up-novel-reader__progress-label">{{ progressLabel }}</text>
57
+ <view class="up-novel-reader__progress-track">
58
+ <view class="up-novel-reader__progress-value" :style="{ width: `${progressPercent}%` }"></view>
59
+ </view>
60
+ </view>
61
+ <view class="up-novel-reader__toolbar-group">
62
+ <slot name="bottom"></slot>
63
+ <view
64
+ class="up-novel-reader__toolbar-button"
65
+ :class="{ 'is-disabled': previousDisabled }"
66
+ hover-class="up-novel-reader__toolbar-button--hover"
67
+ @tap.stop="handlePrevious"
68
+ >
69
+ <u-icon name="arrow-left" size="18" :color="previousDisabled ? disabledColor : textColor"></u-icon>
70
+ </view>
71
+ <view
72
+ class="up-novel-reader__toolbar-button"
73
+ :class="{ 'is-disabled': nextDisabled }"
74
+ hover-class="up-novel-reader__toolbar-button--hover"
75
+ @tap.stop="handleNext"
76
+ >
77
+ <u-icon name="arrow-right" size="18" :color="nextDisabled ? disabledColor : textColor"></u-icon>
78
+ </view>
79
+ <view
80
+ class="up-novel-reader__toolbar-button"
81
+ hover-class="up-novel-reader__toolbar-button--hover"
82
+ @tap.stop="handleToggleSettings"
83
+ >
84
+ <u-icon name="setting" size="20" :color="textColor"></u-icon>
85
+ </view>
86
+ </view>
87
+ </view>
88
+ </view>
89
+ </template>
90
+
91
+ <script>
92
+ export default {
93
+ name: 'NovelReaderToolbar',
94
+ props: {
95
+ position: {
96
+ type: String,
97
+ default: 'top'
98
+ },
99
+ title: {
100
+ type: String,
101
+ default: ''
102
+ },
103
+ showBack: {
104
+ type: Boolean,
105
+ default: true
106
+ },
107
+ backIcon: {
108
+ type: String,
109
+ default: 'arrow-left'
110
+ },
111
+ isBookmarked: {
112
+ type: Boolean,
113
+ default: false
114
+ },
115
+ progress: {
116
+ type: Object,
117
+ default: () => ({})
118
+ },
119
+ pageCount: {
120
+ type: Number,
121
+ default: 0
122
+ },
123
+ currentChapterIndex: {
124
+ type: Number,
125
+ default: -1
126
+ },
127
+ chapterCount: {
128
+ type: Number,
129
+ default: 0
130
+ },
131
+ hasPrevious: {
132
+ type: Boolean,
133
+ default: false
134
+ },
135
+ hasNext: {
136
+ type: Boolean,
137
+ default: false
138
+ },
139
+ themeTokens: {
140
+ type: Object,
141
+ default: () => ({})
142
+ }
143
+ },
144
+ emits: [
145
+ 'back',
146
+ 'toggle-catalog',
147
+ 'toggle-settings',
148
+ 'toggle-bookmark',
149
+ 'previous',
150
+ 'next',
151
+ 'toggle-controls'
152
+ ],
153
+ computed: {
154
+ isDark() {
155
+ return ['night', 'dark'].includes(this.themeTokens.theme)
156
+ },
157
+ textColor() {
158
+ return this.themeTokens.text || '#303133'
159
+ },
160
+ activeColor() {
161
+ return this.themeTokens.active || '#2979ff'
162
+ },
163
+ disabledColor() {
164
+ return this.themeTokens.disabled || '#c8c9cc'
165
+ },
166
+ toolbarStyle() {
167
+ return {
168
+ backgroundColor: this.themeTokens.toolbar || '#ffffff',
169
+ borderColor: this.themeTokens.border || 'rgba(48, 49, 51, 0.12)'
170
+ }
171
+ },
172
+ progressPercent() {
173
+ if (this.progress.chapterProgress != null) {
174
+ return Math.min(100, Math.max(0, Number(this.progress.chapterProgress) * 100 || 0))
175
+ }
176
+ if (this.pageCount > 0) {
177
+ return Math.min(100, Math.max(0, ((this.progress.pageIndex || 0) + 1) / this.pageCount * 100))
178
+ }
179
+ return 0
180
+ },
181
+ progressLabel() {
182
+ const current = this.currentChapterIndex >= 0 ? this.currentChapterIndex + 1 : 0
183
+ const chapterText = this.chapterCount ? `${current}/${this.chapterCount}` : '阅读进度'
184
+ const percentText = `${Math.round(this.progressPercent)}%`
185
+ return `${chapterText} · ${percentText}`
186
+ },
187
+ previousDisabled() {
188
+ return !this.hasPrevious
189
+ },
190
+ nextDisabled() {
191
+ return !this.hasNext
192
+ }
193
+ },
194
+ methods: {
195
+ handleBack() {
196
+ this.$emit('back')
197
+ },
198
+ handleToggleCatalog() {
199
+ this.$emit('toggle-catalog')
200
+ },
201
+ handleToggleSettings() {
202
+ this.$emit('toggle-settings')
203
+ },
204
+ handleToggleBookmark() {
205
+ this.$emit('toggle-bookmark')
206
+ },
207
+ handlePrevious() {
208
+ if (!this.previousDisabled) this.$emit('previous')
209
+ },
210
+ handleNext() {
211
+ if (!this.nextDisabled) this.$emit('next')
212
+ },
213
+ handleToggleControls() {
214
+ this.$emit('toggle-controls')
215
+ }
216
+ }
217
+ }
218
+ </script>
219
+
220
+ <style lang="scss" scoped>
221
+ .up-novel-reader__toolbar {
222
+ box-sizing: border-box;
223
+ width: 100%;
224
+ padding: 10px 14px;
225
+ border-bottom-width: 1px;
226
+ border-bottom-style: solid;
227
+ }
228
+
229
+ .up-novel-reader__toolbar--bottom {
230
+ border-top-width: 1px;
231
+ border-top-style: solid;
232
+ border-bottom: 0;
233
+ padding-top: 8px;
234
+ padding-bottom: 8px;
235
+ }
236
+
237
+ .up-novel-reader__toolbar-row {
238
+ display: flex;
239
+ flex-direction: row;
240
+ align-items: center;
241
+ justify-content: space-between;
242
+ min-height: 36px;
243
+ }
244
+
245
+ .up-novel-reader__toolbar-row--bottom {
246
+ gap: 12px;
247
+ }
248
+
249
+ .up-novel-reader__toolbar-group {
250
+ display: flex;
251
+ flex-direction: row;
252
+ align-items: center;
253
+ min-width: 0;
254
+ gap: 6px;
255
+ }
256
+
257
+ .up-novel-reader__toolbar-title {
258
+ max-width: 200px;
259
+ overflow: hidden;
260
+ color: inherit;
261
+ font-size: 16px;
262
+ font-weight: 600;
263
+ text-overflow: ellipsis;
264
+ white-space: nowrap;
265
+ }
266
+
267
+ .up-novel-reader__toolbar-button {
268
+ display: flex;
269
+ flex-direction: row;
270
+ align-items: center;
271
+ justify-content: center;
272
+ width: 36px;
273
+ height: 36px;
274
+ border-radius: 18px;
275
+ }
276
+
277
+ .up-novel-reader__toolbar-button--hover {
278
+ opacity: 0.55;
279
+ background-color: rgba(127, 127, 127, 0.12);
280
+ }
281
+
282
+ .up-novel-reader__toolbar-button.is-disabled {
283
+ opacity: 0.5;
284
+ }
285
+
286
+ .up-novel-reader__progress {
287
+ flex: 1;
288
+ min-width: 0;
289
+ }
290
+
291
+ .up-novel-reader__progress-label {
292
+ display: block;
293
+ margin-bottom: 5px;
294
+ color: inherit;
295
+ font-size: 11px;
296
+ line-height: 16px;
297
+ opacity: 0.78;
298
+ }
299
+
300
+ .up-novel-reader__progress-track {
301
+ width: 100%;
302
+ height: 3px;
303
+ overflow: hidden;
304
+ border-radius: 3px;
305
+ background-color: rgba(127, 127, 127, 0.22);
306
+ }
307
+
308
+ .up-novel-reader__progress-value {
309
+ height: 100%;
310
+ border-radius: 3px;
311
+ background-color: var(--up-novel-reader-active, #2979ff);
312
+ }
313
+ </style>
@@ -0,0 +1,49 @@
1
+ .up-novel-reader.theme-day {
2
+ --up-novel-reader-background: #f7f8fa;
3
+ --up-novel-reader-text: #303133;
4
+ --up-novel-reader-muted: #909399;
5
+ --up-novel-reader-toolbar: #ffffff;
6
+ --up-novel-reader-border: rgba(48, 49, 51, 0.12);
7
+ --up-novel-reader-active: #2979ff;
8
+ --up-novel-reader-disabled: #c8c9cc;
9
+ }
10
+
11
+ .up-novel-reader.theme-paper {
12
+ --up-novel-reader-background: #f3ead7;
13
+ --up-novel-reader-text: #51483d;
14
+ --up-novel-reader-muted: #8f806d;
15
+ --up-novel-reader-toolbar: #f7efdf;
16
+ --up-novel-reader-border: rgba(81, 72, 61, 0.16);
17
+ --up-novel-reader-active: #9b7653;
18
+ --up-novel-reader-disabled: #c7b9a3;
19
+ }
20
+
21
+ .up-novel-reader.theme-green {
22
+ --up-novel-reader-background: #e7f1e4;
23
+ --up-novel-reader-text: #3f5140;
24
+ --up-novel-reader-muted: #708371;
25
+ --up-novel-reader-toolbar: #eef6eb;
26
+ --up-novel-reader-border: rgba(63, 81, 64, 0.16);
27
+ --up-novel-reader-active: #4d8b55;
28
+ --up-novel-reader-disabled: #b6c7b4;
29
+ }
30
+
31
+ .up-novel-reader.theme-night {
32
+ --up-novel-reader-background: #202124;
33
+ --up-novel-reader-text: #d6d7da;
34
+ --up-novel-reader-muted: #9ca0a8;
35
+ --up-novel-reader-toolbar: #292b30;
36
+ --up-novel-reader-border: rgba(214, 215, 218, 0.16);
37
+ --up-novel-reader-active: #7da7ff;
38
+ --up-novel-reader-disabled: #62656d;
39
+ }
40
+
41
+ .up-novel-reader.theme-dark {
42
+ --up-novel-reader-background: #111214;
43
+ --up-novel-reader-text: #e5e7eb;
44
+ --up-novel-reader-muted: #9ca3af;
45
+ --up-novel-reader-toolbar: #1b1d21;
46
+ --up-novel-reader-border: rgba(229, 231, 235, 0.16);
47
+ --up-novel-reader-active: #8ab4ff;
48
+ --up-novel-reader-disabled: #5f6368;
49
+ }