dashboard-shell-shell 3.0.5-test.5 → 3.0.5-test.6

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 (212) hide show
  1. package/assets/brand/harvester/favicon.png +0 -0
  2. package/assets/brand/suse/favicon.png +0 -0
  3. package/assets/images/pl/half-logo.svg +23 -2
  4. package/assets/images/pl/harvester.png +0 -0
  5. package/assets/styles/app.scss +0 -4
  6. package/assets/styles/base/_basic.scss +2 -2
  7. package/assets/styles/base/_mixins.scss +1 -1
  8. package/assets/styles/base/_typography.scss +1 -2
  9. package/assets/styles/base/_variables.scss +4 -11
  10. package/assets/styles/global/_button.scss +25 -43
  11. package/assets/styles/global/_columns.scss +1 -3
  12. package/assets/styles/global/_form.scss +13 -45
  13. package/assets/styles/global/_labeled-input.scss +26 -54
  14. package/assets/styles/global/_layout.scss +3 -8
  15. package/assets/styles/global/_select.scss +17 -25
  16. package/assets/styles/global/_table.scss +1 -7
  17. package/assets/styles/global/_tooltip.scss +8 -56
  18. package/assets/styles/themes/_dark.scss +0 -3
  19. package/assets/styles/themes/_light.scss +43 -66
  20. package/assets/styles/vendor/vue-select.scss +9 -22
  21. package/assets/translations/en-us.yaml +4 -28
  22. package/assets/translations/zh-hans.yaml +189 -452
  23. package/components/ActionDropdown.vue +1 -2
  24. package/components/ActionMenu.vue +2 -2
  25. package/components/ActionMenuShell.vue +0 -2
  26. package/components/AppModal.vue +5 -46
  27. package/components/BrandImage.vue +0 -1
  28. package/components/ButtonDropdown.vue +4 -26
  29. package/components/ButtonMultiAction.vue +0 -1
  30. package/components/ClusterIconMenu.vue +1 -1
  31. package/components/CodeMirror.vue +6 -20
  32. package/components/ConsumptionGauge.vue +5 -24
  33. package/components/CopyToClipboard.vue +0 -15
  34. package/components/CruResource.vue +8 -9
  35. package/components/CruResourceFooter.vue +2 -2
  36. package/components/DashboardOptions.vue +17 -29
  37. package/components/Drawer/Chrome.vue +2 -2
  38. package/components/Drawer/ResourceDetailDrawer/ConfigTab.vue +23 -23
  39. package/components/Drawer/ResourceDetailDrawer/index.vue +2 -2
  40. package/components/ExplorerMembers.vue +3 -18
  41. package/components/ExplorerProjectsNamespaces.vue +5 -19
  42. package/components/GlobalRoleBindings.vue +48 -112
  43. package/components/GrafanaDashboard.vue +4 -4
  44. package/components/GrowlManager.vue +1 -3
  45. package/components/HardwareResourceGauge.vue +3 -39
  46. package/components/IndentedPanel.vue +10 -4
  47. package/components/InfoBox.vue +3 -3
  48. package/components/InputOrDisplay.vue +2 -28
  49. package/components/LabelValue.vue +1 -20
  50. package/components/ModalWithCard.vue +3 -12
  51. package/components/PodSecurityAdmission.vue +1 -1
  52. package/components/PromptModal.vue +1 -1
  53. package/components/PromptRemove.vue +11 -30
  54. package/components/Resource/Detail/Metadata/IdentifyingInformation/index.vue +3 -1
  55. package/components/Resource/Detail/Metadata/KeyValue.vue +4 -8
  56. package/components/Resource/Detail/Metadata/index.vue +1 -2
  57. package/components/Resource/Detail/TitleBar/Title.vue +3 -4
  58. package/components/Resource/Detail/TitleBar/index.vue +24 -103
  59. package/components/ResourceDetail/Masthead/legacy.vue +38 -181
  60. package/components/ResourceDetail/legacy.vue +14 -32
  61. package/components/ResourceList/Masthead.vue +54 -226
  62. package/components/ResourceList/ResourceLoadingIndicator.vue +2 -5
  63. package/components/ResourceTable.vue +2 -24
  64. package/components/SideNav.vue +20 -74
  65. package/components/SortableTable/THead.vue +3 -33
  66. package/components/SortableTable/index.vue +464 -1017
  67. package/components/SortableTable/paging.js +16 -26
  68. package/components/SortableTable/selection.js +2 -2
  69. package/components/Tabbed/Tab.vue +3 -3
  70. package/components/Tabbed/index.vue +30 -48
  71. package/components/YamlEditor.vue +1 -0
  72. package/components/auth/Principal.vue +13 -37
  73. package/components/auth/RoleDetailEdit.vue +7 -58
  74. package/components/auth/SelectPrincipal.vue +0 -1
  75. package/components/form/ArrayList.vue +33 -41
  76. package/components/form/ArrayListGrouped.vue +2 -10
  77. package/components/form/ArrayListSelect.vue +1 -1
  78. package/components/form/BannerSettings.vue +59 -64
  79. package/components/form/ChangePassword.vue +4 -4
  80. package/components/form/ColorInput.vue +8 -32
  81. package/components/form/Footer.vue +8 -11
  82. package/components/form/InputWithSelect.vue +5 -8
  83. package/components/form/KeyValue.vue +7 -47
  84. package/components/form/LabeledSelect.vue +242 -214
  85. package/components/form/Labels.vue +3 -3
  86. package/components/form/MatchExpressions.vue +7 -24
  87. package/components/form/Members/ClusterPermissionsEditor.vue +2 -1
  88. package/components/form/Members/MembershipEditor.vue +1 -1
  89. package/components/form/NameNsDescription.vue +20 -59
  90. package/components/form/Password.vue +7 -16
  91. package/components/form/PodAffinity.vue +5 -4
  92. package/components/form/ResourceQuota/Namespace.vue +4 -4
  93. package/components/form/ResourceQuota/NamespaceRow.vue +17 -18
  94. package/components/form/ResourceQuota/Project.vue +4 -4
  95. package/components/form/ResourceQuota/ProjectRow.vue +6 -3
  96. package/components/form/Select.vue +2 -5
  97. package/components/form/SimpleSecretSelector.vue +9 -29
  98. package/components/form/Taints.vue +1 -2
  99. package/components/form/UnitInput.vue +3 -8
  100. package/components/form/WorkloadPorts.vue +123 -143
  101. package/components/formatter/BadgeStateFormatter.vue +5 -8
  102. package/components/formatter/LiveDate.vue +3 -3
  103. package/components/nav/Favorite.vue +1 -5
  104. package/components/nav/Group.vue +99 -132
  105. package/components/nav/Header.vue +27 -124
  106. package/components/nav/HeaderPageActionMenu.vue +0 -1
  107. package/components/nav/NamespaceFilter.vue +15 -19
  108. package/components/nav/TopLevelMenu.vue +119 -182
  109. package/components/nav/Type.vue +41 -63
  110. package/composables/useClickOutside.ts +1 -1
  111. package/config/private-label.js +11 -15
  112. package/config/product/auth.js +7 -17
  113. package/config/product/settings.js +9 -19
  114. package/config/settings.ts +0 -28
  115. package/config/table-headers.js +2 -3
  116. package/dialog/ForceMachineRemoveDialog.vue +2 -2
  117. package/dialog/ScalePoolDownDialog.vue +2 -2
  118. package/edit/management.cattle.io.user.vue +4 -17
  119. package/edit/monitoring.coreos.com.alertmanagerconfig/auth.vue +19 -19
  120. package/edit/monitoring.coreos.com.alertmanagerconfig/receiverConfig.vue +31 -31
  121. package/edit/monitoring.coreos.com.alertmanagerconfig/routeConfig.vue +12 -36
  122. package/edit/monitoring.coreos.com.alertmanagerconfig/types/email.vue +6 -6
  123. package/edit/monitoring.coreos.com.alertmanagerconfig/types/opsgenie.vue +10 -10
  124. package/edit/monitoring.coreos.com.alertmanagerconfig/types/pagerduty.vue +4 -4
  125. package/edit/monitoring.coreos.com.alertmanagerconfig/types/slack.vue +4 -4
  126. package/edit/monitoring.coreos.com.alertmanagerconfig/types/webhook.vue +1 -1
  127. package/edit/monitoring.coreos.com.receiver/types/email.vue +6 -6
  128. package/edit/monitoring.coreos.com.receiver/types/opsgenie.vue +10 -10
  129. package/edit/monitoring.coreos.com.receiver/types/pagerduty.vue +5 -5
  130. package/edit/monitoring.coreos.com.receiver/types/slack.vue +4 -4
  131. package/edit/namespace.vue +2 -1
  132. package/edit/token.vue +12 -31
  133. package/edit/workload/index.vue +4 -4
  134. package/list/management.cattle.io.setting.vue +13 -22
  135. package/list/management.cattle.io.user.vue +3 -7
  136. package/list/namespace.vue +0 -3
  137. package/list/provisioning.cattle.io.cluster.vue +7 -6
  138. package/mixins/brand.js +0 -17
  139. package/package.json +1 -1
  140. package/pages/account/index.vue +25 -79
  141. package/pages/auth/login.vue +52 -220
  142. package/pages/auth/setup.vue +19 -142
  143. package/pages/c/_cluster/_product/namespaces.vue +5 -5
  144. package/pages/c/_cluster/auth/roles/index.vue +1 -19
  145. package/pages/c/_cluster/monitoring/monitor/index.vue +2 -2
  146. package/pages/c/_cluster/settings/banners.vue +102 -174
  147. package/pages/c/_cluster/settings/brand.vue +302 -350
  148. package/pages/c/_cluster/settings/performance.vue +38 -61
  149. package/pages/home.vue +30 -70
  150. package/pages/prefs.vue +25 -27
  151. package/promptRemove/mixin/roleDeletionCheck.js +2 -2
  152. package/public/index.html +4 -4
  153. package/rancher-components/BadgeState/BadgeState.vue +55 -38
  154. package/rancher-components/Banner/Banner.vue +8 -12
  155. package/rancher-components/Card/Card.vue +8 -7
  156. package/rancher-components/Form/Checkbox/Checkbox.vue +0 -4
  157. package/rancher-components/Form/LabeledInput/LabeledInput.vue +3 -42
  158. package/rancher-components/Form/Radio/RadioButton.vue +11 -35
  159. package/rancher-components/Form/Radio/RadioGroup.vue +5 -13
  160. package/rancher-components/Form/TextArea/TextAreaAutoGrow.vue +3 -3
  161. package/rancher-components/Form/ToggleSwitch/ToggleSwitch.vue +0 -1
  162. package/rancher-components/LabeledTooltip/LabeledTooltip.vue +4 -12
  163. package/rancher-components/RcDropdown/RcDropdown.vue +7 -35
  164. package/rancher-components/RcDropdown/RcDropdownItem.vue +2 -2
  165. package/rancher-components/RcDropdown/RcDropdownMenu.vue +6 -12
  166. package/rancher-components/RcDropdown/types.ts +0 -1
  167. package/rancher-components/StringList/StringList.vue +1 -1
  168. package/static/favicon.ico +0 -0
  169. package/static/favicon.png +0 -0
  170. package/static/loading-indicator.html +3 -3
  171. package/store/i18n.js +2 -5
  172. package/store/modal.ts +3 -3
  173. package/store/prefs.js +4 -11
  174. package/store/type-map.js +2 -32
  175. package/types/shell/index.d.ts +67 -74
  176. package/utils/error.js +8 -87
  177. package/utils/router.js +0 -21
  178. package/utils/select.js +3 -26
  179. package/utils/string.js +5 -8
  180. package/utils/title.ts +1 -1
  181. package/assets/icons/demo.css +0 -539
  182. package/assets/icons/demo.css:Zone.Identifier +0 -0
  183. package/assets/icons/demo_index.html +0 -1131
  184. package/assets/icons/demo_index.html:Zone.Identifier +0 -0
  185. package/assets/icons/iconfont.css +0 -216
  186. package/assets/icons/iconfont.css:Zone.Identifier +0 -0
  187. package/assets/icons/iconfont.js +0 -1
  188. package/assets/icons/iconfont.js:Zone.Identifier +0 -0
  189. package/assets/icons/iconfont.json +0 -324
  190. package/assets/icons/iconfont.json:Zone.Identifier +0 -0
  191. package/assets/icons/iconfont.ttf +0 -0
  192. package/assets/icons/iconfont.ttf:Zone.Identifier +0 -0
  193. package/assets/icons/iconfont.woff +0 -0
  194. package/assets/icons/iconfont.woff2 +0 -0
  195. package/assets/icons/iconfont.woff2:Zone.Identifier +0 -0
  196. package/assets/icons/iconfont.woff:Zone.Identifier +0 -0
  197. package/assets/images/API.svg +0 -3
  198. package/assets/images/action.svg +0 -6
  199. package/assets/images/login/password.svg +0 -20
  200. package/assets/images/login/user.svg +0 -6
  201. package/assets/images/login-bg.png +0 -0
  202. package/assets/images/login-left.png +0 -0
  203. package/assets/images/login-logo.svg +0 -19
  204. package/assets/images/logo.png +0 -0
  205. package/assets/images/pl/logo.png +0 -0
  206. package/assets/images/promp-yellow.svg +0 -5
  207. package/assets/images/user.png +0 -0
  208. package/assets/styles/all.scss +0 -63
  209. package/components/DotState.vue +0 -84
  210. package/components/breadcrumb/index.vue +0 -340
  211. package/pages/account/pri.vue +0 -229
  212. package/utils/errorTranslate.json +0 -1336
