@ frontera- sdk/ 核心
Frontera SDK,在一个软件包中:一个Frontera应用程序的运行时间挂起(即: 后Message 桥通到平台主机、 app 靴子和打入 平台客户端),以及平台每个区域的打入客户端.
bun add @frontera-sdk/core react react-dom @tanstack/react-query
React 和 TanStack 查询仅由 React 子路径需要(/react, (中文(简体) ),
…/hooks, (中文(简体) ), …/provider); 脚本或服务器不使用
他们。 该软件包是按以下类型汇编的无害环境管理声明:捆绑商、节点.js、,
邦和边跑时间都用它 它的TypeScript船 在建筑旁边,
下级 src/,然后声明和源地图引导到:
定义打开执行,一个堆栈追踪(node --enable-source-maps, (中文(简体) ),
捆绑器、浏览器)命名源行,并显示编码代理读取
node_modules 找到代码及其评论,不仅仅是签名.
每一个区域,一个子路径
| 区域 | 从 | 指南 |
|---|---|---|
| App 运行时间和客户端 | @frontera-sdk/core/react, (中文(简体) ), /client, (中文(简体) ), /config, (中文(简体) ), /errors,, , , , , , , , | 这个读取器 |
| 蓝图:查询和规范的行动 | @frontera-sdk/core/blueprint/<subpath> | docs/blueprint.md |
| 代理人:计量和谈话 | @frontera-sdk/core/agents/<subpath> | docs/agents.md |
| 与代理聊天 | @frontera-sdk/core/chat/<subpath> | docs/chat.md |
| 知识 | @frontera-sdk/core/knowledge/<subpath> | docs/knowledge.md |
| 工作流程运行 | @frontera-sdk/core/workflow/<subpath> | docs/workflow.md |
| 函数(节点和节点) | @frontera-sdk/core/functions, (中文(简体) ), /functions/<subpath> | docs/functions.md |
| 自定义频道 | @frontera-sdk/core/channels/<subpath> | docs/channels.md |
包裹 @frontera-sdk/blueprint, (中文(简体) ), @frontera-sdk/agents, (中文(简体) ),
@frontera-sdk/chat, (中文(简体) ), @frontera-sdk/knowledge, (中文(简体) ), @frontera-sdk/workflow 财务报告和审定财务报表
@frontera-sdk/functions 继续以与再出口相同的版本释放
这些子路径 : @frontera-sdk/blueprint/hooks 财务报告和审定财务报表
@frontera-sdk/core/blueprint/hooks 是一个模块,所以在任一名称上的代码
作品,两者都可以用在一个App中.
其余部分则覆盖应用运行时间.
import { FronteraAppProvider } from '@frontera-sdk/core/react'
export function Providers({ children }: { children: React.ReactNode }) {
return <FronteraAppProvider>{children}</FronteraAppProvider>
}
FronteraAppProvider 连接前选择一个已配置的传输 :
嵌入后 Message 桥, 同一源的独立会话, 或回回本地
会话经纪人。 三者合成一样 BridgeInit因此,蓝图和
其他域名提供者不需要特定的运输分支。 一个不见了
运输立即使配置诊断.
与 renderWhileConnecting,提供方在会话期间制作 App
连接而不是加载屏幕,所以静态导出带有 App
在会议准备好之前, 请求等待会议
并带着它的标志出去。 读一下握手说的
useFronteraConnection(),这是 { status: 'connecting', client } 直至
会议准备好了;在此之前 useFronteraApp() 仅给予其 client。 。 。 .
然后App将倒置在悬时边界内 loading, (中文(简体) ),
只要它运行:任何没有自身边界的暂停
(一个悬念读取,一个懒惰的组件,一个过渡外的更新)显示
loading 在静态导出时,悬念读取
留给浏览器。 这在Next.js中是安静的,它承认错误
读取失败, 作为自己对客户端渲染的拯救; 其他框架
仍然在浏览器中渲染边界,但报告错误.
createFronteraApp() 仍然是维特兼容性包装。 内嵌
navigate() 同步平台拥有的 URL; 独立和本地应用程序
自己的路线.
入境点
嵌入式应用生命周期
useFronteraApp() 曝光情况 active 财务报告和审定财务报表 setUnsavedChanges(dirty)启用 active
以暂停可选可见的只显示工作;不活动应用程序可能仍然挂载,并带有
其全权证书被刷新。 不活动不会取消服务器侧操作 .
明确报告地方修改草案并报告 false 仅在草案之后
被保存或故意丢弃。 一个从未报告其状态的应用程序是
当平台被要求发布会话时,则被视为未知。 这个API
不执行应用程序保存,也不在浏览器重新装入后提供恢复.
注入的App-host大桥报告本地推力、更换、转接和
片段变化。 A 类 frontera:host-navigate 请求带有 requestId 财务报告和审定财务报表
相对应用路径; 桥取代子位置并响应
frontera:navigation-ack 使用同一身份证明。 它没有增加第二个孩子的历史
步骤用于浏览主机已经拥有的导航。 双向验证
需要的来源和发送窗口。 旧主机可能会忽略新的生命周期
消息; 更老的 app-host 脚本不支持已确认的导航 .
模块
| 导入 | 这是什么 |
|---|---|
@frontera-sdk/core/react | FronteraAppProvider, (中文(简体) ), useFronteraApp, (中文(简体) ), useFronteraConnection模式类型 |
@frontera-sdk/core/create-frontera-app | 应用靴子和 useFronteraApp |
@frontera-sdk/core/client | 输入的平台客户端 |
@frontera-sdk/core/config | 证书和来源分辨率 |
@frontera-sdk/core/bridge-client | 主持人握手,如果直接需要的话 |
@frontera-sdk/core/bridge-protocol | 信件类型为两边说话 |
@frontera-sdk/core/app-state | 共享、 验证的应用状态 |
@frontera-sdk/core/theme | 应用主机设计符号 |
@frontera-sdk/core/errors | 错误分类法, code 镜像服务 |
独立和本地会话刷新其短命的 App 标志值为 80% 它的寿命。 浏览器从未收到长寿的工作空间密钥.
作为TypeScript源发布. 每一个消费者都是捆绑者 tsc,所以一个
建设步骤将立即输出消费者的再传输.
许可证
阿帕奇2.0 (英语). 见 自由主义。 。 。 .