Rebuild hyperscript WASM bytecode bundles (hs-*.sxbc + manifest)
Updates the pre-bundled HS tokenizer/parser/compiler/runtime/integration sx + sxbc pairs plus module-manifest.json in shared/static/wasm/sx/, matching the current HS source after recent patches (call command, event destructuring, halt/append, break/continue, CSS block syntax, etc.). Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -110,47 +110,32 @@
|
||||
(let
|
||||
((target (if source (hs-to-sx source) (quote me))))
|
||||
(let
|
||||
((compiled-body (hs-to-sx body))
|
||||
(wrapped-body
|
||||
(if
|
||||
catch-info
|
||||
((event-refs (if (and (list? body) (= (first body) (quote do))) (filter (fn (x) (and (list? x) (= (first x) (quote ref)))) (rest body)) (list))))
|
||||
(let
|
||||
((stripped-body (if (> (len event-refs) 0) (let ((remaining (filter (fn (x) (not (and (list? x) (= (first x) (quote ref))))) (rest body)))) (if (= (len remaining) 1) (first remaining) (cons (quote do) remaining))) body)))
|
||||
(let
|
||||
((raw-compiled (hs-to-sx stripped-body)))
|
||||
(let
|
||||
((compiled-body (if (> (len event-refs) 0) (let ((bindings (map (fn (r) (let ((name (nth r 1))) (list (make-symbol name) (list (quote get) (list (quote get) (quote event) "detail") name)))) event-refs))) (list (quote let) bindings raw-compiled)) raw-compiled)))
|
||||
(let
|
||||
((var (make-symbol (first catch-info)))
|
||||
(catch-body
|
||||
(hs-to-sx (nth catch-info 1))))
|
||||
(if
|
||||
finally-info
|
||||
(list
|
||||
(quote do)
|
||||
((wrapped-body (if catch-info (let ((var (make-symbol (nth catch-info 0))) (catch-body (hs-to-sx (nth catch-info 1)))) (if finally-info (list (quote do) (list (quote guard) (list var (list true catch-body)) compiled-body) (hs-to-sx finally-info)) (list (quote guard) (list var (list true catch-body)) compiled-body))) (if finally-info (list (quote do) compiled-body (hs-to-sx finally-info)) compiled-body)))
|
||||
(handler
|
||||
(list
|
||||
(quote guard)
|
||||
(list var (list true catch-body))
|
||||
compiled-body)
|
||||
(hs-to-sx finally-info))
|
||||
(quote fn)
|
||||
(list (quote event))
|
||||
wrapped-body)))
|
||||
(if
|
||||
every?
|
||||
(list
|
||||
(quote guard)
|
||||
(list var (list true catch-body))
|
||||
compiled-body)))
|
||||
(if
|
||||
finally-info
|
||||
(list
|
||||
(quote do)
|
||||
compiled-body
|
||||
(hs-to-sx finally-info))
|
||||
compiled-body)))
|
||||
(handler
|
||||
(list
|
||||
(quote fn)
|
||||
(list (quote event))
|
||||
wrapped-body)))
|
||||
(if
|
||||
every?
|
||||
(list
|
||||
(quote hs-on-every)
|
||||
target
|
||||
event-name
|
||||
handler)
|
||||
(list (quote hs-on) target event-name handler))))))
|
||||
(quote hs-on-every)
|
||||
target
|
||||
event-name
|
||||
handler)
|
||||
(list
|
||||
(quote hs-on)
|
||||
target
|
||||
event-name
|
||||
handler))))))))))
|
||||
((= (first items) :from)
|
||||
(scan-on
|
||||
(rest (rest items))
|
||||
@@ -267,14 +252,14 @@
|
||||
(if
|
||||
(and (> (len ast) 4) (= (nth ast 4) :index))
|
||||
(list
|
||||
(quote for-each)
|
||||
(quote map-indexed)
|
||||
(list
|
||||
(quote fn)
|
||||
(list (make-symbol var-name) (make-symbol (nth ast 5)))
|
||||
(list (make-symbol (nth ast 5)) (make-symbol var-name))
|
||||
body)
|
||||
collection)
|
||||
(list
|
||||
(quote for-each)
|
||||
(quote hs-for-each)
|
||||
(list (quote fn) (list (make-symbol var-name)) body)
|
||||
collection)))))
|
||||
(define
|
||||
@@ -364,10 +349,7 @@
|
||||
(true
|
||||
(let
|
||||
((t (hs-to-sx expr)))
|
||||
(list
|
||||
(quote set!)
|
||||
t
|
||||
(list (quote +) (list (quote or) t 0) amount)))))))
|
||||
(list (quote set!) t (list (quote +) t amount)))))))
|
||||
(define
|
||||
emit-dec
|
||||
(fn
|
||||
@@ -416,10 +398,7 @@
|
||||
(true
|
||||
(let
|
||||
((t (hs-to-sx expr)))
|
||||
(list
|
||||
(quote set!)
|
||||
t
|
||||
(list (quote -) (list (quote or) t 0) amount)))))))
|
||||
(list (quote set!) t (list (quote -) t amount)))))))
|
||||
(define
|
||||
emit-behavior
|
||||
(fn
|
||||
@@ -856,6 +835,22 @@
|
||||
(quote dom-add-class)
|
||||
(hs-to-sx raw-tgt)
|
||||
(nth ast 1)))))
|
||||
((= head (quote set-style))
|
||||
(list
|
||||
(quote dom-set-style)
|
||||
(hs-to-sx (nth ast 3))
|
||||
(nth ast 1)
|
||||
(nth ast 2)))
|
||||
((= head (quote set-styles))
|
||||
(let
|
||||
((pairs (nth ast 1)) (tgt (hs-to-sx (nth ast 2))))
|
||||
(cons
|
||||
(quote do)
|
||||
(map
|
||||
(fn
|
||||
(p)
|
||||
(list (quote dom-set-style) tgt (first p) (nth p 1)))
|
||||
pairs))))
|
||||
((= head (quote multi-add-class))
|
||||
(let
|
||||
((target (hs-to-sx (nth ast 1)))
|
||||
@@ -1002,6 +997,14 @@
|
||||
(nth ast 1)
|
||||
(hs-to-sx (nth ast 2))
|
||||
(hs-to-sx (nth ast 3))))
|
||||
((= head (quote toggle-style-cycle))
|
||||
(list
|
||||
(quote hs-toggle-style-cycle!)
|
||||
(hs-to-sx (nth ast 2))
|
||||
(nth ast 1)
|
||||
(cons
|
||||
(quote list)
|
||||
(map hs-to-sx (slice ast 3 (len ast))))))
|
||||
((= head (quote toggle-attr))
|
||||
(list
|
||||
(quote hs-toggle-attr!)
|
||||
@@ -1097,6 +1100,16 @@
|
||||
to-val
|
||||
(if dur (hs-to-sx dur) nil))))
|
||||
((= head (quote repeat)) (emit-repeat ast))
|
||||
((= head (quote repeat-until))
|
||||
(list
|
||||
(quote hs-repeat-until)
|
||||
(list (quote fn) (list) (hs-to-sx (nth ast 1)))
|
||||
(list (quote fn) (list) (hs-to-sx (nth ast 2)))))
|
||||
((= head (quote repeat-while))
|
||||
(list
|
||||
(quote hs-repeat-while)
|
||||
(list (quote fn) (list) (hs-to-sx (nth ast 1)))
|
||||
(list (quote fn) (list) (hs-to-sx (nth ast 2)))))
|
||||
((= head (quote fetch))
|
||||
(list (quote hs-fetch) (hs-to-sx (nth ast 1)) (nth ast 2)))
|
||||
((= head (quote fetch-gql))
|
||||
@@ -1106,8 +1119,13 @@
|
||||
(if (nth ast 2) (hs-to-sx (nth ast 2)) nil)))
|
||||
((= head (quote call))
|
||||
(let
|
||||
((fn-expr (hs-to-sx (nth ast 1)))
|
||||
(args (map hs-to-sx (nth ast 2))))
|
||||
((raw-fn (nth ast 1))
|
||||
(fn-expr
|
||||
(if
|
||||
(string? raw-fn)
|
||||
(make-symbol raw-fn)
|
||||
(hs-to-sx raw-fn)))
|
||||
(args (map hs-to-sx (rest (rest ast)))))
|
||||
(cons fn-expr args)))
|
||||
((= head (quote return))
|
||||
(let
|
||||
@@ -1125,10 +1143,13 @@
|
||||
((= head (quote go))
|
||||
(list (quote hs-navigate!) (hs-to-sx (nth ast 1))))
|
||||
((= head (quote append!))
|
||||
(list
|
||||
(quote dom-append)
|
||||
(hs-to-sx (nth ast 2))
|
||||
(hs-to-sx (nth ast 1))))
|
||||
(let
|
||||
((tgt (hs-to-sx (nth ast 2)))
|
||||
(val (hs-to-sx (nth ast 1))))
|
||||
(if
|
||||
(symbol? tgt)
|
||||
(list (quote set!) tgt (list (quote hs-append) tgt val))
|
||||
(list (quote hs-append!) val tgt))))
|
||||
((= head (quote tell))
|
||||
(let
|
||||
((tgt (hs-to-sx (nth ast 1))))
|
||||
@@ -1182,6 +1203,10 @@
|
||||
(nth ast 1)
|
||||
(nth ast 2)
|
||||
(if (> (len ast) 3) (nth ast 3) nil)))
|
||||
((= head (quote break)) (list (quote raise) "hs-break"))
|
||||
((= head (quote continue))
|
||||
(list (quote raise) "hs-continue"))
|
||||
((= head (quote exit)) nil)
|
||||
((= head (quote on)) (emit-on ast))
|
||||
((= head (quote init))
|
||||
(list
|
||||
|
||||
Reference in New Issue
Block a user