hdoc-tools 0.62.4 → 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 (73) 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/hdoc-validate-interbook.js +8 -0
  7. package/hdoc-validate.js +92 -35
  8. package/package.json +1 -1
  9. package/ui/css/theme-default/styles/base.css +86 -21
  10. package/ui/css/theme-default/styles/components/api-doc.css +6 -3
  11. package/ui/css/theme-default/styles/components/content.css +140 -39
  12. package/ui/css/theme-default/styles/components/custom-block.css +1 -1
  13. package/ui/css/theme-default/styles/components/htl-doc.css +243 -64
  14. package/ui/css/theme-default/styles/components/htl-library.css +152 -0
  15. package/ui/css/theme-default/styles/components/htl-search.css +267 -0
  16. package/ui/css/theme-default/styles/components/sidebar.css +59 -16
  17. package/ui/css/theme-default/styles/fonts.css +17 -3
  18. package/ui/css/theme-default/styles/htldoc.layouts.css +756 -87
  19. package/ui/css/theme-default/styles/vars.css +40 -35
  20. package/ui/favicon.svg +64 -0
  21. package/ui/images/hornbill-logo-full-reversed.svg +92 -0
  22. package/ui/images/hornbill-logo-full.svg +92 -0
  23. package/ui/images/hug_library.jpg +0 -0
  24. package/ui/images/mcp-catalog.svg +9 -0
  25. package/ui/images/products/hornbill-square.svg +1 -0
  26. package/ui/index.html +1106 -342
  27. package/ui/js/bootstrap.js +89 -0
  28. package/ui/js/doc.hornbill.js +3156 -751
  29. package/ui/js/hb.vue.js +121 -0
  30. package/ui/js/highlightjs/highlight.pack.js +1513 -2
  31. package/ui/js/highlightjs/styles/vs2015-accessible.css +141 -0
  32. package/ui/js/highlightjs-badge.js +41 -58
  33. package/ui/js/mermaid.min.js +1447 -1295
  34. package/ui/js/webcomponents/hdocApprove.js +115 -0
  35. package/ui/js/highlightjs/styles/brown-paper.css +0 -64
  36. package/ui/js/highlightjs/styles/brown-papersq.png +0 -0
  37. package/ui/js/highlightjs/styles/codepen-embed.css +0 -60
  38. package/ui/js/highlightjs/styles/color-brewer.css +0 -71
  39. package/ui/js/highlightjs/styles/darcula.css +0 -77
  40. package/ui/js/highlightjs/styles/dark.css +0 -63
  41. package/ui/js/highlightjs/styles/darkula.css +0 -6
  42. package/ui/js/highlightjs/styles/default.css +0 -99
  43. package/ui/js/highlightjs/styles/dracula.css +0 -76
  44. package/ui/js/highlightjs/styles/far.css +0 -71
  45. package/ui/js/highlightjs/styles/foundation.css +0 -88
  46. package/ui/js/highlightjs/styles/github-gist.css +0 -71
  47. package/ui/js/highlightjs/styles/github-mm.css +0 -71
  48. package/ui/js/highlightjs/styles/github.css +0 -99
  49. package/ui/js/highlightjs/styles/googlecode.css +0 -89
  50. package/ui/js/highlightjs/styles/grayscale.css +0 -101
  51. package/ui/js/highlightjs/styles/idea.css +0 -97
  52. package/ui/js/highlightjs/styles/ir-black.css +0 -73
  53. package/ui/js/highlightjs/styles/kavadocs.css +0 -71
  54. package/ui/js/highlightjs/styles/kavadocsdark.css +0 -120
  55. package/ui/js/highlightjs/styles/kimbie.dark.css +0 -74
  56. package/ui/js/highlightjs/styles/kimbie.light.css +0 -74
  57. package/ui/js/highlightjs/styles/magula.css +0 -70
  58. package/ui/js/highlightjs/styles/mono-blue.css +0 -59
  59. package/ui/js/highlightjs/styles/monokai-sublime.css +0 -83
  60. package/ui/js/highlightjs/styles/monokai.css +0 -70
  61. package/ui/js/highlightjs/styles/obsidian.css +0 -88
  62. package/ui/js/highlightjs/styles/paraiso-dark.css +0 -72
  63. package/ui/js/highlightjs/styles/paraiso-light.css +0 -72
  64. package/ui/js/highlightjs/styles/railscasts.css +0 -106
  65. package/ui/js/highlightjs/styles/rainbow.css +0 -85
  66. package/ui/js/highlightjs/styles/solarized-dark.css +0 -84
  67. package/ui/js/highlightjs/styles/solarized-light.css +0 -84
  68. package/ui/js/highlightjs/styles/sunburst.css +0 -102
  69. package/ui/js/highlightjs/styles/twilight.css +0 -97
  70. package/ui/js/highlightjs/styles/vs.css +0 -68
  71. package/ui/js/highlightjs/styles/vs2015.css +0 -117
  72. package/ui/js/highlightjs/styles/xcode.css +0 -104
  73. package/ui/js/highlightjs/styles/zenburn.css +0 -80
