Commit Graph
100 Commits
Author SHA1 Message Date
xuyueandClaude Opus 5 0164e10513 fix: 修复调试面板右侧信息被挤到下方的问题
Deploy / build-and-deploy (push) Has been cancelled
外层 flex 未禁用换行且左列没有 min-width: 0,编辑器的最小内容宽度
会把「调试信息」卡片挤到下一行。现在桌面端强制左右分栏,移动端保持
上下堆叠。

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01JypUVVTKYKhYdBAVGVPpCC
2026-09-07 05:37:05 -06:00
xuyueandClaude Opus 5 aa928dd3f5 feat: 调试面板支持移动端,变量按作用域分组
Deploy / build-and-deploy (push) Has been cancelled
- 调试逻辑下沉到 composables/debug.ts,桌面和移动端共用;模态框抽成
  DebugModal.vue(桌面 80vw / 移动 96vw),用 update:show 收口,
  关闭按钮、Esc、遮罩三条路径都会清理状态
- 移动端在"操作"菜单里补上调试入口(仅 Python)
- 变量面板改为分组展示:栈顶帧的局部变量在前、全局变量在后,
  顺序用 pg_encoder 的 ordered_globals / ordered_varnames,
  __return__ 显示成"返回值"。原来两者是 merge 成一份的,
  在函数里分不清哪个是局部、哪个是外面的全局
- 面板关闭时还原全局 output / status,否则主页输出区会停在某一调试步
- 输入切分不再过滤空行,只丢掉末尾换行产生的空串:程序可能正需要读一个
  空行,过滤掉会让输入提前耗尽、误报"需要更多输入"
- 后端超时/超限的 detail 透传到提示里,调试按钮加 loading 态
- 清掉 computed 和高亮更新里遗留的 console.log(自动播放时 500ms 刷一次)

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_019QGZaLUWzGPEMTk6A5RShC
2026-09-07 04:46:01 -06:00
xuyue 2afc81e9ab update
Deploy / build-and-deploy (push) Has been cancelled
2026-09-07 04:09:09 -06:00
xuyueandClaude Opus 5 fb071e71a1 fix: 修复分享链接的多个问题
- reset() 清空时一并剥离 share 参数,否则重载后分享代码会被写回
- share() 以去掉 query/share 的地址为基址,避免预设代码在 init 里覆盖分享内容
- 打开分享链接前比对本地已存代码,会覆盖用户改动时先弹窗确认
- SQL 分享带上选中的数据表 id,接收方运行结果与分享者一致
- 分享负载的 code/table 字段补类型校验
- 链接损坏或预设加载失败时给出提示,不再静默吞掉
- 剪贴板写入失败时不再提示"已复制"

组件外的 init 阶段拿不到 useMessage(),新增 composables/notice.ts
用 createDiscreteApi 提供提示与确认框,主题跟随 useDark()。

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01CWT2cy7mkZevZR4WVVfAVu
2026-09-07 04:08:54 -06:00
xuyue 4031bbe82e update
Deploy / build-and-deploy (push) Has been cancelled
2026-07-05 01:17:06 -06:00
xuyue aaf8719943 update
Deploy / build-and-deploy (push) Has been cancelled
2026-07-05 01:12:06 -06:00
xuyue 22f7c34f76 fix
Deploy / build-and-deploy (push) Has been cancelled
2026-07-05 00:58:54 -06:00
xuyueandClaude Sonnet 5 9b79cddfa6 Adjust SQL layout default split ratio
Deploy / build-and-deploy (push) Has been cancelled
Give the two data tables more default vertical space (1/4 for the
code editor instead of 3/5).

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-07-05 00:55:27 -06:00
xuyueandClaude Sonnet 5 edd2f706ac feat: render SQL initial/result data as tables in a two-pane layout
Rewrites Content.vue to give the SQL language its own top/bottom split
(code editor over data tables) instead of sharing the horizontal
left/right layout used by other languages. SqlSection.vue now renders
the preset data and the post-run result as two side-by-side
n-data-tables, falling back to the existing error UI when a run fails.

