@varlet/ui 2.4.3-alpha.1671110229484 → 2.4.3-alpha.1671117595604

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.
package/es/space/Space.js CHANGED
@@ -1,10 +1,10 @@
1
1
  import { createVNode as _createVNode } from "vue";
2
2
  import { defineComponent, Fragment, Comment } from 'vue';
3
3
  import { internalSizeValidator, props } from './props';
4
- import { toPxNum } from '../utils/elements';
5
- import { inBrowser, isArray } from '@varlet/shared';
4
+ import { isArray } from '@varlet/shared';
6
5
  import { call, createNamespace } from '../utils/components';
7
- import { spacePluginOptions } from './context';
6
+ import { toSizeUnit } from '../utils/elements';
7
+ import { computeMargin } from './margin';
8
8
 
9
9
 
10
10
  var {
@@ -19,36 +19,15 @@ export default defineComponent({
19
19
  var {
20
20
  slots
21
21
  } = _ref;
22
- var internalSizes = {
23
- mini: [0, 0],
24
- small: [0, 0],
25
- normal: [0, 0],
26
- large: [0, 0]
27
- };
28
-
29
- var computeInternalSizes = () => {
30
- Object.entries(spacePluginOptions).forEach(_ref2 => {
31
- var [key, size] = _ref2;
32
- internalSizes[key] = isArray(size) ? size.map(toPxNum) : [toPxNum(size), toPxNum(size)];
33
- });
34
- };
35
22
 
36
23
  var getSize = (size, isInternalSize) => {
37
- if (!inBrowser()) {
38
- return [0, 0];
39
- }
40
-
41
- return isInternalSize ? internalSizes[size] : isArray(size) ? size.map(toPxNum) : [toPxNum(size), toPxNum(size)];
24
+ return isInternalSize ? ["var(--space-size-" + size + "-y)", "var(--space-size-" + size + "-x)"] : isArray(size) ? size.map(toSizeUnit) : [toSizeUnit(size), toSizeUnit(size)];
42
25
  };
43
26
 
44
27
  var padStartFlex = style => {
45
28
  return style === 'start' || style === 'end' ? "flex-" + style : style;
46
29
  };
47
30
 
48
- if (inBrowser()) {
49
- computeInternalSizes();
50
- }
51
-
52
31
  return () => {
53
32
  var _call;
54
33
 
@@ -84,32 +63,12 @@ export default defineComponent({
84
63
  children = flatten(children);
85
64
  var lastIndex = children.length - 1;
86
65
  var spacers = children.map((child, index) => {
87
- var margin = '0';
88
-
89
- if (direction === 'row') {
90
- if (justify === 'start' || justify === 'center' || justify === 'end') {
91
- if (index !== lastIndex) {
92
- margin = y / 2 + "px " + x + "px " + y / 2 + "px 0";
93
- } else {
94
- margin = y / 2 + "px 0";
95
- }
96
- } else if (justify === 'space-around') {
97
- margin = y / 2 + "px " + x / 2 + "px";
98
- } else if (justify === 'space-between') {
99
- if (index === 0) {
100
- margin = y / 2 + "px " + x / 2 + "px " + y / 2 + "px 0";
101
- } else if (index === lastIndex) {
102
- margin = y / 2 + "px 0 " + y / 2 + "px " + x / 2 + "px";
103
- } else {
104
- margin = y / 2 + "px " + x / 2 + "px";
105
- }
106
- }
107
- }
108
-
109
- if (direction === 'column' && index !== lastIndex) {
110
- margin = "0 0 " + y + "px 0";
111
- }
112
-
66
+ var margin = computeMargin(y, x, {
67
+ direction,
68
+ justify,
69
+ index,
70
+ lastIndex
71
+ });
113
72
  return _createVNode("div", {
114
73
  "style": {
115
74
  margin
@@ -123,7 +82,7 @@ export default defineComponent({
123
82
  justifyContent: padStartFlex(justify),
124
83
  alignItems: padStartFlex(align),
125
84
  flexWrap: wrap ? 'wrap' : 'nowrap',
126
- margin: direction === 'row' ? "-" + y / 2 + "px 0" : undefined
85
+ margin: direction === 'row' ? "calc(-1 * " + y + " / 2) 0" : undefined
127
86
  }
128
87
  }, [spacers]);
129
88
  };
package/es/space/index.js CHANGED
@@ -1,8 +1,6 @@
1
1
  import Space from './Space';
2
- import { mergeSpacePluginOptions } from './context';
3
2
 
4
- Space.install = function (app, spacePluginOptions) {
5
- mergeSpacePluginOptions(spacePluginOptions);
3
+ Space.install = function (app) {
6
4
  app.component(Space.name, Space);
7
5
  };
8
6
 
@@ -0,0 +1,38 @@
1
+ export function half(value) {
2
+ return "calc(" + value + " / 2)";
3
+ }
4
+ export function computeMargin(y, x, options) {
5
+ var {
6
+ direction,
7
+ justify,
8
+ index,
9
+ lastIndex
10
+ } = options;
11
+ var margin = '0';
12
+
13
+ if (direction === 'row') {
14
+ if (justify === 'start' || justify === 'center' || justify === 'end') {
15
+ if (index !== lastIndex) {
16
+ margin = half(y) + " " + x + " " + half(y) + " 0";
17
+ } else {
18
+ margin = half(y) + " 0";
19
+ }
20
+ } else if (justify === 'space-around') {
21
+ margin = half(y) + " " + half(x);
22
+ } else if (justify === 'space-between') {
23
+ if (index === 0) {
24
+ margin = half(y) + " " + half(x) + " " + half(y) + " 0";
25
+ } else if (index === lastIndex) {
26
+ margin = half(y) + " 0 " + half(y) + " " + half(x);
27
+ } else {
28
+ margin = half(y) + " " + half(x);
29
+ }
30
+ }
31
+ }
32
+
33
+ if (direction === 'column' && index !== lastIndex) {
34
+ margin = "0 0 " + y + " 0";
35
+ }
36
+
37
+ return margin;
38
+ }
@@ -1 +1 @@
1
- .var-space { display: flex;}.var-space--line { display: inline-flex;}
1
+ :root { --space-size-mini-y: 4px; --space-size-mini-x: 4px; --space-size-small-y: 6px; --space-size-small-x: 6px; --space-size-normal-y: 8px; --space-size-normal-x: 12px; --space-size-large-y: 12px; --space-size-large-x: 20px;}.var-space { display: flex;}.var-space--line { display: inline-flex;}
@@ -0,0 +1,128 @@
1
+ @import './common';
2
+
3
+ .var-elevation {
4
+ &--0 {
5
+ box-shadow: 0 0 0 0 var(--shadow-key-umbra-opacity), 0 0 0 0 var(--shadow-key-penumbra-opacity),
6
+ 0 0 0 0 var(--shadow-key-ambient-opacity);
7
+ }
8
+
9
+ &--1 {
10
+ box-shadow: 0 2px 1px -1px var(--shadow-key-umbra-opacity), 0 1px 1px 0 var(--shadow-key-penumbra-opacity),
11
+ 0 1px 3px 0 var(--shadow-key-ambient-opacity);
12
+ }
13
+
14
+ &--2 {
15
+ box-shadow: 0 3px 1px -2px var(--shadow-key-umbra-opacity), 0 2px 2px 0 var(--shadow-key-penumbra-opacity),
16
+ 0 1px 5px 0 var(--shadow-key-ambient-opacity);
17
+ }
18
+
19
+ &--3 {
20
+ box-shadow: 0 3px 3px -2px var(--shadow-key-umbra-opacity), 0 3px 4px 0 var(--shadow-key-penumbra-opacity),
21
+ 0 1px 8px 0 var(--shadow-key-ambient-opacity);
22
+ }
23
+
24
+ &--4 {
25
+ box-shadow: 0 2px 4px -1px var(--shadow-key-umbra-opacity), 0 4px 5px 0 var(--shadow-key-penumbra-opacity),
26
+ 0 1px 10px 0 var(--shadow-key-ambient-opacity);
27
+ }
28
+
29
+ &--5 {
30
+ box-shadow: 0 3px 5px -1px var(--shadow-key-umbra-opacity), 0 5px 8px 0 var(--shadow-key-penumbra-opacity),
31
+ 0 1px 14px 0 var(--shadow-key-ambient-opacity);
32
+ }
33
+
34
+ &--6 {
35
+ box-shadow: 0 3px 5px -1px var(--shadow-key-umbra-opacity), 0 6px 10px 0 var(--shadow-key-penumbra-opacity),
36
+ 0 1px 18px 0 var(--shadow-key-ambient-opacity);
37
+ }
38
+
39
+ &--7 {
40
+ box-shadow: 0 4px 5px -2px var(--shadow-key-umbra-opacity), 0 7px 10px 1px var(--shadow-key-penumbra-opacity),
41
+ 0 2px 16px 1px var(--shadow-key-ambient-opacity);
42
+ }
43
+
44
+ &--8 {
45
+ box-shadow: 0 5px 5px -3px var(--shadow-key-umbra-opacity), 0 8px 10px 1px var(--shadow-key-penumbra-opacity),
46
+ 0 3px 14px 2px var(--shadow-key-ambient-opacity);
47
+ }
48
+
49
+ &--9 {
50
+ box-shadow: 0 5px 6px -3px var(--shadow-key-umbra-opacity), 0 9px 12px 1px var(--shadow-key-penumbra-opacity),
51
+ 0 3px 16px 2px var(--shadow-key-ambient-opacity);
52
+ }
53
+
54
+ &--10 {
55
+ box-shadow: 0 6px 6px -3px var(--shadow-key-umbra-opacity), 0 10px 14px 1px var(--shadow-key-penumbra-opacity),
56
+ 0 4px 18px 3px var(--shadow-key-ambient-opacity);
57
+ }
58
+
59
+ &--11 {
60
+ box-shadow: 0 6px 7px -4px var(--shadow-key-umbra-opacity), 0 11px 15px 1px var(--shadow-key-penumbra-opacity),
61
+ 0 4px 20px 3px var(--shadow-key-ambient-opacity);
62
+ }
63
+
64
+ &--12 {
65
+ box-shadow: 0 7px 8px -4px var(--shadow-key-umbra-opacity), 0 12px 17px 2px var(--shadow-key-penumbra-opacity),
66
+ 0 5px 22px 4px var(--shadow-key-ambient-opacity);
67
+ }
68
+
69
+ &--13 {
70
+ box-shadow: 0 7px 8px -4px var(--shadow-key-umbra-opacity), 0 13px 19px 2px var(--shadow-key-penumbra-opacity),
71
+ 0 5px 24px 4px var(--shadow-key-ambient-opacity);
72
+ }
73
+
74
+ &--14 {
75
+ box-shadow: 0 7px 9px -4px var(--shadow-key-umbra-opacity), 0 14px 21px 2px var(--shadow-key-penumbra-opacity),
76
+ 0 5px 26px 4px var(--shadow-key-ambient-opacity);
77
+ }
78
+
79
+ &--15 {
80
+ box-shadow: 0 8px 9px -5px var(--shadow-key-umbra-opacity), 0 15px 22px 2px var(--shadow-key-penumbra-opacity),
81
+ 0 6px 28px 5px var(--shadow-key-ambient-opacity);
82
+ }
83
+
84
+ &--16 {
85
+ box-shadow: 0 8px 10px -5px var(--shadow-key-umbra-opacity), 0 16px 24px 2px var(--shadow-key-penumbra-opacity),
86
+ 0 6px 30px 5px var(--shadow-key-ambient-opacity);
87
+ }
88
+
89
+ &--17 {
90
+ box-shadow: 0 8px 11px -5px var(--shadow-key-umbra-opacity), 0 17px 26px 2px var(--shadow-key-penumbra-opacity),
91
+ 0 6px 32px 5px var(--shadow-key-ambient-opacity);
92
+ }
93
+
94
+ &--18 {
95
+ box-shadow: 0 9px 11px -5px var(--shadow-key-umbra-opacity), 0 18px 28px 2px var(--shadow-key-penumbra-opacity),
96
+ 0 7px 34px 6px var(--shadow-key-ambient-opacity);
97
+ }
98
+
99
+ &--19 {
100
+ box-shadow: 0 9px 12px -6px var(--shadow-key-umbra-opacity), 0 19px 29px 2px var(--shadow-key-penumbra-opacity),
101
+ 0 7px 36px 6px var(--shadow-key-ambient-opacity);
102
+ }
103
+
104
+ &--20 {
105
+ box-shadow: 0 10px 13px -6px var(--shadow-key-umbra-opacity), 0 20px 31px 3px var(--shadow-key-penumbra-opacity),
106
+ 0 8px 38px 7px var(--shadow-key-ambient-opacity);
107
+ }
108
+
109
+ &--21 {
110
+ box-shadow: 0 10px 13px -6px var(--shadow-key-umbra-opacity), 0 21px 33px 3px var(--shadow-key-penumbra-opacity),
111
+ 0 8px 40px 7px var(--shadow-key-ambient-opacity);
112
+ }
113
+
114
+ &--22 {
115
+ box-shadow: 0 10px 14px -6px var(--shadow-key-umbra-opacity), 0 22px 35px 3px var(--shadow-key-penumbra-opacity),
116
+ 0 8px 42px 7px var(--shadow-key-ambient-opacity);
117
+ }
118
+
119
+ &--23 {
120
+ box-shadow: 0 11px 14px -7px var(--shadow-key-umbra-opacity), 0 23px 36px 3px var(--shadow-key-penumbra-opacity),
121
+ 0 9px 44px 8px var(--shadow-key-ambient-opacity);
122
+ }
123
+
124
+ &--24 {
125
+ box-shadow: 0 11px 15px -7px var(--shadow-key-umbra-opacity), 0 24px 38px 3px var(--shadow-key-penumbra-opacity),
126
+ 0 9px 46px 8px var(--shadow-key-ambient-opacity);
127
+ }
128
+ }
@@ -7,13 +7,13 @@ var _vue = require("vue");
7
7
 
8
8
  var _props = require("./props");
9
9
 
10
- var _elements = require("../utils/elements");
11
-
12
10
  var _shared = require("@varlet/shared");
13
11
 
14
12
  var _components = require("../utils/components");
15
13
 
16
- var _context = require("./context");
14
+ var _elements = require("../utils/elements");
15
+
16
+ var _margin = require("./margin");
17
17
 
18
18
 
19
19
 
@@ -32,36 +32,15 @@ var _default = (0, _vue.defineComponent)({
32
32
  var {
33
33
  slots
34
34
  } = _ref;
35
- var internalSizes = {
36
- mini: [0, 0],
37
- small: [0, 0],
38
- normal: [0, 0],
39
- large: [0, 0]
40
- };
41
-
42
- var computeInternalSizes = () => {
43
- Object.entries(_context.spacePluginOptions).forEach(_ref2 => {
44
- var [key, size] = _ref2;
45
- internalSizes[key] = (0, _shared.isArray)(size) ? size.map(_elements.toPxNum) : [(0, _elements.toPxNum)(size), (0, _elements.toPxNum)(size)];
46
- });
47
- };
48
35
 
49
36
  var getSize = (size, isInternalSize) => {
50
- if (!(0, _shared.inBrowser)()) {
51
- return [0, 0];
52
- }
53
-
54
- return isInternalSize ? internalSizes[size] : (0, _shared.isArray)(size) ? size.map(_elements.toPxNum) : [(0, _elements.toPxNum)(size), (0, _elements.toPxNum)(size)];
37
+ return isInternalSize ? ["var(--space-size-" + size + "-y)", "var(--space-size-" + size + "-x)"] : (0, _shared.isArray)(size) ? size.map(_elements.toSizeUnit) : [(0, _elements.toSizeUnit)(size), (0, _elements.toSizeUnit)(size)];
55
38
  };
56
39
 
57
40
  var padStartFlex = style => {
58
41
  return style === 'start' || style === 'end' ? "flex-" + style : style;
59
42
  };
60
43
 
61
- if ((0, _shared.inBrowser)()) {
62
- computeInternalSizes();
63
- }
64
-
65
44
  return () => {
66
45
  var _call;
67
46
 
@@ -97,32 +76,12 @@ var _default = (0, _vue.defineComponent)({
97
76
  children = flatten(children);
98
77
  var lastIndex = children.length - 1;
99
78
  var spacers = children.map((child, index) => {
100
- var margin = '0';
101
-
102
- if (direction === 'row') {
103
- if (justify === 'start' || justify === 'center' || justify === 'end') {
104
- if (index !== lastIndex) {
105
- margin = y / 2 + "px " + x + "px " + y / 2 + "px 0";
106
- } else {
107
- margin = y / 2 + "px 0";
108
- }
109
- } else if (justify === 'space-around') {
110
- margin = y / 2 + "px " + x / 2 + "px";
111
- } else if (justify === 'space-between') {
112
- if (index === 0) {
113
- margin = y / 2 + "px " + x / 2 + "px " + y / 2 + "px 0";
114
- } else if (index === lastIndex) {
115
- margin = y / 2 + "px 0 " + y / 2 + "px " + x / 2 + "px";
116
- } else {
117
- margin = y / 2 + "px " + x / 2 + "px";
118
- }
119
- }
120
- }
121
-
122
- if (direction === 'column' && index !== lastIndex) {
123
- margin = "0 0 " + y + "px 0";
124
- }
125
-
79
+ var margin = (0, _margin.computeMargin)(y, x, {
80
+ direction,
81
+ justify,
82
+ index,
83
+ lastIndex
84
+ });
126
85
  return (0, _vue.createVNode)("div", {
127
86
  "style": {
128
87
  margin
@@ -136,7 +95,7 @@ var _default = (0, _vue.defineComponent)({
136
95
  justifyContent: padStartFlex(justify),
137
96
  alignItems: padStartFlex(align),
138
97
  flexWrap: wrap ? 'wrap' : 'nowrap',
139
- margin: direction === 'row' ? "-" + y / 2 + "px 0" : undefined
98
+ margin: direction === 'row' ? "calc(-1 * " + y + " / 2) 0" : undefined
140
99
  }
141
100
  }, [spacers]);
142
101
  };
@@ -5,12 +5,9 @@ exports.default = exports._SpaceComponent = void 0;
5
5
 
6
6
  var _Space = _interopRequireDefault(require("./Space"));
7
7
 
8
- var _context = require("./context");
9
-
10
8
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
11
9
 
12
- _Space.default.install = function (app, spacePluginOptions) {
13
- (0, _context.mergeSpacePluginOptions)(spacePluginOptions);
10
+ _Space.default.install = function (app) {
14
11
  app.component(_Space.default.name, _Space.default);
15
12
  };
16
13
 
@@ -0,0 +1,45 @@
1
+ "use strict";
2
+
3
+ exports.__esModule = true;
4
+ exports.computeMargin = computeMargin;
5
+ exports.half = half;
6
+
7
+ function half(value) {
8
+ return "calc(" + value + " / 2)";
9
+ }
10
+
11
+ function computeMargin(y, x, options) {
12
+ var {
13
+ direction,
14
+ justify,
15
+ index,
16
+ lastIndex
17
+ } = options;
18
+ var margin = '0';
19
+
20
+ if (direction === 'row') {
21
+ if (justify === 'start' || justify === 'center' || justify === 'end') {
22
+ if (index !== lastIndex) {
23
+ margin = half(y) + " " + x + " " + half(y) + " 0";
24
+ } else {
25
+ margin = half(y) + " 0";
26
+ }
27
+ } else if (justify === 'space-around') {
28
+ margin = half(y) + " " + half(x);
29
+ } else if (justify === 'space-between') {
30
+ if (index === 0) {
31
+ margin = half(y) + " " + half(x) + " " + half(y) + " 0";
32
+ } else if (index === lastIndex) {
33
+ margin = half(y) + " 0 " + half(y) + " " + half(x);
34
+ } else {
35
+ margin = half(y) + " " + half(x);
36
+ }
37
+ }
38
+ }
39
+
40
+ if (direction === 'column' && index !== lastIndex) {
41
+ margin = "0 0 " + y + " 0";
42
+ }
43
+
44
+ return margin;
45
+ }
@@ -1 +1 @@
1
- .var-space { display: flex;}.var-space--line { display: inline-flex;}
1
+ :root { --space-size-mini-y: 4px; --space-size-mini-x: 4px; --space-size-small-y: 6px; --space-size-small-x: 6px; --space-size-normal-y: 8px; --space-size-normal-x: 12px; --space-size-large-y: 12px; --space-size-large-x: 20px;}.var-space { display: flex;}.var-space--line { display: inline-flex;}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@varlet/ui",
3
- "version": "2.4.3-alpha.1671110229484",
3
+ "version": "2.4.3-alpha.1671117595604",
4
4
  "description": "A material like components library",
5
5
  "module": "es/index.js",
6
6
  "main": "lib/index.js",
@@ -47,8 +47,8 @@
47
47
  "@popperjs/core": "^2.11.6",
48
48
  "dayjs": "^1.10.4",
49
49
  "decimal.js": "^10.2.1",
50
- "@varlet/icons": "2.4.3-alpha.1671110229484",
51
- "@varlet/shared": "2.4.3-alpha.1671110229484"
50
+ "@varlet/icons": "2.4.3-alpha.1671117595604",
51
+ "@varlet/shared": "2.4.3-alpha.1671117595604"
52
52
  },
53
53
  "devDependencies": {
54
54
  "@types/jest": "^26.0.15",
@@ -63,8 +63,8 @@
63
63
  "typescript": "^4.4.4",
64
64
  "vue": "3.2.25",
65
65
  "vue-router": "4.0.12",
66
- "@varlet/touch-emulator": "2.4.3-alpha.1671110229484",
67
- "@varlet/cli": "2.4.3-alpha.1671110229484"
66
+ "@varlet/cli": "2.4.3-alpha.1671117595604",
67
+ "@varlet/touch-emulator": "2.4.3-alpha.1671117595604"
68
68
  },
69
69
  "browserslist": [
70
70
  "Chrome >= 54",
package/types/space.d.ts CHANGED
@@ -1,5 +1,5 @@
1
1
  import { VarComponent, BasicAttributes } from './varComponent'
2
- import { App, VNode } from 'vue'
2
+ import { VNode } from 'vue'
3
3
 
4
4
  export type SpaceAlign = 'stretch' | 'center' | 'start' | 'end' | 'baseline' | 'initial' | 'inherit'
5
5
 
@@ -11,15 +11,6 @@ export type SpaceInternalSize = 'mini' | 'small' | 'normal' | 'large'
11
11
 
12
12
  export type SpaceSize = SpaceInternalSize | number | string | [number | string, number | string]
13
13
 
14
- export interface SpacePluginOptions {
15
- mini?: SpacePluginOptionsSize
16
- small?: SpacePluginOptionsSize
17
- normal?: SpacePluginOptionsSize
18
- large?: SpacePluginOptionsSize
19
- }
20
-
21
- export type SpacePluginOptionsSize = number | string | [number | string, number | string]
22
-
23
14
  export interface SpaceProps extends BasicAttributes {
24
15
  align?: SpaceAlign
25
16
  size?: SpaceSize
@@ -30,8 +21,6 @@ export interface SpaceProps extends BasicAttributes {
30
21
  }
31
22
 
32
23
  export class Space extends VarComponent {
33
- static install(app: App, options: SpacePluginOptions): void
34
-
35
24
  $props: SpaceProps
36
25
 
37
26
  $slots: {
package/es/index.d.ts DELETED
@@ -1 +0,0 @@
1
- export * from '../types'