@speed-highlight/core 1.1.7 → 1.1.9

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 (100) hide show
  1. package/README.md +56 -9
  2. package/dist/color.js +1 -0
  3. package/dist/detect.js +1 -1
  4. package/dist/index.js +3 -3
  5. package/dist/languages/c.js +1 -1
  6. package/dist/languages/go.js +1 -1
  7. package/dist/languages/http.js +1 -1
  8. package/dist/languages/java.js +1 -1
  9. package/dist/languages/js.js +1 -1
  10. package/dist/languages/leanpub-md.js +1 -1
  11. package/dist/languages/md.js +2 -2
  12. package/dist/languages/py.js +1 -1
  13. package/dist/languages/rs.js +1 -1
  14. package/dist/languages/ts.js +1 -1
  15. package/dist/node/color.js +1 -0
  16. package/dist/node/common.js +1 -1
  17. package/dist/node/detect.js +1 -1
  18. package/dist/node/index.js +3 -3
  19. package/dist/node/languages/asm.js +1 -1
  20. package/dist/node/languages/bash.js +1 -1
  21. package/dist/node/languages/bf.js +1 -1
  22. package/dist/node/languages/c.js +1 -1
  23. package/dist/node/languages/css.js +1 -1
  24. package/dist/node/languages/csv.js +1 -1
  25. package/dist/node/languages/diff.js +1 -1
  26. package/dist/node/languages/docker.js +1 -1
  27. package/dist/node/languages/git.js +1 -1
  28. package/dist/node/languages/go.js +1 -1
  29. package/dist/node/languages/html.js +1 -1
  30. package/dist/node/languages/http.js +1 -1
  31. package/dist/node/languages/ini.js +1 -1
  32. package/dist/node/languages/java.js +1 -1
  33. package/dist/node/languages/js.js +1 -1
  34. package/dist/node/languages/js_template_literals.js +1 -1
  35. package/dist/node/languages/jsdoc.js +1 -1
  36. package/dist/node/languages/json.js +1 -1
  37. package/dist/node/languages/leanpub-md.js +2 -2
  38. package/dist/node/languages/log.js +1 -1
  39. package/dist/node/languages/lua.js +1 -1
  40. package/dist/node/languages/make.js +1 -1
  41. package/dist/node/languages/md.js +2 -2
  42. package/dist/node/languages/pl.js +1 -1
  43. package/dist/node/languages/plain.js +1 -1
  44. package/dist/node/languages/py.js +1 -1
  45. package/dist/node/languages/regex.js +1 -1
  46. package/dist/node/languages/rs.js +1 -1
  47. package/dist/node/languages/sql.js +1 -1
  48. package/dist/node/languages/todo.js +1 -1
  49. package/dist/node/languages/toml.js +1 -1
  50. package/dist/node/languages/ts.js +1 -1
  51. package/dist/node/languages/uri.js +1 -1
  52. package/dist/node/languages/xml.js +1 -1
  53. package/dist/node/languages/yaml.js +1 -1
  54. package/dist/node/terminal.js +1 -0
  55. package/dist/node/themes/atom-dark.js +1 -0
  56. package/dist/node/themes/default.js +1 -1
  57. package/dist/terminal.js +1 -0
  58. package/dist/themes/atom-dark.js +1 -0
  59. package/dist/themes/default.js +1 -1
  60. package/doc/common.js.html +87 -0
  61. package/doc/css/jsdoc-template.css +1 -0
  62. package/doc/css/tomorrow.min.css +2 -0
  63. package/doc/detect%0ALanguage%20detectormodule_.html +309 -0
  64. package/doc/detect.js.html +113 -0
  65. package/doc/global.html +1826 -0
  66. package/doc/index%0ABase%20scriptmodule_.html +1179 -0
  67. package/doc/index.html +402 -0
  68. package/doc/index.js.html +209 -0
  69. package/doc/js/jsdoc-template.js +2 -0
  70. package/doc/js/jsdoc-template.js.map +1 -0
  71. package/doc/js/prettify.min.js +47 -0
  72. package/doc/term%0ATerminal%20adaptormodule_.html +596 -0
  73. package/doc/term.js.html +108 -0
  74. package/examples/{helper/data.js → data.js} +28 -16
  75. package/examples/deno.js +53 -7
  76. package/examples/index.html +10 -7
  77. package/examples/languages/test.c +1 -1
  78. package/examples/languages/test.go +4 -4
  79. package/examples/languages/test.java +3 -3
  80. package/examples/node.js +1 -1
  81. package/jsdoc.json +16 -0
  82. package/package.json +42 -38
  83. package/src/color.js +11 -0
  84. package/src/detect.js +21 -5
  85. package/src/index.js +44 -38
  86. package/src/languages/c.js +1 -1
  87. package/src/languages/go.js +1 -1
  88. package/src/languages/java.js +1 -1
  89. package/src/languages/js.js +1 -1
  90. package/src/languages/py.js +1 -1
  91. package/src/languages/rs.js +1 -1
  92. package/src/terminal.js +42 -0
  93. package/src/themes/atom-dark.js +18 -0
  94. package/src/themes/default.js +16 -24
  95. package/typedef.js +34 -0
  96. package/assets/screenshot.png +0 -0
  97. package/dist/node/term.js +0 -1
  98. package/dist/term.js +0 -1
  99. package/examples/dist.html +0 -26
  100. package/src/term.js +0 -19
