@varlet/ui 1.27.1 → 1.27.4

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 (40) hide show
  1. package/es/bottom-navigation/BottomNavigation.js +1 -1
  2. package/es/bottom-navigation/bottomNavigation.css +1 -1
  3. package/es/bottom-navigation/bottomNavigation.less +5 -0
  4. package/es/bottom-navigation/props.js +4 -0
  5. package/es/rate/Rate.js +1 -1
  6. package/es/rate/rate.css +1 -1
  7. package/es/rate/rate.less +8 -6
  8. package/es/snackbar/style/index.js +1 -1
  9. package/es/snackbar/style/less.js +1 -1
  10. package/es/style.css +1 -1
  11. package/es/tabs/Tabs.js +1 -1
  12. package/es/tabs/props.js +4 -0
  13. package/es/tabs/tabs.css +1 -1
  14. package/es/tabs/tabs.less +6 -0
  15. package/es/uploader/Uploader.js +3 -3
  16. package/es/uploader/uploader.css +1 -1
  17. package/es/uploader/uploader.less +1 -2
  18. package/es/varlet.esm.js +15 -7
  19. package/highlight/attributes.json +9 -1
  20. package/highlight/tags.json +2 -0
  21. package/highlight/web-types.json +20 -2
  22. package/lib/bottom-navigation/BottomNavigation.js +1 -1
  23. package/lib/bottom-navigation/bottomNavigation.css +1 -1
  24. package/lib/bottom-navigation/bottomNavigation.less +5 -0
  25. package/lib/bottom-navigation/props.js +4 -0
  26. package/lib/rate/Rate.js +1 -1
  27. package/lib/rate/rate.css +1 -1
  28. package/lib/rate/rate.less +8 -6
  29. package/lib/style.css +1 -1
  30. package/lib/tabs/Tabs.js +1 -1
  31. package/lib/tabs/props.js +4 -0
  32. package/lib/tabs/tabs.css +1 -1
  33. package/lib/tabs/tabs.less +6 -0
  34. package/lib/uploader/Uploader.js +3 -3
  35. package/lib/uploader/uploader.css +1 -1
  36. package/lib/uploader/uploader.less +1 -2
  37. package/package.json +4 -4
  38. package/types/bottomNavigation.d.ts +2 -1
  39. package/types/tabs.d.ts +1 -0
  40. package/umd/varlet.js +3 -3