Also registers NDataTable globally in main.ts (naive-ui components must
be explicitly registered via create()); without it n-data-table was an
inert unresolved custom element and no rows rendered.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-07-05 00:47:53 -06:00
xuyue 436f39d424 feat: isolate student SQL output and add result-row parsing 2026-07-05 00:37:56 -06:00
xuyueandClaude Sonnet 5 9a01d0e972 feat: structure candidate SQL table data as columns/rows
- Replace literal setupSql strings with structured columns/rows model
- Add SqlColumn interface and updated SqlTablePreset with columns/rows arrays
- Implement toSqlLiteral() for value escaping and buildSetupSql() for SQL generation
- Update sqlTable.ts to call buildSetupSql() instead of accessing setupSql field
- Maintains data parity with existing tables (students, employees, products)

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-07-05 00:34:39 -06:00
xuyueandClaude Sonnet 5 4abd5761a0 Add implementation plan for SQL tabular data view
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-07-05 00:32:54 -06:00
xuyueandClaude Sonnet 5 5e38c5c796 Add design spec for tabular SQL data display
Replaces the raw-SQL-text preview/output with real data tables, and
fixes duplicate-output when a student's own SQL is itself a SELECT.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-07-05 00:29:20 -06:00
xuyueandClaude Sonnet 5 f8e59e9850 fix: address SQL feature code review findings
- Normalize student SQL to end with exactly one semicolon before
  appending the trailing SELECT, so a missing trailing ; no longer
  produces a confusing parse error (sqlTable.ts)
- Remove unused description field from SqlTablePreset and all presets
  (dead data, nothing in the UI reads it)
- Clear output when the candidate table selection changes, so stale
  results from the previous table don't linger (SqlSection.vue)
