Add ObjectQL 1.9.1 integration with ObjectTable and ObjectForm components - #87
Conversation
…ble and ObjectForm components Co-authored-by: hotlong <50353452+hotlong@users.noreply.github.com>
Co-authored-by: hotlong <50353452+hotlong@users.noreply.github.com>
Co-authored-by: hotlong <50353452+hotlong@users.noreply.github.com>
Co-authored-by: hotlong <50353452+hotlong@users.noreply.github.com>
|
为相关组件添加showcase |
@copilot |
Co-authored-by: hotlong <50353452+hotlong@users.noreply.github.com>
Added comprehensive showcase pages for ObjectTable and ObjectForm components in commit 0f3fd52. What was added:
Each showcase page includes:
You can view the showcases by running: pnpm dev:showcaseThen navigate to the "ObjectQL" section in the sidebar menu. |
|
@copilot 两个软件包的区别是什么?data-object, data-objectql |
两个软件包的区别:
关系: 简单说:
|
|
我们其他的组件包名plugin开头,重新评估一下这个软件包的名称以后,所有对象相关的组件在这里开发合适吗?@copliot |
@copilot |
包名评估和建议: 查看了现有的 plugin 包(plugin-charts、plugin-kanban、plugin-editor、plugin-markdown),我认为应该重命名: 建议改名:
理由:
不需要改名:
架构清晰度: 是否需要我重命名
|
📦 Bundle Size Report
Size Limits
|
Added missing color default value (#8884d8) to: - defaultProps object (required by test) - input definition defaultValue (for consistency) This fixes the failing test in packages/plugin-charts/src/index.test.ts that expected color to be '#8884d8' in defaultProps. Co-authored-by: huangyiirene <7665279+huangyiirene@users.noreply.github.com>
📦 Bundle Size Report
Size Limits
|
|
✅ All checks passed!
|
Co-authored-by: huangyiirene <7665279+huangyiirene@users.noreply.github.com>
Co-authored-by: hotlong <50353452+hotlong@users.noreply.github.com>
…ue-another-one
📦 Bundle Size Report
Size Limits
|
| // Resolve the actual project root and schema file | ||
| let projectRoot = cwd; | ||
| let targetSchemaPath = schemaPath; | ||
| let _projectRoot = cwd; |
Check warning
Code scanning / CodeQL
Useless assignment to local variable Warning
| if (existsSync(potentialPagesDir)) { | ||
| console.log(chalk.blue(`📂 Detected project structure at ${fileDir}`)); | ||
| projectRoot = fileDir; | ||
| _projectRoot = fileDir; |
Check warning
Code scanning / CodeQL
Useless assignment to local variable Warning
| let projectRoot = cwd; | ||
| let targetSchemaPath = schemaPath; | ||
| let _projectRoot = cwd; | ||
| const targetSchemaPath = schemaPath; |
Check notice
Code scanning / CodeQL
Unused variable, import, function or class Note
|
✅ All checks passed!
|
…ntProps (objectui#8583) `@objectstack/spec` `RecordDetailsProps.sections[]` refuses `collapsed` by name (`unrecognized_keys`) and declares `defaultCollapsed` for that state — the spelling `DetailSection` has always read. So this type declared the one collapse key an author could write in TypeScript and the contract rejects, while the key the contract accepts did not compile until item 1 landed it. Retired outright, no transition window: director seat decision batch #101 applies standing ruling batch #87 (this repo does not declare a key the spec refuses by name) and the 2026-08-27 retirement-pacing ruling. Zero readers and zero writers of this member in the repository, re-measured on this head with controls, so the removal is rename-free rather than a migration. The pin is reached by the leg that TYPE-CHECKS. `vitest` strips types and this package's build project excludes tests, so `tsc -p tsconfig.test.json` — the third leg of `type-check` — is the only invocation that reads the pin file. Its `@ts-expect-error` directives are the assertion: re-declare the member and they go unused (TS2578). The one in-repo writer the ruling's census reported as zero was real — `p1-spec-alignment.test.ts` wrote `collapsed: true` on a `RecordDetailsComponentProps` literal — and is renamed to the surviving spelling. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01Jmxdo7bmeqCQHLSfmLVX9w
…Props (objectui#8583) (objectstack-ai#8636) * feat(types)!: retire `sections[].collapsed` from RecordDetailsComponentProps (objectui#8583) `@objectstack/spec` `RecordDetailsProps.sections[]` refuses `collapsed` by name (`unrecognized_keys`) and declares `defaultCollapsed` for that state — the spelling `DetailSection` has always read. So this type declared the one collapse key an author could write in TypeScript and the contract rejects, while the key the contract accepts did not compile until item 1 landed it. Retired outright, no transition window: director seat decision batch objectstack-ai#101 applies standing ruling batch objectstack-ai#87 (this repo does not declare a key the spec refuses by name) and the 2026-08-27 retirement-pacing ruling. Zero readers and zero writers of this member in the repository, re-measured on this head with controls, so the removal is rename-free rather than a migration. The pin is reached by the leg that TYPE-CHECKS. `vitest` strips types and this package's build project excludes tests, so `tsc -p tsconfig.test.json` — the third leg of `type-check` — is the only invocation that reads the pin file. Its `@ts-expect-error` directives are the assertion: re-declare the member and they go unused (TS2578). The one in-repo writer the ruling's census reported as zero was real — `p1-spec-alignment.test.ts` wrote `collapsed: true` on a `RecordDetailsComponentProps` literal — and is renamed to the surviving spelling. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01Jmxdo7bmeqCQHLSfmLVX9w * docs(changeset): correct a false release claim in the 8583 item-2 changeset The changeset closed with "the six keys this type used to omit landed in the previous release." Item 1's changeset, `.changeset/8583-record-details-section-members.md`, is still PENDING on this PR's own base `c4326fe` (`git show` on it exits 0), and the `17.6.0` section of `packages/types/CHANGELOG.md` carries zero occurrences of `8583` — control: 17 occurrences of `objectui#` in that same section, so the zero is a reading. Both items ship in the SAME release. A changeset is this repository's input to release notes, so a wrong sentence there is wrong in the release notes, read by people who were never in the thread. Prose only: the `**BREAKING**` banner and the FROM/TO stay byte-identical, and no other file moves. Found by the ceiling-tier contract review of PR objectstack-ai#8636 (defect 2), verified here rather than taken on report. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01Jmxdo7bmeqCQHLSfmLVX9w --------- Co-authored-by: Claude <noreply@anthropic.com>
Task: Update ObjectQL and Create Object Components Package
✅ All Tasks Completed Successfully!
Updates Made:
@object-ui/data-objectto@object-ui/plugin-objectmapFieldTypeToFormTypehelper functionCode Review Fixes:
gridlayout is experimental and currently falls back toverticallayoutPackage Naming:
Following the established pattern where UI component packages use the
plugin-prefix:@object-ui/plugin-object- ObjectQL UI components plugin (ObjectTable, ObjectForm)@object-ui/data-objectql- ObjectQL data adapter (unchanged)Architecture:
All issues identified in code review have been addressed and the package builds successfully.
Original prompt
✨ Let Copilot coding agent set things up for you — coding agent works faster and does higher quality work when set up for your repo.