@@ -280,163 +280,145 @@ export default {
280
280
  'show-ipam': showIpam,
281
281
  }"
282
282
  >
283
-
284
- <div class="row mt-20">
285
- <div
286
- v-if="!row._showHost && row._serviceType !== 'LoadBalancer' && row._serviceType !== 'NodePort'"
287
- class="add-host col"
288
- >
289
- <button
290
- :disabled="mode==='view'"
291
- type="button"
292
- class="btn btn-sm role-tertiary"
293
- @click="row._showHost = true"
294
- >
295
- {{ t('workloadPorts.addHost') }}
296
- </button>
297
- </div>
283
+ <div class="service-type">
284
+ <LabeledSelect
285
+ v-model:value="row._serviceType"
286
+ :mode="mode"
287
+ :label="t('workload.container.ports.createService')"
288
+ :options="serviceTypes"
289
+ :disabled="canNotAccessService"
290
+ :tooltip="serviceTypeTooltip"
291
+ @update:value="queueUpdate"
292
+ />
293
+ </div>
298
294
 
299
- <div
300
- v-if="showRemove"
301
- class="remove"
302
- >
303
- <button
304
- type="button"
305
- class="btn role-link"
306
- @click="remove(idx)"
307
- >
308
- {{ t('workloadPorts.remove') }}
309
- </button>
310
- </div>
295
+ <div class="portName">
296
+ <LabeledInput
297
+ ref="name"
298
+ v-model:value="row.name"
299
+ :mode="mode"
300
+ :label="t('workload.container.ports.name')"
301
+ @update:value="queueUpdate"
302
+ />
303
+ </div>
311
304
 
