@designcrowd/fe-shared-lib 1.4.5 → 1.4.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 (63) hide show
  1. package/dist/css/tailwind-brandCrowd.css +6 -3
  2. package/dist/css/tailwind-brandPage.css +6 -3
  3. package/dist/css/tailwind-crazyDomains.css +6 -3
  4. package/dist/css/tailwind-designCom.css +6 -3
  5. package/dist/css/tailwind-designCrowd.css +6 -3
  6. package/package.json +1 -2
  7. package/src/atoms/components/Checkbox/Checkbox.stories.js +134 -1
  8. package/src/atoms/components/Checkbox/Checkbox.vue +2 -8
  9. package/src/atoms/components/Dropdown/DropdownItem.vue +1 -1
  10. package/src/atoms/components/Icon/Icon.stories.js +2 -0
  11. package/src/atoms/components/Icon/Icon.vue +100 -97
  12. package/src/atoms/components/Icon/icons/file.vue +7 -0
  13. package/src/atoms/components/Icon/icons/pen-tool.vue +7 -0
  14. package/src/atoms/components/SparkleIcon/SparkleIcon.stories.js +182 -0
  15. package/src/atoms/components/SparkleIcon/SparkleIcon.vue +105 -0
  16. package/src/atoms/components/SparkleIcon/assets/animations/state-01.svg +5 -0
  17. package/src/atoms/components/SparkleIcon/assets/animations/state-02.svg +5 -0
  18. package/src/atoms/components/SparkleIcon/assets/animations/state-03.svg +5 -0
  19. package/src/atoms/components/SparkleIcon/assets/animations/state-04.svg +5 -0
  20. package/src/atoms/components/SparkleIcon/assets/animations/state-05.svg +5 -0
  21. package/src/atoms/components/SparkleIcon/assets/animations/state-06.svg +5 -0
  22. package/src/atoms/components/SparkleIcon/assets/animations/state-07.svg +5 -0
  23. package/src/atoms/components/SparkleIcon/assets/animations/state-08.svg +5 -0
  24. package/src/atoms/components/SparkleIcon/assets/sparkle.svg +3 -0
  25. package/src/atoms/components/SparkleIcon/index.ts +3 -0
  26. package/src/atoms/components/TextInput/TextInput.vue +2 -1
  27. package/src/atoms/components/Textarea/Textarea.vue +4 -1
  28. package/src/bundles/bundled-translations.de-DE.json +2 -1
  29. package/src/bundles/bundled-translations.es-ES.json +2 -1
  30. package/src/bundles/bundled-translations.fr-CA.json +2 -1
  31. package/src/bundles/bundled-translations.fr-FR.json +2 -1
  32. package/src/bundles/bundled-translations.json +2 -1
  33. package/src/bundles/bundled-translations.pt-BR.json +2 -1
  34. package/src/bundles/bundled-translations.pt-PT.json +2 -1
  35. package/src/experiences/clients/brand-crowd-api.client.js +12 -1
  36. package/src/experiences/clients/brand-page-api.client.js +15 -0
  37. package/src/experiences/components/AuthFlow/AuthModal.vue +1 -1
  38. package/src/experiences/components/AuthFlow/ForgotPassword.vue +1 -1
  39. package/src/experiences/components/AuthFlow/ResetPassword.vue +1 -1
  40. package/src/experiences/components/AuthFlow/ResetPasswordSuccessModal.vue +1 -1
  41. package/src/experiences/components/AuthFlow/SocialSignInButton.vue +1 -1
  42. package/src/experiences/components/AuthFlow/SubmissionButton.vue +1 -1
  43. package/src/experiences/components/PaymentConfigList/PaymentConfig.mixin.js +20 -0
  44. package/src/experiences/components/PaymentConfigList/PaymentConfigDeleteConfigModal.vue +7 -5
  45. package/src/experiences/components/PaymentConfigList/PaymentConfigDropdown.vue +77 -39
  46. package/src/experiences/components/PaymentConfigList/PaymentConfigList.stories.js +45 -0
  47. package/src/experiences/components/PaymentConfigList/PaymentConfigList.vue +3 -3
  48. package/src/experiences/components/PaymentConfigList/i18n/shared-payment-config.de-DE.json +2 -1
  49. package/src/experiences/components/PaymentConfigList/i18n/shared-payment-config.es-ES.json +2 -1
  50. package/src/experiences/components/PaymentConfigList/i18n/shared-payment-config.fr-CA.json +2 -1
  51. package/src/experiences/components/PaymentConfigList/i18n/shared-payment-config.fr-FR.json +2 -1
  52. package/src/experiences/components/PaymentConfigList/i18n/shared-payment-config.json +2 -1
  53. package/src/experiences/components/PaymentConfigList/i18n/shared-payment-config.pt-BR.json +2 -1
  54. package/src/experiences/components/PaymentConfigList/i18n/shared-payment-config.pt-PT.json +2 -1
  55. package/src/experiences/components/PublishBrandPageModal/PublishBrandPageModal.vue +1 -1
  56. package/src/experiences/components/UploadYourLogoApplication/UploadYourLogoApplication.vue +6 -0
  57. package/src/experiences/components/UploadYourLogoOnBoarding/LogoBusinessBrandColours.vue +3 -3
  58. package/src/experiences/components/UploadYourLogoOnBoarding/LogoCropper.vue +1 -1
  59. package/src/experiences/components/UploadYourLogoOnBoarding/LogoUploadModal.vue +1 -1
  60. package/src/experiences/components/UploadYourLogoOnBoarding/LogoUploader.vue +6 -1
  61. package/src/experiences/components/UploadYourLogoOnBoarding/UploadYourLogoOnBoarding.vue +6 -0
  62. package/src/experiences/components/UploadedLogoSearchResultCard/UploadedLogoSearchResultCard.vue +1 -1
  63. package/src/atoms/components/Icon/icons/calculator.vue +0 -3
