Skip to content

Commit 70c8b73

Browse files
committed
feat(dropzone): s2 migrations
1 parent da506c0 commit 70c8b73

File tree

7 files changed

+88
-88
lines changed

7 files changed

+88
-88
lines changed

.changeset/big-beds-care.md

+15
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
---
2+
"@spectrum-css/dropzone": major
3+
---
4+
5+
## Dropzone S2 Migration
6+
7+
This migration shares the new changes made from the illustrated message component.
8+
9+
### New mods
10+
11+
`--mod-drop-zone-content-height`
12+
13+
### Removed mods
14+
15+
`--mod-drop-zone-body-color` `--mod-drop-zone-body-font-family` `--mod-drop-zone-body-font-style` `--mod-drop-zone-body-font-weight` `--mod-drop-zone-body-line-height` `--mod-drop-zone-content-color` `--mod-drop-zone-content-edge-to-text` `--mod-drop-zone-content-font-size` `--mod-drop-zone-heading-color` `--mod-drop-zone-heading-font-family` `--mod-drop-zone-heading-font-size` `--mod-drop-zone-heading-font-style` `--mod-drop-zone-heading-font-weight` `--mod-drop-zone-heading-line-height` `--mod-drop-zone-heading-to-body` `--mod-drop-zone-illustration-to-heading` `--mod-drop-zone-illustration-to-title`
File renamed without changes.

components/dropzone/index.css

+14-52
Original file line numberDiff line numberDiff line change
@@ -12,83 +12,39 @@ governing permissions and limitations under the License.
1212

