hdoc-tools 0.62.5 → 0.63.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (71) hide show
  1. package/editor/dist/assets/{index-BtxvGZHW.js → index-Dknn5g5A.js} +5 -4
  2. package/editor/dist/index.html +13 -13
  3. package/hdoc-build.js +5 -3
  4. package/hdoc-content-routes.js +136 -4
  5. package/hdoc-serve.js +26 -3
  6. package/package.json +1 -1
  7. package/ui/css/theme-default/styles/base.css +86 -21
  8. package/ui/css/theme-default/styles/components/api-doc.css +6 -3
  9. package/ui/css/theme-default/styles/components/content.css +140 -39
  10. package/ui/css/theme-default/styles/components/custom-block.css +1 -1
  11. package/ui/css/theme-default/styles/components/htl-doc.css +243 -64
  12. package/ui/css/theme-default/styles/components/htl-library.css +152 -0
  13. package/ui/css/theme-default/styles/components/htl-search.css +267 -0
  14. package/ui/css/theme-default/styles/components/sidebar.css +59 -16
  15. package/ui/css/theme-default/styles/fonts.css +17 -3
  16. package/ui/css/theme-default/styles/htldoc.layouts.css +756 -87
  17. package/ui/css/theme-default/styles/vars.css +40 -35
  18. package/ui/favicon.svg +64 -0
  19. package/ui/images/hornbill-logo-full-reversed.svg +92 -0
  20. package/ui/images/hornbill-logo-full.svg +92 -0
  21. package/ui/images/hug_library.jpg +0 -0
  22. package/ui/images/mcp-catalog.svg +9 -0
  23. package/ui/images/products/hornbill-square.svg +1 -0
  24. package/ui/index.html +1106 -342
  25. package/ui/js/bootstrap.js +89 -0
  26. package/ui/js/doc.hornbill.js +3156 -751
  27. package/ui/js/hb.vue.js +121 -0
  28. package/ui/js/highlightjs/highlight.pack.js +1513 -2
  29. package/ui/js/highlightjs/styles/vs2015-accessible.css +141 -0
  30. package/ui/js/highlightjs-badge.js +41 -58
  31. package/ui/js/mermaid.min.js +1447 -1295
  32. package/ui/js/webcomponents/hdocApprove.js +115 -0
  33. package/ui/js/highlightjs/styles/brown-paper.css +0 -64
  34. package/ui/js/highlightjs/styles/brown-papersq.png +0 -0
  35. package/ui/js/highlightjs/styles/codepen-embed.css +0 -60
  36. package/ui/js/highlightjs/styles/color-brewer.css +0 -71
  37. package/ui/js/highlightjs/styles/darcula.css +0 -77
  38. package/ui/js/highlightjs/styles/dark.css +0 -63
  39. package/ui/js/highlightjs/styles/darkula.css +0 -6
  40. package/ui/js/highlightjs/styles/default.css +0 -99
  41. package/ui/js/highlightjs/styles/dracula.css +0 -76
  42. package/ui/js/highlightjs/styles/far.css +0 -71
  43. package/ui/js/highlightjs/styles/foundation.css +0 -88
  44. package/ui/js/highlightjs/styles/github-gist.css +0 -71
  45. package/ui/js/highlightjs/styles/github-mm.css +0 -71
  46. package/ui/js/highlightjs/styles/github.css +0 -99
  47. package/ui/js/highlightjs/styles/googlecode.css +0 -89
  48. package/ui/js/highlightjs/styles/grayscale.css +0 -101
  49. package/ui/js/highlightjs/styles/idea.css +0 -97
  50. package/ui/js/highlightjs/styles/ir-black.css +0 -73
  51. package/ui/js/highlightjs/styles/kavadocs.css +0 -71
  52. package/ui/js/highlightjs/styles/kavadocsdark.css +0 -120
  53. package/ui/js/highlightjs/styles/kimbie.dark.css +0 -74
  54. package/ui/js/highlightjs/styles/kimbie.light.css +0 -74
  55. package/ui/js/highlightjs/styles/magula.css +0 -70
  56. package/ui/js/highlightjs/styles/mono-blue.css +0 -59
  57. package/ui/js/highlightjs/styles/monokai-sublime.css +0 -83
  58. package/ui/js/highlightjs/styles/monokai.css +0 -70
  59. package/ui/js/highlightjs/styles/obsidian.css +0 -88
  60. package/ui/js/highlightjs/styles/paraiso-dark.css +0 -72
  61. package/ui/js/highlightjs/styles/paraiso-light.css +0 -72
  62. package/ui/js/highlightjs/styles/railscasts.css +0 -106
  63. package/ui/js/highlightjs/styles/rainbow.css +0 -85
  64. package/ui/js/highlightjs/styles/solarized-dark.css +0 -84
  65. package/ui/js/highlightjs/styles/solarized-light.css +0 -84
  66. package/ui/js/highlightjs/styles/sunburst.css +0 -102
  67. package/ui/js/highlightjs/styles/twilight.css +0 -97
  68. package/ui/js/highlightjs/styles/vs.css +0 -68
  69. package/ui/js/highlightjs/styles/vs2015.css +0 -117
  70. package/ui/js/highlightjs/styles/xcode.css +0 -104
  71. package/ui/js/highlightjs/styles/zenburn.css +0 -80
