* Add directory download as zip feature Implements the ability for users to download directories as zip files if enabled in config. Adds a new API route for directory zipping, updates UI components to show a download button for directories, and introduces related config and type changes. Also includes a new download icon. * Windows path bugfix * Include empty directories in zip archive * Address feedback - `isDirectoryDownloadsAllowed` -> `areDirectoryDownloadsAllowed` - send `parentPath` & `name` to API instead of resolving `fullPath` on client - call `ensureUserPathIsValidAndSecurelyAccessible` before zipping - set config `allowDirectoryDownloads` default to `false` - add `zip` to Dockerfile and replace in-house zip algorithm - replace `download.svg` with heroicon's `arrow-down-tray` - `replace` with glob -> `replaceAll` with string * Cleanup apt-get command * Remove unused zip archive and directory functions
24 lines
468 B
Docker
24 lines
468 B
Docker
FROM denoland/deno:ubuntu-2.5.2
|
|
|
|
EXPOSE 8000
|
|
|
|
RUN apt-get update && apt-get install -y make zip
|
|
|
|
WORKDIR /app
|
|
|
|
# These steps will be re-run upon each file change in your working directory:
|
|
ADD . /app
|
|
|
|
# Build fresh
|
|
RUN deno task build
|
|
|
|
RUN chown -R deno:deno /app /deno-dir
|
|
|
|
# Prefer not to run as root.
|
|
USER deno
|
|
|
|
# Compile the main app so that it doesn't need to be compiled each startup/entry.
|
|
RUN deno cache --reload main.ts
|
|
|
|
CMD ["run", "--allow-all", "main.ts"]
|