io- plugin 文件系统
本地文件系统源/ sink 插件 可插接- io- 框架, (中文(简体) ), 通过 动态插件框架
关键特性
- 执行
IOProviderFactory编号 :IOProvider合同来源 可插件- io- 框架- api 用于本地文件系统 - 源和汇. - 工厂
file与js载荷种类。 地点是file:URL数(file:///foo或者说file:/foo)或由filesystemLocationSchema(单位:千美元)path外加可选选项filename(单位:千美元) 单项或一格pattern为匹配条目.toProviderInputs加入path财务报告和审定财务报表filename将 OS 路径分隔为LocationTarget。 。 。 . - 配置 :
{ rootPath?: string }(与佐德验证) -rootPath实值 选项,默认为""。传递给提供者方法的所有路径是 解开并装入沙盒rootPath- 一条能够逃脱的路 拒绝.rootPath: ""(或省略)是明确发送的“否” 自POSIX以来, 限制( 完整文件系统访问)"/"这不是一个 在 Windows 有实际意义的“ 每件事” 根( 多驱动器字母, 无) 单文件系统根). 从字符串解析的位置总是使用 无限制配置 . list(可重复、可监管过滤),getProperties(大小/最后修改/集装箱加a)mode扩展属性,setProperties(单位:千美元)lastModified加一个mode经验证的财产filesystemSettablePropertySchema, (中文(简体) ),delete, (中文(简体) ),createContainer财务报告和审定财务报表joinKey。 。 。 .- 可读手柄已执行
RangeReadable(单位:千美元)readRange(start, end)与 独家end) (中文(简体) ). 可写字的手柄已执行ResumableWritable数字 : 恢复文件当前大小的附件,报告为startOffset。 。 。 . - 多段写入( 直接写入文件的当前字节行距部分)
通过一个共享文件控件抵消),以呼叫器提供的部件大小 -
getPartSizeConstraints报告有 8MB 默认值的未约束的边界, 由于本地文件系统没有规定真正的部分大小限制. canDirectTransfer编号 :directCopy编号 :directMove: 两个FilesystemIOProvider相同实例rootPath复制/直接移动(cp编号 :rename,与 a 一个EXDEV交叉设备倒置为递归式副本+去除)而不是 流畅.supportsRecursiveDirectTransfer实值true- 一个目录sourcePath复制/递归directCopy编号 :directMove调用,保留空子目录.- 捆绑( B)
bun build --target bun)作为单文件插件,由dynamic-plugin-framework通过import()- 被证明是终结的 真正的repo测试LocalFolderPluginRepository不仅仅是 类型检查. - 可通过
NpmPluginRepository(背后的机制)dynamic-cli-framework是因为plugin add编号 :plugin list命令( c) : 软件包.jsonpluggable-io-framework字段声明此软件包 扩展点,所以一旦安装到 CLI 本地插件存储器中,它就是 不需要消耗性CLI 直接依赖它 也证明结束 在这个repo的测试, 不只是打字.
字符串和结构化位置
A 类 file 位置可分为两种形式:
- 字符串: a
file:URL (中文(简体) )file:///foo或者说file:/foo或赤裸裸的 路径.parseLocationString仅返回{ path },所以弦总是 处理整个问题path作为container目标。 字符串是 用于持有路径或 URL 的代码的方便格式,以及其它格式 提供者在解析时使用file地点. - 结构化位置对象,
{ path, filename?, pattern? },验证 以filesystemLocationSchema直接说 需要解决单一问题 文件( 编号filename,一个entry目标)或匹配 glob 的文件 (单位:千美元)pattern页:1pattern),字符串不能表达.
Bundled Bun 模块使用量
装入为 动态插件框架
插件 - 关于主机应用程序如何发现和查看项目的文件
即时插件 。 直接使用捆绑,在其中 registry 是一个
可插接- io- 框架 ProviderRegistry (或任何 ProviderResolver:
import filesystemPlugin, {
filesystemIOProviderFactory,
} from "https://unpkg.com/@flowscripter/io-plugin-filesystem/dist/bundle.js";
const provider = await filesystemIOProviderFactory.createProvider(
{ rootPath: "/data" },
{ resolver: registry },
);
发展
安装依赖性 :
bun install
测试 :
bun test
用作工具箱 动态插件框架 插件 :
bun run build
格式 :
bunx oxfmt
林特:
bunx oxlint index.ts src/ tests/
生成 HTML API 文档 :
bunx typedoc index.ts
文档
概览
参见 可插件- io- 框架- api 财务报告和审定财务报表 可插接- io- 框架 用于合同和该插件的管弦.
API 密码
链接自动生成的 API 文件 :
许可证
麻省理工学院