Merge worktree-typed: separate defpage for spec explorer
This commit is contained in:
@@ -349,20 +349,7 @@
|
||||
"extensions" (~spec-overview-content
|
||||
:spec-title "Extensions"
|
||||
:spec-files (make-spec-files extension-spec-items))
|
||||
:else (cond
|
||||
(starts-with? slug "explore/")
|
||||
(let ((spec-slug (slice slug 8 (string-length slug)))
|
||||
(spec (find-spec spec-slug)))
|
||||
(if spec
|
||||
(let ((data (spec-explorer-data
|
||||
(get spec "filename")
|
||||
(get spec "title")
|
||||
(get spec "desc"))))
|
||||
(if data
|
||||
(~spec-explorer-content :data data)
|
||||
(~spec-not-found :slug spec-slug)))
|
||||
(~spec-not-found :slug spec-slug)))
|
||||
:else (let ((spec (find-spec slug)))
|
||||
:else (let ((spec (find-spec slug)))
|
||||
(if spec
|
||||
(~spec-detail-content
|
||||
:spec-title (get spec "title")
|
||||
@@ -372,6 +359,26 @@
|
||||
:spec-prose (get spec "prose"))
|
||||
(~spec-not-found :slug slug))))))))
|
||||
|
||||
;; ---------------------------------------------------------------------------
|
||||
;; Spec Explorer — structured interactive view of spec files
|
||||
;; ---------------------------------------------------------------------------
|
||||
|
||||
(defpage specs-explore-page
|
||||
:path "/language/specs/explore/<slug>"
|
||||
:auth :public
|
||||
:layout :sx-docs
|
||||
:content (~sx-doc :path (str "/language/specs/explore/" slug)
|
||||
(let ((spec (find-spec slug)))
|
||||
(if spec
|
||||
(let ((data (spec-explorer-data
|
||||
(get spec "filename")
|
||||
(get spec "title")
|
||||
(get spec "desc"))))
|
||||
(if data
|
||||
(~spec-explorer-content :data data)
|
||||
(~spec-not-found :slug slug)))
|
||||
(~spec-not-found :slug slug)))))
|
||||
|
||||
;; ---------------------------------------------------------------------------
|
||||
;; Bootstrappers section
|
||||
;; ---------------------------------------------------------------------------
|
||||
|
||||
Reference in New Issue
Block a user