gitoriaLog in with ident

components

All repositories: gitoria

ReadmeCodePull requestsReleasesTicketsSettings
Branchmain3bc905c5components #15 (mission 003) 2/2: docs (README Look, STATUS, LOG), reportmremain/components/code-editor/demo.hl

1.6 KB

  1. // demo.hl — `/code-editor`: two editors (Hybriel and JavaScript) and the text each holds shown below. The editor announces a change
  2. // with a bubbling DOM `input` event on its hidden field: `e.target.value` is the text.
  3. parent '../main.hl'
  4. import CodeEditor from './code-editor.hl'
  5. __title = 'Code editor · Hybriel components'
  6. static NL = "
  7. "
  8. static TAB = " "
  9. String hl = '// a Hybriel component' + NL + 'String title = \'Hello\'' + NL + NL + 'greet(name) {' + NL + TAB + 'return "Hi " + name' + NL + '}' + NL + NL + 'View {' + NL + TAB + 'h1 { title }' + NL + '}'
  10. String js = 'function add(a, b) {' + NL + TAB + '/* sum */' + NL + TAB + 'return a + b + 42' + NL + '}' + NL + 'const text = `sum: ${add(1, 2)}`'
  11. View {
  12. codeEditorDemo {
  13. h1 { "Code editor" }
  14. p { class = "muted" "Type code: it is coloured while you type and the line numbers follow. Tab indents, Shift+Tab outdents, Ctrl+Z / Ctrl+Shift+Z undo and redo, Enter keeps the indent, brackets and quotes close themselves." }
  15. form { id = "code-form" method = "get" action = "/code-editor" on input(e) { emit demoCode(e) }
  16. h2 { "Hybriel" }
  17. CodeEditor { name = "hybriel" value = hl language = "hybriel" }
  18. pre { id = "code-value-hybriel" hl }
  19. h2 { "JavaScript, indented with 2 spaces" }
  20. CodeEditor { name = "js" value = js language = "js" spaces = 2 }
  21. pre { id = "code-value-js" js }
  22. p { button { type = "submit" "Send (posts both texts)" } }
  23. }
  24. p { a { id = "readme" href = "/code-editor/README.md" "README (how to use it)" } }
  25. }
  26. }
  27. on demoCode(e) {
  28. if (e.target.name == 'hybriel') { hl = e.target.value }
  29. if (e.target.name == 'js') { js = e.target.value }
  30. }

Branches

  • mainmain branch

Latest commits

  • 3bc905c5components #15 (mission 003) 2/2: docs (README Look, STATUS, LOG), reportmre
  • 5a98d77ecomponents #15 (mission 003) 1/2: black/white base look — greys for nuances, no WorldAPI fallbacks, no decorative frames; site + icon black/white; gate 230/0mre
  • 3f93d716components code order (mission 002) 4/4: docs, tests/letcount.py, tests/same-output*, reportmre
  • e747cfa0components code order (mission 002) 3/4: let only where reassigned (257 dropped, 0 never-reassigned left); gate 220/0, layouts gate 73/0, same outputmre
  • 172914a3components code order (mission 002) 2/4: lib/uploads.hl (demo upload storage), thin demo handlers, project.hl map; gate 220/0, same outputmre
  • d29f35b1components code order (mission 002) 1/4: styles.hl -> components/styles.hl; gate 220/0, same outputmre
  • 09945750components: Hybriel master 06617221 (plugin allocators 3a781359 + 413f60e4, http1 773de63e); gate 220/0mre
  • ede4d19acomponents: Hybriel master 190aa11d (fc838894 GC correctness, #126 closure scopes, #127); gate 220/0mre
  • 2bb9a935components: Hybriel master 8efba065 (re-vendor round 069: #126 memory, #48 lambda copy)mre
  • e4f01768antcolony#40: mission references point to the moved missionsmre
  • d32b44e2antcolony#40: history (LOG.md), worker briefs (missions/) and reports moved here from antcolony, numbered per project; old numbers in antcolony docs/mission-map.mdmre
  • 0fb80b57components: Hybriel master ff51cf46 (re-vendor round)mre
  • 57408b6ecomponents#14: installable app (manifest, service worker, offline index), own iconmre
  • 317bd09fdeploy.sh: back up live storage/.sessions/.env before every deploy (newest 5 kept)mre
  • becbd59bcomponents#13: modal dialog (<dialog> based, focus wrap, backdrop/Esc/x close with reason, scroll lock, footer buttons)mre
  • 367dd19adeploy.sh: never send .git or .gitignore to Byrodinmre
  • 4b4dabe5State of 2026-09-27, before the move to gitoriamre