@@ -738,9 +738,6 @@ video {
738
738
  .tw-mt-0 {
739
739
  margin-top: 0px;
740
740
  }
741
- .tw-mt-0\.5 {
742
- margin-top: 0.125rem;
743
- }
744
741
  .tw-mt-1 {
745
742
  margin-top: 0.25rem;
746
743
  }
@@ -753,6 +750,9 @@ video {
753
750
  .tw-mt-4 {
754
751
  margin-top: 1rem;
755
752
  }
753
+ .tw-mt-6 {
754
+ margin-top: 1.5rem;
755
+ }
756
756
  .tw-mt-8 {
757
757
  margin-top: 2rem;
758
758
  }
@@ -926,6 +926,9 @@ video {
926
926
  .tw-flex-none {
927
927
  flex: none;
928
928
  }
929
+ .tw-flex-shrink-0 {
930
+ flex-shrink: 0;
931
+ }
929
932
  .tw-grow {
930
933
  flex-grow: 1;
931
934
  }
@@ -738,9 +738,6 @@ video {
738
738
  .tw-mt-0 {
739
739
  margin-top: 0px;
740
740
  }
741
- .tw-mt-0\.5 {
742
- margin-top: 0.125rem;
743
- }
744
741
  .tw-mt-1 {
745
742
  margin-top: 0.25rem;
746
743
  }
@@ -753,6 +750,9 @@ video {
753
750
  .tw-mt-4 {
754
751
  margin-top: 1rem;
755
752
  }
753
+ .tw-mt-6 {
754
+ margin-top: 1.5rem;
755
+ }
756
756
  .tw-mt-8 {
757
757
  margin-top: 2rem;
758
758
  }
@@ -926,6 +926,9 @@ video {
926
926
  .tw-flex-none {
927
927
  flex: none;
928
928
  }
929
+ .tw-flex-shrink-0 {
930
+ flex-shrink: 0;
931
+ }
929
932
  .tw-grow {
930
933
  flex-grow: 1;
931
934
  }
@@ -738,9 +738,6 @@ video {
738
738
  .tw-mt-0 {
739
739
  margin-top: 0px;
740
740
  }
741
- .tw-mt-0\.5 {
742
- margin-top: 0.125rem;
743
- }
744
741
  .tw-mt-1 {
745
742
  margin-top: 0.25rem;
746
743
  }
@@ -753,6 +750,9 @@ video {
753
750
  .tw-mt-4 {
754
751
  margin-top: 1rem;
755
752
  }
753
+ .tw-mt-6 {
754
+ margin-top: 1.5rem;
755
+ }
756
756
  .tw-mt-8 {
757
757
  margin-top: 2rem;
758
758
  }
@@ -926,6 +926,9 @@ video {
926
926
  .tw-flex-none {
927
927
  flex: none;
928
928
  }
929
+ .tw-flex-shrink-0 {
930
+ flex-shrink: 0;
931
+ }
929
932
  .tw-grow {
930
933
  flex-grow: 1;
931
934
  }
@@ -738,9 +738,6 @@ video {
738
738
  .tw-mt-0 {
739
739
  margin-top: 0px;
740
740
  }
741
- .tw-mt-0\.5 {
742
- margin-top: 0.125rem;
743
- }
744
741
  .tw-mt-1 {
745
742
  margin-top: 0.25rem;
746
743
  }
@@ -753,6 +750,9 @@ video {
753
750
  .tw-mt-4 {
754
751
  margin-top: 1rem;
755
752
  }
753
+ .tw-mt-6 {
754
+ margin-top: 1.5rem;
755
+ }
756
756
  .tw-mt-8 {
757
757
  margin-top: 2rem;
758
758
  }
@@ -926,6 +926,9 @@ video {
926
926
  .tw-flex-none {
927
927
  flex: none;
928
928
  }
929
+ .tw-flex-shrink-0 {
930
+ flex-shrink: 0;
931
+ }
929
932
  .tw-grow {
930
933
  flex-grow: 1;
931
934
  }
@@ -738,9 +738,6 @@ video {
738
738
  .tw-mt-0 {
739
739
  margin-top: 0px;
740
740
  }
741
- .tw-mt-0\.5 {
742
- margin-top: 0.125rem;
743
- }
744
741
  .tw-mt-1 {
745
742
  margin-top: 0.25rem;
746
743
  }
@@ -753,6 +750,9 @@ video {
753
750
  .tw-mt-4 {
754
751
  margin-top: 1rem;
755
752
  }
753
+ .tw-mt-6 {
754
+ margin-top: 1.5rem;
755
+ }
756
756
  .tw-mt-8 {
757
757
  margin-top: 2rem;
758
758
  }
@@ -926,6 +926,9 @@ video {
926
926
  .tw-flex-none {
927
927
  flex: none;
928
928
  }
929
+ .tw-flex-shrink-0 {
930
+ flex-shrink: 0;
931
+ }
929
932
  .tw-grow {
930
933
  flex-grow: 1;
931
934
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@designcrowd/fe-shared-lib",
3
- "version": "1.4.5",
3
+ "version": "1.4.6",
4
4
  "scripts": {
5
5
  "start": "run-p storybook watch:translation",
6
6
  "build": "npm run build:css --production",
@@ -20,7 +20,6 @@
20
20
  },
21
21
  "dependencies": {
22
22
  "@nuxtjs/i18n": "9.5.4",
23
- "@storybook/react": "^9.0.4",
24
23
  "autoprefixer": "10.4.17",
25
24
  "axios": "1.6.7",
26
25
  "click-outside-vue3": "4.0.1",
@@ -3,6 +3,139 @@ import Checkbox from './Checkbox.vue';
3
3
  export default {
4
4
  title: 'Components/Checkbox',
5
5
  component: Checkbox,
6
+ argTypes: {
7
+ modelValue: {
8
+ control: 'boolean',
9
+ description: 'The checked state of the checkbox',
10
+ table: {
11
+ type: { summary: 'boolean' },
12
+ defaultValue: { summary: false },
13
+ },
14
+ },
15
+ id: {
16
+ control: 'text',
17
+ description: 'Unique identifier for the checkbox',
18
+ table: {
19
+ type: { summary: 'string' },
20
+ },
21
+ },
22
+ label: {
23
+ control: 'text',
24
+ description: 'Label text for the checkbox',
25
+ table: {
26
+ type: { summary: 'string' },
27
+ defaultValue: { summary: 'undefined' },
28
+ },
29
+ },
30
+ showLabelScreenReaderOnly: {
31
+ control: 'boolean',
32
+ description: 'Whether to show the label only to screen readers',
33
+ table: {
34
+ type: { summary: 'boolean' },
35
+ defaultValue: { summary: false },
36
+ },
37
+ },
38
+ inline: {
39
+ control: 'boolean',
40
+ description: 'Display checkbox and label inline',
41
+ table: {
42
+ type: { summary: 'boolean' },
43
+ defaultValue: { summary: false },
44
+ },
45
+ },
46
+ required: {
47
+ control: 'boolean',
48
+ description: 'Show required asterisk on label',
49
+ table: {
50
+ type: { summary: 'boolean' },
51
+ defaultValue: { summary: false },
52
+ },
53
+ },
54
+ disabled: {
55
+ control: 'boolean',
56
+ description: 'Disable the checkbox',
57
+ table: {
58
+ type: { summary: 'boolean' },
59
+ defaultValue: { summary: false },
60
+ },
61
+ },
62
+ color: {
63
+ control: 'select',
64
+ options: ['primary', 'success', 'error', 'info', 'warning'],
65
+ description: 'Color scheme for the checkbox',
66
+ table: {
67
+ type: { summary: 'string' },
68
+ defaultValue: { summary: 'success' },
69
+ },
70
+ },
71
+ size: {
72
+ control: 'select',
73
+ options: ['sm', 'md'],
74
+ description: 'Size of the checkbox',
75
+ table: {
76
+ type: { summary: 'string' },
77
+ defaultValue: { summary: 'md' },
78
+ },
79
+ },
80
+ showBorder: {
81
+ control: 'boolean',
82
+ description: 'Show border around the checkbox',
83
+ table: {
84
+ type: { summary: 'boolean' },
85
+ defaultValue: { summary: false },
86
+ },
87
+ },
88
+ classes: {
89
+ control: 'text',
90
+ description: 'Additional CSS classes',
91
+ table: {
92
+ type: { summary: 'string | object' },
93
+ defaultValue: { summary: '""' },
94
+ },
95
+ },
96
+ },
97
+ };
98
+
99
+ // Interactive story with all controls
100
+ export const Interactive = (args) => ({
101
+ components: { Checkbox },
102
+ setup() {
103
+ return { args };
104
+ },
105
+ data() {
106
+ return {
107
+ checked: args.modelValue,
108
+ };
109
+ },
110
+ template: `
111
+ <Checkbox
112
+ v-model="checked"
113
+ :id="args.id"
114
+ :label="args.label"
115
+ :showLabelScreenReaderOnly="args.showLabelScreenReaderOnly"
116
+ :inline="args.inline"
117
+ :required="args.required"
118
+ :disabled="args.disabled"
119
+ :color="args.color"
120
+ :size="args.size"
121
+ :showBorder="args.showBorder"
122
+ :classes="args.classes"
123
+ />
124
+ `,
125
+ });
126
+
127
+ Interactive.args = {
128
+ modelValue: true,
129
+ id: 'interactive-checkbox',
130
+ label: 'Do you love checkboxes?',
131
+ showLabelScreenReaderOnly: false,
132
+ inline: false,
133
+ required: false,
134
+ disabled: false,
135
+ color: 'success',
136
+ size: 'md',
137
+ showBorder: true,
138
+ classes: '',
6
139
  };
7
140
 
8
141
  export const Sample = () => {
@@ -204,4 +337,4 @@ export const NoBorder = () => {
204
337
  </div>
205
338
  `,
206
339
  };
207
- };
340
+ };
@@ -48,13 +48,7 @@
48
48
  }"
49
49
  :classes="classes"
50
50
  >
51
- <Icon
52
- v-show="modelValue"
53
- :class="{ 'tw-mt-1': size === 'md', 'tw-mt-0.5': size === 'sm' }"
54
- name="check"
55
- color="white"
56
- :size="iconSize"
57
- />
51
+ <Icon v-show="modelValue" name="check" color="white" :size="iconSize" />
58
52
  </div>
59
53
  </div>
60
54
  </label>
@@ -87,4 +81,4 @@ export default {
87
81
  },
88
82
  },
89
83
  };
90
- </script>
84
+ </script>
@@ -2,7 +2,7 @@
2
2
  <div>
3
3
  <div
4
4
  class="tw-flex tw-items-center tw-px-2 tw-py-2 tw-cursor-pointer"
5
- @click="onClick"
5
+ @click.stop="onClick"
6
6
  :class="{
7
7
  'dropdown-item-hover': backgroundHover,
8
8
  }"
@@ -84,6 +84,7 @@ export const IconSample = () => {
84
84
  { name: 'eye-crossed' },
85
85
  { name: 'eye-open' },
86
86
  { name: 'fees' },
87
+ { name: 'file' },
87
88
  { name: 'filter' },
88
89
  { name: 'filter-crazy-domains' },
89
90
  { name: 'flag' },
@@ -189,6 +190,7 @@ export const IconSample = () => {
189
190
  { name: 'payments-featured' },
190
191
  { name: 'payments-textonly' },
191
192
  { name: 'payments-thumbnail' },
193
+ { name: 'pen-tool' },
192
194
  { name: 'phone' },
193
195
  { name: 'plus' },
194
196
  { name: 'plus-circle' },