@@ -1,26 +1,18 @@
1
- const black = '\x1b[30m',
2
- red = '\x1b[31m',
3
- green = '\x1b[32m',
4
- gray = '\x1b[90m',
5
- yellow = '\x1b[33m',
6
- blue = '\x1b[34m',
7
- magenta = '\x1b[35m',
8
- cyan = '\x1b[36m',
9
- white = '\x1b[37m';
1
+ import col from '../color.js'
10
2
 
11
3
  export default {
12
- deleted: red,
13
- var: red,
14
- err: red,
15
- kwd: red,
16
- num: yellow,
17
- class: yellow,
18
- cmnt: gray,
19
- insert: green,
20
- str: green,
21
- bool: cyan,
22
- type: blue,
23
- oper: blue,
24
- section: magenta,
25
- func: magenta
26
- };
4
+ deleted: col.red,
5
+ var: col.red,
6
+ err: col.red,
7
+ kwd: col.red,
8
+ num: col.yellow,
9
+ class: col.yellow,
10
+ cmnt: col.gray,
11
+ insert: col.green,
12
+ str: col.green,
13
+ bool: col.cyan,
14
+ type: col.blue,
15
+ oper: col.blue,
16
+ section: col.magenta,
17
+ func: col.magenta
18
+ }
package/typedef.js ADDED
@@ -0,0 +1,34 @@
1
+ /**
2
+ * @module _type
3
+ */
4
+
5
+ /**
6
+ * Languages supported
7
+ * @typedef {('asm'|'bash'|'bf'|'c'|'css'|'csv'|'diff'|'docker'|'git'|'go'|'html'|'http'|'ini'|'java'|'js'|'jsdoc'|'json'|'leanpub-md'|'log'|'lua'|'make'|'md'|'pl'|'plain'|'py'|'regex'|'rs'|'sql'|'todo'|'toml'|'ts'|'uri'|'xml'|'yaml')} ShjLanguage
8
+ */
9
+
10
+ /**
11
+ * Themes supported in the browser
12
+ * @typedef {('atom-dark'|'github-dark'|'github-dim'|'dark'|'default'|'github-light'|'visual-studio-dark')} ShjBrowserTheme
13
+ */
14
+
15
+ /**
16
+ * Languages supported
17
+ * @typedef {('default'|'atom-dark')} ShjTerminalTheme
18
+ */
19
+
20
+ /**
21
+ * @typedef {('inline'|'oneline'|'multiline')} ShjDisplayMode
22
+ * * `inline` inside `code` element
23
+ * * `oneline` inside `div` element and containing only one line
24
+ * * `multiline` inside `div` element
25
+ */
26
+
27
+ /**
28
+ * @typedef {('deleted'|'err'|'var'|'section'|'kwd'|'class'|'cmnt'|'insert'|'type'|'func'|'bool'|'num'|'oper'|'str'|'esc')} ShjToken
29
+ */
30
+
31
+ /**
32
+ * @typedef {Object} ShjOptions
33
+ * @property {Boolean} [hideLineNumbers=false] Indicates whether to hide line numbers
34
+ */
Binary file
package/dist/node/term.js DELETED
@@ -1 +0,0 @@
1
- var E=Object.create;var p=Object.defineProperty;var L=Object.getOwnPropertyDescriptor;var N=Object.getOwnPropertyNames;var C=Object.getPrototypeOf,H=Object.prototype.hasOwnProperty;var b=t=>p(t,"__esModule",{value:!0});var M=(t,e)=>()=>(t&&(e=t(t=0)),e);var y=(t,e)=>{for(var n in e)p(t,n,{get:e[n],enumerable:!0})},g=(t,e,n,r)=>{if(e&&typeof e=="object"||typeof e=="function")for(let a of N(e))!H.call(t,a)&&(n||a!=="default")&&p(t,a,{get:()=>e[a],enumerable:!(r=L(e,a))||r.enumerable});return t},m=(t,e)=>g(b(p(t!=null?E(C(t)):{},"default",!e&&t&&t.__esModule?{get:()=>t.default,enumerable:!0}:{value:t,enumerable:!0})),t),S=(t=>(e,n)=>t&&t.get(e)||(n=g(b({}),e,1),t&&t.set(e,n),n))(typeof WeakMap!="undefined"?new WeakMap:0);var I={};y(I,{default:()=>F});var d,$,W,j,v,A,q,F,T=M(()=>{d="\x1B[31m",$="\x1B[32m",W="\x1B[90m",j="\x1B[33m",v="\x1B[34m",A="\x1B[35m",q="\x1B[36m",F={deleted:d,var:d,err:d,kwd:d,num:j,class:j,cmnt:W,insert:$,str:$,bool:q,type:v,oper:v,section:A,func:A}});var B={};y(B,{highlightText:()=>D,printHighlight:()=>O,setTheme:()=>_});var w={num:{type:"num",match:/(\.e?|\b)\d(e-|[\d.oxa-fA-F_])*(\.|\b)/g},str:{type:"str",match:/(["'])(\\[^]|(?!\1)[^\r\n\\])*\1?/g},strDouble:{type:"str",match:/"((?!")[^\r\n\\]|\\[^])*"?/g}};var u={};async function f(t,e,n){var r;try{let a,l,i={},x,s=[],h=0,o=typeof e=="string"?await((r=u[e])!=null?r:u[e]=Promise.resolve().then(()=>m(require(`./languages/${e}.js`)))):e,c=[...typeof e=="string"?o.default:e.sub];for(;h<t.length;){for(i.index=null,a=c.length;a-- >0;){if(l=c[a].expand?w[c[a].expand]:c[a],s[a]===void 0||s[a].match.index<h){if(l.match.lastIndex=h,x=l.match.exec(t),x===null){c.splice(a,1),s.splice(a,1);continue}s[a]={match:x,lastIndex:l.match.lastIndex}}s[a].match[0]&&(s[a].match.index<=i.index||i.index===null)&&(i={part:l,index:s[a].match.index,match:s[a].match[0],end:s[a].lastIndex})}if(i.index===null)break;n(t.slice(h,i.index),o.type),h=i.end,i.part.sub?await f(i.match,typeof i.part.sub=="string"?i.part.sub:typeof i.part.sub=="function"?i.part.sub(i.match):i.part,n):n(i.match,i.part.type)}n(t.slice(h,t.length),o.type)}catch{n(t)}}var z=Promise.resolve().then(()=>(T(),I)),D=async(t,e)=>{let n="",r=(await z).default;return await f(t,e,(a,l)=>{var i;return n+=l?`${(i=r[l])!=null?i:""}${a}\x1B[0m`:a}),n},O=async(...t)=>console.log(await D(...t)),_=async t=>z=Promise.resolve().then(()=>m(require(`./themes/${t}.js`)));module.exports=S(B);0&&(module.exports={highlightText,printHighlight,setTheme});
package/dist/term.js DELETED
@@ -1 +0,0 @@
1
- var v=Object.defineProperty;var A=(e,i)=>()=>(e&&(i=e(e=0)),i);var I=(e,i)=>{for(var n in i)v(e,n,{get:i[n],enumerable:!0})};var w={};I(w,{default:()=>D});var p,f,T,b,y,g,z,D,$=A(()=>{p="\x1B[31m",f="\x1B[32m",T="\x1B[90m",b="\x1B[33m",y="\x1B[34m",g="\x1B[35m",z="\x1B[36m",D={deleted:p,var:p,err:p,kwd:p,num:b,class:b,cmnt:T,insert:f,str:f,bool:z,type:y,oper:y,section:g,func:g}});var u={num:{type:"num",match:/(\.e?|\b)\d(e-|[\d.oxa-fA-F_])*(\.|\b)/g},str:{type:"str",match:/(["'])(\\[^]|(?!\1)[^\r\n\\])*\1?/g},strDouble:{type:"str",match:/"((?!")[^\r\n\\]|\\[^])*"?/g}};var x={};async function o(e,i,n){var c;try{let a,l,t={},m,s=[],r=0,d=typeof i=="string"?await((c=x[i])!=null?c:x[i]=import(`./languages/${i}.js`)):i,h=[...typeof i=="string"?d.default:i.sub];for(;r<e.length;){for(t.index=null,a=h.length;a-- >0;){if(l=h[a].expand?u[h[a].expand]:h[a],s[a]===void 0||s[a].match.index<r){if(l.match.lastIndex=r,m=l.match.exec(e),m===null){h.splice(a,1),s.splice(a,1);continue}s[a]={match:m,lastIndex:l.match.lastIndex}}s[a].match[0]&&(s[a].match.index<=t.index||t.index===null)&&(t={part:l,index:s[a].match.index,match:s[a].match[0],end:s[a].lastIndex})}if(t.index===null)break;n(e.slice(r,t.index),d.type),r=t.end,t.part.sub?await o(t.match,typeof t.part.sub=="string"?t.part.sub:typeof t.part.sub=="function"?t.part.sub(t.match):t.part,n):n(t.match,t.part.type)}n(e.slice(r,e.length),d.type)}catch{n(e)}}var j=Promise.resolve().then(()=>($(),w)),E=async(e,i)=>{let n="",c=(await j).default;return await o(e,i,(a,l)=>{var t;return n+=l?`${(t=c[l])!=null?t:""}${a}\x1B[0m`:a}),n},S=async(...e)=>console.log(await E(...e)),W=async e=>j=import(`./themes/${e}.js`);export{E as highlightText,S as printHighlight,W as setTheme};
@@ -1,26 +0,0 @@
1
- <!DOCTYPE html>
2
- <html lang="en">
3
- <head>
4
- <meta charset="UTF-8">
5
- <meta name="viewport" content="width=device-width, initial-scale=1.0">
6
- <link rel="stylesheet" href="../dist/themes/atom-dark.css">
7
- <title>Highlight all | Speed highlight JS</title>
8
- <style>
9
- p {font: 20px Arial}
10
- </style>
11
- </head>
12
- <body>
13
- <div class="shj-lang-js">import { setTheme, highlightAll } from '/path/index.js'
14
- setTheme('/path/themes/default.css');
15
- highlightAll();</div>
16
-
17
- <div class="shj-lang-csv">test,test,test</div>
18
-
19
- <p>Hello world <code class="shj-lang-js">highlightAll()</code> Hello world <code class="shj-lang-regex">/([A-Z])\w+\d{0,9}/gi</code> Hello world <code class="shj-lang-js">reallyLongInlineCode?.()</code></p>
20
-
21
- <script type="module">
22
- import { highlightAll } from '../dist/index.js';
23
- highlightAll();
24
- </script>
25
- </body>
26
- </html>
package/src/term.js DELETED
@@ -1,19 +0,0 @@
1
- /**
2
- * Deno adaptation
3
- */
4
-
5
- import { tokenize } from './index.js';
6
-
7
- let theme = import('./themes/default.js');
8
-
9
- export const highlightText = async (src, lang) => {
10
- let res = '', themeMap = (await theme).default;
11
-
12
- await tokenize(src, lang, (str, token) => res += token ? `${themeMap[token] ?? ''}${str}\x1b[0m` : str);
13
-
14
- return res;
15
- };
16
-
17
- export const printHighlight = async (...arg) => console.log(await highlightText(...arg));
18
-
19
- export const setTheme = async name => theme = import(`./themes/${name}.js`);