cmap functions, email, architecture documentation.
This commit is contained in:
@@ -4,6 +4,7 @@
|
||||
racket/contract
|
||||
racket/path
|
||||
racket-wiki
|
||||
racket-wiki/architecture/import
|
||||
racket-wiki/translate))
|
||||
|
||||
@title{racket-wiki}
|
||||
@@ -146,3 +147,53 @@ labels use one translation source.
|
||||
|
||||
The browser calls @tt{/api/ping} every 15 seconds. Failed or timed-out requests
|
||||
show an Offline indicator. A recovered connection briefly shows Online.
|
||||
|
||||
@section{Architecture Documentation Import}
|
||||
|
||||
@defmodule[racket-wiki/architecture/import]
|
||||
|
||||
The package includes twelve linked Dutch architecture pages below namespace
|
||||
@tt{racket-wiki} and two native CMaps. The source files live below
|
||||
@tt{architecture/}; importing them uses the normal page and CMap storage
|
||||
procedures and therefore creates ordinary immutable versions.
|
||||
|
||||
@defproc[(validate-racket-wiki-architecture!) (values list? list?)] {
|
||||
Reads and validates the bundled manifest, Markdown and JSON documents without
|
||||
accessing wiki content. Page references, CMap embeds, item identifiers and
|
||||
connector endpoints must all resolve inside the set.
|
||||
}
|
||||
|
||||
@defproc[(import-racket-wiki-architecture!
|
||||
[config any/c]
|
||||
[#:author author string? "racket-wiki architecture import"]
|
||||
[#:dry-run? dry-run? boolean? #f]
|
||||
[#:overwrite-modified? overwrite-modified? boolean? #f])
|
||||
(listof architecture-import-result?)] {
|
||||
Creates missing architecture pages and CMaps and updates imported content that
|
||||
has not been edited locally. Every imported document contains a source hash.
|
||||
Locally modified documents are returned with status
|
||||
@racket['skipped-modified] unless @racket[overwrite-modified?] is true. Equal
|
||||
content remains unchanged and does not receive a needless new version.
|
||||
}
|
||||
|
||||
@defproc[(import-racket-wiki-architecture-from-data-directory!
|
||||
[data-directory path-string?]
|
||||
[#:author author string? "racket-wiki architecture import"]
|
||||
[#:dry-run? dry-run? boolean? #f]
|
||||
[#:overwrite-modified? overwrite-modified? boolean? #f])
|
||||
(listof architecture-import-result?)] {
|
||||
Convenience entry point for DrRacket and small scripts. It constructs the wiki
|
||||
configuration from @racket[data-directory] and performs the same validated,
|
||||
locally-change-aware import.
|
||||
}
|
||||
|
||||
@defstruct*[architecture-import-result
|
||||
([kind symbol?]
|
||||
[reference string?]
|
||||
[status symbol?]
|
||||
[message string?])]
|
||||
|
||||
From the package source directory, run a non-writing preview with
|
||||
@tt{racket architecture/import.rkt --data ./wiki-data --dry-run}. Remove
|
||||
@tt{--dry-run} to import and use @tt{--author} to select the author recorded in
|
||||
page and CMap history.
|
||||
|
||||
Reference in New Issue
Block a user