Archer
92c38d9d2f
Feat: Images dataset collection ( #4941 )
...
* New pic (#4858 )
* 更新数据集相关类型,添加图像文件ID和预览URL支持;优化数据集导入功能,新增图像数据集处理组件;修复部分国际化文本;更新文件上传逻辑以支持新功能。
* 与原先代码的差别
* 新增 V4.9.10 更新说明,支持 PG 设置`systemEnv.hnswMaxScanTuples`参数,优化 LLM stream 调用超时,修复全文检索多知识库排序问题。同时更新数据集索引,移除 datasetId 字段以简化查询。
* 更换成fileId_image逻辑,并增加训练队列匹配的逻辑
* 新增图片集合判断逻辑,优化预览URL生成流程,确保仅在数据集为图片集合时生成预览URL,并添加相关日志输出以便调试。
* Refactor Docker Compose configuration to comment out exposed ports for production environments, update image versions for pgvector, fastgpt, and mcp_server, and enhance Redis service with a health check. Additionally, standardize dataset collection labels in constants and improve internationalization strings across multiple languages.
* Enhance TrainingStates component by adding internationalization support for the imageParse training mode and update defaultCounts to include imageParse mode in trainingDetail API.
* Enhance dataset import context by adding additional steps for image dataset import process and improve internationalization strings for modal buttons in the useEditTitle hook.
* Update DatasetImportContext to conditionally render MyStep component based on data source type, improving the import process for non-image datasets.
* Refactor image dataset handling by improving internationalization strings, enhancing error messages, and streamlining the preview URL generation process.
* 图片上传到新建的 dataset_collection_images 表,逻辑跟随更改
* 修改了除了controller的其他部分问题
* 把图片数据集的逻辑整合到controller里面
* 补充i18n
* 补充i18n
* resolve评论:主要是上传逻辑的更改和组件复用
* 图片名称的图标显示
* 修改编译报错的命名问题
* 删除不需要的collectionid部分
* 多余文件的处理和改动一个删除按钮
* 除了loading和统一的imageId,其他都resolve掉的
* 处理图标报错
* 复用了MyPhotoView并采用全部替换的方式将imageFileId变成imageId
* 去除不必要文件修改
* 报错和字段修改
* 增加上传成功后删除临时文件的逻辑以及回退一些修改
* 删除path字段,将图片保存到gridfs内,并修改增删等操作的代码
* 修正编译错误
---------
Co-authored-by: archer <545436317@qq.com>
* perf: image dataset
* feat: insert image
* perf: image icon
* fix: training state
---------
Co-authored-by: Zhuangzai fa <143257420+ctrlz526@users.noreply.github.com>
2025-06-03 21:30:50 +08:00
Archer
e145f63554
feat: chat error msg ( #4826 )
...
* perf: i18n
* feat: chat error msg
* feat: doc
2025-05-16 12:07:11 +08:00
heheer
3a911c5130
fix chat log list api ( #4700 )
2025-04-28 17:51:57 +08:00
Archer
433e7ed911
Update doc ( #4697 )
...
* perf: share link tip
* udpate doc
2025-04-28 14:19:42 +08:00
Archer
1465999c46
feat: get tokens from api usage ( #4671 )
2025-04-27 01:13:38 +08:00
Archer
0720bbe4da
V4.9.7 feature ( #4669 )
...
* update doc
* feat: Add coupon redemption feature for team subscriptions (#4595 )
* feat: Add coupon redemption feature for team subscriptions
- Introduced `TeamCouponSub` and `TeamCouponSchema` types
- Added `redeemCoupon` API endpoint
- Updated UI to include a modal for coupon redemption
- Added new icon and translations for "Redeem coupon"
* perf: remove field teamId
* perf: use dynamic import
* refactor: move to page component
* perf: coupon code
* perf: mcp server
* perf: test
* auto layout (#4634 )
* fix 4.9.6 (#4631 )
* fix debug quote list
* delete next text node match
* fix extract default boolean value
* export latest 100 chat items
* fix quote item ui
* doc
* fix doc
* feat: auto layout
* perf: auto layout
* fix: auto layout null
* add start node
---------
Co-authored-by: heheer <heheer@sealos.io>
* fix: share link (#4644 )
* Add workflow run duration;Get audio duration (#4645 )
* add duration
* get audio duration
* Custom config path (#4649 )
* feat: 通过环境变量DATA_PATH获取配置文件目录 (#4622 )
通过环境变量DATA_PATH获取配置文件目录,以应对不同的部署方式的多样化需求
* feat: custom configjson path
* doc
---------
Co-authored-by: John Chen <sss1991@163.com>
* 程序api调用场景下,如果大量调用带有图片或视频,产生的聊天记录会导致后台mongo数据库异常。这个修改给api客户端一个禁止生成聊天记录的选项,避免这个后果。 (#3964 )
* update special chatId
* perf: vector db rename
* update operationLog (#4647 )
* update operationLog
* combine operationLogMap
* solve operationI18nLogMap bug
* remoce log
* feat: Rerank usage (#4654 )
* refresh concat when update (#4655 )
* fix: refresh code
* perf: timer lock
* Fix operationLog (#4657 )
* perf: http streamable mcp
* add alipay (#4630 )
* perf: subplan ui
* perf: pay code
* hiden bank tip
* Fix: pay error (#4665 )
* fix quote number (#4666 )
* remove log
---------
Co-authored-by: a.e. <49438478+I-Info@users.noreply.github.com>
Co-authored-by: heheer <heheer@sealos.io>
Co-authored-by: John Chen <sss1991@163.com>
Co-authored-by: gaord <bengao168@msn.com>
Co-authored-by: gggaaallleee <91131304+gggaaallleee@users.noreply.github.com>
2025-04-26 16:17:21 +08:00
Archer
f642c9603b
V4.9.4 feature ( #4470 )
...
* Training status (#4424 )
* dataset data training state (#4311 )
* dataset data training state
* fix
* fix ts
* fix
* fix api format
* fix
* fix
* perf: count training
* format
* fix: dataset training state (#4417 )
* fix
* add test
* fix
* fix
* fix test
* fix test
* perf: training count
* count
* loading status
---------
Co-authored-by: heheer <heheer@sealos.io>
* doc
* website sync feature (#4429 )
* perf: introduce BullMQ for website sync (#4403 )
* perf: introduce BullMQ for website sync
* feat: new redis module
* fix: remove graceful shutdown
* perf: improve UI in dataset detail
- Updated the "change" icon SVG file.
- Modified i18n strings.
- Added new i18n string "immediate_sync".
- Improved UI in dataset detail page, including button icons and
background colors.
* refactor: Add chunkSettings to DatasetSchema
* perf: website sync ux
* env template
* fix: clean up website dataset when updating chunk settings (#4420 )
* perf: check setting updated
* perf: worker currency
* feat: init script for website sync refactor (#4425 )
* website feature doc
---------
Co-authored-by: a.e. <49438478+I-Info@users.noreply.github.com>
* pro migration (#4388 ) (#4433 )
* pro migration
* reuse customPdfParseType
Co-authored-by: gggaaallleee <91131304+gggaaallleee@users.noreply.github.com>
* perf: remove loading ui
* feat: config chat file expired time
* Redis cache (#4436 )
* perf: add Redis cache for vector counting (#4432 )
* feat: cache
* perf: get cache key
---------
Co-authored-by: a.e. <49438478+I-Info@users.noreply.github.com>
* perf: mobile voice input (#4437 )
* update:Mobile voice interaction (#4362 )
* Add files via upload
* Add files via upload
* Update ollama.md
* Update ollama.md
* Add files via upload
* Update useSpeech.ts
* Update ChatInput.tsx
* Update useSpeech.ts
* Update ChatInput.tsx
* Update useSpeech.ts
* Update constants.ts
* Add files via upload
* Update ChatInput.tsx
* Update useSpeech.ts
* Update useSpeech.ts
* Update useSpeech.ts
* Update ChatInput.tsx
* Add files via upload
* Update common.json
* Update VoiceInput.tsx
* Update ChatInput.tsx
* Update VoiceInput.tsx
* Update useSpeech.ts
* Update useSpeech.ts
* Update common.json
* Update common.json
* Update common.json
* Update VoiceInput.tsx
* Update VoiceInput.tsx
* Update ChatInput.tsx
* Update VoiceInput.tsx
* Update ChatInput.tsx
* Update VoiceInput.tsx
* Update ChatInput.tsx
* Update useSpeech.ts
* Update common.json
* Update chat.json
* Update common.json
* Update chat.json
* Update common.json
* Update chat.json
* Update VoiceInput.tsx
* Update ChatInput.tsx
* Update useSpeech.ts
* Update VoiceInput.tsx
* speech ui
* 优化语音输入组件,调整输入框显示逻辑,修复语音输入遮罩层样式,更新画布背景透明度,增强用户交互体验。 (#4435 )
* perf: mobil voice input
---------
Co-authored-by: dreamer6680 <1468683855@qq.com>
* Test completion v2 (#4438 )
* add v2 completions (#4364 )
* add v2 completions
* completion config
* config version
* fix
* frontend
* doc
* fix
* fix: completions v2 api
---------
Co-authored-by: heheer <heheer@sealos.io>
* package
* Test mongo log (#4443 )
* feat: mongodb-log (#4426 )
* perf: mongo log
* feat: completions stop reasoner
* mongo db log
---------
Co-authored-by: Finley Ge <32237950+FinleyGe@users.noreply.github.com>
* update doc
* Update doc
* fix external var ui (#4444 )
* action
* fix: ts (#4458 )
* preview doc action
add docs preview permission
update preview action
udpate action
* update doc (#4460 )
* update preview action
* update doc
* remove
* update
* schema
* update mq export;perf: redis cache (#4465 )
* perf: redis cache
* update mq export
* perf: website sync error tip
* add error worker
* website sync ui (#4466 )
* Updated the dynamic display of the voice input pop-up (#4469 )
* Update VoiceInput.tsx
* Update VoiceInput.tsx
* Update VoiceInput.tsx
* fix: voice input
---------
Co-authored-by: heheer <heheer@sealos.io>
Co-authored-by: a.e. <49438478+I-Info@users.noreply.github.com>
Co-authored-by: gggaaallleee <91131304+gggaaallleee@users.noreply.github.com>
Co-authored-by: dreamer6680 <1468683855@qq.com>
Co-authored-by: Finley Ge <32237950+FinleyGe@users.noreply.github.com>
2025-04-08 12:05:04 +08:00
Archer
077350e651
perf: custom varialbe ( #4225 )
2025-03-27 10:05:02 +08:00
Archer
e75d81d05a
V4.9.1 feature ( #4206 )
...
* fix: remove DefaultTeam (#4037 )
* fix :Get application bound knowledge base information logical rewrite (#4057 )
* fix :Get application bound knowledge base information logical rewrite
* fix :Get application bound knowledge base information logical rewrite
* fix :Get application bound knowledge base information logical rewrite
* fix :Get application bound knowledge base information logical rewrite
* update package
* fix: import dataset step error;perf: ai proxy avatar (#4074 )
* perf: pg config params
* perf: ai proxy avatar
* fix: import dataset step error
* feat: data input ux
* perf: app dataset rewite
* fix: 文本提取不支持arrayString,arrayNumber等jsonSchema (#4079 )
* update doc ;perf: model test (#4098 )
* perf: extract array
* update doc
* perf: model test
* perf: model test
* perf: think tag parse (#4102 )
* chat quote reader (#3912 )
* init chat quote full text reader
* linked structure
* dataset data linked
* optimize code
* fix ts build
* test finish
* delete log
* fix
* fix ts
* fix ts
* remove nextId
* initial scroll
* fix
* fix
* perf: chunk read (#4109 )
* package
* perf: chunk read
* feat: api dataset support pdf parse;fix: chunk reader auth (#4117 )
* feat: api dataset support pdf parse
* fix: chunk reader auth
* feat: invitation link (#3979 )
* feat: invitation link schema and apis
* feat: add invitation link
* feat: member status: active, leave, forbidden
* fix: expires show hours and minutes
* feat: invalid invitation link hint
* fix: typo
* chore: fix typo & i18n
* fix
* pref: fe
* feat: add ttl index for 30-day-clean-up
* perf: invite member code (#4118 )
* perf: invite member code
* fix: ts
* fix: model test channel id;fix: quote reader (#4123 )
* fix: model test channel id
* fix: quote reader
* fix chat quote reader (#4125 )
* perf: model test;perf: sidebar trigger (#4127 )
* fix: import dataset step error;perf: ai proxy avatar (#4074 )
* perf: pg config params
* perf: ai proxy avatar
* fix: import dataset step error
* feat: data input ux
* perf: app dataset rewite
* perf: model test
* perf: sidebar trigger
* lock
* update nanoid version
* fix: select component ux
* fix: ts
* fix: vitest
* remove test
* fix: prompt toolcall ui (#4139 )
* load log error adapt
* fix: prompt toolcall ui
* perf: commercial function tip
* update package
* pref: copy link (#4147 )
* fix(i18n): namespace (#4143 )
* hiden dataset source (#4152 )
* hiden dataset source
* perf: reader
* chore: move all tests into a single folder (#4160 )
* fix modal close scroll (#4162 )
* fix modal close scroll
* update refresh
* feat: rerank modal select and weight (#4164 )
* fix loadInitData refresh (#4169 )
* fix
* fix
* form input number default & api dataset max token
* feat: mix search weight (#4170 )
* feat: mix search weight
* feat: svg render
* fix: avatar error remove (#4173 )
* fix: avatar error remove
* fix: index
* fix: guide
* fix: auth
* update package;fix: input data model ui (#4181 )
* update package
* fix: ts
* update config
* update jieba package
* add type sign
* fix: input data ui
* fix: page title refresh (#4186 )
* fix: ts
* update jieba package
* fix: page title refresh
* fix: remove member length check when opening invite create modal (#4193 )
* add env to check internal ip (#4187 )
* fix: ts
* update jieba package
* add env to check internal ip
* package
* fix: jieba
* reset package
* update config
* fix: jieba package
* init shell
* init version
* change team reload
* update jieba package (#4200 )
* update jieba package
* package
* update package
* remove invalid code
* action
* package (#4201 )
* package
* update package
* remove invalid code
* package
* remove i18n tip (#4202 )
* doc (#4205 )
* fix: i18n (#4208 )
* fix: next config (#4207 )
* reset package
* i18n
* update config
* i18n
* remove log
---------
Co-authored-by: Finley Ge <32237950+FinleyGe@users.noreply.github.com>
Co-authored-by: gggaaallleee <91131304+gggaaallleee@users.noreply.github.com>
Co-authored-by: shilin <39396378+shilin66@users.noreply.github.com>
Co-authored-by: heheer <heheer@sealos.io>
2025-03-18 14:40:41 +08:00
Archer
8738c32fb0
4.8.21 feature ( #3742 )
...
* model config
* feat: normalization embedding
* adapt unstrea reasoning response
* remove select app
* perf: dataset search code
* fix: multiple audio video show
* perf: query extension output
* perf: link check
* perf: faq doc
* fix: ts
* feat: support reasoning text output
* feat: workflow support reasoning output
2025-02-11 13:53:08 +08:00
Archer
db2c0a0bdb
V4.8.20 feature ( #3686 )
...
* Aiproxy (#3649 )
* model config
* feat: model config ui
* perf: rename variable
* feat: custom request url
* perf: model buffer
* perf: init model
* feat: json model config
* auto login
* fix: ts
* update packages
* package
* fix: dockerfile
* feat: usage filter & export & dashbord (#3538 )
* feat: usage filter & export & dashbord
* adjust ui
* fix tmb scroll
* fix code & selecte all
* merge
* perf: usages list;perf: move components (#3654 )
* perf: usages list
* team sub plan load
* perf: usage dashboard code
* perf: dashboard ui
* perf: move components
* add default model config (#3653 )
* 4.8.20 test (#3656 )
* provider
* perf: model config
* model perf (#3657 )
* fix: model
* dataset quote
* perf: model config
* model tag
* doubao model config
* perf: config model
* feat: model test
* fix: POST 500 error on dingtalk bot (#3655 )
* feat: default model (#3662 )
* move model config
* feat: default model
* fix: false triggerd org selection (#3661 )
* export usage csv i18n (#3660 )
* export usage csv i18n
* fix build
* feat: markdown extension (#3663 )
* feat: markdown extension
* media cros
* rerank test
* default price
* perf: default model
* fix: cannot custom provider
* fix: default model select
* update bg
* perf: default model selector
* fix: usage export
* i18n
* fix: rerank
* update init extension
* perf: ip limit check
* doubao model order
* web default modle
* perf: tts selector
* perf: tts error
* qrcode package
* reload buffer (#3665 )
* reload buffer
* reload buffer
* tts selector
* fix: err tip (#3666 )
* fix: err tip
* perf: training queue
* doc
* fix interactive edge (#3659 )
* fix interactive edge
* fix
* comment
* add gemini model
* fix: chat model select
* perf: supplement assistant empty response (#3669 )
* perf: supplement assistant empty response
* check array
* perf: max_token count;feat: support resoner output;fix: member scroll (#3681 )
* perf: supplement assistant empty response
* check array
* perf: max_token count
* feat: support resoner output
* member scroll
* update provider order
* i18n
* fix: stream response (#3682 )
* perf: supplement assistant empty response
* check array
* fix: stream response
* fix: model config cannot set to null
* fix: reasoning response (#3684 )
* perf: supplement assistant empty response
* check array
* fix: reasoning response
* fix: reasoning response
* doc (#3685 )
* perf: supplement assistant empty response
* check array
* doc
* lock
* animation
* update doc
* update compose
* doc
* doc
---------
Co-authored-by: heheer <heheer@sealos.io>
Co-authored-by: a.e. <49438478+I-Info@users.noreply.github.com>
2025-02-05 00:10:47 +08:00
Archer
bd79e7701f
V4.8.16 dev ( #3431 )
...
* feat: add feishu & yuque dataset (#3379 )
* feat: add feishu & yuque dataset
* fix ts
* fix ts
* move type position
* fix
* fix: merge interface
* fix
* feat: dingtalk sso support (#3408 )
* fix: optional sso state
* feat: dingtalk bot
* feat: dingtalk sso login
* chore: move i18n to user namespace
* feat: dingtalk bot integration (#3415 )
* feat: dingtalk bot integration
* docs: config dingtalk bot
* feat:sear XNG服务 (#3413 )
* feat:sear XNG服务
* 补充了courseUrl
* 添加了官方文档
* 错误时返回情况修正了一下
* Tracks (#3420 )
* feat: node intro
* feat: add domain track
* dingding sso login
* perf: api dataset code and add doc
* feat: tracks
* feat: searXNG plugins
* fix: ts
* feat: delete node tracks (#3423 )
* fix: dingtalk bot GET verification (#3424 )
* 4.8.16 test: fix: plugin inputs render;fix: ui offset (#3426 )
* fix: ui offset
* perf: dingding talk
* fix: plugin inputs render
* feat: menu all folder (#3429 )
* fix: recall code
---------
Co-authored-by: heheer <heheer@sealos.io>
Co-authored-by: a.e. <49438478+I-Info@users.noreply.github.com>
Co-authored-by: Jiangween <145003935+Jiangween@users.noreply.github.com>
2024-12-18 19:30:19 +08:00
Archer
b327e487a5
perf: app cron job ( #3360 )
2024-12-10 14:05:34 +08:00
Archer
1aebe5f185
V4.8.15 feature ( #3331 )
...
* feat: add customize toolkit (#3205 )
* chaoyang
* fix-auth
* add toolkit
* add order
* plugin usage
* fix
* delete console:
* Fix: Fix fullscreen preview top positioning and improve Markdown rendering logic (#3247 )
* 完成任务:修复全屏预览顶部固定问题,优化 Markdown 渲染逻辑
* 有问题修改
* 问题再修改
* 修正问题
* fix: plugin standalone display issue (#3254 )
* 4.8.15 test (#3246 )
* o1 config
* perf: system plugin code
* 调整系统插件代码。增加html 渲染安全配置。 (#3258 )
* perf: base64 picker
* perf: list app or dataset
* perf: plugin config code
* 小窗适配等问题 (#3257 )
* 小窗适配等问题
* git问题
* 小窗剩余问题
* feat: system plugin auth and lock version (#3265 )
* feat: system plugin auth and lock version
* update comment
* 4.8.15 test (#3267 )
* tmp log
* perf: login direct
* perf: iframe html code
* remove log
* fix: plugin standalone display (#3277 )
* refactor: 页面拆分&i18n拆分 (#3281 )
* refactor: account组件拆成独立页面
* script: 新增i18n json文件创建脚本
* refactor: 页面i18n拆分
* i18n: add en&hant
* 4.8.15 test (#3285 )
* tmp log
* remove log
* fix: watch avatar refresh
* perf: i18n code
* fix(plugin): use intro instead of userguide (#3290 )
* Universal SSO (#3292 )
* tmp log
* remove log
* feat: common oauth
* readme
* perf: sso provider
* remove sso code
* perf: refresh plugins
* feat: add api dataset (#3272 )
* add api-dataset
* fix api-dataset
* fix api dataset
* fix ts
* perf: create collection code (#3301 )
* tmp log
* remove log
* perf: i18n change
* update version doc
* feat: question guide from chatId
* perf: create collection code
* fix: request api
* fix: request api
* fix: tts auth and response type (#3303 )
* perf: md splitter
* fix: tts auth and response type
* fix: api file dataset (#3307 )
* perf: api dataset init (#3310 )
* perf: collection schema
* perf: api dataset init
* refactor: 团队管理独立页面 (#3302 )
* ui: 团队管理独立页面
* 代码优化
* fix
* perf: sync collection and ui check (#3314 )
* perf: sync collection
* remove script
* perf: update api server
* perf: api dataset parent
* perf: team ui
* perf: team 18n
* update team ui
* perf: ui check
* perf: i18n
* fix: debug variables & cronjob & system plugin callback load (#3315 )
* fix: debug variables & cronjob & system plugin callback load
* fix type
* fix
* fix
* fix: plugin dataset quote;perf: system variables init (#3316 )
* fix: plugin dataset quote
* perf: system variables init
* perf: node templates ui;fix: dataset import ui (#3318 )
* fix: dataset import ui
* perf: node templates ui
* perf: ui refresh
* feat:套餐改名和套餐跳转配置 (#3309 )
* fixing:except Sidebar
* 去除了多余的代码
* 修正了套餐说明的代码
* 修正了误删除的show_git代码
* 修正了名字部分等代码
* 修正了问题,遗留了其他和ui讨论不一致的部分
* 4.8.15 test (#3319 )
* remove log
* pref: bill ui
* pref: bill ui
* perf: log
* html渲染文档 (#3270 )
* html渲染文档
* 文档有点小问题
* feat: doc (#3322 )
* 集合重训练 (#3282 )
* rebaser
* 一点补充
* 小问题
* 其他问题修正,删除集合保留文件的参数还没找到...
* reTraining
* delete uesless
* 删除了一行错误代码
* 集合重训练部分
* fixing
* 删除console代码
* feat: navbar item config (#3326 )
* perf: custom navbar code;perf: retraining code;feat: api dataset and dataset api doc (#3329 )
* feat: api dataset and dataset api doc
* perf: retraining code
* perf: custom navbar code
* fix: ts (#3330 )
* fix: ts
* fix: ts
* retraining ui
* perf: api collection filter
* perf: retrining button
---------
Co-authored-by: heheer <heheer@sealos.io>
Co-authored-by: Jiangween <145003935+Jiangween@users.noreply.github.com>
Co-authored-by: papapatrick <109422393+Patrickill@users.noreply.github.com>
2024-12-06 10:56:53 +08:00
Archer
8aa6b53760
V4.8.14 dev ( #3234 )
...
* feat: rewrite chat context (#3176 )
* feat: add app auto execute (#3115 )
* feat: add app auto execute
* auto exec configtion
* chatting animation
* change icon
* fix
* fix
* fix link
* feat: add chat context to all chatbox
* perf: loading ui
---------
Co-authored-by: heheer <heheer@sealos.io>
* app auto exec (#3179 )
* add chat records loaded state (#3184 )
* perf: chat store reset storage (#3186 )
* perf: chat store reset storage
* perf: auto exec code
* chore: workflow ui (#3175 )
* chore: workflow ui
* fix
* change icon color config
* change popover to mymenu
* 4.8.14 test (#3189 )
* update doc
* fix: token check
* perf: icon button
* update doc
* feat: share page support configuration Whether to allow the original view (#3194 )
* update doc
* perf: fix index (#3206 )
* perf: i18n
* perf: Add service entry (#3226 )
* 4.8.14 test (#3228 )
* fix: ai log
* fix: text splitter
* fix: reference unselect & user form description & simple to advance (#3229 )
* fix: reference unselect & user form description & simple to advance
* change abort position
* perf
* perf: code (#3232 )
* perf: code
* update doc
* fix: create btn permission (#3233 )
* update doc
* fix: refresh chatbox listener
* perf: check invalid reference
* perf: check invalid reference
* update doc
* fix: ui props
---------
Co-authored-by: heheer <heheer@sealos.io>
2024-11-26 12:02:58 +08:00