305
+ <div class="port">
306
+ <LabeledInput
307
+ v-model:value.number="row.containerPort"
308
+ :mode="mode"
309
+ type="number"
310
+ min="1"
311
+ max="65535"
312
+ placeholder="e.g. 8080"
313
+ :label="t('workload.container.ports.containerPort')"
314
+ :required="row._serviceType === 'LoadBalancer' "
315
+ @update:value="queueUpdate"
316
+ />
312
317
  </div>
313
318
 
314
- <div class="row">
315
- <div class="service-type col span-6">
316
- <LabeledSelect
317
- v-model:value="row._serviceType"
318
- :mode="mode"
319
- :label="t('workload.container.ports.createService')"
320
- :options="serviceTypes"
321
- :disabled="canNotAccessService"
322
- :tooltip="serviceTypeTooltip"
323
- @update:value="queueUpdate"
324
- />
325
- </div>
326
-
327
- <div class="portName col span-6">
328
- <LabeledInput
329
- ref="name"
330
- v-model:value="row.name"
331
- :mode="mode"
332
- :label="t('workload.container.ports.name')"
333
- @update:value="queueUpdate"
334
- />
335
- </div>
319
+ <div class="protocol col">
320
+ <LabeledSelect
321
+ v-model:value="row.protocol"
322
+ :mode="mode"
323
+ :options="workloadPortOptions"
324
+ :multiple="false"
325
+ :label="t('workload.container.ports.protocol')"
326
+ @update:value="queueUpdate"
327
+ />
336
328
  </div>