1313
.spectrum-DropZone {
1414
--spectrum-drop-zone-padding: var(--spectrum-spacing-400);
15-
--spectrum-drop-zone-illustration-to-heading: var(--spectrum-spacing-400);
16-
--spectrum-drop-zone-heading-to-body: var(--spectrum-spacing-75);
17-
1815
--spectrum-drop-zone-border-width: var(--spectrum-border-width-200);
19-
--spectrum-drop-zone-corner-radius: var(--spectrum-corner-radius-100);
16+
--spectrum-drop-zone-corner-radius: var(--spectrum-corner-radius-700);
2017
--spectrum-drop-zone-border-color: var(--spectrum-gray-200);
2118

22-
--spectrum-drop-zone-heading-font-family: var(--spectrum-sans-font-family-stack);
23-
--spectrum-drop-zone-heading-font-weight: var(--spectrum-heading-sans-serif-font-weight);
24-
--spectrum-drop-zone-heading-font-style: var(--spectrum-heading-sans-serif-font-style);
25-
--spectrum-drop-zone-heading-font-size: var(--spectrum-drop-zone-title-size);
26-
--spectrum-drop-zone-heading-line-height: var(--spectrum-heading-line-height);
27-
--spectrum-drop-zone-heading-color: var(--spectrum-heading-color);
28-
29-
--spectrum-drop-zone-body-font-family: var(--spectrum-sans-font-family-stack);
30-
--spectrum-drop-zone-body-font-weight: var(--spectrum-body-sans-serif-font-weight);
31-
--spectrum-drop-zone-body-font-style: var(--spectrum-body-sans-serif-font-style);
32-
--spectrum-drop-zone-body-font-size: var(--spectrum-drop-zone-body-size);
33-
--spectrum-drop-zone-body-line-height: var(--spectrum-body-line-height);
34-
--spectrum-drop-zone-body-color: var(--spectrum-body-color);
35-
3619
--spectrum-drop-zone-background-color: var(--spectrum-drop-zone-background-color-rgb);
3720
--spectrum-drop-zone-border-color-hover: var(--spectrum-accent-visual-color);
3821
--spectrum-drop-zone-illustration-color: var(--spectrum-neutral-visual-color);
3922
--spectrum-drop-zone-illustration-color-hover: var(--spectrum-accent-visual-color);
40-
--spectrum-drop-zone-illustration-to-title: var(--spectrum-spacing-200);
4123
--spectrum-drop-zone-body-to-action: var(--spectrum-spacing-300);
4224

4325
/* Filled styles */
44-
--spectrum-drop-zone-content-height: var(--spectrum-component-height-300);
4526
--spectrum-drop-zone-content-max-width: var(--spectrum-drop-zone-content-maximum-width);
46-
--spectrum-drop-zone-content-edge-to-text: var(--spectrum-component-edge-to-text-300);
4727
--spectrum-drop-zone-content-top-to-text: var(--spectrum-component-top-to-text-300);
4828
--spectrum-drop-zone-content-bottom-to-text: var(--spectrum-component-bottom-to-text-300);
4929

5030
--spectrum-drop-zone-content-font-family: var(--spectrum-sans-font-family-stack);
5131
--spectrum-drop-zone-content-font-weight: var(--spectrum-bold-font-weight);
5232
--spectrum-drop-zone-content-font-style: var(--spectrum-default-font-style);
53-
--spectrum-drop-zone-content-font-size: var(--spectrum-font-size-300);
5433
--spectrum-drop-zone-content-line-height: var(--spectrum-line-height-100);
5534

5635
--spectrum-drop-zone-content-background-color: var(--spectrum-accent-visual-color);
57-
--spectrum-drop-zone-content-color: var(--spectrum-white);
5836

5937
/* Settings for a nested illustrated message */
6038
--mod-illustrated-message-vertical-maximum-width: var(--mod-drop-zone-content-maximum-width, var(--spectrum-drop-zone-content-maximum-width));
6139
--mod-illustrated-message-illustration-color: var(--mod-drop-zone-illustration-color, var(--spectrum-drop-zone-illustration-color));
62-
--mod-illustrated-message-illustration-to-heading: var(--mod-drop-zone-illustration-to-heading, var(--spectrum-drop-zone-illustration-to-heading));
63-
--mod-illustrated-message-illustration-to-content: var(--mod-drop-zone-illustration-to-title, var(--spectrum-drop-zone-illustration-to-title));
64-
--mod-illustrated-message-heading-to-description: var(--mod-drop-zone-heading-to-body, var(--spectrum-drop-zone-heading-to-body));
40+
6541
--mod-illustrated-message-description-to-action: var(--mod-drop-zone-body-to-action, var(--spectrum-drop-zone-body-to-action));
66-
--mod-illustrated-message-title-font-family: var(--mod-drop-zone-heading-font-family, var(--spectrum-drop-zone-heading-font-family));
67-
--mod-illustrated-message-title-font-weight: var(--mod-drop-zone-heading-font-weight, var(--spectrum-drop-zone-heading-font-weight));
68-
--mod-illustrated-message-title-font-style: var(--mod-drop-zone-heading-font-style, var(--spectrum-drop-zone-heading-font-style));
69-
--mod-illustrated-message-title-font-size: var(--mod-drop-zone-heading-font-size, var(--spectrum-drop-zone-heading-font-size));
70-
--mod-illustrated-message-title-line-height: var(--mod-drop-zone-heading-line-height, var(--spectrum-drop-zone-heading-line-height));
71-
--mod-illustrated-message-title-color: var(--mod-drop-zone-heading-color, var(--spectrum-drop-zone-heading-color));
7242
--mod-illustrated-message-description-position: relative;
7343
--mod-illustrated-message-description-z-index: 10;
74-
--mod-illustrated-message-description-font-family: var(--mod-drop-zone-body-font-family, var(--spectrum-drop-zone-body-font-family));
75-
--mod-illustrated-message-description-font-weight: var(--mod-drop-zone-body-font-weight, var(--spectrum-drop-zone-body-font-weight));
76-
--mod-illustrated-message-description-font-style: var(--mod-drop-zone-body-font-style, var(--spectrum-drop-zone-body-font-style));
7744
--mod-illustrated-message-description-font-size: var(--mod-drop-zone-body-font-size, var(--spectrum-drop-zone-body-font-size));
78-
--mod-illustrated-message-description-line-height: var(--mod-drop-zone-body-line-height, var(--spectrum-drop-zone-body-line-height));
79-
--mod-illustrated-message-description-color: var(--mod-drop-zone-body-color, var(--spectrum-drop-zone-body-color));
80-
81-
/* Settings for a nested actionbutton */
82-
--mod-actionbutton-font-size: var(--mod-drop-zone-content-font-size, var(--spectrum-drop-zone-content-font-size));
83-
--mod-actionbutton-label-color: var(--mod-drop-zone-content-color, var(--spectrum-drop-zone-content-color));
84-
--mod-actionbutton-edge-to-text: var(--mod-drop-zone-content-edge-to-text, var(--spectrum-drop-zone-content-edge-to-text));
85-
86-
/* cjk language support */
87-
&:lang(ja),
88-
&:lang(zh),
89-
&:lang(ko) {
90-
--spectrum-drop-zone-heading-font-size: var(--spectrum-drop-zone-cjk-title-size);
91-
}
45+
46+
--mod-drop-zone-content-display: flex;
47+
--mod-drop-zone-content-height: 280px;
9248
}
9349