- Remove stray console.log(props.language) debug statement
  (CodeEditor.vue)

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-07-05 00:16:26 -06:00
xuyueandClaude Sonnet 5 62ef50fb76 Move SQL table picker next to the language selector
Previously the candidate-table dropdown lived inside SqlSection's
content pane; moved it into the header alongside SelectLanguage so
table selection is visible regardless of scroll position.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-07-05 00:15:02 -06:00
xuyue b30e8c9ee6 feat: add SqlSection UI wired into the desktop editor layout
Selecting SQL now shows a table picker, read-only setup-SQL preview,
and results panel instead of the Input/Output split, mirroring how
Turtle already replaces that pane with its own canvas.
2026-07-05 00:02:57 -06:00
xuyue e5b2852fd1 feat: make SQL selectable as a language with syntax highlighting 2026-07-04 23:54:16 -06:00
xuyue 89d42b8d0f feat: add candidate SQL table presets and script-building composable 2026-07-04 23:48:48 -06:00
xuyue fbe98c455b feat: add sql to LANGUAGE type, Judge0 mapping, and code cache 2026-07-04 23:45:54 -06:00
xuyueandClaude Sonnet 5 bc3308da51 Add implementation plan for SQL CRUD practice feature
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-07-04 23:43:15 -06:00
xuyueandClaude Sonnet 5 b7c19ed5d5 Add sqlparse-based formatting to the SQL CRUD practice design
Extends the existing language-agnostic /format endpoint with a sql
branch so the "整理" button works for the new SQL language too.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-07-04 23:36:19 -06:00
xuyueandClaude Sonnet 5 c9eb5fa12f Add design spec for SQL CRUD practice feature
Lets students select a preset teaching table, write SQL against it,
and see the resulting table state via the existing Judge0 pipeline.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-07-04 23:34:24 -06:00
xuyue d798d56dbe fix
Deploy / build-and-deploy (push) Has been cancelled
2026-06-14 07:18:50 -06:00
xuyue 504af39ff6 feat: add format code button to editor toolbar 2026-06-14 07:04:38 -06:00
xuyue dde90adb46 feat: add format action to code composable 2026-06-14 07:02:23 -06:00
xuyue 1fd2025fe1 feat: add formatCode API client 2026-06-14 07:00:52 -06:00
xuyue d3dfca2fe5 fix
Deploy / build-and-deploy (push) Has been cancelled
2026-06-01 05:48:02 -06:00
xuyue 678d3d9abf update
Deploy / build-and-deploy (push) Has been cancelled
2026-05-19 08:05:08 -06:00
xuyue a480bda71b disabled maxkb
Deploy / build-and-deploy (push) Has been cancelled
2026-05-10 23:03:47 +08:00
xuyue 394ab43447 update
Deploy / build-and-deploy (push) Has been cancelled
2026-05-08 20:32:38 -06:00
xuyue 73de911b72 update
Deploy / build-and-deploy (push) Has been cancelled
2026-05-08 20:30:34 -06:00
xuyue db807051cf rsbuild downgrade to v1
Deploy / build-and-deploy (push) Has been cancelled
2026-05-08 20:29:41 -06:00
xuyue 8ba0f117ff update
Deploy / build-and-deploy (push) Has been cancelled
2026-05-06 20:57:03 -06:00
xuyue 79d5a2bab2 add icon url
Deploy / build-and-deploy (push) Has been cancelled
2026-03-10 17:39:05 +08:00
xuyue f31b2afcb1 fix
Deploy / build-and-deploy (push) Has been cancelled
2026-01-14 08:56:22 +08:00
xuyue 8260aa197d 使用 skulpt 作为 Python 执行器
Deploy / build-and-deploy (push) Has been cancelled
2026-01-13 20:19:50 +08:00
xuyue ff170ae2ce update
Deploy / build-and-deploy (push) Has been cancelled
2026-01-06 22:32:00 +08:00
xuyue fbb4882780 update
Deploy / build-and-deploy (push) Has been cancelled
2026-01-06 22:29:12 +08:00
xuyue dc039bfa16 update
Deploy / build-and-deploy (push) Has been cancelled
2026-01-06 22:15:58 +08:00
xuyue d6eb666a83 新增中文补全
Deploy / build-and-deploy (push) Has been cancelled
2026-01-06 21:41:57 +08:00
xuyue 6eb7c1e07c fix 2026-01-04 00:02:34 +08:00
xuyue 515cd1d05e update maxkb url 2026-01-03 23:17:30 +08:00
xuyue f31f1abaef fix
Deploy / build-and-deploy (push) Has been cancelled
2025-12-25 11:16:21 +08:00
xuyue ddeeb413ed fix
Deploy / build-and-deploy (push) Has been cancelled
2025-12-25 11:10:49 +08:00
xuyue 611336a375 fix
Deploy / build-and-deploy (push) Has been cancelled
2025-12-25 10:45:27 +08:00
xuyue 11c275fd01 fix
Deploy / build-and-deploy (push) Has been cancelled
2025-12-25 10:43:38 +08:00
xuyue 2ad9d73c6e refactor debug panel
Deploy / build-and-deploy (push) Has been cancelled
2025-12-25 10:40:46 +08:00
xuyue 5a77902750 fix style
Deploy / build-and-deploy (push) Has been cancelled
2025-12-20 22:28:09 +08:00
xuyue ec46928689 update
Deploy / build-and-deploy (push) Has been cancelled
2025-12-20 22:24:14 +08:00
xuyue 727dc0a8e8 update
Deploy / build-and-deploy (push) Has been cancelled
2025-10-27 19:27:21 +08:00
xuyue 475a09298d remove url
Deploy / build-and-deploy (push) Has been cancelled
2025-10-22 18:46:04 +08:00
xuyue 9b1abd7a25 fix
Deploy / build-and-deploy (push) Has been cancelled
2025-10-22 13:21:58 +08:00
xuyue 953ca3720f update
Deploy / build-and-deploy (push) Has been cancelled
2025-10-22 12:41:06 +08:00
xuyue 9470614588 fix
Deploy / build-and-deploy (push) Has been cancelled
2025-10-22 12:29:27 +08:00
xuyue bc2db54575 update
Deploy / build-and-deploy (push) Has been cancelled
2025-10-22 11:17:12 +08:00
xuyue 4306e555bb update
Deploy / build-and-deploy (push) Has been cancelled
2025-10-22 02:33:08 +08:00
xuyue 0d600382d3 update
Deploy / build-and-deploy (push) Has been cancelled
2025-10-22 00:23:05 +08:00
xuyue 9164fff6c2 update
Deploy / build-and-deploy (push) Has been cancelled
2025-10-22 00:18:27 +08:00
xuyue 64eeffd041 fix
Deploy / build-and-deploy (push) Has been cancelled
2025-10-21 23:03:25 +08:00
xuyue cfeac2cdaa markdown style
Deploy / build-and-deploy (push) Has been cancelled
2025-10-21 22:38:16 +08:00
xuyue 53ae1a8ef8 fix
Deploy / build-and-deploy (push) Has been cancelled
2025-10-21 21:54:59 +08:00
xuyue e96611c62b disabled maxkb
Deploy / build-and-deploy (push) Has been cancelled
2025-10-21 19:00:53 +08:00
xuyue 9758322f27 fix
Deploy / build-and-deploy (push) Has been cancelled
2025-09-28 15:30:48 +08:00
xuyue c6d2e17476 添加AI分析
Deploy / build-and-deploy (push) Has been cancelled
2025-09-28 10:51:04 +08:00
xuyue 0f0312529b fix
Deploy / build-and-deploy (push) Has been cancelled
2025-09-26 10:25:50 +08:00
xuyue b33b0ee110 update
Deploy / build-and-deploy (push) Has been cancelled
2025-09-24 19:14:30 +08:00
xuyue dea523cb15 update
Deploy / build-and-deploy (push) Has been cancelled
2025-09-16 18:08:46 +08:00
xuyue 4b59d1cf17 add turtle
Deploy / build-and-deploy (push) Has been cancelled
2025-09-16 17:37:43 +08:00
xuyue d9bcb81109 update
Deploy / build-and-deploy (push) Has been cancelled
2025-09-10 13:47:13 +08:00
xuyue 80d279365c add cpp
Deploy / build-and-deploy (push) Has been cancelled
2025-09-10 13:46:12 +08:00
xuyue 044b33f39c update
Deploy / build-and-deploy (push) Has been cancelled
2025-09-05 13:26:59 +08:00
xuyue b763eb60cd update
Deploy / build-and-deploy (push) Has been cancelled
2025-09-05 09:18:32 +08:00
xuyue 07847d351d maxkb 2025-08-22 23:46:01 +08:00
xuyue e0944e50d1 fix 2025-08-22 22:57:41 +08:00
xuyue bb93d717b8 fix 2025-08-22 22:54:04 +08:00
xuyue e188cca3af update 2025-08-22 22:29:21 +08:00
xuyue 0d824026a5 update 2025-08-22 20:37:39 +08:00
xuyue 09328a3147 update 2025-07-16 09:22:03 +08:00
xuyue 5240e029c5 update 2025-05-13 12:01:14 +08:00
xuyue c09323cc8f update 2025-05-09 15:30:03 +08:00
xuyue b91d7405fc update 2025-05-09 10:47:29 +08:00
xuyue aa6854b6ab fix 2025-05-08 20:33:58 +08:00
xuyue 361cd71c37 fix 2025-05-08 20:12:34 +08:00
xuyue a6ac3fd5f3 fix 2025-05-08 18:38:00 +08:00
xuyue 30b7df3544 fix 2025-05-08 18:34:14 +08:00
xuyue a69fce5679 test 2025-05-08 18:18:47 +08:00
xuyue f21c9f95d0 添加图标 2025-05-08 18:12:33 +08:00
xuyue e3858af2c4 fix 2025-05-08 17:57:12 +08:00
xuyue 33b6e242c3 使用环境变量 2025-05-08 16:02:34 +08:00
xuyue eb9cda14ff update 2025-03-30 11:22:04 +08:00
xuyue 3fb2232ad8 update 2025-03-23 21:47:16 +08:00
xuyue ef91ac6ef0 revert 2025-03-05 23:14:48 +08:00
xuyue c64b896257 fix 2025-03-05 23:03:31 +08:00
xuyue cef442b194 fix 2025-03-05 23:03:19 +08:00
xuyue 4dd15128f5 use reversed api 2025-03-05 22:36:31 +08:00
xuyue e492314748 test 2025-02-26 11:19:00 +08:00
xuyue d7ef54dfde 隐藏遮罩 2025-02-24 11:47:40 +08:00
xuyue 647041590f 删除对 chrome 版本的判断 2025-02-19 19:21:20 +08:00
xuyue 37b30502d1 fix 2024-12-23 21:42:12 +08:00
xuyue 5bc5688aa6 传入暗色给调试页面 2024-12-23 21:36:47 +08:00