@@ -0,0 +1,89 @@
1
+ //-- FALLBACK ONLY. index.html resolves the theme in its parse-time inline <script>, before the
2
+ //-- first paint, and sets hbThemeResolved. Doing it here is far too late: this file is injected on
3
+ //-- DOMContentLoaded and then fetched, so html.dark used to land a full round trip after the page
4
+ //-- had already painted - a white flash through the whole boot for every dark-mode user. Left in
5
+ //-- place for any page that loads this script without that inline block. Do not remove the guard
6
+ //-- and do not move the real resolution back here. //-- SG
7
+ var ThemePreference;
8
+
9
+ if (!window.hbThemeResolved) {
10
+
11
+ ThemePreference = localStorage.getItem('hdocbook-theme-appearance') || '';
12
+
13
+ // Check for URL parameter override (e.g., ?theme=dark or ?theme=light)
14
+ var urlParams = new URLSearchParams(window.location.search);
15
+ var urlTheme = urlParams.get('theme');
16
+ if (urlTheme === 'dark' || urlTheme === 'light') {
17
+ ThemePreference = urlTheme;
18
+ }
19
+
20
+ const prefersDark = window.matchMedia('(prefers-color-scheme: dark)').matches
21
+ if (!ThemePreference || ThemePreference === 'auto' ? prefersDark : ThemePreference === 'dark') {
22
+ ThemePreference = "dark";
23
+ document.documentElement.classList.add('dark')
24
+ }
25
+
26
+ window.hbThemeResolved = true;
27
+ }
28
+
29
+ function loadJS(arrFiles,callback)
30
+ {
31
+ //-- the completion check lives in per-file onload/onerror, so an empty list would never
32
+ //-- fire the callback - guard it
33
+ if(!arrFiles.length){ callback(); return; }
34
+
35
+ // Head tag
36
+ var head = document.getElementsByTagName('head')[0]
37
+
38
+ // Creating script element
39
+ var loadedCount = 0;
40
+ for(let x=0;x<arrFiles.length;x++)
41
+ {
42
+ var script = document.createElement('script');
43
+ script.src = arrFiles[x];
44
+ script.type = 'text/javascript';
45
+ script.async=false;
46
+
47
+ script.onload=function()
48
+ {
49
+ loadedCount++;
50
+ if(loadedCount===arrFiles.length)callback();
51
+ }
52
+
53
+ script.onerror=function()
54
+ {
55
+ loadedCount++;
56
+ if(loadedCount===arrFiles.length)callback();
57
+ }
58
+
59
+
60
+ // Adding script element
61
+ head.append(script);
62
+ }
63
+ }
64
+
65
+ //-- The theme CSS used to be loaded here, and loadJS() only started once all 12 stylesheets had
66
+ //-- finished. That made three serial network waves before the app could initialise:
67
+ //-- document -> this script -> CSS -> JS. The stylesheets are now static <link> tags in
68
+ //-- index.html, so the browser starts fetching them while it is still parsing <head>, in
69
+ //-- parallel with this script, and the JS wave starts immediately instead of last.
70
+ //--
71
+ //-- The original comment here said the CSS had to be injected because <base href> is set at
72
+ //-- runtime, and it was RIGHT about the hazard: the HTML preload scanner resolves <link> hrefs
73
+ //-- before any inline script runs, so with a script-assigned <base> all 12 stylesheets 404'd
74
+ //-- against the document directory before the parser re-resolved them. The fix was to make
75
+ //-- <base href="/"> a literal in the HTML rather than to keep loading CSS from JS.
76
+ //--
77
+ //-- loadCss() used to live here too; the only caller is the settings app, which has its own
78
+ //-- copy in settings/js/bootstrap.settings.js, so this one was dead and has been removed. //-- SG
79
+ loadJS([
80
+ "js/hb.vue.js", //-- must precede anything that registers a component or mounts an app
81
+ "js/webcomponents/hdocApprove.js",
82
+ "js/doc.hornbill.js",
83
+ "js/highlightjs/highlight.pack.js",
84
+ "js/highlightjs-badge.js"
85
+ ],function()
86
+ {
87
+ intialiseApp();
88
+ });
89
+