337
329
 
338
- <div class="row">
339
- <div class="port col span-6">
340
- <LabeledInput
341
- v-model:value.number="row.containerPort"
342
- :mode="mode"
343
- type="number"
344
- min="1"
345
- max="65535"
346
- placeholder="e.g. 8080"
347
- :label="t('workload.container.ports.containerPort')"
348
- :required="row._serviceType === 'LoadBalancer' "
349
- @update:value="queueUpdate"
350
- />
351
- </div>
352
-
353
- <div class="protocol col span-6">
354
- <LabeledSelect
355
- v-model:value="row.protocol"
356
- :mode="mode"
357
- :options="workloadPortOptions"
358
- :multiple="false"
359
- :label="t('workload.container.ports.protocol')"
360
- @update:value="queueUpdate"
361
- />
362
- </div>
330
+ <div
331
+ v-if="row._showHost"
332
+ class="targetPort"
333
+ >
334
+ <LabeledInput
335
+ ref="port"
336
+ v-model:value.number="row.hostPort"
337
+ :mode="mode"
338
+ type="number"
339
+ min="1"
340
+ max="65535"
341
+ placeholder="e.g. 80"
342
+ :label="t('workload.container.ports.hostPort')"
343
+ @update:value="queueUpdate"
344
+ />
345
+ </div>
346
+
347
+ <div
348
+ v-if="row._showHost"
349
+ class="hostip"
350
+ >
351
+ <LabeledInput
352
+ ref="port"
353
+ v-model:value="row.hostIP"
354
+ :mode="mode"
355
+ placeholder="e.g. 1.1.1.1"
356
+ :label="t('workload.container.ports.hostIP')"
357
+ @update:value="queueUpdate"
358
+ />
363
359
  </div>
