Releases: pseudosavant/folder.api
Releases · pseudosavant/folder.api
2.0.0
Highlights
- Browser‑only v2 rewrite with a TypeScript/ESM core.
- Recursive directory traversal with depth limits.
- Fetch/iframe/auto modes for CORS‑friendly loading.
- Optional MIME + size enrichment via parallel HEAD requests.
- Normalized result with a tree (root), flat arrays (folders, files), and entries.
Breaking Changes
- Removed server field (no server signature detection).
- Result shape changed:
- New top‑level fields: url, root, entries, generatedAt, errors, stats.
- folders[] entries now include role (root|self|parent|child), depth, hidden, rawName, kind.
- files[] entries now include hidden, rawName, kind, and optional mime.
- Browser runtime required (fetch, DOMParser, and optional iframe fallback).
New/Updated Features
- Tree + flat results in a single response.
- Hidden entry detection and safer size/date parsing.
- Abort/timeout support with AbortSignal and per‑directory timeouts.
- Safety limit to prevent runaway traversal.
Tooling & Tests
- Vitest suite (unit + integration, including realistic listing fixtures).
- Mock servers (FastAPI) for Apache, Nginx, IIS, and Caddy layouts + headers.
- Browser test harness updated for v2 output.
Removed
- Legacy v1 browser script and harness files.
Upgrade Notes
- Replace server logic with the new fields in stats/errors.
- If you only need flat lists, use folders and files.
- Use root + entries when you need the tree and a unified list.
Release 1.1.0
- folder.api now removes duplicate file and folder links
- Added support for Glitch directory listing
Release 1.0.3
Fixed server-side date handling bugs
Release 1.0.2
Features
- Support for the Deno HTTP server
Fixes:
- Did not work at all on unsupported web servers
- Fixed loading getting called twice on iOS
- Test harness doesn't use incorrect static origin value
folder.api 1.0
This is the initial release of folder.api. It is a simple library you can use to access/browse HTTP servers' file/directory browsing like an API.