@cypress-design/vue-alert 0.5.1 → 0.5.3

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.
@@ -1,13 +1,13 @@
1
1
  $ yarn build:module && yarn build:types
2
2
  $ yarn vite build
3
3
  $ /home/runner/work/cypress-design/cypress-design/node_modules/.bin/vite build
4
- vite v4.2.2 building for production...
4
+ vite v4.3.5 building for production...
5
5
  transforming...
6
6
  ✓ 5 modules transformed.
7
7
  rendering chunks...
8
8
  computing gzip size...
9
- dist/index.es.mjs 9.05 kB │ gzip: 2.64 kB │ map: 269.11 kB
10
- dist/index.umd.js 7.47 kB │ gzip: 2.50 kB │ map: 268.50 kB
11
- ✓ built in 4.92s
9
+ dist/index.es.mjs 10.56 kB │ gzip: 2.87 kB │ map: 270.36 kB
10
+ dist/index.umd.js 8.82 kB │ gzip: 2.72 kB │ map: 269.68 kB
11
+ ✓ built in 9.30s
12
12
  $ yarn vue-tsc --project ./tsconfig.build.json
13
13
  $ /home/runner/work/cypress-design/cypress-design/node_modules/.bin/vue-tsc --project ./tsconfig.build.json
package/Alert.vue CHANGED
@@ -11,10 +11,10 @@ import { DetailsAnimation } from '@cypress-design/details-animation'
11
11
  import {
12
12
  AlertSize,
13
13
  alertSizesClasses,
14
- AlertType,
14
+ AlertVariant,
15
15
  defaultAlertSize,
16
16
  defaultAlertTitle,
17
- defaultAlertType,
17
+ defaultAlertVariant,
18
18
  alertClasses,
19
19
  } from '@cypress-design/constants-alert'
20
20
 
@@ -34,7 +34,12 @@ const props = withDefaults(
34
34
  /**
35
35
  * Color scheme
36
36
  */
37
- type?: AlertType
37
+ variant?: AlertVariant
38
+ /**
39
+ * Color scheme
40
+ * @deprecated use `variant` instead
41
+ */
42
+ type?: AlertVariant
38
43
  /**
39
44
  * If details are provided,text used in the toggle button
40
45
  */
@@ -61,17 +66,22 @@ const props = withDefaults(
61
66
  size?: AlertSize
62
67
  }>(),
63
68
  {
64
- type: defaultAlertType,
69
+ variant: undefined,
70
+ type: defaultAlertVariant,
65
71
  detailsTitle: defaultAlertTitle,
66
72
  size: defaultAlertSize,
67
73
  }
68
74
  )
69
75
 
76
+ const variant = computed(() => {
77
+ return props.variant ?? props.type
78
+ })
79
+
70
80
  const detailsRef = ref(null)
71
81
  const contentRef = ref(null)
72
82
 