364
360
 
365
- <div class="row">
366
- <div
367
- v-if="row._showHost"
368
- class="targetPort col span-6"
361
+ <div
362
+ v-if="!row._showHost && row._serviceType !== 'LoadBalancer' && row._serviceType !== 'NodePort'"
363
+ class="add-host"
364
+ >
365
+ <button
366
+ :disabled="mode==='view'"
367
+ type="button"
368
+ class="btn btn-sm role-tertiary"
369
+ @click="row._showHost = true"
369
370
  >
370
- <LabeledInput
371
- ref="port"
372
- v-model:value.number="row.hostPort"
371
+ {{ t('workloadPorts.addHost') }}
372
+ </button>
373
+ </div>
374
+
375
+ <div v-if="row._serviceType === 'LoadBalancer' || row._serviceType === 'NodePort'">
376
+ <LabeledInput
377
+ ref="port"
378
+ v-model:value.number="row._listeningPort"
379
+ type="number"
380
+ :mode="mode"
381
+ :label="t('workload.container.ports.listeningPort')"
382
+ :required="row._serviceType === 'LoadBalancer' "
383
+ @update:value="queueUpdate"
384
+ />
385
+ </div>
386
+
387
+ <div v-if="showIpam && row._serviceType === 'LoadBalancer' && row.protocol === 'TCP'">
388
+ <div v-if="idx === ipamIndex">
389
+ <LabeledSelect
390
+ v-model:value="row._ipam"
373
391
  :mode="mode"
