@shipstatic/drop 2.10.4-beta.8 → 2.10.4-beta.9

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.
package/dist/index.cjs CHANGED
@@ -1141,14 +1141,18 @@ function useDrop({ ship }) {
1141
1141
  ]);
1142
1142
  if (run.signal.aborted) return;
1143
1143
  if (files.length === 0) {
1144
- setState(initialState);
1144
+ setState({
1145
+ ...initialState,
1146
+ phase: "error",
1147
+ status: { title: "Empty Folder", details: "It has no files to deploy." }
1148
+ });
1145
1149
  return;
1146
1150
  }
1147
1151
  const outcome = await processFiles(files, {
1148
1152
  limits,
1149
- onStatus: (status) => {
1150
- if (!run.signal.aborted) setState((prev) => ({ ...prev, status }));
1151
- }
1153
+ // The pipeline says its status before its first wait, so a
1154
+ // cancelled run has none left to say.
1155
+ onStatus: (status) => setState((prev) => ({ ...prev, status }))
1152
1156
  });
1153
1157
  if (run.signal.aborted) return;
1154
1158
  setState({
@@ -1220,11 +1224,10 @@ function useDrop({ ship }) {
1220
1224
  if (file) files.push(file);
1221
1225
  }
1222
1226
  }
1223
- const plain = Array.from(e.dataTransfer.files);
1224
- if (directories.length === 0 && files.length === 0 && plain.length === 0) return;
1227
+ if (directories.length === 0 && files.length === 0) return;
1225
1228
  await prepare(async () => {
1226
1229
  await Promise.all(directories.map((d) => traverseFileTree(d.entry, files, d.path)));
1227
- return files.length > 0 ? files : plain;
1230
+ return files;
1228
1231
  });
1229
1232
  },
1230
1233
  [prepare]