Hermes Agent
17d7e946e8
feat: InlineForm支持wrap折行,搜索表单默认开启多行布局
2026-06-22 16:54:18 +08:00
Hermes Agent
1e33a70627
fix: toolbar检查search_form而非data_filter导致filter按钮不显示
2026-06-22 16:10:08 +08:00
Hermes Agent
231fde3807
移除.DS_Store,添加.gitignore
2026-06-22 14:59:32 +08:00
Hermes Agent
42e7214a86
feat: Tabular inline search form - hidden by default, toggle via toolbar filter button
...
- build_search_form_widget(): creates InlineForm from opts.search_form config
- toggle_search_form(): show/hide on filter toolbar button click
- search_form_submited(): saves values, hides form, re-renders with params
- merge_search_params(): includes search_form_values in backend requests
2026-06-22 13:27:21 +08:00
Hermes Agent
937d6575ed
fix: Form validation - fix red text CSS selector and add focus-to-clear
2026-06-18 17:45:28 +08:00
Hermes Agent
37f46ed1bd
feat: Form validation — rules-based field validation with inline error display
...
- FormBase: added validate_rules(), _check_rule(), show_field_error(), clear_all_errors()
- FieldGroup: creates hidden error Text widget for fields with rules
- validation(): calls validate_rules() before submit, blocks on failure
- CSS: .inputbox.field-error red border, .field-error-msg red text
- Supported rule types: required, minlength, maxlength, min, max, pattern, email, number
2026-06-18 17:22:11 +08:00
Hermes Agent
e7ae56e142
fix: DynamicColumn移动端默认2列
...
- mobile_cols默认值从1改为2
- 已使用bricks.is_mobile()判断移动设备
2026-06-18 16:48:24 +08:00
Hermes Agent
579d60b49b
fix: DynamicColumn子控件宽度覆盖为100%+修复间隙和覆盖问题
...
- _fix_children: MutationObserver监听子控件添加,强制width:100%+minWidth:0
- 解决子控件cwidth设置的固定像素宽度超出grid cell导致重叠
- align-items:start防止grid items垂直拉伸
- col_cgap默认值统一为1(原构造函数设0.5但set_column_width用0.1)
- 移除console.log调试输出
2026-06-18 16:43:48 +08:00
Hermes Agent
0686a9ae86
fix: TextBase空值undefined渲染为空字符串
...
- set_attrs: innerHTML兜底空字符串
- set_otext: otxt空值兜底
- set_text: text空值兜底
2026-06-18 14:02:20 +08:00
Hermes Agent
306f5cb1b9
fix: Tabular空值显示undefined改为空字符串
2026-06-18 13:54:53 +08:00
Hermes Agent
6f5e8fde9d
fix: password字段表头显示title而非******
...
- uitype.js: ViewBuilder检查user_data区分表头/数据行
- uitypesdef.js: passwordViewBuilder无rec时显示label/name
- views.js: ViewPassword无row_data时显示value/label/name
2026-06-18 11:41:47 +08:00
Hermes Agent
a29fe0e923
fix: ApiDoc _render中sections未定义改为all_sections
2026-06-17 15:33:31 +08:00
Hermes Agent
5ebfa0d56c
fix: bricks.error不存在的函数调用改为console.error (ApiDoc)
2026-06-17 15:23:03 +08:00
883d834272
fix: DataViewer兼容url和data_url两种写法
2026-06-13 18:53:55 +08:00
84e1ebd1f0
fix: InlineForm codes→data映射给UiCode
2026-06-13 18:43:28 +08:00
abfb99aee8
feat: InlineForm控件 - 水平单行表单,支持自定义提交按钮样式
2026-06-13 18:32:06 +08:00
79cfc005bb
feat: filter form passes valueField/textField to UiCode
...
get_filter_fields() now:
- Copies valueField/textField from alter config to filter field
- Uses custom valueField for empty option check and injection
- Ensures filter form and add/edit form use identical code-type config
2026-06-12 11:40:55 +08:00
1c09faf210
Revert "fix: increase model card spacing - margin 4px -> 8px"
...
This reverts commit 1434dffb49cb7b515e7d12679e5c1a6b777e1d50.
2026-06-12 11:18:55 +08:00
1434dffb49
fix: increase model card spacing - margin 4px -> 8px
2026-06-12 11:17:25 +08:00
a0cff97091
fix: LlmModel card spacing - add cwidth/cheight/margin to prevent overlap
...
render_title: padding 15px -> cwidth:3, cheight:3, padding:4px, margin:2px, css:clickable
2026-06-12 11:05:58 +08:00
577df9bac9
feat: LlmModel sends llmcatelogid in inference requests
...
- bricks/llm.js: inputdata2uploaddata includes opts.llmcatelogid when present
2026-06-11 19:22:19 +08:00
9059a8fa89
bugfix
2026-06-10 15:50:30 +08:00
645e26c0c8
bugfix
2026-06-10 15:48:26 +08:00
1b1b87236a
bugfix
2026-06-10 15:26:31 +08:00
78a0e3a791
bugfix
2026-06-10 15:18:00 +08:00
1031c77dda
bugfix
2026-06-10 15:05:39 +08:00
b37d2811da
bugfix
2026-06-03 13:00:27 +08:00
6fe0919f8a
fix: load api_doc.css in header.tmpl, revert JS hack
2026-06-02 20:28:36 +08:00
c8941a5b84
fix: ApiDoc widget self-loads its CSS for sidebar layout
2026-06-02 20:24:22 +08:00
f8f02c63ab
fix: 为 data_filter code 类型字段添加空选项
...
- 检查已有空选项避免重复
- 始终注入空选项确保可清空筛选
2026-06-02 17:26:02 +08:00
a2a80ac922
docs: update api_doc.js dependency comment to reference local 3parties/marked.js
2026-06-02 17:15:31 +08:00
d41c386acf
feat: add ApiDoc widget - renders API docs from markdown with sidebar nav, method badges, code copy
2026-06-02 17:08:42 +08:00
d67bd84d4d
fix: normalize full URLs to relative paths in Router
...
When ?page= param contains a full URL (e.g. https://domain/module/page.ui ),
normalize it to relative path (/module/page.ui) before loading.
Applied in _restore, _loadInto, navigate, and _onReplace.
2026-06-01 23:41:50 +08:00
e5981ba447
style: redesign add/delete icons for modern UI consistency
...
Replace add.svg and delete.svg with minimalist design:
- 1.5px stroke width for thin, elegant appearance
- Round line caps and joins for smooth edges
- Consistent style across both icons
- Uses currentColor for theme compatibility
2026-06-01 15:40:38 +08:00
74db534e41
chore: ignore NFS temp files
2026-06-01 15:29:35 +08:00
6aaac666d5
chore: remove stale NFS temp file from repo
2026-06-01 15:29:29 +08:00
8109292f8a
fix: UiText auto-height on setValue when element not yet rendered
...
Add requestAnimationFrame deferred handleInput() call in setValue()
to ensure textarea height recalculates after DOM render, fixing
single-line display when value is set during Form build phase.
2026-06-01 15:26:57 +08:00
d1661e7ab6
bugfix
2026-06-01 12:09:00 +08:00
88c6fd3138
bugfix
2026-06-01 11:40:38 +08:00
b46c82b402
bugfix
2026-05-31 22:48:54 +08:00
bd706943ce
bugfix
2026-05-31 22:48:23 +08:00
b43d2e7cbd
fix: codeViewBuilder支持DataRow调用(rec为undefined时用desc.user_data)并增加field_name_text查找逻辑
2026-05-31 15:59:17 +08:00
f49994cea7
fix: Menu widget now triggers Router._onReplace for SPA URL tracking
...
Menu widget's menu_clicked() was bypassing the standard _buildWidget
path in bricks.js, so Router._onReplace was never called when navigating
via sidebar menu items. This caused:
- Browser URL not updating on menu clicks
- F5 refresh not restoring the current page
Added Router hook after t.add_widget(w) in menu_clicked(), matching
the same pattern used in bricks.js _buildWidget.
2026-05-31 12:32:17 +08:00
216221f67f
暗色主题: 菜单图标添加filter:invert(1)自适应
2026-05-31 11:22:07 +08:00
ebc8959f4c
fix: 暗色主题输入框背景色优化 #1E293B → #0F172A
...
全局 inputbox 在 dark 主题下使用更深的背景色,与页面主色调协调
2026-05-30 14:32:21 +08:00
fe98b07466
chore: remove dist/ from git tracking, add to .gitignore
2026-05-30 13:47:28 +08:00
db1934fd1c
fix: UiType.setValue typo vlaue -> value
2026-05-30 13:45:07 +08:00
81fd808d02
fix: data_filter form fields missing uitype and browserfields lookup
...
1. Default uitype to 'str' when no alter matches (text input)
2. Handle alter.uitype='select' by converting to code with inline data
3. Read browserfields from opts.row_options.browserfields (CRUD-generated
UIs nest it under row_options, not at opts top level)
2026-05-30 01:18:55 +08:00
94a95b529b
bugfix
2026-05-29 23:11:12 +08:00
fb718b6249
bugfix
2026-05-29 23:10:45 +08:00