374
- type="number"
375
- min="1"
376
- max="65535"
377
- placeholder="e.g. 80"
378
- :label="t('workload.container.ports.hostPort')"
392
+ :options="ipamOptions"
393
+ :label="t('servicesPage.harvester.ipam.label')"
394
+ :disabled="mode === 'edit'"
379
395
  @update:value="queueUpdate"
380
396
  />
381
397
  </div>
382
-
383
- <div
384
- v-if="row._showHost"
385
- class="hostip col span-6"
386
- >
387
- <LabeledInput
388
- ref="port"
389
- v-model:value="row.hostIP"
398
+ <div v-else>
399
+ <LabeledSelect
400
+ v-model:value="rows[ipamIndex]._ipam"
390
401
  :mode="mode"
391
- placeholder="e.g. 1.1.1.1"
392
- :label="t('workload.container.ports.hostIP')"
402
+ :options="ipamOptions"
403
+ :label="t('servicesPage.harvester.ipam.label')"
404
+ :disabled="true"
393
405
  @update:value="queueUpdate"
394
406
  />
395
407
  </div>
396
408
  </div>
397
409
 
398
- <div class="row">
399
- <div
400
- v-if="row._serviceType === 'LoadBalancer' || row._serviceType === 'NodePort'"
401
- class="col"
410
+ <div
411
+ v-if="showRemove"
412
+ class="remove"
413
+ >
414
+ <button
415
+ type="button"
416
+ class="btn role-link"
417
+ @click="remove(idx)"
402
418
  >
403
- <LabeledInput
404
- ref="port"
405
- v-model:value.number="row._listeningPort"
406
- type="number"
407
- :mode="mode"
408
- :label="t('workload.container.ports.listeningPort')"
409
- :required="row._serviceType === 'LoadBalancer' "
410
- @update:value="queueUpdate"
411
- />
412
- </div>
419
+ {{ t('workloadPorts.remove') }}
420
+ </button>
413
421
  </div>
414
-
415
- <div class="row">
416
- <div v-if="showIpam && row._serviceType === 'LoadBalancer' && row.protocol === 'TCP'">
417
- <div v-if="idx === ipamIndex">
418
- <LabeledSelect
419
- v-model:value="row._ipam"
420
- :mode="mode"
421
- :options="ipamOptions"
422
- :label="t('servicesPage.harvester.ipam.label')"
423
- :disabled="mode === 'edit'"
424
- @update:value="queueUpdate"
425
- />
426
- </div>
427
- <div v-else>
428
- <LabeledSelect
429
- v-model:value="rows[ipamIndex]._ipam"
430
- :mode="mode"
431
- :options="ipamOptions"
432
- :label="t('servicesPage.harvester.ipam.label')"
433
- :disabled="true"
434
- @update:value="queueUpdate"
435
- />
436
- </div>
437
- </div>
438
- </div>
439
-
440
422
  </div>
441
423
  <div
442
424
  v-if="showAdd"
@@ -465,11 +447,11 @@ $checkbox: 75;
465
447
  }
466
448
  }