9450
.spectrum-DropZone {
@@ -102,6 +58,7 @@ governing permissions and limitations under the License.
10258
border-style: var(--mod-drop-zone-border-style, dashed);
10359
background-size: cover;
10460
background-color: var(--mod-drop-zone-background-color, var(--spectrum-drop-zone-background-color));
61+
color: var(--spectrum-drop-zone-illustration-color);
10562

10663
&.is-dragged {
10764
/* @deprecation --mod-drop-zone-border-style--dragged will be removed during the S2 migration; please update your code to --mod-drop-zone-border-style-dragged */
@@ -111,6 +68,7 @@ governing permissions and limitations under the License.
11168

11269
/* Updated values for a nested illustrated message when state changes */
11370
--mod-illustrated-message-illustration-color: var(--mod-drop-zone-illustration-color-hover, var(--spectrum-drop-zone-illustration-color-hover));
71+
color: var(--spectrum-drop-zone-illustration-color-hover);
11472
}
11573

11674
&.is-filled {
@@ -122,8 +80,12 @@ governing permissions and limitations under the License.
12280
}
12381

12482
&.is-filled.is-dragged {
125-
--mod-drop-zone-content-display: flex;
126-
background-image: url("https://s3-alpha-sig.figma.com/img/18cd/d82f/a71c264919d2049dcb540ae23897d027?Expires=1733097600&Key-Pair-Id=APKAQ4GOSFWCVNEHN3O4&Signature=OMgIsMMWb10DyYC8c-pAUm4MxTwft~CTzqPojWvC0fLCFthNPTm5uh3esb1hTRxleJ9-HMNTvqawigP1GCbYI4PqCgkgMZA2CxvtksvQoi2qvVOBy-U6grTgw2KRFOkNEsT~UkcQRAdx0wDZs-PBGyeeMjs0jyZTmq7LbR5ntIVaFFNTpBTnj1o9Hl2S-Ofo1UEANW58Az~3JvY1XyuSYd3q1QIXb-lYi57QQ74F85P0B6ZDW~0n7o-9eg4SsJ0OgVgJu3LRr6XFyNCbb109Iu~wrmSHCjnCLm5~9v4lY0Tm8whnUYQ3js88LHFxUghP~3MJahtKgJXqMwJKNMhCCQ__");
83+
background-position: center;
84+
display: var(--mod-drop-zone-content-display);
85+
align-items: center;
86+
justify-content: center;
87+
block-size: var(--mod-drop-zone-content-height);
88+
background-blend-mode: multiply;
12789

12890
.spectrum-DropZone-actions {
12991
margin-block-start: 0;
@@ -153,7 +115,7 @@ governing permissions and limitations under the License.
153115
.spectrum-DropZone-button {
154116
box-sizing: border-box;
155117
border: none;
156-
block-size: var(--mod-drop-zone-content-height, var(--spectrum-drop-zone-content-height));
118+
block-size: auto;
157119
max-inline-size: var(--mod-drop-zone-content-max-width, var(--spectrum-drop-zone-content-max-width));
158120
padding-block-start: var(--mod-drop-zone-content-top-to-text, var(--spectrum-drop-zone-content-top-to-text));
159121
padding-block-end: var(--mod-drop-zone-content-bottom-to-text, var(--spectrum-drop-zone-content-bottom-to-text));

components/dropzone/metadata/mods.md

-17
Original file line numberDiff line numberDiff line change
@@ -3,12 +3,7 @@
33
| `--mod-drop-zone-background-color` |
44
| `--mod-drop-zone-background-color-opacity` |
55
| `--mod-drop-zone-background-color-opacity-filled` |
6-
| `--mod-drop-zone-body-color` |
7-
| `--mod-drop-zone-body-font-family` |
86
| `--mod-drop-zone-body-font-size` |
9-
| `--mod-drop-zone-body-font-style` |
10-
| `--mod-drop-zone-body-font-weight` |
11-
| `--mod-drop-zone-body-line-height` |
127
| `--mod-drop-zone-body-to-action` |
138
| `--mod-drop-zone-border-color` |
149
| `--mod-drop-zone-border-color-hover` |
@@ -18,11 +13,8 @@
1813
| `--mod-drop-zone-border-width` |
1914
| `--mod-drop-zone-content-background-color` |
2015
| `--mod-drop-zone-content-bottom-to-text` |
21-
| `--mod-drop-zone-content-color` |
2216
| `--mod-drop-zone-content-display` |
23-
| `--mod-drop-zone-content-edge-to-text` |
2417
| `--mod-drop-zone-content-font-family` |
25-
| `--mod-drop-zone-content-font-size` |
2618
| `--mod-drop-zone-content-font-style` |
2719
| `--mod-drop-zone-content-font-weight` |
2820
| `--mod-drop-zone-content-height` |
@@ -31,16 +23,7 @@
3123
| `--mod-drop-zone-content-maximum-width` |
3224
| `--mod-drop-zone-content-top-to-text` |
3325
| `--mod-drop-zone-corner-radius` |
34-
| `--mod-drop-zone-heading-color` |
35-
| `--mod-drop-zone-heading-font-family` |
36-
| `--mod-drop-zone-heading-font-size` |
37-
| `--mod-drop-zone-heading-font-style` |
38-
| `--mod-drop-zone-heading-font-weight` |
39-
| `--mod-drop-zone-heading-line-height` |
40-
| `--mod-drop-zone-heading-to-body` |
4126
| `--mod-drop-zone-illustration-color` |
4227
| `--mod-drop-zone-illustration-color-hover` |
43-
| `--mod-drop-zone-illustration-to-heading` |
44-
| `--mod-drop-zone-illustration-to-title` |
4528
| `--mod-drop-zone-padding` |
4629
| `--mod-drop-zone-width` |

components/dropzone/stories/dropzone.stories.js

+21-12
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,5 @@
11
import { default as IllustratedMessage } from "@spectrum-css/illustratedmessage/stories/illustratedmessage.stories.js";
2-
import { html } from "lit";
3-
import { Template } from "./template";
4-
2+
import { SizingTemplate, Template } from "./template";
53

64
/**
75
* A drop zone is an area on the screen into a which an object can be dragged and dropped to accomplish a task. For example, a drop zone might be used in an upload workflow to enable the user to simply drop a file from their operating system into the drop zone, which is a more efficient and intuitive action, rather than utilize the standard "Choose file" dialog.
@@ -37,11 +35,13 @@ export default {
3735
category: "Content"
3836
},
3937
},
38+
...IllustratedMessage.argTypes,
4039
hasButtons: {
41-
name: "Show button group",
4240
table: { disable: true },
4341
},
44-
...IllustratedMessage.argTypes
42+
isHorizontal: {
43+
table: { disable: true },
44+
},
4545
},
4646
args: {
4747
rootClass: "spectrum-DropZone",
@@ -50,6 +50,7 @@ export default {
5050
heading: "Drag and drop your file",
5151
description: "Or, select a file from your computer.",
5252
label: "Browse files",
53+
size: "m"
5354
},
5455
parameters: {
5556
actions: {
@@ -62,22 +63,30 @@ export default {
6263
},
6364
};
6465

65-
export const Default = (args) => html`
66-
<div>
67-
${Template({
68-
...args
69-
})}
70-
</div>
71-
`;
66+
export const Default = Template.bind({});
7267
Default.args = {};
7368

7469
export const Dragged = Template.bind({});
7570
Dragged.args = {
7671
isDragged: true,
7772
};
73+
Dragged.parameters = {
74+
chromatic: { disableSnapshot: true },
75+
};
7876

7977
export const FilledAndDragged = Template.bind({});
8078
FilledAndDragged.args = {
8179
isDragged: true,
8280
isFilled: true,
81+
label: "Drop file to replace"
82+
};
83+
FilledAndDragged.parameters = {
84+
chromatic: { disableSnapshot: true },
8385
};
86+
87+
export const Sizing = SizingTemplate.bind({});
88+
Sizing.args = {};
89+
Sizing.tags = ["!dev"];
90+
Sizing.parameters = {
91+
chromatic: { disableSnapshot: true },
92+
};

0 commit comments

Comments
 (0)