@magicgol/polyjuice 0.14.0 → 0.15.1

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.
@@ -9,11 +9,11 @@ module.exports = {
9
9
  '@storybook/preset-scss',
10
10
  ],
11
11
  'framework': '@storybook/vue',
12
- "previewHead": (head) => (`
12
+ 'previewHead': (head) => (`
13
13
  ${head}
14
14
  <style>
15
15
  html, body {
16
- background: #eee;
16
+ background: #F6F9FC;
17
17
  }
18
18
  </style>
19
19
  `),
@@ -1,4 +1,4 @@
1
1
  <link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/bootstrap@4.3.1/dist/css/bootstrap.min.css" integrity="sha384-ggOyR0iXCbMQv3Xipma34MD+dH/1fQ784/j6cY/iJTQUOhcWr7x9JvoRxT2MZw1T" crossorigin="anonymous">
2
2
  <script src="https://cdn.jsdelivr.net/npm/bootstrap@4.3.1/dist/js/bootstrap.min.js" integrity="sha384-JjSmVgyd0p3pXB1rRibZUAYoIIy6OrQ6VrjIEaFf/nJGzIxFDsf4x0xIM+B07jRM" crossorigin="anonymous"></script>
3
3
 
4
- <link href="https://fonts.googleapis.com/css?family=Ubuntu:400,500,600,700" rel="stylesheet" />
4
+ <link href="https://fonts.googleapis.com/css?family=Ubuntu:400,500,600,700|Raleway:600,700" rel="stylesheet" />
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@magicgol/polyjuice",
3
- "version": "0.14.0",
3
+ "version": "0.15.1",
4
4
  "scripts": {
5
5
  "serve": "vue-cli-service serve",
6
6
  "build": "vue-cli-service build",
@@ -0,0 +1,10 @@
1
+ /* eslint-disable */
2
+ var icon = require('vue-svgicon')
3
+ icon.register({
4
+ 'facebook': {
5
+ width: 16,
6
+ height: 16,
7
+ viewBox: '0 0 25 25',
8
+ data: '<path pid="0" fill-rule="evenodd" clip-rule="evenodd" d="M9.666 4.213c-.486 0-.972.593-.972 1.403V8.37H13.5v3.997H8.694V24.3h-4.59V12.367H0V8.37h4.104V6.048C4.104 2.7 6.48 0 9.666 0H13.5v4.213H9.666z" _fill="#fff"/>'
9
+ }
10
+ })
@@ -0,0 +1,10 @@
1
+ /* eslint-disable */
2
+ var icon = require('vue-svgicon')
3
+ icon.register({
4
+ 'google': {
5
+ width: 16,
6
+ height: 16,
7
+ viewBox: '0 0 18 18',
8
+ data: '<path pid="0" d="M9.003 7.415v3.439h4.9c-.64 2.084-2.381 3.576-4.9 3.576a5.431 5.431 0 010-10.86c1.349 0 2.58.496 3.528 1.31l2.532-2.534A8.966 8.966 0 009.003 0C4.03 0 0 4.03 0 9s4.03 9 9.003 9c7.555 0 9.224-7.067 8.482-10.573l-8.482-.012z" _fill="#fff"/>'
9
+ }
10
+ })
@@ -1,5 +1,7 @@
1
1
  /* eslint-disable */
2
2
  require('./check-with-circle')
3
+ require('./facebook')
4
+ require('./google')
3
5
  require('./magic-coin')
4
6
  require('./message')
5
7
  require('./soccer-ball')
@@ -0,0 +1,44 @@
1
+ import MgFilingCabinet from './FilingCabinet.vue';
2
+ import MgFilingCabinetTab from './FilingCabinetTab.vue';
3
+
4
+ // More on default export: https://storybook.js.org/docs/vue/writing-stories/introduction#default-export
5
+ export default {
6
+ title: 'Box/Filing Cabinet',
7
+ component: MgFilingCabinet,
8
+ // More on argTypes: https://storybook.js.org/docs/vue/api/argtypes
9
+ argTypes: {
10
+ default: {
11
+ description: "The default Vue slot",
12
+ control: {
13
+ type: 'text',
14
+ },
15
+ table: {
16
+ category: 'Slots',
17
+ type: {
18
+ summary: 'html',
19
+ },
20
+ }
21
+ }
22
+ },
23
+ };
24
+
25
+ // More on component templates: https://storybook.js.org/docs/vue/writing-stories/introduction#using-args
26
+ const Template = (args, { argTypes }) => ({
27
+ props: Object.keys(argTypes),
28
+ components: { MgFilingCabinet, MgFilingCabinetTab },
29
+ template: `<mg-filing-cabinet v-bind="$props">
30
+ <template v-slot:tab-left>
31
+ <mg-filing-cabinet-tab>left tab</mg-filing-cabinet-tab>
32
+ </template>
33
+ <template v-slot:tab-right>
34
+ <mg-filing-cabinet-tab active>right tab</mg-filing-cabinet-tab>
35
+ </template>
36
+ <template v-if="${'default' in args}" v-slot>${args.default}</template>
37
+ </mg-filing-cabinet>`,
38
+ });
39
+
40
+ export const Default = Template.bind({});
41
+ // More on args: https://storybook.js.org/docs/vue/writing-stories/args
42
+ Default.args = {
43
+ default: 'this is the content'
44
+ };
@@ -0,0 +1,21 @@
1
+ <template>
2
+ <div class="bg-white">
3
+ <div class="d-flex">
4
+ <div class="w-50">
5
+ <slot name="tab-left"></slot>
6
+ </div>
7
+ <div class="w-50">
8
+ <slot name="tab-right"></slot>
9
+ </div>
10
+ </div>
11
+ <div class="p-4">
12
+ <slot></slot>
13
+ </div>
14
+ </div>
15
+ </template>
16
+
17
+ <script>
18
+ export default {
19
+ name: 'mg-filing-cabinet',
20
+ };
21
+ </script>
@@ -0,0 +1,43 @@
1
+ import MgFilingCabinetTab from './FilingCabinetTab.vue';
2
+
3
+ // More on default export: https://storybook.js.org/docs/vue/writing-stories/introduction#default-export
4
+ export default {
5
+ title: 'Box/Filing Cabinet/Tab',
6
+ component: MgFilingCabinetTab,
7
+ // More on argTypes: https://storybook.js.org/docs/vue/api/argtypes
8
+ argTypes: {
9
+ default: {
10
+ description: "The default Vue slot",
11
+ control: {
12
+ type: 'text',
13
+ },
14
+ table: {
15
+ category: 'Slots',
16
+ type: {
17
+ summary: 'html',
18
+ },
19
+ }
20
+ }
21
+ },
22
+ };
23
+
24
+ // More on component templates: https://storybook.js.org/docs/vue/writing-stories/introduction#using-args
25
+ const Template = (args, { argTypes }) => ({
26
+ props: Object.keys(argTypes),
27
+ components: { MgFilingCabinetTab },
28
+ template: `<mg-filing-cabinet-tab @click="$emit('click')" v-bind="$props"><template v-if="${'default' in args}" v-slot>${args.default}</template></mg-filing-cabinet-tab>`,
29
+ });
30
+
31
+ export const Default = Template.bind({});
32
+ // More on args: https://storybook.js.org/docs/vue/writing-stories/args
33
+ Default.args = {
34
+ active: false,
35
+ default: 'tab button'
36
+ };
37
+
38
+ export const Active = Template.bind({});
39
+ // More on args: https://storybook.js.org/docs/vue/writing-stories/args
40
+ Active.args = {
41
+ active: true,
42
+ default: 'tab button'
43
+ };
@@ -0,0 +1,55 @@
1
+ <template>
2
+ <div
3
+ class="d-block p-4 text-center text-uppercase"
4
+ :class="classes"
5
+ @click="$emit('click')"
6
+ >
7
+ <span class="pb-1"><slot></slot></span>
8
+ </div>
9
+ </template>
10
+
11
+ <script>
12
+ export default {
13
+ name: 'mg-filing-cabinet-tab',
14
+
15
+ props: {
16
+ active: {
17
+ type: Boolean,
18
+ default: false
19
+ },
20
+ },
21
+
22
+ computed: {
23
+ classes() {
24
+ return {
25
+ 'mg-filing-cabinet-tab': true,
26
+ 'mg-filing-cabinet-tab--active': this.active === true,
27
+ };
28
+ }
29
+ },
30
+ };
31
+ </script>
32
+
33
+ <style lang="scss">
34
+ @import '../../../assets/palette';
35
+
36
+ .mg-filing-cabinet-tab {
37
+ background-color: #f3f3f3;
38
+ border: 1px solid #d8d8d8;
39
+ color: #000;
40
+ cursor: pointer;
41
+ text-decoration: none;
42
+ font-family: 'Raleway', sans-serif;
43
+ font-size: 1.125rem;
44
+ font-weight: 600;
45
+
46
+ &--active {
47
+ background-color: #fff !important;
48
+ border-color: #fff !important;
49
+
50
+ span {
51
+ border-bottom: 2px solid map-get($palette, 'brand');
52
+ }
53
+ }
54
+ }
55
+ </style>
@@ -23,7 +23,7 @@ export default {
23
23
  };
24
24
  },
25
25
  footerVisibility() {
26
- return 'footer' in this.$slots;
26
+ return 'footer' in this.$slots && !!this.$slots.footer;
27
27
  }
28
28
  },
29
29
 
@@ -13,9 +13,21 @@ export default {
13
13
  },
14
14
  size: {
15
15
  control: { type: 'select' },
16
- options: ['large', 'normal'],
16
+ options: ['huge', 'large', 'normal'],
17
17
  defaultValue: 'normal'
18
18
  },
19
+ default: {
20
+ description: "The default Vue slot",
21
+ control: {
22
+ type: 'text',
23
+ },
24
+ table: {
25
+ category: 'Slots',
26
+ type: {
27
+ summary: 'html',
28
+ },
29
+ }
30
+ },
19
31
  },
20
32
  };
21
33
 
@@ -23,7 +35,7 @@ export default {
23
35
  const Template = (args, { argTypes }) => ({
24
36
  props: Object.keys(argTypes),
25
37
  components: { MgRoleBadge },
26
- template: `<mg-role-badge v-bind="$props"></mg-role-badge>`,
38
+ template: `<mg-role-badge v-bind="$props"><template v-if="${'default' in args}" v-slot>${args.default}</template></mg-role-badge>`,
27
39
  });
28
40
 
29
41
  export const Default = Template.bind({});
@@ -3,7 +3,8 @@
3
3
  class="d-inline-flex text-center text-white rounded-circle justify-content-center align-items-center"
4
4
  :class="classes"
5
5
  >
6
- {{ role }}
6
+ <slot v-if="slotVisibility"></slot>
7
+ <template v-else>{{ role }}</template>
7
8
  </div>
8
9
  </template>
9
10
 
@@ -23,7 +24,7 @@ export default {
23
24
  type: String,
24
25
  default: 'normal',
25
26
  validator: function (value) {
26
- return ['normal', 'large'].indexOf(value) !== -1;
27
+ return ['normal', 'large', 'huge'].indexOf(value) !== -1;
27
28
  },
28
29
  }
29
30
  },
@@ -38,7 +39,11 @@ export default {
38
39
  'mg-role-badge--forward': this.role === 'A',
39
40
  'mg-role-badge--normal': this.size === 'normal',
40
41
  'mg-role-badge--large': this.size === 'large',
42
+ 'mg-role-badge--huge': this.size === 'huge',
41
43
  };
44
+ },
45
+ slotVisibility() {
46
+ return 'default' in this.$slots && !!this.$slots.default;
42
47
  }
43
48
  },
44
49
  };
@@ -59,12 +64,20 @@ export default {
59
64
  }
60
65
 
61
66
  &--large {
62
- font-size: 0.875rem;
67
+ font-size: 1rem;
63
68
  height: 1.5rem;
64
69
  width: 1.5rem;
65
70
  min-width: 1.5rem;
66
71
  }
67
72
 
73
+ &--huge {
74
+ border: 2px solid #fff;
75
+ font-size: 1.25rem;
76
+ height: 2.75rem;
77
+ width: 2.75rem;
78
+ min-width: 2.75rem;
79
+ }
80
+
68
81
  &--goalkeeper {
69
82
  background-color: map-get($palette, 'goalkeeper');
70
83
  }
@@ -17,7 +17,7 @@
17
17
  <span class="mg-checkbox-check align-middle d-inline-block position-relative"></span>
18
18
  <!-- end of THE SQUARE -->
19
19
  <!-- TEXT AS LABEL -->
20
- <span class="align-middle">
20
+ <span class="align-middle pl-2">
21
21
  <slot></slot>
22
22
  </span>
23
23
  <!-- end of TEXT AS LABEL -->
@@ -62,6 +62,9 @@ export default {
62
62
  border-radius: 2px;
63
63
  box-sizing: border-box;
64
64
  height: 20px;
65
+ font-family: 'Raleway', sans-serif;
66
+ font-size: 0.875rem;
67
+ font-weight: 600;
65
68
  vertical-align: sub;
66
69
  width: 20px;
67
70
  }
@@ -110,7 +110,8 @@ export default {
110
110
  border-bottom: 1px solid #d8d8d8;
111
111
 
112
112
  input {
113
- color: #666666;
113
+ background-color: #fff;
114
+ color: #666;
114
115
  font-family: 'Raleway', sans-serif;
115
116
  font-size: 1rem;
116
117
  font-weight: 600;
@@ -8,7 +8,7 @@ export default {
8
8
  argTypes: {
9
9
  size: {
10
10
  control: { type: 'select' },
11
- options: ['large', 'normal', 'small', 'x-small'],
11
+ options: ['huge', 'large', 'normal', 'small', 'x-small'],
12
12
  defaultValue: 'normal'
13
13
  },
14
14
  liveBadge: {
@@ -48,12 +48,13 @@ export const Large = Template.bind({});
48
48
  // More on args: https://storybook.js.org/docs/vue/writing-stories/args
49
49
  Large.args = {
50
50
  name: 'VdF',
51
- size: 'large',
51
+ size: 'large'
52
52
  };
53
53
 
54
54
  export const Online = Template.bind({});
55
55
  // More on args: https://storybook.js.org/docs/vue/writing-stories/args
56
56
  Online.args = {
57
57
  online: true,
58
- name: 'VdF'
58
+ name: 'VdF',
59
+ liveBadge: true
59
60
  };
@@ -46,7 +46,7 @@ export default {
46
46
  type: String,
47
47
  default: 'normal',
48
48
  validator: function (value) {
49
- return ['large', 'normal', 'small', 'x-small'].indexOf(value) !== -1;
49
+ return ['huge', 'large', 'normal', 'small', 'x-small'].indexOf(value) !== -1;
50
50
  },
51
51
  },
52
52
  liveBadge: {
@@ -67,6 +67,7 @@ export default {
67
67
  'mg-profile-image--small': this.size === 'small',
68
68
  'mg-profile-image--normal': this.size === 'normal',
69
69
  'mg-profile-image--large': this.size === 'large',
70
+ 'mg-profile-image--huge': this.size === 'huge',
70
71
  'mg-profile-image--online': this.online === true,
71
72
  'mg-profile-image--offline': this.online === false,
72
73
  };
@@ -80,6 +81,7 @@ export default {
80
81
 
81
82
  .mg-profile-image {
82
83
  border-radius: 50%;
84
+ display: inline-flex;
83
85
  font-family: 'Ubuntu', sans-serif;
84
86
  font-weight: 600;
85
87
 
@@ -111,8 +113,15 @@ export default {
111
113
  width: 5rem;
112
114
  }
113
115
 
116
+ &--huge {
117
+ height: 6.25rem;
118
+ min-width: 6.25rem;
119
+ font-size: 2.5rem;
120
+ width: 6.25rem;
121
+ }
122
+
114
123
  .mg-acronym {
115
- background-color: #5770bc;
124
+ background-color: #777777;
116
125
  border-radius: 50%;
117
126
  }
118
127
 
@@ -0,0 +1,19 @@
1
+ import MgDot from './Dot.vue';
2
+
3
+ // More on default export: https://storybook.js.org/docs/vue/writing-stories/introduction#default-export
4
+ export default {
5
+ title: 'Label/Dot',
6
+ component: MgDot,
7
+ };
8
+
9
+ // More on component templates: https://storybook.js.org/docs/vue/writing-stories/introduction#using-args
10
+ const Template = (args, { argTypes }) => ({
11
+ props: Object.keys(argTypes),
12
+ components: { MgDot },
13
+ template: `<mg-dot v-bind="$props"></mg-dot>`,
14
+ });
15
+
16
+ export const Default = Template.bind({});
17
+ // More on args: https://storybook.js.org/docs/vue/writing-stories/args
18
+ Default.args = {
19
+ };
@@ -0,0 +1,30 @@
1
+ <template>
2
+ <span
3
+ class="d-inline-block rounded-circle"
4
+ :class="classes"
5
+ ></span>
6
+ </template>
7
+
8
+ <script>
9
+ export default {
10
+ name: 'mg-dot',
11
+
12
+ computed: {
13
+ classes() {
14
+ return {
15
+ 'mg-dot': true,
16
+ };
17
+ }
18
+ },
19
+ };
20
+ </script>
21
+
22
+ <style lang="scss">
23
+ @import '../../../assets/palette';
24
+
25
+ .mg-dot {
26
+ background-color: map-get($palette, 'brand');
27
+ height: 0.75rem;
28
+ width: 0.75rem;
29
+ }
30
+ </style>
@@ -0,0 +1,43 @@
1
+ import MgListHead from './ListHead.vue';
2
+
3
+ // More on default export: https://storybook.js.org/docs/vue/writing-stories/introduction#default-export
4
+ export default {
5
+ title: 'List/Head',
6
+ component: MgListHead,
7
+ // More on argTypes: https://storybook.js.org/docs/vue/api/argtypes
8
+ argTypes: {
9
+ default: {
10
+ description: "The default Vue slot",
11
+ control: {
12
+ type: 'text',
13
+ },
14
+ table: {
15
+ category: 'Slots',
16
+ type: {
17
+ summary: 'html',
18
+ },
19
+ }
20
+ },
21
+ },
22
+ };
23
+
24
+ // More on component templates: https://storybook.js.org/docs/vue/writing-stories/introduction#using-args
25
+ const Template = (args, { argTypes }) => ({
26
+ props: Object.keys(argTypes),
27
+ components: { MgListHead },
28
+ template: `
29
+ <div class="row">
30
+ <div class="col-6 p-0">
31
+ <mg-list-head @click="$emit('click')" v-bind="$props"><template v-if="${'default' in args}" v-slot>${args.default}</template></mg-list-head>
32
+ </div>
33
+ <div class="col-6 p-0">
34
+ <mg-list-head>Another head</mg-list-head>
35
+ </div>
36
+ </div>`,
37
+ });
38
+
39
+ export const Default = Template.bind({});
40
+ // More on args: https://storybook.js.org/docs/vue/writing-stories/args
41
+ Default.args = {
42
+ default: 'this is the list head'
43
+ };
@@ -0,0 +1,35 @@
1
+ <template>
2
+ <div
3
+ class="text-uppercase pb-2 px-3"
4
+ :class="classes"
5
+ ><slot></slot></div>
6
+ </template>
7
+
8
+ <script>
9
+ export default {
10
+ name: 'mg-list-head',
11
+
12
+ computed: {
13
+ classes() {
14
+ return {
15
+ 'mg-list-head': true,
16
+ };
17
+ },
18
+ footerVisibility() {
19
+ return 'footer' in this.$slots && !!this.$slots.footer;
20
+ }
21
+ },
22
+ };
23
+ </script>
24
+
25
+ <style lang="scss">
26
+ @import '../../../assets/palette';
27
+
28
+ .mg-list-head {
29
+ border-bottom: 1px solid #dee2e6;
30
+ color: #777777;
31
+ font-family: 'Ubuntu', sans-serif;
32
+ font-size: 0.75rem;
33
+ font-weight: 500;
34
+ }
35
+ </style>
@@ -0,0 +1,54 @@
1
+ import MgSocialButton from './SocialButton.vue';
2
+
3
+ // More on default export: https://storybook.js.org/docs/vue/writing-stories/introduction#default-export
4
+ export default {
5
+ title: 'Social/Button',
6
+ component: MgSocialButton,
7
+ // More on argTypes: https://storybook.js.org/docs/vue/api/argtypes
8
+ argTypes: {
9
+ channel: {
10
+ control: { type: 'select' },
11
+ options: ['google', 'facebook'],
12
+ defaultValue: 'facebook'
13
+ },
14
+ default: {
15
+ description: "The default Vue slot",
16
+ control: {
17
+ type: 'text',
18
+ },
19
+ table: {
20
+ category: 'Slots',
21
+ type: {
22
+ summary: 'html',
23
+ },
24
+ }
25
+ }
26
+ },
27
+ };
28
+
29
+ // More on component templates: https://storybook.js.org/docs/vue/writing-stories/introduction#using-args
30
+ const Template = (args, { argTypes }) => ({
31
+ props: Object.keys(argTypes),
32
+ components: { MgSocialButton },
33
+ template: `<mg-social-button @click="$emit('click')" v-bind="$props"><template v-if="${'default' in args}" v-slot>${args.default}</template></mg-social-button>`,
34
+ });
35
+
36
+ export const Facebook = Template.bind({});
37
+ // More on args: https://storybook.js.org/docs/vue/writing-stories/args
38
+ Facebook.args = {
39
+ channel: 'facebook',
40
+ default: 'Accedi con Facebook'
41
+ };
42
+
43
+ export const Google = Template.bind({});
44
+ Google.args = {
45
+ channel: 'google',
46
+ default: 'Accedi con Google'
47
+ };
48
+
49
+ export const Disabled = Template.bind({});
50
+ Disabled.args = {
51
+ disabled: true,
52
+ channel: 'google',
53
+ default: 'Accedi con Google'
54
+ };
@@ -0,0 +1,81 @@
1
+ <template>
2
+ <button
3
+ type="button"
4
+ class="p-3 d-flex align-items-center w-100 text-white border-0"
5
+ :class="classes"
6
+ :disabled="disabled"
7
+ @click="$emit('click')"
8
+ >
9
+ <span class="flex-grow-0"><svgicon :name="channel"></svgicon></span>
10
+ <span class="flex-grow-1 text-center"><slot></slot></span>
11
+ </button>
12
+ </template>
13
+
14
+ <script>
15
+ export default {
16
+ name: 'mg-social-button',
17
+
18
+ props: {
19
+ disabled: {
20
+ type: Boolean,
21
+ default: false,
22
+ },
23
+ channel: {
24
+ type: String,
25
+ default: 'facebook',
26
+ validator: function (value) {
27
+ return ['facebook', 'google'].indexOf(value) !== -1;
28
+ },
29
+ }
30
+ },
31
+
32
+ computed: {
33
+ classes() {
34
+ return {
35
+ 'mg-social-button': true,
36
+ 'mg-social-button--disabled': this.disabled,
37
+ 'mg-social-button--facebook': this.channel === 'facebook',
38
+ 'mg-social-button--google': this.channel === 'google',
39
+ };
40
+ }
41
+ },
42
+
43
+ methods: {
44
+ onClick() {
45
+ this.$emit('click');
46
+ },
47
+ },
48
+ }
49
+ </script>
50
+
51
+ <style lang="scss">
52
+ @import '../../../assets/palette';
53
+
54
+ .mg-social-button {
55
+ appearance: none;
56
+ cursor: pointer;
57
+ font-family: 'Raleway', sans-serif;
58
+ font-size: 0.8125rem;
59
+ font-weight: 700;
60
+ outline: none;
61
+ text-decoration: none;
62
+
63
+ svg {
64
+ fill: white;
65
+ width: 1rem;
66
+ }
67
+
68
+ &--facebook {
69
+ background-color: #4671b8;
70
+ }
71
+
72
+ &--google {
73
+ background-color: #328bee;
74
+ }
75
+
76
+ &--disabled {
77
+ opacity: 0.6 !important;
78
+ cursor: not-allowed !important;
79
+ }
80
+ }
81
+ </style>
@@ -0,0 +1,3 @@
1
+ <svg viewBox="0 0 25 25" fill="none" xmlns="http://www.w3.org/2000/svg">
2
+ <path fill-rule="evenodd" clip-rule="evenodd" d="M9.666 4.2125C9.18 4.2125 8.694 4.806 8.694 5.616V8.37H13.5V12.3665H8.694V24.3005H4.104V12.3665H0V8.37H4.104V6.048C4.104 2.7 6.48 0 9.666 0H13.5V4.2125H9.666Z" fill="white"/>
3
+ </svg>
@@ -0,0 +1,3 @@
1
+ <svg viewBox="0 0 18 18" fill="none" xmlns="http://www.w3.org/2000/svg">
2
+ <path d="M9.00327 7.41519V10.854H13.9025C13.2635 12.9379 11.5216 14.4295 9.00327 14.4295C6.00472 14.429 3.5739 11.9986 3.573 9.00001C3.57278 7.55975 4.14483 6.17841 5.16325 5.15999C6.18167 4.14157 7.56301 3.56952 9.00327 3.56974C10.3516 3.56974 11.5822 4.06556 12.5313 4.88046L15.0627 2.34574C13.4073 0.833677 11.2453 -0.00324253 9.00327 9.4415e-06C4.03036 9.4415e-06 0 4.03037 0 9.00001C0 13.9696 4.03036 18 9.00327 18C16.5584 18 18.2266 10.9334 17.4854 7.42746L9.00327 7.41519Z" fill="white"/>
3
+ </svg>