@@ -0,0 +1,115 @@
1
+ (function(){
2
+
3
+ //-- HELPER FUNCS
4
+
5
+ //-- GET THE APPROVAL CURRENT STATE INFO
6
+ async function getApprovalInfo(strReference,strSignee) {
7
+
8
+ const apiEndpoint = "_books/products.json"; //-- change to your new api endpoint to get approval info
9
+ const dataParams ={
10
+ reference:strReference,
11
+ signee: strSignee
12
+ }
13
+ const postRequestConf = new Request(apiEndpoint, {
14
+ method: "GET", //-- change to post and uncomment body
15
+ //body: JSON.stringify(dataParams),
16
+ });
17
+
18
+ try {
19
+ const response = await fetch(postRequestConf);
20
+ if (!response.ok) {
21
+ throw new Error(`Response status: ${response.status}`);
22
+ }
23
+
24
+ //-- NWJ - hopefully the api you create will just output a json response
25
+ let approvalJson = await response.json();
26
+ return approvalJson;
27
+
28
+ } catch (error) {
29
+ console.error(error.message);
30
+ }
31
+ }
32
+
33
+ //-- UPDATE THE STATUS
34
+ async function updateApprovalInfo(strReference,strSignee,approvalState){
35
+
36
+ const apiEndpoint = "_books/products.json"; //-- //-- change to your new api endpoint to set approval info
37
+ const dataParams ={
38
+ reference:strReference,
39
+ signee: strSignee,
40
+ status:approvalState
41
+ }
42
+
43
+ const postRequestConf = new Request(apiEndpoint, {
44
+ method: "GET", //-- change to post and uncomment body
45
+ //body: JSON.stringify(dataParams),
46
+ });
47
+
48
+ try {
49
+
50
+ const response = await fetch(postRequestConf);
51
+ if (!response.ok) {
52
+ throw new Error(`Response status: ${response.status}`);
53
+ }
54
+
55
+ //-- NWJ - hopefully the api you create will just output a json response
56
+ let approvalJson = await response.json();
57
+ return approvalJson;
58
+
59
+ } catch (error) {
60
+ console.error(error.message);
61
+ }
62
+
63
+ }
64
+ //-- EOF HELPER FUNCS
65
+
66
+ //-- html markup
67
+ const templateHTML = `
68
+ <div class="text-nowrap mb-2">
69
+
70
+ <span class="ml-1 mr-2 caveat-text">{{assignee}}</span>
71
+
72
+ <i v-if="!isApprover || approved!==null" class="bi" v-bind:class="{'bi-x-circle-fill text-danger': approved===false,'bi-check-circle-fill text-success': approved===true,'bi-question-circle-fill text-info': approved===null}"></i>
73
+
74
+ <button v-if="isApprover && approved==null" v-on:click="updateApprovalState(true)" class="btn btn-xs btn-success"><i class="bi bi-check-circle-fill"></i></button>
75
+
76
+ <button v-if="isApprover && approved==null" v-on:click="updateApprovalState(false)" class="btn btn-xs btn-danger"><i class="bi bi-x-circle-fill"></i></button>
77
+
78
+ </div>
79
+ `;
80
+
81
+ //-- hbVue.component instead of Vue.component: Vue 3 has no global component registry, so
82
+ //-- registration goes into the shared registry that hbCreateApp applies to every app -
83
+ //-- which matters here because this component is used inside the per-article app that
84
+ //-- convertDocumentContentToVueSafeComponents creates, not just the shell. //-- SG
85
+ hbVue.component('hdoc-approve', {
86
+
87
+ template: templateHTML,
88
+
89
+ data: function () {
90
+ let self = this;
91
+ return {
92
+ ref: self.$attrs.reference,
93
+ assignee: self.$attrs.assignee,
94
+ isApprover: self.$attrs.assignee === global.session.userId, //-- NWJ - so will only show buttons if assignee is the session user
95
+ approved: null
96
+ }
97
+ },
98
+
99
+ methods:{
100
+ updateApprovalState:async function(boolState){
101
+ let self = this;
102
+ let result = await updateApprovalInfo(self.ref,self.assignee,boolState);
103
+ this.approved = boolState; //-- based on the result
104
+ }
105
+ },
106
+ mounted:async function(){
107
+ //-- called when rendered
108
+ let responseData = await getApprovalInfo(this.ref,this.assignee);
109
+ //-- here you would update this.approved to true, false or leave it as null - based on responseData
110
+
111
+ },
112
+
113
+ })
114
+
115
+ })();
@@ -1,64 +0,0 @@
1
- /*
2
-
3
- Brown Paper style from goldblog.com.ua (c) Zaripov Yura <yur4ik7@ukr.net>
4
-
5
- */
6
-
7
- .hljs {
8
- display: block;
9
- overflow-x: auto;
10
- padding: 0.5em;
11
- background:#b7a68e url(./brown-papersq.png);
12
- }
13
-
14
- .hljs-keyword,
15
- .hljs-selector-tag,
16
- .hljs-literal {
17
- color:#005599;
18
- font-weight:bold;
19
- }
20
-
21
- .hljs,
22
- .hljs-subst {
23
- color: #363c69;
24
- }
25
-
26
- .hljs-string,
27
- .hljs-title,
28
- .hljs-section,
29
- .hljs-type,
30
- .hljs-attribute,
31
- .hljs-symbol,
32
- .hljs-bullet,
33
- .hljs-built_in,
34
- .hljs-addition,
35
- .hljs-variable,
36
- .hljs-template-tag,
37
- .hljs-template-variable,
38
- .hljs-link,
39
- .hljs-name {
40
- color: #2c009f;
41
- }
42
-
43
- .hljs-comment,
44
- .hljs-quote,
45
- .hljs-meta,
46
- .hljs-deletion {
47
- color: #802022;
48
- }
49
-
50
- .hljs-keyword,
51
- .hljs-selector-tag,
52
- .hljs-literal,
53
- .hljs-doctag,
54
- .hljs-title,
55
- .hljs-section,
56
- .hljs-type,
57
- .hljs-name,
58
- .hljs-strong {
59
- font-weight: bold;
60
- }
61
-
62
- .hljs-emphasis {
63
- font-style: italic;
64
- }
@@ -1,60 +0,0 @@
1
- /*
2
- codepen.io Embed Theme
3
- Author: Justin Perry <http://github.com/ourmaninamsterdam>
4
- Original theme - https://github.com/chriskempson/tomorrow-theme
5
- */
6
-
7
- .hljs {
8
- display: block;
9
- overflow-x: auto;
10
- padding: 0.5em;
11
- background: #222;
12
- color: #fff;
13
- }
14
-
15
- .hljs-comment,
16
- .hljs-quote {
17
- color: #777;
18
- }
19
-
20
- .hljs-variable,
21
- .hljs-template-variable,
22
- .hljs-tag,
23
- .hljs-regexp,
24
- .hljs-meta,
25
- .hljs-number,
26
- .hljs-built_in,
27
- .hljs-builtin-name,
28
- .hljs-literal,
29
- .hljs-params,
30
- .hljs-symbol,
31
- .hljs-bullet,
32
- .hljs-link,
33
- .hljs-deletion {
34
- color: #ab875d;
35
- }
36
-
37
- .hljs-section,
38
- .hljs-title,
39
- .hljs-name,
40
- .hljs-selector-id,
41
- .hljs-selector-class,
42
- .hljs-type,
43
- .hljs-attribute {
44
- color: #9b869b;
45
- }
46
-
47
- .hljs-string,
48
- .hljs-keyword,
49
- .hljs-selector-tag,
50
- .hljs-addition {
51
- color: #8f9c6c;
52
- }
53
-
54
- .hljs-emphasis {
55
- font-style: italic;
56
- }
57
-
58
- .hljs-strong {
59
- font-weight: bold;
60
- }
@@ -1,71 +0,0 @@
1
- /*
2
-
3
- Colorbrewer theme
4
- Original: https://github.com/mbostock/colorbrewer-theme (c) Mike Bostock <mike@ocks.org>
5
- Ported by Fabrício Tavares de Oliveira
6
-
7
- */
8
-
9
- .hljs {
10
- display: block;
11
- overflow-x: auto;
12
- padding: 0.5em;
13
- background: #fff;
14
- }
15
-
16
- .hljs,
17
- .hljs-subst {
18
- color: #000;
19
- }
20
-
21
- .hljs-string,
22
- .hljs-meta,
23
- .hljs-symbol,
24
- .hljs-template-tag,
25
- .hljs-template-variable,
26
- .hljs-addition {
27
- color: #756bb1;
28
- }
29
-
30
- .hljs-comment,
31
- .hljs-quote {
32
- color: #636363;
33
- }
34
-
35
- .hljs-number,
36
- .hljs-regexp,
37
- .hljs-literal,
38
- .hljs-bullet,
39
- .hljs-link {
40
- color: #31a354;
41
- }
42
-
43
- .hljs-deletion,
44
- .hljs-variable {
45
- color: #88f;
46
- }
47
-
48
-
49
-
50
- .hljs-keyword,
51
- .hljs-selector-tag,
52
- .hljs-title,
53
- .hljs-section,
54
- .hljs-built_in,
55
- .hljs-doctag,
56
- .hljs-type,
57
- .hljs-tag,
58
- .hljs-name,
59
- .hljs-selector-id,
60
- .hljs-selector-class,
61
- .hljs-strong {
62
- color: #3182bd;
63
- }
64
-
65
- .hljs-emphasis {
66
- font-style: italic;
67
- }
68
-
69
- .hljs-attribute {
70
- color: #e6550d;
71
- }
@@ -1,77 +0,0 @@
1
- /*
2
-
3
- Darcula color scheme from the JetBrains family of IDEs
4
-
5
- */
6
-
7
-
8
- .hljs {
9
- display: block;
10
- overflow-x: auto;
11
- padding: 0.5em;
12
- background: #2b2b2b;
13
- }
14
-
15
- .hljs {
16
- color: #bababa;
17
- }
18
-
19
- .hljs-strong,
20
- .hljs-emphasis {
21
- color: #a8a8a2;
22
- }
23
-
24
- .hljs-bullet,
25
- .hljs-quote,
26
- .hljs-link,
27
- .hljs-number,
28
- .hljs-regexp,
29
- .hljs-literal {
30
- color: #6896ba;
31
- }
32
-
33
- .hljs-code,
34
- .hljs-selector-class {
35
- color: #a6e22e;
36
- }
37
-
38
- .hljs-emphasis {
39
- font-style: italic;
40
- }
41
-
42
- .hljs-keyword,
43
- .hljs-selector-tag,
44
- .hljs-section,
45
- .hljs-attribute,
46
- .hljs-name,
47
- .hljs-variable {
48
- color: #cb7832;
49
- }
50
-
51
- .hljs-params {
52
- color: #b9b9b9;
53
- }
54
-
55
- .hljs-string {
56
- color: #6a8759;
57
- }
58
-
59
- .hljs-subst,
60
- .hljs-type,
61
- .hljs-built_in,
62
- .hljs-builtin-name,
63
- .hljs-symbol,
64
- .hljs-selector-id,
65
- .hljs-selector-attr,
66
- .hljs-selector-pseudo,
67
- .hljs-template-tag,
68
- .hljs-template-variable,
69
- .hljs-addition {
70
- color: #e0c46c;
71
- }
72
-
73
- .hljs-comment,
74
- .hljs-deletion,
75
- .hljs-meta {
76
- color: #7f7f7f;
77
- }
@@ -1,63 +0,0 @@
1
- /*
2
-
3
- Dark style from softwaremaniacs.org (c) Ivan Sagalaev <Maniac@SoftwareManiacs.Org>
4
-
5
- */
6
-
7
- .hljs {
8
- display: block;
9
- overflow-x: auto;
10
- padding: 0.5em;
11
- background: #444;
12
- }
13
-
14
- .hljs-keyword,
15
- .hljs-selector-tag,
16
- .hljs-literal,
17
- .hljs-section,
18
- .hljs-link {
19
- color: white;
20
- }
21
-
22
- .hljs,
23
- .hljs-subst {
24
- color: #ddd;
25
- }
26
-
27
- .hljs-string,
28
- .hljs-title,
29
- .hljs-name,
30
- .hljs-type,
31
- .hljs-attribute,
32
- .hljs-symbol,
33
- .hljs-bullet,
34
- .hljs-built_in,
35
- .hljs-addition,
36
- .hljs-variable,
37
- .hljs-template-tag,
38
- .hljs-template-variable {
39
- color: #d88;
40
- }
41
-
42
- .hljs-comment,
43
- .hljs-quote,
44
- .hljs-deletion,
45
- .hljs-meta {
46
- color: #777;
47
- }
48
-
49
- .hljs-keyword,
50
- .hljs-selector-tag,
51
- .hljs-literal,
52
- .hljs-title,
53
- .hljs-section,
54
- .hljs-doctag,
55
- .hljs-type,
56
- .hljs-name,
57
- .hljs-strong {
58
- font-weight: bold;
59
- }
60
-
61
- .hljs-emphasis {
62
- font-style: italic;
63
- }
@@ -1,6 +0,0 @@
1
- /*
2
- Deprecated due to a typo in the name and left here for compatibility purpose only.
3
- Please use darcula.css instead.
4
- */
5
-
6
- @import url('darcula.css');
@@ -1,99 +0,0 @@
1
- /*
2
-
3
- Original highlight.js style (c) Ivan Sagalaev <maniac@softwaremaniacs.org>
4
-
5
- */
6
-
7
- .hljs {
8
- display: block;
9
- overflow-x: auto;
10
- padding: 0.5em;
11
- background: #F0F0F0;
12
- }
13
-
14
-
15
- /* Base color: saturation 0; */
16
-
17
- .hljs,
18
- .hljs-subst {
19
- color: #444;
20
- }
21
-
22
- .hljs-comment {
23
- color: #888888;
24
- }
25
-
26
- .hljs-keyword,
27
- .hljs-attribute,
28
- .hljs-selector-tag,
29
- .hljs-meta-keyword,
30
- .hljs-doctag,
31
- .hljs-name {
32
- font-weight: bold;
33
- }
34
-
35
-
36
- /* User color: hue: 0 */
37
-
38
- .hljs-type,
39
- .hljs-string,
40
- .hljs-number,
41
- .hljs-selector-id,
42
- .hljs-selector-class,
43
- .hljs-quote,
44
- .hljs-template-tag,
45
- .hljs-deletion {
46
- color: #880000;
47
- }
48
-
49
- .hljs-title,
50
- .hljs-section {
51
- color: #880000;
52
- font-weight: bold;
53
- }
54
-
55
- .hljs-regexp,
56
- .hljs-symbol,
57
- .hljs-variable,
58
- .hljs-template-variable,
59
- .hljs-link,
60
- .hljs-selector-attr,
61
- .hljs-selector-pseudo {
62
- color: #BC6060;
63
- }
64
-
65
-
66
- /* Language color: hue: 90; */
67
-
68
- .hljs-literal {
69
- color: #78A960;
70
- }
71
-
72
- .hljs-built_in,
73
- .hljs-bullet,
74
- .hljs-code,
75
- .hljs-addition {
76
- color: #397300;
77
- }
78
-
79
-
80
- /* Meta color: hue: 200 */
81
-
82
- .hljs-meta {
83
- color: #1f7199;
84
- }
85
-
86
- .hljs-meta-string {
87
- color: #4d99bf;
88
- }
89
-
90
-
91
- /* Misc effects */
92
-
93
- .hljs-emphasis {
94
- font-style: italic;
95
- }
96
-
97
- .hljs-strong {
98
- font-weight: bold;
99
- }
@@ -1,76 +0,0 @@
1
- /*
2
-
3
- Dracula Theme v1.2.0
4
-
5
- https://github.com/zenorocha/dracula-theme
6
-
7
- Copyright 2015, All rights reserved
8
-
9
- Code licensed under the MIT license
10
- http://zenorocha.mit-license.org
11
-
12
- @author Éverton Ribeiro <nuxlli@gmail.com>
13
- @author Zeno Rocha <hi@zenorocha.com>
14
-
15
- */
16
-
17
- .hljs {
18
- display: block;
19
- overflow-x: auto;
20
- padding: 0.5em;
21
- background: #282a36;
22
- }
23
-
24
- .hljs-keyword,
25
- .hljs-selector-tag,
26
- .hljs-literal,
27
- .hljs-section,
28
- .hljs-link {
29
- color: #8be9fd;
30
- }
31
-
32
- .hljs-function .hljs-keyword {
33
- color: #ff79c6;
34
- }
35
-
36
- .hljs,
37
- .hljs-subst {
38
- color: #f8f8f2;
39
- }
40
-
41
- .hljs-string,
42
- .hljs-title,
43
- .hljs-name,
44
- .hljs-type,
45
- .hljs-attribute,
46
- .hljs-symbol,
47
- .hljs-bullet,
48
- .hljs-addition,
49
- .hljs-variable,
50
- .hljs-template-tag,
51
- .hljs-template-variable {
52
- color: #f1fa8c;
53
- }
54
-
55
- .hljs-comment,
56
- .hljs-quote,
57
- .hljs-deletion,
58
- .hljs-meta {
59
- color: #6272a4;
60
- }
61
-
62
- .hljs-keyword,
63
- .hljs-selector-tag,
64
- .hljs-literal,
65
- .hljs-title,
66
- .hljs-section,
67
- .hljs-doctag,
68
- .hljs-type,
69
- .hljs-name,
70
- .hljs-strong {
71
- font-weight: bold;
72
- }
73
-
74
- .hljs-emphasis {
75
- font-style: italic;
76
- }
@@ -1,71 +0,0 @@
1
- /*
2
-
3
- FAR Style (c) MajestiC <majestic2k@gmail.com>
4
-
5
- */
6
-
7
- .hljs {
8
- display: block;
9
- overflow-x: auto;
10
- padding: 0.5em;
11
- background: #000080;
12
- }
13
-
14
- .hljs,
15
- .hljs-subst {
16
- color: #0ff;
17
- }
18
-
19
- .hljs-string,
20
- .hljs-attribute,
21
- .hljs-symbol,
22
- .hljs-bullet,
23
- .hljs-built_in,
24
- .hljs-builtin-name,
25
- .hljs-template-tag,
26
- .hljs-template-variable,
27
- .hljs-addition {
28
- color: #ff0;
29
- }
30
-
31
- .hljs-keyword,
32
- .hljs-selector-tag,
33
- .hljs-section,
34
- .hljs-type,
35
- .hljs-name,
36
- .hljs-selector-id,
37
- .hljs-selector-class,
38
- .hljs-variable {
39
- color: #fff;
40
- }
41
-
42
- .hljs-comment,
43
- .hljs-quote,
44
- .hljs-doctag,
45
- .hljs-deletion {
46
- color: #888;
47
- }
48
-
49
- .hljs-number,
50
- .hljs-regexp,
51
- .hljs-literal,
52
- .hljs-link {
53
- color: #0f0;
54
- }
55
-
56
- .hljs-meta {
57
- color: #008080;
58
- }
59
-
60
- .hljs-keyword,
61
- .hljs-selector-tag,
62
- .hljs-title,
63
- .hljs-section,
64
- .hljs-name,
65
- .hljs-strong {
66
- font-weight: bold;
67
- }
68
-
69
- .hljs-emphasis {
70
- font-style: italic;
71
- }