Runtime - Part 18
**Source path:** Spiralist/wp-content/plugins/ns12-manuscript/includes/runtime.php
: rest_url(spiralist_book_pages_get_rest_namespace() . '/symbols');
}
function spiralist_book_pages_get_prompts_api_url(): string
{
return function_exists('spiralist_book_pages_get_rest_url')
? spiralist_book_pages_get_rest_url('prompts')
: rest_url(spiralist_book_pages_get_rest_namespace() . '/prompts');
}
function spiralist_book_pages_get_contribute_api_url(): string
{
return function_exists('spiralist_book_pages_get_rest_url')
? spiralist_book_pages_get_rest_url('contribute')
: rest_url(spiralist_book_pages_get_rest_namespace() . '/contribute');
}
function spiralist_book_pages_get_axioms_api_url(): string
{
return function_exists('spiralist_book_pages_get_rest_url')
? spiralist_book_pages_get_rest_url('axioms')
: rest_url(spiralist_book_pages_get_rest_namespace() . '/axioms');
}
function spiralist_book_pages_get_kernel_api_url(): string
{
return function_exists('spiralist_book_pages_get_rest_url')
? spiralist_book_pages_get_rest_url('kernel')
: rest_url(spiralist_book_pages_get_rest_namespace() . '/kernel');
}
function spiralist_book_pages_get_human_interactions_api_url(): string
{
return function_exists('spiralist_book_pages_get_rest_url')
? spiralist_book_pages_get_rest_url('interactions')
: rest_url(spiralist_book_pages_get_rest_namespace() . '/interactions');
}
function spiralist_book_pages_get_uai_spec_url(): string
{
return function_exists('spiralist_get_uai_spec_url')
? spiralist_get_uai_spec_url()
: 'https://uaix.org/en-us/specification/uai-1/';
}
function spiralist_book_pages_get_uai_examples_url(): string
{
return function_exists('spiralist_get_uai_examples_url')
? spiralist_get_uai_examples_url()
: 'https://uaix.org/en-us/examples/';
}
function spiralist_book_pages_get_radix_guide_url(): string
{
return spiralist_book_pages_get_protocol5_url('UAI/radix-63404-guide-and-attribution');
}
function spiralist_book_pages_get_protocol5_library_url(): string
{
return spiralist_book_pages_get_protocol5_url('UAI');
}
function spiralist_book_pages_get_uai_lexicon(): array
{
static $lexicon = null;
if (is_array($lexicon)) {
return $lexicon;
}
$fallback = [
'spec' => 'Spiral-Script-Lexicon',
'format' => 'spiralist-uai-lexicon',
'version' => '1.0.0',
'registry' => 'uai-lexicon',
'language' => [
'code' => 'uai',
'autonym' => '⟦⟲⌬⟧',
'labelKey' => 'language.uai1.autonym',
],
'entries' => [
'language.uai1.autonym' => [
'conceptId' => 'language.uai1.autonym',
'english' => 'Spiral Script',
'uai' => '⟦⟲⌬⟧',
'fallback' => 'Spiral Script',
'type' => 'autonym',
'partOfSpeech' => 'language-name',
'pageUsage' => ['language.meta'],
],
'language.selector' => [
'conceptId' => 'language.selector',
'english' => 'Language',
'uai' => '∿ ⊨',
'fallback' => 'Language',
'type' => 'label',
'partOfSpeech' => 'ui-label',
'pageUsage' => ['header.language.label'],
],
],
];
$paths = [
ABSPATH . 'registry/uai-lexicon.json',
get_theme_file_path('assets/data/uai-lexicon.json'),
];
$path = '';
foreach ($paths as $candidate) {
if (!is_string($candidate) || $candidate === '' || !file_exists($candidate) || !is_readable($candidate)) {
continue;
}
$path = $candidate;
break;
}
if ($path === '') {
$lexicon = $fallback;
return $lexicon;
}
$raw = file_get_contents($path);
$decoded = is_string($raw) ? json_decode($raw, true) : null;
$lexicon = is_array($decoded) ? $decoded : $fallback;
return $lexicon;
}
function spiralist_book_pages_get_uai_autonym(): string
{
return function_exists('spiralist_get_uai_autonym')
? spiralist_get_uai_autonym()
: 'Spiral Script';
}
function spiralist_book_pages_get_current_locale_tag(): string
{
return function_exists('spiralist_get_current_locale_tag')
? spiralist_get_current_locale_tag()
: 'en-us';
}
function spiralist_book_pages_get_language_metadata(): array
{
if (function_exists('spiralist_get_language_metadata')) {
return spiralist_get_language_metadata();
}
return [
'en' => [
'code' => 'en',
'localeTag' => 'en-us',
'label' => 'English',
'selectorLabel' => 'English',
'viewMode' => 'human',
'htmlLang' => 'en-US',
],
];
}
function spiralist_book_pages_get_current_language_code(): string
{
return function_exists('spiralist_get_current_language_code')
? spiralist_get_current_language_code()
: 'en';
}
function spiralist_book_pages_get_supported_language_slugs(): array
{
return function_exists('spiralist_get_supported_language_slugs')
? spiralist_get_supported_language_slugs()
: ['en'];
}
function spiralist_book_pages_get_current_language_slug(): string
{
return function_exists('spiralist_get_current_language_slug')
? spiralist_get_current_language_slug()
: 'en';
}
function spiralist_book_pages_get_language_prefixed_url(string $url, string $language): string
{
return function_exists('spiralist_get_language_prefixed_url')
? spiralist_get_language_prefixed_url($url, $language)
: $url;
}
function spiralist_book_pages_get_navigation_items(): array
{
return [
[
'label' => 'Home',
'url' => home_url('/'),
],
[
'label' => 'Manuscript',
'url' => spiralist_book_pages_get_manuscript_page_url(),
],
[
'label' => 'Gallery',
'url' => spiralist_book_pages_get_gallery_page_url(),
],
[
'label' => 'System',
'url' => spiralist_book_pages_get_system_url(),
],
[
'label' => 'Symbols',
'url' => spiralist_book_pages_get_symbols_page_url(),
],
[
'label' => 'Prompts',
'url' => spiralist_book_pages_get_prompts_page_url(),
],
[
'label' => 'Contribute',
'url' => spiralist_book_pages_get_contribute_page_url(),
],
[
'label' => 'AI Access',
'url' => spiralist_book_pages_get_ai_access_url(),
],
[
'label' => 'Spiralist',
'url' => spiralist_book_pages_get_dashboard_url(),
],
];
}
function spiralist_book_pages_get_publication_excluded_slugs(): array
{
return [
'login',
'sign-up',
'register',
'dashboard',
'account',
'spiralist',
];
}
function spiralist_book_pages_get_publication_language(string $fallback = 'en'): string
{
return function_exists('spiralist_get_publication_language')
? spiralist_get_publication_language($fallback)
: $fallback;
}
function spiralist_book_pages_get_publication_surface_post($post = null): ?WP_Post
{
if (function_exists('spiralist_get_publication_surface_post')) {
return spiralist_get_publication_surface_post($post);
}
if ($post instanceof WP_Post) {
return $post;
}
if (is_singular()) {
$queried = get_queried_object();
if ($queried instanceof WP_Post) {
return $queried;
}
}
return null;
}
function spiralist_book_pages_is_publication_surface($post = null): bool
{
return function_exists('spiralist_is_publication_surface')
? spiralist_is_publication_surface($post)
: false;
}
function spiralist_book_pages_get_publication_human_url(?WP_Post $post = null, string $language = '', ?bool $is_home_surface = null): string
{
return function_exists('spiralist_get_publication_human_url')
? spiralist_get_publication_human_url($post, $language, $is_home_surface)
: '';
}
function spiralist_book_pages_get_publication_stem_from_url(string $human_url, string $language = ''): string
{
return function_exists('spiralist_get_publication_stem_from_url')
? spiralist_get_publication_stem_from_url($human_url, $language)
: '';
}
function spiralist_book_pages_build_publication_url_from_human_url(string $human_url, string $suffix, string $language = ''): string
{