73
- const typeClasses = computed(() => {
74
- return alertClasses[props.type] ?? {}
83
+ const variantClasses = computed(() => {
84
+ return alertClasses[variant.value] ?? {}
75
85
  })
76
86
 
77
87
  let timeout: number | undefined
@@ -105,13 +115,13 @@ function dismiss() {
105
115
 
106
116
  const computedIconProps = computed(() => {
107
117
  return {
108
- strokeColor: typeClasses.value.iconColor,
118
+ strokeColor: variantClasses.value.iconColor,
109
119
  class: 'my-[4px] mr-[8px]',
110
120
  }
111
121
  })
112
122
 
113
123
  const icon: ComputedRef<FunctionalComponent | null> = computed(() => {
114
- switch (props.type) {
124
+ switch (variant.value) {
115
125
  case 'info':
116
126
  return null
117
127
  case 'success':
@@ -134,9 +144,9 @@ const sizeClasses = computed(() => {
134
144
  <div
135
145
  v-if="!dismissed"
136
146
  class="overflow-hidden text-left"
137
- :class="props.notRounded ? undefined : 'rounded'"
147
+ :class="[variantClasses.wrapperClass, { rounded: !props.notRounded }]"
138
148
  >
139
- <div class="flex" :class="[typeClasses.headerClass, sizeClasses]">
149
+ <div class="flex" :class="[variantClasses.headerClass, sizeClasses]">
140
150
  <!--
141
151
  @slot replace the default left icon here
142
152
  @binding strokeColor - a windicolor that to be passed to `strokeColor`
@@ -159,10 +169,10 @@ const sizeClasses = computed(() => {
159
169
  @click="dismiss"
160
170
  aria-label="Dismiss"
161
171
  >
162
- <IconActionDeleteLarge :stroke-color="typeClasses.iconCloseColor" />
172
+ <IconActionDeleteLarge :stroke-color="variantClasses.iconCloseColor" />
163
173
  </button>
164
174
  </div>
165
- <div v-if="slots.body" class="p-[16px]" :class="typeClasses.bodyClass">
175
+ <div v-if="slots.body" class="p-[16px]" :class="variantClasses.bodyClass">
166
176
  <!-- @slot body/details of the alert -->
167
177
  <slot name="body" />
168
178
  </div>
@@ -170,14 +180,14 @@ const sizeClasses = computed(() => {
170
180
  v-if="slots.details"
171
181
  class="p-[16px] border-t border-t-1"
172
182
  ref="detailsRef"
173
- :class="[typeClasses.bodyClass, typeClasses.borderClass]"
183
+ :class="[variantClasses.bodyClass, variantClasses.borderClass]"
174
184
  >
175
185
  <summary
176
186
  class="flex font-medium cursor-pointer details-none"
177
- :class="typeClasses.detailsHeaderClass"
187
+ :class="variantClasses.detailsHeaderClass"
178
188
  >
179
189
  <IconChevronDownSmall
180
- :strokeColor="typeClasses.iconChevronColor"
190
+ :strokeColor="variantClasses.iconChevronColor"
181
191
  class="icon my-[4px] mr-[8px] transition transform -rotate-90 open:rotate-0"
182
192
  />
183
193
  {{ props.detailsTitle }}
@@ -189,5 +199,11 @@ const sizeClasses = computed(() => {
189
199
  </div>
190
200
  </div>
191
201
  </details>
202
+ <template v-if="$slots.footer">
203
+ <div :class="variantClasses.bodyClass">
204
+ <!--@slot A box to add buttons or additional content -->
205
+ <slot name="footer" />
206
+ </div>
207
+ </template>
192
208
  </div>
193
209
  </template>
package/CHANGELOG.md CHANGED
@@ -1,5 +1,23 @@
1
1
  # @cypress-design/vue-alert
2
2
 
3
+ ## 0.5.3
4
+
5
+ ### Patch Changes
6
+
7
+ - [#217](https://github.com/cypress-io/cypress-design/pull/217) [`0e24977`](https://github.com/cypress-io/cypress-design/commit/0e24977b5c2196b50409c4b1f7fe6fbe6639eb64) Thanks [@elevatebart](https://github.com/elevatebart)! - add alerts new variant and demos
8
+
9
+ - Updated dependencies [[`0e24977`](https://github.com/cypress-io/cypress-design/commit/0e24977b5c2196b50409c4b1f7fe6fbe6639eb64)]:
10
+ - @cypress-design/constants-alert@0.1.1
11
+
12
+ ## 0.5.2
13
+
14
+ ### Patch Changes
15
+
16
+ - [`08ba16d`](https://github.com/cypress-io/cypress-design/commit/08ba16da4a8663676ee96ac4950938857bd0d9a3) Thanks [@elevatebart](https://github.com/elevatebart)! - fix wind-keep plugin
17
+
18
+ - Updated dependencies [[`08ba16d`](https://github.com/cypress-io/cypress-design/commit/08ba16da4a8663676ee96ac4950938857bd0d9a3)]:
19
+ - @cypress-design/vue-icon@0.22.1
20
+
3
21
  ## 0.5.1
4
22
 
5
23
  ### Patch Changes
package/ReadMe.md CHANGED
@@ -1,14 +1,5 @@
1
1
  # Alert
2
2
 
3
- ## Summary
4
-
5
- Use the alert when you need a banner of some kind.
6
- Examples:
7
-
8
- - To give temporary information to the user.
9
- - To attract attention to a specific note on the page.
10
- - To inform the user of a change in the system.
11
-
12
3
  ## Install
13
4
 
14
5
  ```bash
@@ -23,27 +14,30 @@ yarn add @cypress-design/vue-alert
23
14
 
24
15
  ## Usage
25
16
 
26
- The simplest is to use with plain text. By default, type is `info`.
27
-
28
- ```vue live
29
- <script setup>
17
+ ```ts
30
18
  import Alert from '@cypress-design/vue-alert'
31
- </script>
19
+ ```
32
20
 
33
- <template>
34
- <Alert type="error">Great Scott!!</Alert>
35
- </template>
21
+ The simplest is to use with plain text. By default, type is `info`.
22
+
23
+ ```jsx live
24
+ <Alert variant="error">Great Scott!!</Alert>
36
25
  ```
37
26
 
38
27
  One can also have rich text in both the title and the body.
39
28
 
40
29
  ```jsx live
41
- <Alert>
42
- This is an <code>info</code> message
43
- <template #body>
44
- <p>This is the body of the alert.</p>
45
- </template>
46
- </Alert>
30
+ <div class="bg-white p-4">
31
+ <Alert>
32
+ This is an <code>info</code> message
33
+ <template #body>
34
+ <p>This is the body of <b>the alert.</b></p>
35
+ </template>
36
+ <template #details>
37
+ <p>This is the details of the alert.</p>
38
+ </template>
39
+ </Alert>
40
+ </div>
47
41
  ```
48
42
 
49
43
  If you want the alert to be dismissible, you can add the `dismissible` prop. Don't forget to add the `@dismiss` prop to handle the dismiss event.
@@ -63,7 +57,55 @@ const dismissed = false
63
57
  You can also remove the rounded corners and the icon of the alert by adding the `notRounded` and the `noIcon` props.
64
58
 
65
59
  ```jsx live
66
- <Alert type="warning" notRounded noIcon>
60
+ <Alert variant="warning" notRounded noIcon>
67
61
  Look at my corners
68
62
  </Alert>
69
63
  ```
64
+
65
+ ```vue live
66
+ <script setup>
67
+ import { ref } from 'vue'
68
+ import Button from '@cypress-design/vue-button'
69
+ const dismissed = ref(false)
70
+ </script>
71
+
72
+ <template>
73
+ <Alert variant="clear" dismissible @dismiss="dismissed = true">
74
+ <svg
75
+ width="16"
76
+ height="16"
77
+ viewBox="0 0 16 16"
78
+ fill="none"
79
+ xmlns="http://www.w3.org/2000/svg"
80
+ class="mr-2 inline"
81
+ >
82
+ <path
83
+ d="M8 0L0.552002 2.656L1.688 12.504L8 16L14.312 12.504L15.448 2.656L8 0Z"
84
+ fill="#DD0031"
85
+ />
86
+ <path
87
+ d="M8 0L8.00001 1.776V1.768L8 16L14.312 12.504L15.448 2.656L8 0Z"
88
+ fill="#C3002F"
89
+ />
90
+ <path
91
+ d="M8.00001 1.768L3.34401 12.208H5.08001L6.01601 9.872H9.96801L10.904 12.208H12.64L8.00001 1.768ZM9.36001 8.432H6.64001L8.00001 5.16L9.36001 8.432Z"
92
+ fill="white"
93
+ />
94
+ </svg>
95
+ Angular component testing is available for this project
96
+ <template #body>
97
+ You can now use Cypress to develop and test individual components without
98
+ running your whole application. Generate the config in just a few clicks.
99
+ </template>
100
+ <template #footer>
101
+ <div class="p-4 flex flex-wrap overflow-x-hidden gap-4">
102
+ <Button variant="outline-indigo" size="32">Quick setup</Button>
103
+ <Button variant="link" size="32">Read our guides</Button>
104
+ <div class="md:flex-grow md:grow" />
105
+ <Button variant="link" size="32">Give feedback</Button>
106
+ </div>
107
+ </template>
108
+ </Alert>
109
+ <p v-if="dismissed">Alert dismissed</p>
110
+ </template>
111
+ ```
@@ -1,9 +1,14 @@
1
- import { AlertSize, AlertType } from '@cypress-design/constants-alert';
1
+ import { AlertVariant } from '@cypress-design/constants-alert';
2
2
  declare const _default: __VLS_WithTemplateSlots<import("vue").DefineComponent<__VLS_WithDefaults<__VLS_TypePropsToRuntimeProps<{
3
3
  /**
4
4
  * Color scheme
5
5
  */
6
- type?: AlertType | undefined;
6
+ variant?: AlertVariant | undefined;
7
+ /**
8
+ * Color scheme
9
+ * @deprecated use `variant` instead
10
+ */
11
+ type?: AlertVariant | undefined;
7
12
  /**
8
13
  * If details are provided,text used in the toggle button
9
14
  */
@@ -29,7 +34,8 @@ declare const _default: __VLS_WithTemplateSlots<import("vue").DefineComponent<__
29
34
  */
30
35
  size?: "xs" | "sm" | "md" | "lg" | undefined;
31
36
  }>, {
32
- type: AlertType;
37
+ variant: undefined;
38
+ type: AlertVariant;
33
39
  detailsTitle: string;
34
40
  size: "xs" | "sm" | "md" | "lg";
35
41
  }>, {}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
@@ -38,7 +44,12 @@ declare const _default: __VLS_WithTemplateSlots<import("vue").DefineComponent<__
38
44
  /**
39
45
  * Color scheme
40
46
  */
41
- type?: AlertType | undefined;
47
+ variant?: AlertVariant | undefined;
48
+ /**
49
+ * Color scheme
50
+ * @deprecated use `variant` instead
51
+ */
52
+ type?: AlertVariant | undefined;
42
53
  /**
43
54
  * If details are provided,text used in the toggle button
44
55
  */
@@ -64,23 +75,26 @@ declare const _default: __VLS_WithTemplateSlots<import("vue").DefineComponent<__
64
75
  */
65
76
  size?: "xs" | "sm" | "md" | "lg" | undefined;
66
77
  }>, {
67
- type: AlertType;
78
+ variant: undefined;
79
+ type: AlertVariant;
68
80
  detailsTitle: string;
69
81
  size: "xs" | "sm" | "md" | "lg";
70
82
  }>>> & {
71
83
  onDismiss?: (() => any) | undefined;
72
84
  }, {
73
- type: AlertType;
85
+ variant: AlertVariant;
86
+ type: AlertVariant;
74
87
  detailsTitle: string;
75
- size: AlertSize;
88
+ size: "xs" | "sm" | "md" | "lg";
76
89
  }>, {
77
- icon: (_: {
90
+ icon?(_: {
78
91
  strokeColor: import("@cypress-design/vue-icon").WindiColor | undefined;
79
92
  class: string;
80
- }) => any;
81
- default: (_: {}) => any;
82
- body: (_: {}) => any;
83
- details: (_: {}) => any;
93
+ }): any;
94
+ default?(_: {}): any;
95
+ body?(_: {}): any;
96
+ details?(_: {}): any;
97
+ footer?(_: {}): any;
84
98
  }>;
85
99
  export default _default;
86
100
  type __VLS_NonUndefinedable<T> = T extends undefined ? never : T;
@@ -93,13 +107,16 @@ type __VLS_TypePropsToRuntimeProps<T> = {
93
107
  };
94
108
  };
95
109
  type __VLS_WithDefaults<P, D> = {
96
- [K in keyof Pick<P, keyof P>]: K extends keyof D ? P[K] & {
110
+ [K in keyof Pick<P, keyof P>]: K extends keyof D ? __VLS_Prettify<P[K] & {
97
111
  default: D[K];
98
- } : P[K];
112
+ }> : P[K];
99
113
  };
100
114
  type __VLS_WithTemplateSlots<T, S> = T & {
101
115
  new (): {
102
116
  $slots: S;
103
117
  };
104
118
  };
119
+ type __VLS_Prettify<T> = {
120
+ [K in keyof T]: T[K];
121
+ } & {};
105
122
  //# sourceMappingURL=Alert.vue.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"Alert.vue.d.ts","sourceRoot":"","sources":["../Alert.vue.ts"],"names":[],"mappings":"AAUA,OAAO,EACL,SAAS,EAET,SAAS,EAKV,MAAM,iCAAiC,CAAA;;IAyHpC;;OAEG;;IAEH;;OAEG;;IAEH;;OAEG;;IAEH;;OAEG;;IAEH;;OAEG;;IAEH;;OAEG;;IAEH;;OAEG;;;;;;;;;IA1BH;;OAEG;;IAEH;;OAEG;;IAEH;;OAEG;;IAEH;;OAEG;;IAEH;;OAEG;;IAEH;;OAEG;;IAEH;;OAEG;;;;;;;;;UAvBI,SAAS;kBAID,MAAM;UAoBd,SAAS;;;;;UA4LS,GAAG;wBACA,GAAG;qBACL,GAAG;wBACA,GAAG;;AAjVpC,wBA0Wc;AACd,KAAK,sBAAsB,CAAC,CAAC,IAAI,CAAC,SAAS,SAAS,GAAG,KAAK,GAAG,CAAC,CAAC;AACjE,KAAK,6BAA6B,CAAC,CAAC,IAAI;KAAG,CAAC,IAAI,MAAM,CAAC,CAAC,CAAC,GAAG,EAAE,SAAS,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG;QAAE,IAAI,EAAE,OAAO,KAAK,EAAE,QAAQ,CAAC,sBAAsB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;KAAE,GAAG;QAAE,IAAI,EAAE,OAAO,KAAK,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAAC,QAAQ,EAAE,IAAI,CAAA;KAAE;CAAE,CAAC;AAC9M,KAAK,kBAAkB,CAAC,CAAC,EAAE,CAAC,IAAI;KAE1B,CAAC,IAAI,MAAM,IAAI,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,GAAG,CAAC,SAAS,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG;QACzD,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC,CAAA;KACb,GAAG,CAAC,CAAC,CAAC,CAAC;CACR,CAAC;AAWN,KAAK,uBAAuB,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,GAAG;IAAE,QAAO;QAAE,MAAM,EAAE,CAAC,CAAA;KAAE,CAAA;CAAE,CAAC"}
1
+ {"version":3,"file":"Alert.vue.d.ts","sourceRoot":"","sources":["../Alert.vue.ts"],"names":[],"mappings":"AAWA,OAAO,EAGL,YAAY,EAKb,MAAM,iCAAiC,CAAA;;IAkIpC;;OAEG;;IAEH;;;OAGG;;IAEH;;OAEG;;IAEH;;OAEG;;IAEH;;OAEG;;IAEH;;OAEG;;IAEH;;OAEG;;IAEH;;OAEG;;;;;;;;;;IA/BH;;OAEG;;IAEH;;;OAGG;;IAEH;;OAEG;;IAEH;;OAEG;;IAEH;;OAEG;;IAEH;;OAEG;;IAEH;;OAEG;;IAEH;;OAEG;;;;;;;;;;;;;;;;;;;;;;;;AAiQP,wBAA8G;AAE9G,KAAK,sBAAsB,CAAC,CAAC,IAAI,CAAC,SAAS,SAAS,GAAG,KAAK,GAAG,CAAC,CAAC;AACjE,KAAK,6BAA6B,CAAC,CAAC,IAAI;KAAG,CAAC,IAAI,MAAM,CAAC,CAAC,CAAC,GAAG,EAAE,SAAS,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG;QAAE,IAAI,EAAE,OAAO,KAAK,EAAE,QAAQ,CAAC,sBAAsB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;KAAE,GAAG;QAAE,IAAI,EAAE,OAAO,KAAK,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAAC,QAAQ,EAAE,IAAI,CAAA;KAAE;CAAE,CAAC;AAC9M,KAAK,kBAAkB,CAAC,CAAC,EAAE,CAAC,IAAI;KAE1B,CAAC,IAAI,MAAM,IAAI,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,GAAG,CAAC,SAAS,MAAM,CAAC,GAAG,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG;QACxE,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC,CAAA;KACb,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;CACT,CAAC;AAWN,KAAK,uBAAuB,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,GAAG;IAAE,QAAO;QAClD,MAAM,EAAE,CAAC,CAAC;KACT,CAAA;CAAE,CAAC;AACJ,KAAK,cAAc,CAAC,CAAC,IAAI;KAAG,CAAC,IAAI,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;CAAG,GAAG,EAAE,CAAC"}