@magicgol/polyjuice 0.46.1 → 0.47.1

Sign up to get free protection for your applications and to get access to all the features.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@magicgol/polyjuice",
3
- "version": "0.46.1",
3
+ "version": "0.47.1",
4
4
  "scripts": {
5
5
  "serve": "vue-cli-service serve",
6
6
  "build": "vue-cli-service build",
@@ -18,6 +18,11 @@ export default {
18
18
  },
19
19
  }
20
20
  },
21
+ theme: {
22
+ control: { type: 'select' },
23
+ options: ['normal', 'club'],
24
+ defaultValue: 'normal'
25
+ },
21
26
  header: {
22
27
  description: "The header Vue slot",
23
28
  control: {
@@ -4,8 +4,10 @@
4
4
  :selected="selected"
5
5
  @click="$emit('click')"
6
6
  >
7
- <div class="mg-v-box--header" v-if="headerSlotVisibility"><slot name="header"></slot></div>
8
- <div class="p-3"><slot></slot></div>
7
+ <div class="mg-v-box--container">
8
+ <div class="mg-v-box--header" v-if="headerSlotVisibility"><slot name="header"></slot></div>
9
+ <div class="p-3"><slot></slot></div>
10
+ </div>
9
11
  </div>
10
12
  </template>
11
13
 
@@ -18,6 +20,17 @@ export default {
18
20
  type: Boolean,
19
21
  default: false
20
22
  },
23
+
24
+ theme: {
25
+ type: String,
26
+ default: 'normal',
27
+ validator: function (value) {
28
+ return [
29
+ 'normal',
30
+ 'club',
31
+ ].indexOf(value) !== -1;
32
+ },
33
+ },
21
34
  },
22
35
 
23
36
  computed: {
@@ -25,6 +38,8 @@ export default {
25
38
  return {
26
39
  'mg-v-box': true,
27
40
  'mg-v-box--selected': this.selected === true,
41
+ 'mg-v-box--theme-normal': this.theme === 'normal',
42
+ 'mg-v-box--theme-club': this.theme === 'club',
28
43
  };
29
44
  },
30
45
  headerSlotVisibility() {
@@ -44,6 +59,11 @@ export default {
44
59
  cursor: pointer;
45
60
  overflow: hidden;
46
61
 
62
+ &--container {
63
+ border-radius: 7px;
64
+ overflow: hidden;
65
+ }
66
+
47
67
  &--header {
48
68
  background-color: map-get($palette, 'brand');
49
69
  color: white;
@@ -53,6 +73,22 @@ export default {
53
73
  text-align: center;
54
74
  }
55
75
 
76
+ &--theme {
77
+ &-club {
78
+ background: map-get($palette, 'club') !important;
79
+ border: 0 !important;
80
+ padding: 3px;
81
+
82
+ [class$="--container"] {
83
+ background: rgba(255, 255, 255, 0.8);
84
+ }
85
+
86
+ .mg-v-box--header {
87
+ background: map-get($palette, 'club') !important;
88
+ }
89
+ }
90
+ }
91
+
56
92
  &--selected {
57
93
  background: rgba(map-get($palette, 'brand'), 0.05);
58
94
  border-color: map-get($palette, 'brand');
@@ -6,6 +6,11 @@ export default {
6
6
  component: MgRadio,
7
7
  // More on argTypes: https://storybook.js.org/docs/vue/api/argtypes
8
8
  argTypes: {
9
+ theme: {
10
+ control: { type: 'select' },
11
+ options: ['normal', 'club'],
12
+ defaultValue: 'normal'
13
+ },
9
14
  },
10
15
  };
11
16
 
@@ -32,6 +32,17 @@ export default {
32
32
  type: String,
33
33
  default: 'radio'
34
34
  },
35
+
36
+ theme: {
37
+ type: String,
38
+ default: 'normal',
39
+ validator: function (value) {
40
+ return [
41
+ 'normal',
42
+ 'club',
43
+ ].indexOf(value) !== -1;
44
+ },
45
+ },
35
46
  },
36
47
 
37
48
  computed: {
@@ -39,6 +50,7 @@ export default {
39
50
  return {
40
51
  'mg-radio': true,
41
52
  'mg-radio--checked': this.checked === true,
53
+ 'mg-radio--theme-club': this.theme === 'club',
42
54
  };
43
55
  }
44
56
  },
@@ -81,5 +93,16 @@ export default {
81
93
  }
82
94
  }
83
95
  }
96
+
97
+ &--theme {
98
+ &-club {
99
+ &.mg-radio--checked {
100
+ span {
101
+ background: map-get($palette, 'club') !important;
102
+ border: 0;
103
+ }
104
+ }
105
+ }
106
+ }
84
107
  }
85
108
  </style>
@@ -6,6 +6,11 @@ export default {
6
6
  component: MgHeadingOne,
7
7
  // More on argTypes: https://storybook.js.org/docs/vue/api/argtypes
8
8
  argTypes: {
9
+ theme: {
10
+ control: { type: 'select' },
11
+ options: [null, 'club'],
12
+ defaultValue: null
13
+ },
9
14
  default: {
10
15
  description: "The default Vue slot",
11
16
  control: {
@@ -22,13 +27,14 @@ export default {
22
27
  };
23
28
 
24
29
  // More on component templates: https://storybook.js.org/docs/vue/writing-stories/introduction#using-args
25
- const Template = args => ({
30
+ const Template = (args, { argTypes }) => ({
31
+ props: Object.keys(argTypes),
26
32
  components: { MgHeadingOne },
27
- template: `<mg-heading-one><template v-if="${'default' in args}" v-slot>${args.default}</template></mg-heading-one>`,
33
+ template: `<mg-heading-one v-bind="$props"><template v-if="${'default' in args}" v-slot>${args.default}</template></mg-heading-one>`,
28
34
  });
29
35
 
30
36
  export const Default = Template.bind({});
31
37
  // More on args: https://storybook.js.org/docs/vue/writing-stories/args
32
38
  Default.args = {
33
- default: 'heading 1'
39
+ default: 'heading 1',
34
40
  };
@@ -1,15 +1,26 @@
1
1
  <template>
2
- <div v-bind:class="classes"><slot></slot></div>
2
+ <div v-bind:class="classes"><span><slot></slot></span></div>
3
3
  </template>
4
4
 
5
5
  <script>
6
6
  export default {
7
7
  name: 'mg-heading-one',
8
8
 
9
+ props: {
10
+ theme: {
11
+ type: String,
12
+ default: null,
13
+ validator: function (value) {
14
+ return ['club'].indexOf(value) !== -1;
15
+ },
16
+ }
17
+ },
18
+
9
19
  computed: {
10
20
  classes() {
11
21
  return {
12
22
  'mg-h1': true,
23
+ 'mg-h1--theme-club': this.theme === 'club',
13
24
  };
14
25
  }
15
26
  },
@@ -25,5 +36,15 @@ export default {
25
36
  font-size: 1.25rem;
26
37
  font-weight: 500;
27
38
  line-height: 1.1;
39
+
40
+ &--theme {
41
+ &-club {
42
+ > span {
43
+ background: map-get($palette, 'club');
44
+ -webkit-background-clip: text;
45
+ -webkit-text-fill-color: transparent;
46
+ }
47
+ }
48
+ }
28
49
  }
29
50
  </style>
@@ -6,6 +6,11 @@ export default {
6
6
  component: MgHeadingTwo,
7
7
  // More on argTypes: https://storybook.js.org/docs/vue/api/argtypes
8
8
  argTypes: {
9
+ theme: {
10
+ control: { type: 'select' },
11
+ options: [null, 'club'],
12
+ defaultValue: null
13
+ },
9
14
  default: {
10
15
  description: "The default Vue slot",
11
16
  control: {
@@ -22,9 +27,10 @@ export default {
22
27
  };
23
28
 
24
29
  // More on component templates: https://storybook.js.org/docs/vue/writing-stories/introduction#using-args
25
- const Template = args => ({
30
+ const Template = (args, { argTypes }) => ({
31
+ props: Object.keys(argTypes),
26
32
  components: { MgHeadingTwo },
27
- template: `<mg-heading-two><template v-if="${'default' in args}" v-slot>${args.default}</template></mg-heading-two>`,
33
+ template: `<mg-heading-two v-bind="$props"><template v-if="${'default' in args}" v-slot>${args.default}</template></mg-heading-two>`,
28
34
  });
29
35
 
30
36
  export const Default = Template.bind({});
@@ -1,15 +1,26 @@
1
1
  <template>
2
- <div v-bind:class="classes"><slot></slot></div>
2
+ <div v-bind:class="classes"><span><slot></slot></span></div>
3
3
  </template>
4
4
 
5
5
  <script>
6
6
  export default {
7
7
  name: 'mg-heading-two',
8
8
 
9
+ props: {
10
+ theme: {
11
+ type: String,
12
+ default: null,
13
+ validator: function (value) {
14
+ return ['club'].indexOf(value) !== -1;
15
+ },
16
+ }
17
+ },
18
+
9
19
  computed: {
10
20
  classes() {
11
21
  return {
12
22
  'mg-h2': true,
23
+ 'mg-h2--theme-club': this.theme === 'club',
13
24
  };
14
25
  }
15
26
  },
@@ -24,5 +35,15 @@ export default {
24
35
  font-family: 'Ubuntu', sans-serif;
25
36
  font-size: 1.125rem;
26
37
  font-weight: 500;
38
+
39
+ &--theme {
40
+ &-club {
41
+ > span {
42
+ background: map-get($palette, 'club');
43
+ -webkit-background-clip: text;
44
+ -webkit-text-fill-color: transparent;
45
+ }
46
+ }
47
+ }
27
48
  }
28
49
  </style>
@@ -6,6 +6,11 @@ export default {
6
6
  component: MgHeadingThree,
7
7
  // More on argTypes: https://storybook.js.org/docs/vue/api/argtypes
8
8
  argTypes: {
9
+ theme: {
10
+ control: { type: 'select' },
11
+ options: [null, 'club'],
12
+ defaultValue: null
13
+ },
9
14
  default: {
10
15
  description: "The default Vue slot",
11
16
  control: {
@@ -22,9 +27,10 @@ export default {
22
27
  };
23
28
 
24
29
  // More on component templates: https://storybook.js.org/docs/vue/writing-stories/introduction#using-args
25
- const Template = args => ({
30
+ const Template = (args, { argTypes }) => ({
31
+ props: Object.keys(argTypes),
26
32
  components: { MgHeadingThree },
27
- template: `<mg-heading-three><template v-if="${'default' in args}" v-slot>${args.default}</template></mg-heading-three>`,
33
+ template: `<mg-heading-three v-bind="$props"><template v-if="${'default' in args}" v-slot>${args.default}</template></mg-heading-three>`,
28
34
  });
29
35
 
30
36
  export const Default = Template.bind({});
@@ -1,15 +1,26 @@
1
1
  <template>
2
- <div v-bind:class="classes"><slot></slot></div>
2
+ <div v-bind:class="classes"><span><slot></slot></span></div>
3
3
  </template>
4
4
 
5
5
  <script>
6
6
  export default {
7
7
  name: 'mg-heading-three',
8
8
 
9
+ props: {
10
+ theme: {
11
+ type: String,
12
+ default: null,
13
+ validator: function (value) {
14
+ return ['club'].indexOf(value) !== -1;
15
+ },
16
+ }
17
+ },
18
+
9
19
  computed: {
10
20
  classes() {
11
21
  return {
12
22
  'mg-h3': true,
23
+ 'mg-h3--theme-club': this.theme === 'club',
13
24
  };
14
25
  }
15
26
  },
@@ -25,5 +36,15 @@ export default {
25
36
  font-size: 1rem;
26
37
  font-weight: 500;
27
38
  line-height: 1.17;
39
+
40
+ &--theme {
41
+ &-club {
42
+ > span {
43
+ background: map-get($palette, 'club');
44
+ -webkit-background-clip: text;
45
+ -webkit-text-fill-color: transparent;
46
+ }
47
+ }
48
+ }
28
49
  }
29
50
  </style>
@@ -6,6 +6,11 @@ export default {
6
6
  component: MgHeadingFour,
7
7
  // More on argTypes: https://storybook.js.org/docs/vue/api/argtypes
8
8
  argTypes: {
9
+ theme: {
10
+ control: { type: 'select' },
11
+ options: [null, 'club'],
12
+ defaultValue: null
13
+ },
9
14
  default: {
10
15
  description: "The default Vue slot",
11
16
  control: {
@@ -22,9 +27,10 @@ export default {
22
27
  };
23
28
 
24
29
  // More on component templates: https://storybook.js.org/docs/vue/writing-stories/introduction#using-args
25
- const Template = args => ({
30
+ const Template = (args, { argTypes }) => ({
31
+ props: Object.keys(argTypes),
26
32
  components: { MgHeadingFour },
27
- template: `<mg-heading-four><template v-if="${'default' in args}" v-slot>${args.default}</template></mg-heading-four>`,
33
+ template: `<mg-heading-four v-bind="$props"><template v-if="${'default' in args}" v-slot>${args.default}</template></mg-heading-four>`,
28
34
  });
29
35
 
30
36
  export const Default = Template.bind({});
@@ -1,15 +1,26 @@
1
1
  <template>
2
- <div v-bind:class="classes"><slot></slot></div>
2
+ <div v-bind:class="classes"><span><slot></slot></span></div>
3
3
  </template>
4
4
 
5
5
  <script>
6
6
  export default {
7
7
  name: 'mg-heading-four',
8
8
 
9
+ props: {
10
+ theme: {
11
+ type: String,
12
+ default: null,
13
+ validator: function (value) {
14
+ return ['club'].indexOf(value) !== -1;
15
+ },
16
+ }
17
+ },
18
+
9
19
  computed: {
10
20
  classes() {
11
21
  return {
12
22
  'mg-h4': true,
23
+ 'mg-h4--theme-club': this.theme === 'club',
13
24
  };
14
25
  }
15
26
  },
@@ -24,5 +35,15 @@ export default {
24
35
  font-family: 'Ubuntu', sans-serif;
25
36
  font-size: 1rem;
26
37
  font-weight: 400;
38
+
39
+ &--theme {
40
+ &-club {
41
+ > span {
42
+ background: map-get($palette, 'club');
43
+ -webkit-background-clip: text;
44
+ -webkit-text-fill-color: transparent;
45
+ }
46
+ }
47
+ }
27
48
  }
28
49
  </style>
@@ -20,7 +20,7 @@ export default {
20
20
  classes() {
21
21
  return {
22
22
  'mg-h5': true,
23
- 'mg-h5-theme--club': this.theme === 'club',
23
+ 'mg-h5--theme-club': this.theme === 'club',
24
24
  };
25
25
  }
26
26
  },
@@ -36,8 +36,8 @@ export default {
36
36
  font-size: 0.875rem;
37
37
  font-weight: 700;
38
38
 
39
- &-theme {
40
- &--club {
39
+ &--theme {
40
+ &-club {
41
41
  > span {
42
42
  background: map-get($palette, 'club');
43
43
  -webkit-background-clip: text;
@@ -20,7 +20,7 @@ export default {
20
20
  classes() {
21
21
  return {
22
22
  'mg-h6': true,
23
- 'mg-h6-theme--club': this.theme === 'club',
23
+ 'mg-h6--theme-club': this.theme === 'club',
24
24
  };
25
25
  }
26
26
  },
@@ -36,8 +36,8 @@ export default {
36
36
  font-size: 0.75rem;
37
37
  font-weight: 400;
38
38
 
39
- &-theme {
40
- &--club {
39
+ &--theme {
40
+ &-club {
41
41
  > span {
42
42
  background: map-get($palette, 'club');
43
43
  -webkit-background-clip: text;