package/lib/tabs/Tabs.js CHANGED
@@ -34,7 +34,7 @@ function render(_ctx, _cache) {
34
34
  "offset-top": _ctx.sticky ? _ctx.offsetTop : null
35
35
  }, {
36
36
  default: (0, _vue.withCtx)(() => [(0, _vue.createElementVNode)("div", (0, _vue.mergeProps)({
37
- class: _ctx.classes(_ctx.n(), 'var--box', _ctx.n("--item-" + _ctx.itemDirection), _ctx.n("--layout-" + _ctx.layoutDirection + "-padding"), [_ctx.elevation, 'var-elevation--4'], [_ctx.fixedBottom, _ctx.n('--fixed-bottom')]),
37
+ class: _ctx.classes(_ctx.n(), 'var--box', _ctx.n("--item-" + _ctx.itemDirection), _ctx.n("--layout-" + _ctx.layoutDirection + "-padding"), [_ctx.elevation, 'var-elevation--4'], [_ctx.fixedBottom, _ctx.n('--fixed-bottom')], [_ctx.safeArea, _ctx.n('--safe-area')]),
38
38
  style: {
39
39
  background: _ctx.color
40
40
  }
package/lib/tabs/props.js CHANGED
@@ -56,6 +56,10 @@ var props = {
56
56
  type: Boolean,
57
57
  default: false
58
58
  },
59
+ safeArea: {
60
+ type: Boolean,
61
+ default: false
62
+ },
59
63
  offsetTop: (0, _components.pickProps)(_props.props, 'offsetTop'),
60
64
  onClick: {
61
65
  type: Function
package/lib/tabs/tabs.css CHANGED
@@ -1 +1 @@
1
- :root { --tabs-item-horizontal-height: 44px; --tabs-item-vertical-height: 66px; --tabs-radius: 2px; --tabs-padding: 12px; --tabs-indicator-size: 2px; --tabs-indicator-background: var(--color-primary); --tabs-background: #fff;}.var-tabs { border-radius: var(--tabs-radius); background: var(--tabs-background); overflow: hidden; transition: background-color 0.25s;}.var-tabs__tab-wrap { position: relative; display: flex; height: 100%;}.var-tabs__indicator { position: absolute; z-index: 10; transition-property: width, transform; transition-duration: 0.3s;}.var-tabs--layout-horizontal { flex-direction: row;}.var-tabs--layout-horizontal-scrollable { overflow-x: auto; overflow-y: hidden;}.var-tabs--layout-horizontal-padding { padding: 0 var(--tabs-padding);}.var-tabs--layout-horizontal-indicator { left: 0; bottom: 0; height: var(--tabs-indicator-size); background: var(--tabs-indicator-background);}.var-tabs--layout-vertical { flex-direction: column;}.var-tabs--layout-vertical-scrollable { overflow-x: hidden; overflow-y: auto;}.var-tabs--layout-vertical-padding { padding: 0;}.var-tabs--layout-vertical-indicator { left: 0; top: 0; width: var(--tabs-indicator-size); background: var(--tabs-indicator-background);}.var-tabs--item-horizontal { height: var(--tabs-item-horizontal-height);}.var-tabs--item-vertical { height: var(--tabs-item-vertical-height);}.var-tabs--fixed-bottom { position: fixed; width: 100%; left: 0; bottom: 0; z-index: 99;}
1
+ :root { --tabs-item-horizontal-height: 44px; --tabs-item-vertical-height: 66px; --tabs-radius: 2px; --tabs-padding: 12px; --tabs-indicator-size: 2px; --tabs-indicator-background: var(--color-primary); --tabs-background: #fff;}.var-tabs { border-radius: var(--tabs-radius); background: var(--tabs-background); overflow: hidden; transition: background-color 0.25s;}.var-tabs__tab-wrap { position: relative; display: flex; height: 100%;}.var-tabs__indicator { position: absolute; z-index: 10; transition-property: width, transform; transition-duration: 0.3s;}.var-tabs--layout-horizontal { flex-direction: row;}.var-tabs--layout-horizontal-scrollable { overflow-x: auto; overflow-y: hidden;}.var-tabs--layout-horizontal-padding { padding: 0 var(--tabs-padding);}.var-tabs--layout-horizontal-indicator { left: 0; bottom: 0; height: var(--tabs-indicator-size); background: var(--tabs-indicator-background);}.var-tabs--layout-vertical { flex-direction: column;}.var-tabs--layout-vertical-scrollable { overflow-x: hidden; overflow-y: auto;}.var-tabs--layout-vertical-padding { padding: 0;}.var-tabs--layout-vertical-indicator { left: 0; top: 0; width: var(--tabs-indicator-size); background: var(--tabs-indicator-background);}.var-tabs--item-horizontal { height: var(--tabs-item-horizontal-height);}.var-tabs--item-vertical { height: var(--tabs-item-vertical-height);}.var-tabs--fixed-bottom { position: fixed; width: 100%; left: 0; bottom: 0; z-index: 99;}.var-tabs--safe-area { padding-bottom: constant(safe-area-inset-bottom); padding-bottom: env(safe-area-inset-bottom); box-sizing: content-box !important;}
@@ -90,4 +90,10 @@
90
90
  bottom: 0;
91
91
  z-index: 99;
92
92
  }
93
+
94
+ &--safe-area {
95
+ padding-bottom: constant(safe-area-inset-bottom); // iOS < 11.2
96
+ padding-bottom: env(safe-area-inset-bottom); // iOS >= 11.2
97
+ box-sizing: content-box !important;
98
+ }
93
99
  }
@@ -106,8 +106,8 @@ function render(_ctx, _cache) {
106
106
  return _ctx.triggerAction && _ctx.triggerAction(...arguments);
107
107
  })
108
108
  }, [(0, _vue.createElementVNode)("input", {
109
- class: (0, _vue.normalizeClass)(_ctx.n('action-input')),
110
109
  ref: "input",
110
+ class: (0, _vue.normalizeClass)(_ctx.n('action-input')),
111
111
  type: "file",
112
112
  multiple: _ctx.multiple,
113
113
  accept: _ctx.accept,
@@ -184,7 +184,7 @@ var _default = (0, _vue.defineComponent)({
184
184
  props: _props.props,
185
185
 
186
186
  setup(props) {
187
- var input = (0, _vue.ref)();
187
+ var input = (0, _vue.ref)(null);
188
188
  var showPreview = (0, _vue.ref)(false);
189
189
  var currentPreview = (0, _vue.ref)(null);
190
190
  var maxlengthText = (0, _vue.computed)(() => {
@@ -452,8 +452,8 @@ var _default = (0, _vue.defineComponent)({
452
452
  isHTMLSupportImage: _shared.isHTMLSupportImage,
453
453
  formDisabled: form == null ? void 0 : form.disabled,
454
454
  formReadonly: form == null ? void 0 : form.readonly,
455
- triggerAction,
456
455
  preview,
456
+ triggerAction,
457
457
  handleChange,
458
458
  handleRemove,
459
459
  getSuccess,
@@ -1 +1 @@
1
- :root { --uploader-action-background: #f7f8fa; --uploader-action-icon-color: #888; --uploader-action-icon-size: 24px; --uploader-action-margin: 0 10px 10px 0; --uploader-file-size: 80px; --uploader-file-margin: 0 10px 10px 0; --uploader-file-name-background: #f7f8fa; --uploader-file-name-color: #888; --uploader-file-name-font-size: 12px; --uploader-file-name-padding: 10px; --uploader-file-text-align: center; --uploader-file-close-background: rgba(0, 0, 0, 0.3); --uploader-file-close-size: 24px; --uploader-file-close-icon-font-size: 14px; --uploader-file-close-icon-color: #fff; --uploader-file-cover-fit: cover; --uploader-file-cover-background: #f7f8fa; --uploader-preview-video-width: 100vw; --uploader-preview-video-height: 100vw; --uploader-file-indicator-height: 4px; --uploader-file-indicator-normal-color: var(--color-disabled); --uploader-file-indicator-success-color: var(--color-success); --uploader-file-indicator-error-color: var(--color-danger); --uploader-disabled-color: var(--color-disabled); --uploader-disabled-text-color: var(--color-text-disabled); --uploader-loading-background: linear-gradient(90deg, hsla(0, 0%, 100%, 0), hsla(0, 0%, 100%, 0.3), hsla(0, 0%, 100%, 0));}@keyframes var-uploader-loading-animation { from { transform: translateX(-100%); } to { transform: translateX(100%); }}.var-uploader { width: 100%;}.var-uploader__file-list { width: 100%; display: flex; flex-wrap: wrap;}.var-uploader__file { position: relative; width: var(--uploader-file-size); height: var(--uploader-file-size); margin: var(--uploader-file-margin); overflow: hidden; cursor: pointer; -webkit-tap-highlight-color: rgba(0, 0, 0, 0);}.var-uploader__file-name { position: absolute; width: 100%; height: 100%; line-height: calc(var(--uploader-file-size) - var(--uploader-file-name-padding) * 2); font-size: var(--uploader-file-name-font-size); z-index: 0; background: var(--uploader-file-name-background); padding: var(--uploader-file-name-padding); color: var(--uploader-file-name-color); text-align: var(--uploader-file-text-align); white-space: nowrap; text-overflow: ellipsis; overflow: hidden; user-select: none; transition: background-color 0.25s;}.var-uploader__file-cover { position: absolute; top: 0; left: 0; width: 100%; height: 100%; z-index: 1; background: var(--uploader-file-cover-background); object-fit: var(--uploader-file-cover-fit); pointer-events: none; transition: background-color 0.25s;}.var-uploader__file-close { position: absolute; top: 0; right: 0; z-index: 2; border-top: var(--uploader-file-close-size) solid var(--uploader-file-close-background); border-left: var(--uploader-file-close-size) solid transparent;}.var-uploader__file-close-icon[var-uploader-cover] { position: absolute; top: calc(-1 * var(--uploader-file-close-size)); right: 0; font-size: var(--uploader-file-close-icon-font-size); color: var(--uploader-file-close-icon-color);}.var-uploader__file-indicator { position: absolute; left: 0; bottom: 0; z-index: 2; width: 100%; height: var(--uploader-file-indicator-height); transition: all 0.25s; overflow: hidden; white-space: nowrap; text-overflow: ellipsis; background: var(--uploader-file-indicator-normal-color);}.var-uploader__action { position: relative; display: flex; justify-content: center; align-items: center; color: var(--uploader-action-icon-color); width: var(--uploader-file-size); height: var(--uploader-file-size); background: var(--uploader-action-background); margin: var(--uploader-action-margin); transition: background-color 0.25s; cursor: pointer;}.var-uploader__action-icon[var-uploader-cover] { font-size: var(--uploader-action-icon-size);}.var-uploader__action-input { display: block; z-index: 1; width: 0; height: 0; opacity: 0;}.var-uploader__preview[var-uploader-cover] { background: #000; box-shadow: none;}.var-uploader__preview-video { width: var(--uploader-preview-video-width); height: var(--uploader-preview-video-height);}.var-uploader--loading::after { content: ''; position: absolute; top: 0; left: 0; width: 100%; height: 100%; z-index: 1; animation: var-uploader-loading-animation 0.6s infinite; background: var(--uploader-loading-background); transition: background-color 0.25s;}.var-uploader--success { background: var(--uploader-file-indicator-success-color);}.var-uploader--error { background: var(--uploader-file-indicator-error-color);}.var-uploader--disabled { background: var(--uploader-disabled-color); color: var(--uploader-disabled-text-color); cursor: not-allowed;}
1
+ :root { --uploader-action-background: #f7f8fa; --uploader-action-icon-color: #888; --uploader-action-icon-size: 24px; --uploader-action-margin: 0 10px 10px 0; --uploader-file-size: 80px; --uploader-file-margin: 0 10px 10px 0; --uploader-file-name-background: #f7f8fa; --uploader-file-name-color: #888; --uploader-file-name-font-size: 12px; --uploader-file-name-padding: 10px; --uploader-file-text-align: center; --uploader-file-close-background: rgba(0, 0, 0, 0.3); --uploader-file-close-size: 24px; --uploader-file-close-icon-font-size: 14px; --uploader-file-close-icon-color: #fff; --uploader-file-cover-fit: cover; --uploader-file-cover-background: #f7f8fa; --uploader-preview-video-width: 100vw; --uploader-preview-video-height: 100vw; --uploader-file-indicator-height: 4px; --uploader-file-indicator-normal-color: var(--color-disabled); --uploader-file-indicator-success-color: var(--color-success); --uploader-file-indicator-error-color: var(--color-danger); --uploader-disabled-color: var(--color-disabled); --uploader-disabled-text-color: var(--color-text-disabled); --uploader-loading-background: linear-gradient(90deg, hsla(0, 0%, 100%, 0), hsla(0, 0%, 100%, 0.3), hsla(0, 0%, 100%, 0));}@keyframes var-uploader-loading-animation { from { transform: translateX(-100%); } to { transform: translateX(100%); }}.var-uploader { width: 100%;}.var-uploader__file-list { width: 100%; display: flex; flex-wrap: wrap;}.var-uploader__file { position: relative; width: var(--uploader-file-size); height: var(--uploader-file-size); margin: var(--uploader-file-margin); overflow: hidden; cursor: pointer; -webkit-tap-highlight-color: rgba(0, 0, 0, 0);}.var-uploader__file-name { position: absolute; width: 100%; height: 100%; line-height: calc(var(--uploader-file-size) - var(--uploader-file-name-padding) * 2); font-size: var(--uploader-file-name-font-size); z-index: 0; background: var(--uploader-file-name-background); padding: var(--uploader-file-name-padding); color: var(--uploader-file-name-color); text-align: var(--uploader-file-text-align); white-space: nowrap; text-overflow: ellipsis; overflow: hidden; user-select: none; transition: background-color 0.25s;}.var-uploader__file-cover { position: absolute; top: 0; left: 0; width: 100%; height: 100%; z-index: 1; background: var(--uploader-file-cover-background); object-fit: var(--uploader-file-cover-fit); pointer-events: none; transition: background-color 0.25s;}.var-uploader__file-close { position: absolute; top: 0; right: 0; z-index: 2; border-top: var(--uploader-file-close-size) solid var(--uploader-file-close-background); border-left: var(--uploader-file-close-size) solid transparent;}.var-uploader__file-close-icon[var-uploader-cover] { position: absolute; top: calc(-1 * var(--uploader-file-close-size)); right: 0; font-size: var(--uploader-file-close-icon-font-size); color: var(--uploader-file-close-icon-color);}.var-uploader__file-indicator { position: absolute; left: 0; bottom: 0; z-index: 2; width: 100%; height: var(--uploader-file-indicator-height); transition: all 0.25s; overflow: hidden; white-space: nowrap; text-overflow: ellipsis; background: var(--uploader-file-indicator-normal-color);}.var-uploader__action { position: relative; display: flex; justify-content: center; align-items: center; color: var(--uploader-action-icon-color); width: var(--uploader-file-size); height: var(--uploader-file-size); background: var(--uploader-action-background); margin: var(--uploader-action-margin); transition: background-color 0.25s; cursor: pointer;}.var-uploader__action-icon[var-uploader-cover] { font-size: var(--uploader-action-icon-size);}.var-uploader__action-input { display: block; width: 0; height: 0; visibility: hidden;}.var-uploader__preview[var-uploader-cover] { background: #000; box-shadow: none;}.var-uploader__preview-video { width: var(--uploader-preview-video-width); height: var(--uploader-preview-video-height);}.var-uploader--loading::after { content: ''; position: absolute; top: 0; left: 0; width: 100%; height: 100%; z-index: 1; animation: var-uploader-loading-animation 0.6s infinite; background: var(--uploader-loading-background); transition: background-color 0.25s;}.var-uploader--success { background: var(--uploader-file-indicator-success-color);}.var-uploader--error { background: var(--uploader-file-indicator-error-color);}.var-uploader--disabled { background: var(--uploader-disabled-color); color: var(--uploader-disabled-text-color); cursor: not-allowed;}
@@ -170,10 +170,9 @@
170
170
 
171
171
  &__action-input {
172
172
  display: block;
173
- z-index: 1;
174
173
  width: 0;
175
174
  height: 0;
176
- opacity: 0;
175
+ visibility: hidden;
177
176
  }
178
177
 
179
178
  &__preview[var-uploader-cover] {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@varlet/ui",
3
- "version": "1.27.1",
3
+ "version": "1.27.4",
4
4
  "description": "A material like components library",
5
5
  "module": "es/index.js",
6
6
  "main": "lib/index.js",
@@ -39,13 +39,13 @@
39
39
  },
40
40
  "gitHead": "ee9c3866bedad96c86365b0f9888a3a6bb781b1f",
41
41
  "dependencies": {
42
- "@varlet/icons": "1.27.1",
42
+ "@varlet/icons": "1.27.4",
43
43
  "dayjs": "^1.10.4",
44
44
  "decimal.js": "^10.2.1"
45
45
  },
46
46
  "devDependencies": {
47
- "@varlet/cli": "1.27.1",
48
- "@varlet/touch-emulator": "1.27.1",
47
+ "@varlet/cli": "1.27.4",
48
+ "@varlet/touch-emulator": "1.27.4",
49
49
  "@vue/test-utils": "2.0.0-rc.6",
50
50
  "@vue/runtime-core": "3.2.25",
51
51
  "typescript": "^4.4.4",
@@ -5,14 +5,15 @@ export interface BottomNavigationProps {
5
5
  active?: number | string
6
6
  fixed?: boolean
7
7
  border?: boolean
8
+ safeArea?: boolean
8
9
  zIndex?: number | string
9
10
  activeColor?: string
10
11
  inactiveColor?: string
12
+ fabProps?: Partial<ButtonProps>
11
13
  onChange?: (active: string | number) => void
12
14
  'onUpdate:active'?: (active: string | number) => void
13
15
  onBeforeChange?: (active: string | number) => boolean | Promise<any>
14
16
  onFabClick?: () => void
15
- fabProps?: ButtonProps
16
17
  }
17
18
 
18
19
  export class BottomNavigation extends VarComponent {
package/types/tabs.d.ts CHANGED
@@ -13,6 +13,7 @@ export interface TabsProps {
13
13
  indicatorSize?: string | number
14
14
  elevation?: boolean
15
15
  sticky?: boolean
16
+ safeArea?: boolean
16
17
  offsetTop?: string | number
17
18
  onClick?: (active: string | number) => void
18
19
  onChange?: (active: string | number) => void