467
449
  .ports-headers, .ports-row{
468
- // display: grid;
469
- // grid-template-columns: 28% 28% 15% 10% 75px 0.5fr;
470
- // grid-column-gap: $column-gutter;
471
- // margin-bottom: 20px;
472
- // align-items: center;
450
+ display: grid;
451
+ grid-template-columns: 28% 28% 15% 10% 75px 0.5fr;
452
+ grid-column-gap: $column-gutter;
453
+ margin-bottom: 10px;
454
+ align-items: center;
473
455
  & .port{
474
456
  display: flex;
475
457
  justify-content: space-between;
@@ -493,7 +475,6 @@ $checkbox: 75;
493
475
  }
494
476
 
495
477
  .add-host {
496
- margin-right: 20px;
497
478
  justify-self: center;
498
479
  }
499
480
 
@@ -511,7 +492,6 @@ $checkbox: 75;
511
492
 
512
493
  .remove BUTTON {
513
494
  padding: 0px;
514
- min-width: auto;
515
495
  }
516
496
 
517
497
  .ports-row INPUT {
@@ -1,9 +1,8 @@
1
1
  <script>
2
2
  import { BadgeState } from '@components/BadgeState';
3
- import DotState from '@shell/components/DotState'
4
3
  import { colorForState, stateDisplay } from '@shell/plugins/dashboard-store/resource-class';
5
4
  export default {
6
- components: { BadgeState, DotState },
5
+ components: { BadgeState },
7
6
  props: {
8
7
  value: {
9
8
  type: String,
@@ -50,17 +49,15 @@ export default {
50
49
  <template>
51
50
  <div>
52
51
  <div v-if="arbitrary">
53
- <!-- <BadgeState
52
+ <BadgeState
54
53
  v-if="value"
55
54
  :color="stateBackground"
56
55
  :label="stateDisplay"
57
- /> -->
58
- <DotState v-if="value" :color="stateBackground" :label="stateDisplay" />
56
+ />
59
57
  </div>
60
- <!-- <BadgeState
58
+ <BadgeState
61
59
  v-else
62
60
  :value="row"
63
- /> -->
64
- <DotState v-else :value="row" />
61
+ />
65
62
  </div>
66
63
  </template>
@@ -1,6 +1,5 @@
1
1
  <script>
2
2
  import day from 'dayjs';
3
- import 'dayjs/locale/zh-cn';
4
3
  import { DATE_FORMAT, TIME_FORMAT } from '@shell/store/prefs';
5
4
  import { escapeHtml } from '@shell/utils/string';
6
5
  import { diffFrom } from '@shell/utils/time';
@@ -66,7 +65,8 @@ export default {
66
65
  const dateFormat = escapeHtml( this.$store.getters['prefs/get'](DATE_FORMAT));
67
66
  const timeFormat = escapeHtml( this.$store.getters['prefs/get'](TIME_FORMAT));
68
67
 
69
- const out = day(this.value).locale('zh-cn').format('YYYY年M月D日 Ah:mm:ss');
68
+ const out = day(this.value).format(`${ dateFormat } ${ timeFormat }`);
69
+
70
70
  return out;
71
71
  },
72
72
 
@@ -126,7 +126,7 @@ export default {
126
126
  let label = diff.label;
127
127
 
128
128
  if ( diff.diff === 0 ) {
129
- label = '刚刚';
129
+ label = 'Just now';
130
130
  } else {
131
131
  label += ` ${ prefix }${ this.t(diff.unitsKey, { count: diff.label }) }`;
132
132
  label = label.trim();
@@ -44,13 +44,9 @@ export default {
44
44
 
45
45
  <style lang="scss" scoped>
46
46
  .favorite {
47
- display: flex;
48
- align-items: center;
49
47
  position: relative;
50
48
  cursor: pointer;
51
- font-size: 22px;
52
- margin-top: 4px;
53
- margin-left: 10px;
49
+ font-size: 20px;
54
50
  transform: ease-in-out-all 1s;
55
51
 
56
52
  &.icon-star-open {