timvir 0.1.42

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 (142) hide show
  1. package/blocks/Arbitrary/Arbitrary.d.ts +11 -0
  2. package/blocks/Arbitrary/context.d.ts +7 -0
  3. package/blocks/Arbitrary/docs/index.mdx +36 -0
  4. package/blocks/Arbitrary/index.d.ts +2 -0
  5. package/blocks/Arbitrary/index.js +117 -0
  6. package/blocks/Arbitrary/samples/basic.d.ts +5 -0
  7. package/blocks/Arbitrary/styles.css +6 -0
  8. package/blocks/Code/Code.d.ts +35 -0
  9. package/blocks/Code/docs/api.mdx +76 -0
  10. package/blocks/Code/docs/index.mdx +39 -0
  11. package/blocks/Code/index.d.ts +1 -0
  12. package/blocks/Code/index.js +154 -0
  13. package/blocks/Code/samples/basic.d.ts +5 -0
  14. package/blocks/Code/samples/toggle.d.ts +2 -0
  15. package/blocks/Code/styles.css +14 -0
  16. package/blocks/Code/theme.d.ts +2 -0
  17. package/blocks/ColorBar/ColorBar.d.ts +18 -0
  18. package/blocks/ColorBar/docs/api.mdx +76 -0
  19. package/blocks/ColorBar/docs/index.mdx +128 -0
  20. package/blocks/ColorBar/index.d.ts +1 -0
  21. package/blocks/ColorBar/index.js +90 -0
  22. package/blocks/ColorBar/samples/basic.d.ts +2 -0
  23. package/blocks/ColorBar/styles.css +5 -0
  24. package/blocks/ColorBook/ColorBook.d.ts +16 -0
  25. package/blocks/ColorBook/docs/api.mdx +76 -0
  26. package/blocks/ColorBook/docs/index.mdx +12 -0
  27. package/blocks/ColorBook/index.d.ts +1 -0
  28. package/blocks/ColorBook/index.js +77 -0
  29. package/blocks/ColorBook/samples/basic.d.ts +2 -0
  30. package/blocks/ColorBook/styles.css +6 -0
  31. package/blocks/Cover/Cover.d.ts +20 -0
  32. package/blocks/Cover/docs/api.mdx +76 -0
  33. package/blocks/Cover/docs/index.mdx +20 -0
  34. package/blocks/Cover/index.d.ts +1 -0
  35. package/blocks/Cover/index.js +64 -0
  36. package/blocks/Cover/samples/basic.d.ts +2 -0
  37. package/blocks/Exhibit/Exhibit.d.ts +19 -0
  38. package/blocks/Exhibit/docs/api.mdx +76 -0
  39. package/blocks/Exhibit/docs/index.mdx +56 -0
  40. package/blocks/Exhibit/index.d.ts +1 -0
  41. package/blocks/Exhibit/index.js +83 -0
  42. package/blocks/Exhibit/samples/basic.d.ts +2 -0
  43. package/blocks/Exhibit/styles.css +3 -0
  44. package/blocks/Font/Font.d.ts +15 -0
  45. package/blocks/Font/docs/api.mdx +76 -0
  46. package/blocks/Font/docs/index.mdx +23 -0
  47. package/blocks/Font/index.d.ts +1 -0
  48. package/blocks/Font/index.js +131 -0
  49. package/blocks/Font/samples/basic.d.ts +5 -0
  50. package/blocks/Font/samples/system.d.ts +2 -0
  51. package/blocks/Font/styles.css +9 -0
  52. package/blocks/Grid/Grid.d.ts +9 -0
  53. package/blocks/Grid/docs/api.mdx +76 -0
  54. package/blocks/Grid/docs/index.mdx +82 -0
  55. package/blocks/Grid/index.d.ts +1 -0
  56. package/blocks/Grid/index.js +53 -0
  57. package/blocks/Grid/samples/basic.d.ts +2 -0
  58. package/blocks/Grid/styles.css +1 -0
  59. package/blocks/Icon/Icon.d.ts +11 -0
  60. package/blocks/Icon/docs/api.mdx +76 -0
  61. package/blocks/Icon/docs/index.mdx +218 -0
  62. package/blocks/Icon/index.d.ts +1 -0
  63. package/blocks/Icon/index.js +155 -0
  64. package/blocks/Icon/internal/Canvas.d.ts +9 -0
  65. package/blocks/Icon/internal/index.d.ts +1 -0
  66. package/blocks/Icon/samples/basic.d.ts +2 -0
  67. package/blocks/Icon/styles.css +5 -0
  68. package/blocks/Icon/types.d.ts +10 -0
  69. package/blocks/Message/Message.d.ts +10 -0
  70. package/blocks/Message/docs/api.mdx +76 -0
  71. package/blocks/Message/docs/index.mdx +63 -0
  72. package/blocks/Message/index.d.ts +1 -0
  73. package/blocks/Message/index.js +72 -0
  74. package/blocks/Message/samples/basic.d.ts +5 -0
  75. package/blocks/Message/styles.css +6 -0
  76. package/blocks/Swatch/Swatch.d.ts +33 -0
  77. package/blocks/Swatch/docs/api.mdx +76 -0
  78. package/blocks/Swatch/docs/index.mdx +39 -0
  79. package/blocks/Swatch/index.d.ts +1 -0
  80. package/blocks/Swatch/index.js +84 -0
  81. package/blocks/Swatch/samples/basic.d.ts +2 -0
  82. package/blocks/Swatch/styles.css +4 -0
  83. package/blocks/Viewport/Viewport.d.ts +17 -0
  84. package/blocks/Viewport/docs/api.mdx +76 -0
  85. package/blocks/Viewport/docs/index.mdx +34 -0
  86. package/blocks/Viewport/index.d.ts +1 -0
  87. package/blocks/Viewport/index.js +322 -0
  88. package/blocks/Viewport/internal/Caption.d.ts +8 -0
  89. package/blocks/Viewport/internal/Handle.d.ts +10 -0
  90. package/blocks/Viewport/internal/Ruler.d.ts +7 -0
  91. package/blocks/Viewport/internal/index.d.ts +3 -0
  92. package/blocks/Viewport/samples/basic.d.ts +2 -0
  93. package/blocks/Viewport/styles.css +14 -0
  94. package/blocks/WebLink/WebLink.d.ts +10 -0
  95. package/blocks/WebLink/docs/api.mdx +76 -0
  96. package/blocks/WebLink/docs/index.mdx +13 -0
  97. package/blocks/WebLink/index.d.ts +1 -0
  98. package/blocks/WebLink/index.js +97 -0
  99. package/blocks/WebLink/samples/basic.d.ts +5 -0
  100. package/blocks/WebLink/styles.css +8 -0
  101. package/blocks/index.d.ts +13 -0
  102. package/blocks/index.js +13 -0
  103. package/blocks/styles.css +81 -0
  104. package/bus/index.d.ts +12 -0
  105. package/bus/index.js +22 -0
  106. package/bus/messages.d.ts +15 -0
  107. package/context/index.d.ts +20 -0
  108. package/context/index.js +15 -0
  109. package/core/components/Footer/Footer.d.ts +16 -0
  110. package/core/components/Footer/docs/api.mdx +76 -0
  111. package/core/components/Footer/docs/index.mdx +27 -0
  112. package/core/components/Footer/index.d.ts +1 -0
  113. package/core/components/Footer/samples/basic.d.ts +5 -0
  114. package/core/components/NavigationFooter/NavigationFooter.d.ts +19 -0
  115. package/core/components/NavigationFooter/docs/api.mdx +76 -0
  116. package/core/components/NavigationFooter/docs/index.mdx +10 -0
  117. package/core/components/NavigationFooter/index.d.ts +1 -0
  118. package/core/components/NavigationFooter/samples/basic.d.ts +5 -0
  119. package/core/components/Page/Page.d.ts +60 -0
  120. package/core/components/Page/components.d.ts +46 -0
  121. package/core/components/Page/docs/api.mdx +76 -0
  122. package/core/components/Page/docs/index.mdx +37 -0
  123. package/core/components/Page/index.d.ts +2 -0
  124. package/core/components/Page/internal/Section.d.ts +7 -0
  125. package/core/components/Page/internal/Sidebar.d.ts +15 -0
  126. package/core/components/Page/internal/index.d.ts +2 -0
  127. package/core/components/Page/samples/basic.d.ts +2 -0
  128. package/core/components/Page/samples/layout.d.ts +2 -0
  129. package/core/components/Page/types.d.ts +5 -0
  130. package/core/index.d.ts +22 -0
  131. package/core/index.js +708 -0
  132. package/core/layout.d.ts +4 -0
  133. package/core/styles.css +47 -0
  134. package/core/theme/colors.d.ts +36 -0
  135. package/core/theme/index.d.ts +1 -0
  136. package/hooks/index.d.ts +1 -0
  137. package/hooks/index.js +72 -0
  138. package/hooks/useResizeObserver/index.d.ts +56 -0
  139. package/package.json +27 -0
  140. package/std/base58/index.d.ts +2 -0
  141. package/std/base58/index.js +71 -0
  142. package/styles.css +128 -0
@@ -0,0 +1,81 @@
1
+ .r1ev38xg{margin:1em 0;}
2
+ .c8hz158{display:grid;grid-gap:8px;grid-template-columns:1fr 100px;margin-bottom:8px;}
3
+ .t1663phv{display:flex;align-items:center;padding:0 0 0 10px;height:36px;position:relative;}.t1663phv::after{display:block;position:absolute;content:"";inset:0;pointer-events:none;border:1px solid var(--timvir-secondary-text-color);border-radius:2px;}.t1663phv:hover::after{border-color:var(--timvir-accent-color);}.t1663phv:focus-within::after{border-color:var(--timvir-accent-color);}
4
+ .s1k50njo{display:inline-block;color:var(--timvir-secondary-text-color);margin-right:6px;}
5
+ .i1dajnne{border:none;outline:none;font:inherit;background:transparent;align-self:stretch;padding:0;height:34px;width:100%;color:inherit;}
6
+ .b128wsn{border:none;outline:none;height:36px;background:var(--timvir-accent-color);font:inherit;border-radius:2px;cursor:pointer;transition:background 0.2s;}.b128wsn:hover{background:var(--c-p-3);}.b128wsn:active{background:var(--c-p-4);}
7
+ .d1513p2s{display:grid;grid-template-columns:1fr;padding-block:16px;}
8
+ .b157mkz{--size:48px;z-index:1;position:absolute;top:0;right:0;width:var(--size);height:var(--size);display:flex;align-items:flex-start;justify-content:flex-end;outline:none;border:none;padding:6px;background:transparent;transition:all 0.2s;cursor:pointer;pointer-events:none;opacity:0;}.b157mkz:hover{color:white;}.b157mkz:hover svg:first-child{transform:translate(0,0);}.b157mkz:active svg:first-child{transform:translate(2px,-2px);}
9
+ .b10oxtfo{pointer-events:all;opacity:1;}
10
+ .s1hdfi6o{position:absolute;z-index:-1;top:0;right:0;transition:all 0.2s;transform:translate(48px,-48px);}.s1hdfi6o path{fill:var(--c-p-4);}
11
+ .d17pltln{padding:16px 24px 16px 0;}
12
+
13
+ .r9v2r0l{margin:1.5rem 0 3rem;}
14
+ .cs7tint{overflow-x:auto;contain:content;font-size:0.9em;border-radius:5px;--timvir-b-Code-bleed:var(--timvir-page-margin,24px);--timvir-b-Code-inlinePadding:max(var(--timvir-b-Code-bleed),24px);padding:0;margin:0 calc(-1 * var(--timvir-b-Code-bleed));box-shadow:inset 0 0 0 1px rgb(16 22 26 / 20%),0 1px 4px rgb(16 22 26 / 10%);transition:box-shadow 0.3s;}.cs7tint:hover{box-shadow:inset 0 0 0 1px rgb(16 22 26 / 30%),0 1px 4px rgb(16 22 26 / 10%),0 8px 24px rgb(16 22 26 / 10%);}:root[data-timvir-theme="dark"] .cs7tint{box-shadow:inset 0 0 0 1px rgb(216 222 226 / 10%),0 1px 4px rgb(216 222 226 / 5%), 0 2px 8px rgb(216 222 226 / 2%);}:root[data-timvir-theme="dark"] .cs7tint:hover{box-shadow:inset 0 0 0 1px rgb(216 222 226 / 10%),0 1px 3px rgb(216 222 226 / 7%), 0 2px 16px rgb(216 222 226 / 5%);}
15
+ .fjvaz2s{display:grid;border-radius:0;box-shadow:none;margin-inline:0;grid-auto-rows:min-content;grid-template-columns:[le] 0 [lc] 1fr [rc] 0 [re];grid-column-gap:16px;}.fjvaz2s:hover{box-shadow:none;}@media (min-width:60rem){.fjvaz2s{grid-template-columns:[le] 1fr [lc] minmax(0,48rem) [rc] 1fr [re];grid-column-gap:24px;}}.fjvaz2s > *{grid-column:lc / re;}
16
+ .lchll0h{padding-inline:var(--timvir-b-Code-inlinePadding);margin-inline:1px;}
17
+ .h1xcko1i{background-color:#ffe10044;}:root[data-timvir-theme="dark"] .h1xcko1i{background-color:rgba(174,124,20,0.15);}
18
+ .ll2b9hx{display:inline-block;width:var(--timvir-b-Code-bleed);color:var(--timvir-secondary-text-color);text-align:right;padding-inline:4px;}
19
+ .c5vr6r2{font-size:0.75rem;color:var(--timvir-secondary-text-color);margin-top:2px;}
20
+ .tac6gx6{color:#393a34;background-color:#f6f8fa;}.tac6gx6 :is(.comment,.prolog,.doctype,.cdata){color:#999988;font-style:italic;}.tac6gx6 :is(.namespace){opacity:0.7;}.tac6gx6 :is(.string,.attr-value){color:#e3116c;}.tac6gx6 :is(.punctuation,.operator){color:#6cb6ff;}.tac6gx6 :is(.function,.delete,.tag){color:#d73a49;}.tac6gx6 :is(.tag,.selector,.keyword){color:#00009f;}.tac6gx6 :is(.function-variable){color:#6f42c1;}.tac6gx6 :is(.atrule,.keyword,.attr-name,.selector){color:#00a4db;}.tac6gx6 :is(.entity,.url,.symbol,.number,.boolean,.variable,.constant,.property,.regex,.inserted){color:#36acaa;}:root[data-timvir-theme="dark"] .tac6gx6{color:#adbac7;background-color:#2d333b;}:root[data-timvir-theme="dark"] .tac6gx6 :is(.comment,.prolog,.doctype,.cdata){color:#999988;font-style:italic;}:root[data-timvir-theme="dark"] .tac6gx6 :is(.namespace){opacity:0.7;}:root[data-timvir-theme="dark"] .tac6gx6 :is(.string,.attr-value){color:#96d0ff;}:root[data-timvir-theme="dark"] .tac6gx6 :is(.punctuation,.operator){color:#6cb6ff;}:root[data-timvir-theme="dark"] .tac6gx6 :is(.function,.delete,.tag){color:#d73a49;}:root[data-timvir-theme="dark"] .tac6gx6 :is(.tag,.selector,.keyword){color:#8ddb8c;}:root[data-timvir-theme="dark"] .tac6gx6 :is(.function-variable){color:#6f42c1;}:root[data-timvir-theme="dark"] .tac6gx6 :is(.atrule,.keyword,.attr-name,.selector){color:#f47067;}:root[data-timvir-theme="dark"] .tac6gx6 :is(.entity,.url,.symbol,.number,.boolean,.variable,.constant,.property,.regex,.inserted){color:#dcbdfb;}
21
+
22
+ .r1f19pie{position:relative;}
23
+ .b15hqsfj{display:grid;grid-auto-flow:row;grid-template-columns:repeat(auto-fit,minmax(0,1fr));transition:all 0.16s;}.b15hqsfj::before{position:absolute;top:0;right:0;bottom:0;left:0;display:block;z-index:2;border-radius:2px;box-shadow:inset 0 0 0 1px rgba(16,22,26,0.15);content:"";pointer-events:none;user-select:none;transition:all 0.16s;}.b15hqsfj:hover::before{opacity:0;}
24
+ .v1uw85xw{height:40px;flex-grow:1;display:grid;place-items:stretch;}.v1uw85xw > div{transition:all 0.16s;cursor:pointer;}.v1uw85xw:first-child > div{border-radius:2px 0 0 2px;}.v1uw85xw:last-child > div{border-radius:0 2px 2px 0;}.v1uw85xw:hover{z-index:3;}.v1uw85xw:hover > div{border-radius:2px;margin:-3px 1px;box-shadow:inset 0 0 0 1px rgba(16,22,26,0.2),0 2px 4px rgba(16,22,26,0.1), 0 8px 24px rgba(16,22,26,0.2);}
25
+ .o1823law{position:absolute;top:50%;right:0px;left:0px;transform:translateY(-50%);pointer-events:none;opacity:0;z-index:4;transition:opacity 0.16s;}.s4sqb81 .o1823law{pointer-events:all;opacity:1;}
26
+ .rmv2wrl{display:grid;grid-gap:16px;grid-auto-columns:1fr;align-items:start;width:100%;}
27
+ .d1l94wnr{flex-grow:1;}.d1l94wnr:first-child{border-radius:3px 3px 0 0;}.d1l94wnr:last-child{border-radius:0 0 3px 3px;}
28
+ .d1uopbb{text-align:center;font-size:0.75rem;color:var(--timvir-secondary-text-color);margin-top:0.8em;line-height:1;}
29
+ .d1vwzhoa{color:var(--timvir-text-color);}
30
+ .c1xqhu04{position:relative;cursor:pointer;display:flex;flex-direction:column;height:200px;}.c1xqhu04::before{position:absolute;top:-2px;right:-2px;bottom:-2px;left:-2px;border-radius:4px;box-shadow:0 0 0 0 rgba(19,124,189,0);content:"";transition:all 0.16s cubic-bezier(0.4,1,0.75,0.9);}.c1xqhu04:hover::before{box-shadow:0 0 0 2px #00000040;opacity:1;}
31
+ .a1y0tcvx:hover::before,.a1y0tcvx::before{box-shadow:0 0 0 2px var(--c-p-5);opacity:1;}
32
+ .r1nql2f9{margin:0 0 1.5rem;--timvir-b-Exhibit-bleed:0px;--timvir-b-Exhibit-borderColor:#EFEFEF;--timvir-b-Exhibit-background:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAoAAAAKCAAAAACoWZBhAAAAF0lEQVQI12P4BAI/QICBFCaYBPNJYQIAkUZftTbC4sIAAAAASUVORK5CYII=);}:root[data-timvir-theme="dark"] .r1nql2f9{--timvir-b-Exhibit-borderColor:#101010;--timvir-b-Exhibit-background:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAoAAAAKCAAAAACoWZBhAAAAFklEQVQI12NQBQF2EGAghQkmwXxSmADZJQiZ2ZZ46gAAAABJRU5ErkJggg==);}
33
+ .c4ji594{display:flow-root;background:var(--timvir-b-Exhibit-background);margin:0 calc(-1 * var(--timvir-b-Exhibit-bleed));padding:var(--timvir-b-Exhibit-bleed);}
34
+ .cf43jjx{font-size:0.75rem;color:var(--timvir-secondary-text-color);margin-top:2px;}
35
+ .mby32tn{display:flex;align-items:baseline;font-size:0.9rem;font-weight:bold;transition:all 0.2s;}
36
+ .rc7ivp5{padding:16px 0;}
37
+ .fe58upx{margin:0 auto 0 0;}
38
+ .d10949ho{cursor:pointer;}.d10949ho:hover{color:var(--c-p-4);opacity:1;}.d10949ho > svg{position:relative;top:2px;}
39
+ .d1o2du3z{display:flex;flex-direction:column;}
40
+ .d1o9zhgl{overflow:hidden;transition:height 0.2s,opacity 0.2s 0.1s;}
41
+ .ddlplux{padding:0 0 16px;display:flex;flex-direction:column;}
42
+ .dw285p4{overflow:hidden;transition:height 0.2s,opacity 0.2s 0.1s;}
43
+ .dx3nfmc{outline:none;user-select:text;white-space:pre-wrap;overflow-wrap:break-word;}
44
+ .r1c1ozpm{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:24px;}
45
+ .n1xsexuc{margin-top:6px;white-space:nowrap;font-size:0.75rem;opacity:0;transition:all 0.16s;z-index:-1;color:var(--timvir-secondary-text-color);text-align:center;user-select:none;pointer-events:none;position:absolute;left:50%;bottom:-20px;transform:translateX(-50%);}
46
+ .r1k0w618{position:relative;z-index:1;}.r1k0w618 svg{display:block;}.r1k0w618:hover .n1xsexuc{opacity:1;bottom:-26px;color:var(--timvir-text-color);}.r1k0w618:active .n1xsexuc{bottom:-24px;}
47
+ .b1a0xzv7{background:white;place-self:stretch;border-radius:2px;transition:all 0.2s;box-shadow:0 0 0 0 rgba(0,0,0,0.1);}
48
+ .g10obtzp{opacity:0;transition:all 0.2s;pointer-events:none;}
49
+ .r1bcczis{display:grid;place-items:center;cursor:pointer;}.r1bcczis > *{grid-column:1;grid-row:1;}.r1bcczis:hover .b1a0xzv7{box-shadow:inset 0 0 0 1px rgba(16,22,26,0.2),0 2px 4px rgba(16,22,26,0.1), 0 8px 24px rgba(16,22,26,0.2);}.r1bcczis:active .b1a0xzv7{margin:1px;box-shadow:inset 0 0 0 1px rgba(16,22,26,0.2),0 1px 1px rgba(16,22,26,0.2);}.r1bcczis:hover .g10obtzp{opacity:1;}
50
+ .r1ssql2z{position:relative;background:var(--c-p-0);color:black;border-radius:3px;padding:16px 24px 16px 24px;box-shadow:inset 0 0 0 1px rgba(16,22,26,0.2);display:flex;align-items:flex-start;line-height:1.5;}
51
+ .dhvu07f > *:first-child{margin-top:0;}.dhvu07f > *:last-child{margin-bottom:0;}.dhvu07f > h3:before{display:none;}
52
+ .i1dz18jz{position:relative;top:3px;margin:-2px 12px 0 -4px;}.i1dz18jz > svg{display:block;}
53
+ .i41wipx{background:#f0f2fc;color:black;}.i41wipx .i1dz18jz{color:#2a47d5;}
54
+ .wi7iy6{background:#fcf9f0;color:black;}.wi7iy6 .i1dz18jz{color:#a68521;}
55
+ .a1d5oxsn{background:#fcf0f0;color:black;}.a1d5oxsn .i1dz18jz{color:#da4444;}
56
+ .r19bcggb{position:relative;}.r19bcggb > div{border-radius:2px;}.r19bcggb:hover > div{top:-4px;right:-4px;bottom:-4px;left:-4px;box-shadow:inset 0 0 0 1px rgba(16,22,26,0.2),0 2px 4px rgba(16,22,26,0.1), 0 8px 24px rgba(16,22,26,0.2);padding:0px 16px;z-index:2;}.r19bcggb:active > div{top:-2px;right:-2px;bottom:-2px;left:-2px;box-shadow:inset 0 0 0 1px rgba(16,22,26,0.2),0 1px 1px rgba(16,22,26,0.2);padding:0px 14px;z-index:2;}
57
+ .dhgsgky{display:flex;flex-direction:column;justify-content:center;position:absolute;top:0;right:0;bottom:0;left:0;transition:all 0.16s;padding:0px 12px;cursor:pointer;}
58
+ .dobecwk{display:flex;justify-content:space-between;align-items:center;line-height:1;}
59
+ .dho7t08{padding-top:6px;opacity:0.5;font-size:0.8em;line-height:1;}
60
+ .r1ouu0bc{contain:layout;}
61
+ .d1uj09ka{position:relative;}
62
+ .d2uawyc{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);}
63
+ .d8ms9m9{display:flex;align-items:stretch;justify-content:center;}
64
+ .d17q9rbm{border-radius:3px;display:grid;grid-template-columns:56px auto 56px;grid-template-rows:0 auto 0;grid-column-gap:8px;}
65
+ .daubpa6{grid-column:2 / span 1;grid-row:2 / span 1;position:relative;flex:1;height:100px;background:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAoAAAAKCAAAAACoWZBhAAAAF0lEQVQI12P4BAI/QICBFCaYBPNJYQIAkUZftTbC4sIAAAAASUVORK5CYII=);transition:height 0.16s;overflow:hidden;}
66
+ .d1d22s19{animation-duration:2s;animation-fill-mode:forwards;animation-iteration-count:infinite;animation-name:shimmer-d1d22s19;animation-timing-function:linear;background-size:150vw 100px;background-image:linear-gradient(to right,#fafafa 0%,#f4f4f4 25%,#fafafa 40%);box-shadow:inset 0 0 0 1px rgba(16,22,26,0.2);border-radius:1px;}@keyframes shimmer-d1d22s19{0%{background-position:-60vw 0;}40%{background-position:85vw 0;}100%{background-position:85vw 0;}}
67
+ .i11uos8q{display:block;position:absolute;top:0;left:0;width:100%;height:100%;transition:opacity 0.2s;}
68
+ .fgdj0yb{font-size:0.75rem;color:var(--timvir-secondary-text-color);white-space:nowrap;display:flex;justify-content:space-between;align-items:center;}
69
+ .d1rc4zjh{cursor:pointer;}.d1rc4zjh:hover{color:var(--c-p-4);opacity:1;}.d1rc4zjh > svg{display:block;}
70
+ .d1enfo6{overflow:hidden;transition:height 0.2s,opacity 0.2s 0.1s;}
71
+ .d1watfn6{margin-top:12px;}
72
+ .d1mmz2b6{grid-row:1 / span 3;cursor:pointer;display:flex;align-items:center;justify-content:center;opacity:0.5;color:var(--timvir-text-color);border-radius:2px;transition:all 0.2s cubic-bezier(0.4,1,0.75,0.9);}.d1mmz2b6:hover{opacity:1;box-shadow:0 0 0 1px rgba(16,22,26,0.1),0 2px 4px rgba(16,22,26,0.2),0 8px 24px rgba(16,22,26,0.2);}.d1mmz2b6:active{box-shadow:0 0 0 1px rgba(16,22,26,0.1),0 0 0 rgba(16,22,26,0),0 1px 1px rgba(16,22,26,0.2);}
73
+ .ssl4j8q{width:100%;display:block;height:16px;margin:8px 0;}
74
+ .r1szx90n{transition:all 0.16s;box-shadow:inset 0 0 0 1px rgba(16,22,26,0.2);border-radius:3px;display:flex;cursor:pointer;text-decoration:none;}.r1szx90n:hover{background:rgba(55,53,47,0.08);box-shadow:inset 0 0 0 1px rgba(16,22,26,0.2),0 2px 4px rgba(16,22,26,0.1), 0 8px 24px rgba(16,22,26,0.2);}.r1szx90n:active{background:rgba(55,53,47,0.08);box-shadow:inset 0 0 0 1px rgba(16,22,26,0.2),0 1px 1px rgba(16,22,26,0.2);}:root[data-timvir-theme="dark"] .r1szx90n{box-shadow:inset 0 0 0 1px rgba(255,255,255,0.2);}:root[data-timvir-theme="dark"] .r1szx90n:hover{background:rgba(255,255,255,0.08);}:root[data-timvir-theme="dark"] .r1szx90n:active{background:rgba(255,255,255,0.08);}
75
+ .tywhumj{flex:4 1 180px;padding:12px 14px 14px;min-width:0;}
76
+ .t1sni99u{color:var(--timvir-text-color);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-height:24px;margin-bottom:6px;}
77
+ .d7eo497{font-size:0.75rem;line-height:1.1rem;color:var(--timvir-secondary-text-color);height:2.2rem;overflow:hidden;}
78
+ .u1rlrpoc{margin-top:12px;display:flex;font-size:0.75rem;line-height:1rem;color:var(--timvir-text-color);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
79
+ .f1cqi3na{width:1rem;height:1rem;min-width:1rem;margin-right:6px;}
80
+ .igksd61{flex:1 1 180px;position:relative;min-width:180px;}
81
+ .i1gibb8w{display:block;object-fit:cover;border-radius:0 3px 3px 0;width:calc(100% - 2px);height:calc(100% - 2px);position:absolute;top:1px;left:1px;}
package/bus/index.d.ts ADDED
@@ -0,0 +1,12 @@
1
+ import { Subject } from "wonka";
2
+ import { Message } from "./messages";
3
+ export * from "./messages";
4
+ /**
5
+ * The bus is a wonka Subject that represents a stream of Messages.
6
+ */
7
+ export declare type Bus = Subject<Message>;
8
+ export declare const makeBus: () => Subject<Message>;
9
+ /**
10
+ * Send a message to the bus.
11
+ */
12
+ export declare function send<T>(bus: Bus, id: string, member: string, body: T): void;
package/bus/index.js ADDED
@@ -0,0 +1,22 @@
1
+ import { makeSubject } from 'wonka';
2
+
3
+ /**
4
+ * The bus is a wonka Subject that represents a stream of Messages.
5
+ */
6
+
7
+ const makeBus = () => makeSubject();
8
+ /**
9
+ * Send a message to the bus.
10
+ */
11
+
12
+ function send(bus, id, member, body) {
13
+ bus.next({
14
+ type: "INVOKE",
15
+ path: `/dev/timvir/block/${id}`,
16
+ interface: "dev.timvir.Props",
17
+ member,
18
+ body
19
+ });
20
+ }
21
+
22
+ export { makeBus, send };
@@ -0,0 +1,15 @@
1
+ export declare type Message = Invoke<unknown> | Signal<unknown>;
2
+ export interface Invoke<T> {
3
+ type: "INVOKE";
4
+ path: string;
5
+ interface: string;
6
+ member: string;
7
+ body: T;
8
+ }
9
+ export interface Signal<T> {
10
+ type: "SIGNAL";
11
+ path: string;
12
+ interface: string;
13
+ member: string;
14
+ body: T;
15
+ }
@@ -0,0 +1,20 @@
1
+ import * as React from "react";
2
+ import { Bus } from "timvir/bus";
3
+ export interface Value {
4
+ bus: Bus;
5
+ location: {
6
+ asPath: string;
7
+ push: (path: string) => void;
8
+ };
9
+ Link: React.ComponentType<{
10
+ href: string;
11
+ children?: React.ReactNode;
12
+ }>;
13
+ blocks?: {
14
+ WebLink?: {
15
+ unfurl: (url: string) => Promise<any>;
16
+ };
17
+ };
18
+ }
19
+ export declare const Provider: React.Provider<Value | undefined>;
20
+ export declare function useContext(): Value;
@@ -0,0 +1,15 @@
1
+ import * as React from 'react';
2
+
3
+ const Context = /*#__PURE__*/React.createContext(undefined);
4
+ const Provider = Context.Provider;
5
+ function useContext() {
6
+ const value = React.useContext(Context);
7
+
8
+ if (!value) {
9
+ throw new Error("timvir/context: missing provider");
10
+ }
11
+
12
+ return value;
13
+ }
14
+
15
+ export { Provider, useContext };
@@ -0,0 +1,16 @@
1
+ import * as React from "react";
2
+ /**
3
+ * The underlying DOM element which is rendered by this component.
4
+ */
5
+ declare const Root = "footer";
6
+ interface Props extends React.ComponentPropsWithoutRef<typeof Root> {
7
+ links?: Array<{
8
+ group: React.ReactNode;
9
+ items: Array<{
10
+ label: string;
11
+ href: string;
12
+ }>;
13
+ }>;
14
+ }
15
+ declare const _default: React.ForwardRefExoticComponent<Props & React.RefAttributes<HTMLElement>>;
16
+ export default _default;
@@ -0,0 +1,76 @@
1
+ # API
2
+
3
+ <div style={ { display: "grid", gridTemplateColumns: "min-content 1fr" } }>
4
+ <div style={ { fontWeight: "bold", marginRight: 16 } }>Root:</div>
5
+ <div>{`<div>`}</div>
6
+ <div style={ { fontWeight: "bold", marginRight: 16 } }>Ref:</div>
7
+ <div>Forward <span style={ { color: "rgb(153, 153, 153)" } }>(HTMLDivElement)</span></div>
8
+ </div>
9
+
10
+ ## Props
11
+
12
+ <Props {...{"fields":[{"name":"links","type":{"optional":true,"name":"{ group: ReactNode; items: { label: string; href: string; }[]; }[]","module":""},"comment":{"shortText":""}}]}} />
13
+
14
+ export const required = (
15
+ <svg
16
+ x="0px"
17
+ y="0px"
18
+ width="10px"
19
+ height="10px"
20
+ viewBox="0 0 16 16"
21
+ style={ { position: "relative", top: 0, display: "inline-block", marginRight: 8 } }
22
+ >
23
+ <g transform="translate(0, 0)">
24
+ <circle cx="8" cy="8" r="8" fill="#444444"></circle>
25
+ </g>
26
+ </svg>
27
+ );
28
+
29
+ export const optional = (
30
+ <svg
31
+ x="0px"
32
+ y="0px"
33
+ width="10px"
34
+ height="10px"
35
+ viewBox="0 0 16 16"
36
+ style={ { position: "relative", top: 0, display: "inline-block", marginRight: 8 } }
37
+ >
38
+ <g transform="translate(0, 0)">
39
+ <circle
40
+ cx="8"
41
+ cy="8"
42
+ r="7.5"
43
+ fill="none"
44
+ stroke="#444444"
45
+ strokeLinecap="round"
46
+ strokeLinejoin="round"
47
+ data-cap="butt"
48
+ ></circle>
49
+ </g>
50
+ </svg>
51
+ );
52
+
53
+ export const Props = ({ fields }) => (
54
+ <div style={ { marginTop: 16, display: "grid", gridGap: 24 } }>
55
+ {fields.map(({ name, type, def, example, comment }) => (
56
+ <div key={name}>
57
+ <div style={ { marginLeft: -18 } }>
58
+ {type.optional ? optional : required}
59
+ <span style={ { fontWeight: "bold" } }>{name}</span>{`: `}
60
+ <span>{type.name}</span>
61
+ {def && (
62
+ <>
63
+ {` = `}<span style={ { fontWeight: "bold" } }>{def}</span>
64
+ </>
65
+ )}
66
+ </div>
67
+ <div>{comment.shortText}</div>
68
+ {example && (
69
+ <div style={ { marginLeft: 0, marginTop: 8, color: "rgb(153, 153, 153)", fontSize: "0.8rem" } }>
70
+ Example: <span style={ { fontWeight: "bold" } }>{example}</span>
71
+ </div>
72
+ )}
73
+ </div>
74
+ ))}
75
+ </div>
76
+ )
@@ -0,0 +1,27 @@
1
+ import { Viewport } from "timvir/blocks";
2
+
3
+ # Footer
4
+
5
+ The *Page Footer* is an optional element which is placed at the very bottom of every page.
6
+ See the [`<Page>` API](/docs/components/Page/api) documentation.
7
+
8
+ The `<Footer>` component is provided for use in your own implementation of that element. It
9
+ displays links (internal or external) and the copyright notice.
10
+
11
+ ## Usage
12
+
13
+ ```jsx
14
+ import { Page, Footer } from "timvir/core";
15
+
16
+ export default function Wrapper({ children }) {
17
+ return (
18
+ <Page Footer={() => <Footer links={[…]} />}>
19
+ {children}
20
+ </Page>
21
+ );
22
+ }
23
+ ```
24
+
25
+ ## Sample
26
+
27
+ <Viewport src="/docs/components/Footer/samples/basic" />
@@ -0,0 +1 @@
1
+ export { default as Footer } from "./Footer";
@@ -0,0 +1,5 @@
1
+ import * as React from "react";
2
+ import { Footer } from "..";
3
+ declare type Props = Partial<React.ComponentPropsWithoutRef<typeof Footer>>;
4
+ export default function Sample(props: Props): JSX.Element;
5
+ export {};
@@ -0,0 +1,19 @@
1
+ import * as React from "react";
2
+ /**
3
+ * The underlying DOM element which is rendered by this component.
4
+ */
5
+ declare const Root = "div";
6
+ interface Props extends React.ComponentPropsWithoutRef<typeof Root> {
7
+ prev?: {
8
+ href: string;
9
+ label: React.ReactNode;
10
+ context: React.ReactNode;
11
+ };
12
+ next?: {
13
+ href: string;
14
+ label: React.ReactNode;
15
+ context: React.ReactNode;
16
+ };
17
+ }
18
+ declare const _default: React.ForwardRefExoticComponent<Props & React.RefAttributes<HTMLDivElement>>;
19
+ export default _default;
@@ -0,0 +1,76 @@
1
+ # API
2
+
3
+ <div style={ { display: "grid", gridTemplateColumns: "min-content 1fr" } }>
4
+ <div style={ { fontWeight: "bold", marginRight: 16 } }>Root:</div>
5
+ <div>{`<div>`}</div>
6
+ <div style={ { fontWeight: "bold", marginRight: 16 } }>Ref:</div>
7
+ <div>Forward <span style={ { color: "rgb(153, 153, 153)" } }>(HTMLDivElement)</span></div>
8
+ </div>
9
+
10
+ ## Props
11
+
12
+ <Props {...{"fields":[{"name":"Link","type":{"optional":false,"name":"typeof Link","module":""},"comment":{"shortText":""}},{"name":"prev","type":{"optional":true,"name":"{ href: string; label: ReactNode; context: ReactNode; }","module":""},"comment":{"shortText":""}},{"name":"next","type":{"optional":true,"name":"{ href: string; label: ReactNode; context: ReactNode; }","module":""},"comment":{"shortText":""}}]}} />
13
+
14
+ export const required = (
15
+ <svg
16
+ x="0px"
17
+ y="0px"
18
+ width="10px"
19
+ height="10px"
20
+ viewBox="0 0 16 16"
21
+ style={ { position: "relative", top: 0, display: "inline-block", marginRight: 8 } }
22
+ >
23
+ <g transform="translate(0, 0)">
24
+ <circle cx="8" cy="8" r="8" fill="#444444"></circle>
25
+ </g>
26
+ </svg>
27
+ );
28
+
29
+ export const optional = (
30
+ <svg
31
+ x="0px"
32
+ y="0px"
33
+ width="10px"
34
+ height="10px"
35
+ viewBox="0 0 16 16"
36
+ style={ { position: "relative", top: 0, display: "inline-block", marginRight: 8 } }
37
+ >
38
+ <g transform="translate(0, 0)">
39
+ <circle
40
+ cx="8"
41
+ cy="8"
42
+ r="7.5"
43
+ fill="none"
44
+ stroke="#444444"
45
+ strokeLinecap="round"
46
+ strokeLinejoin="round"
47
+ data-cap="butt"
48
+ ></circle>
49
+ </g>
50
+ </svg>
51
+ );
52
+
53
+ export const Props = ({ fields }) => (
54
+ <div style={ { marginTop: 16, display: "grid", gridGap: 24 } }>
55
+ {fields.map(({ name, type, def, example, comment }) => (
56
+ <div key={name}>
57
+ <div style={ { marginLeft: -18 } }>
58
+ {type.optional ? optional : required}
59
+ <span style={ { fontWeight: "bold" } }>{name}</span>{`: `}
60
+ <span>{type.name}</span>
61
+ {def && (
62
+ <>
63
+ {` = `}<span style={ { fontWeight: "bold" } }>{def}</span>
64
+ </>
65
+ )}
66
+ </div>
67
+ <div>{comment.shortText}</div>
68
+ {example && (
69
+ <div style={ { marginLeft: 0, marginTop: 8, color: "rgb(153, 153, 153)", fontSize: "0.8rem" } }>
70
+ Example: <span style={ { fontWeight: "bold" } }>{example}</span>
71
+ </div>
72
+ )}
73
+ </div>
74
+ ))}
75
+ </div>
76
+ )
@@ -0,0 +1,10 @@
1
+ import { Viewport } from "timvir/blocks";
2
+
3
+ # NavigationFooter
4
+
5
+ The `<NavigationFooter>` component allows users to navigate to the previous and next page.
6
+ It is automatically inserted into every page.
7
+
8
+ ## Sample
9
+
10
+ <Viewport src="/docs/components/NavigationFooter/samples/basic" />
@@ -0,0 +1 @@
1
+ export { default as NavigationFooter } from "./NavigationFooter";
@@ -0,0 +1,5 @@
1
+ import * as React from "react";
2
+ import { NavigationFooter } from "..";
3
+ declare type Props = Partial<React.ComponentPropsWithoutRef<typeof NavigationFooter>>;
4
+ export default function Sample(props: Props): JSX.Element;
5
+ export {};
@@ -0,0 +1,60 @@
1
+ import { Components } from "@mdx-js/react/lib/index";
2
+ import * as React from "react";
3
+ import { Value } from "timvir/context";
4
+ import { Node } from "./types";
5
+ /**
6
+ * The underlying DOM element which is rendered by this component.
7
+ */
8
+ declare const Root = "div";
9
+ interface Props extends React.ComponentProps<typeof Root> {
10
+ toc: readonly Node[];
11
+ location: {
12
+ asPath: string;
13
+ push: (path: string) => void;
14
+ };
15
+ Link: React.ComponentType<{
16
+ href: string;
17
+ children?: React.ReactNode;
18
+ }>;
19
+ /**
20
+ * Overrides the built-in MDX component implementations.
21
+ *
22
+ * Timvir only provides styling for Markdown components, no interactivity or customization.
23
+ * This is done to keep the core small. For example, code blocks do not provide syntax
24
+ * highlighting. If you want to enable syntax highlighting in code blocks, use the
25
+ * '<Code>' component from 'timvir/blocks'.
26
+ */
27
+ mdxComponents?: Components;
28
+ /**
29
+ * Search Configuration. When provided, then the Search menu will appear in the sidebar.
30
+ */
31
+ search?: {
32
+ /**
33
+ * The label that is used in th sidebar for the search menu.
34
+ *
35
+ * @default "Quick Search"
36
+ */
37
+ label?: React.ReactNode;
38
+ /**
39
+ * The Search component. It is always rendered in the DOM tree. When the search menu
40
+ * is activated, then the 'open' prop is set to true.
41
+ */
42
+ Component: React.ComponentType<{
43
+ open: boolean;
44
+ onClose: (ev: React.SyntheticEvent<HTMLElement>) => void;
45
+ }>;
46
+ };
47
+ /**
48
+ * Optional footer which is shown at the bottom of every page.
49
+ *
50
+ * You can use any component here, though timvir provides a ready-made component which
51
+ * should fit most use cases ('<Footer>').
52
+ */
53
+ Footer?: React.ComponentType<unknown>;
54
+ /**
55
+ * Configuration for blocks.
56
+ */
57
+ blocks?: Value["blocks"];
58
+ }
59
+ declare const _default: React.ForwardRefExoticComponent<Pick<Props, "search" | "key" | "dir" | "location" | "onError" | "hidden" | "color" | "style" | "translate" | "prefix" | "slot" | "title" | "defaultChecked" | "defaultValue" | "suppressContentEditableWarning" | "suppressHydrationWarning" | "accessKey" | "className" | "contentEditable" | "contextMenu" | "draggable" | "id" | "lang" | "placeholder" | "spellCheck" | "tabIndex" | "radioGroup" | "role" | "about" | "datatype" | "inlist" | "property" | "resource" | "typeof" | "vocab" | "autoCapitalize" | "autoCorrect" | "autoSave" | "itemProp" | "itemScope" | "itemType" | "itemID" | "itemRef" | "results" | "security" | "unselectable" | "inputMode" | "is" | "aria-activedescendant" | "aria-atomic" | "aria-autocomplete" | "aria-busy" | "aria-checked" | "aria-colcount" | "aria-colindex" | "aria-colspan" | "aria-controls" | "aria-current" | "aria-describedby" | "aria-details" | "aria-disabled" | "aria-dropeffect" | "aria-errormessage" | "aria-expanded" | "aria-flowto" | "aria-grabbed" | "aria-haspopup" | "aria-hidden" | "aria-invalid" | "aria-keyshortcuts" | "aria-label" | "aria-labelledby" | "aria-level" | "aria-live" | "aria-modal" | "aria-multiline" | "aria-multiselectable" | "aria-orientation" | "aria-owns" | "aria-placeholder" | "aria-posinset" | "aria-pressed" | "aria-readonly" | "aria-relevant" | "aria-required" | "aria-roledescription" | "aria-rowcount" | "aria-rowindex" | "aria-rowspan" | "aria-selected" | "aria-setsize" | "aria-sort" | "aria-valuemax" | "aria-valuemin" | "aria-valuenow" | "aria-valuetext" | "children" | "dangerouslySetInnerHTML" | "onCopy" | "onCopyCapture" | "onCut" | "onCutCapture" | "onPaste" | "onPasteCapture" | "onCompositionEnd" | "onCompositionEndCapture" | "onCompositionStart" | "onCompositionStartCapture" | "onCompositionUpdate" | "onCompositionUpdateCapture" | "onFocus" | "onFocusCapture" | "onBlur" | "onBlurCapture" | "onChange" | "onChangeCapture" | "onBeforeInput" | "onBeforeInputCapture" | "onInput" | "onInputCapture" | "onReset" | "onResetCapture" | "onSubmit" | "onSubmitCapture" | "onInvalid" | "onInvalidCapture" | "onLoad" | "onLoadCapture" | "onErrorCapture" | "onKeyDown" | "onKeyDownCapture" | "onKeyPress" | "onKeyPressCapture" | "onKeyUp" | "onKeyUpCapture" | "onAbort" | "onAbortCapture" | "onCanPlay" | "onCanPlayCapture" | "onCanPlayThrough" | "onCanPlayThroughCapture" | "onDurationChange" | "onDurationChangeCapture" | "onEmptied" | "onEmptiedCapture" | "onEncrypted" | "onEncryptedCapture" | "onEnded" | "onEndedCapture" | "onLoadedData" | "onLoadedDataCapture" | "onLoadedMetadata" | "onLoadedMetadataCapture" | "onLoadStart" | "onLoadStartCapture" | "onPause" | "onPauseCapture" | "onPlay" | "onPlayCapture" | "onPlaying" | "onPlayingCapture" | "onProgress" | "onProgressCapture" | "onRateChange" | "onRateChangeCapture" | "onSeeked" | "onSeekedCapture" | "onSeeking" | "onSeekingCapture" | "onStalled" | "onStalledCapture" | "onSuspend" | "onSuspendCapture" | "onTimeUpdate" | "onTimeUpdateCapture" | "onVolumeChange" | "onVolumeChangeCapture" | "onWaiting" | "onWaitingCapture" | "onAuxClick" | "onAuxClickCapture" | "onClick" | "onClickCapture" | "onContextMenu" | "onContextMenuCapture" | "onDoubleClick" | "onDoubleClickCapture" | "onDrag" | "onDragCapture" | "onDragEnd" | "onDragEndCapture" | "onDragEnter" | "onDragEnterCapture" | "onDragExit" | "onDragExitCapture" | "onDragLeave" | "onDragLeaveCapture" | "onDragOver" | "onDragOverCapture" | "onDragStart" | "onDragStartCapture" | "onDrop" | "onDropCapture" | "onMouseDown" | "onMouseDownCapture" | "onMouseEnter" | "onMouseLeave" | "onMouseMove" | "onMouseMoveCapture" | "onMouseOut" | "onMouseOutCapture" | "onMouseOver" | "onMouseOverCapture" | "onMouseUp" | "onMouseUpCapture" | "onSelect" | "onSelectCapture" | "onTouchCancel" | "onTouchCancelCapture" | "onTouchEnd" | "onTouchEndCapture" | "onTouchMove" | "onTouchMoveCapture" | "onTouchStart" | "onTouchStartCapture" | "onPointerDown" | "onPointerDownCapture" | "onPointerMove" | "onPointerMoveCapture" | "onPointerUp" | "onPointerUpCapture" | "onPointerCancel" | "onPointerCancelCapture" | "onPointerEnter" | "onPointerEnterCapture" | "onPointerLeave" | "onPointerLeaveCapture" | "onPointerOver" | "onPointerOverCapture" | "onPointerOut" | "onPointerOutCapture" | "onGotPointerCapture" | "onGotPointerCaptureCapture" | "onLostPointerCapture" | "onLostPointerCaptureCapture" | "onScroll" | "onScrollCapture" | "onWheel" | "onWheelCapture" | "onAnimationStart" | "onAnimationStartCapture" | "onAnimationEnd" | "onAnimationEndCapture" | "onAnimationIteration" | "onAnimationIterationCapture" | "onTransitionEnd" | "onTransitionEndCapture" | "Link" | "toc" | "mdxComponents" | "Footer" | "blocks"> & React.RefAttributes<HTMLDivElement>>;
60
+ export default _default;
@@ -0,0 +1,46 @@
1
+ import * as React from "react";
2
+ export declare const h1: import("@linaria/core").StyledMeta & React.FunctionComponent<React.ClassAttributes<HTMLHeadingElement> & React.HTMLAttributes<HTMLHeadingElement> & {
3
+ as?: React.ElementType<any> | undefined;
4
+ }>;
5
+ export declare const h2: (props: React.HTMLAttributes<HTMLHeadingElement>) => JSX.Element;
6
+ export declare const h3: (props: React.HTMLAttributes<HTMLHeadingElement>) => JSX.Element;
7
+ export declare const h4: (props: React.HTMLAttributes<HTMLHeadingElement>) => JSX.Element;
8
+ export declare const blockquote: import("@linaria/core").StyledMeta & React.FunctionComponent<React.ClassAttributes<HTMLQuoteElement> & React.BlockquoteHTMLAttributes<HTMLQuoteElement> & {
9
+ as?: React.ElementType<any> | undefined;
10
+ }>;
11
+ export declare const hr: import("@linaria/core").StyledMeta & React.FunctionComponent<React.ClassAttributes<HTMLHRElement> & React.HTMLAttributes<HTMLHRElement> & {
12
+ as?: React.ElementType<any> | undefined;
13
+ }>;
14
+ export declare const table: import("@linaria/core").StyledMeta & React.FunctionComponent<React.ClassAttributes<HTMLTableElement> & React.TableHTMLAttributes<HTMLTableElement> & {
15
+ as?: React.ElementType<any> | undefined;
16
+ }>;
17
+ export declare const thead: import("@linaria/core").StyledMeta & React.FunctionComponent<React.ClassAttributes<HTMLTableSectionElement> & React.HTMLAttributes<HTMLTableSectionElement> & {
18
+ as?: React.ElementType<any> | undefined;
19
+ }>;
20
+ export declare const tbody: import("@linaria/core").StyledMeta & React.FunctionComponent<React.ClassAttributes<HTMLTableSectionElement> & React.HTMLAttributes<HTMLTableSectionElement> & {
21
+ as?: React.ElementType<any> | undefined;
22
+ }>;
23
+ export declare const tr: import("@linaria/core").StyledMeta & React.FunctionComponent<React.ClassAttributes<HTMLTableRowElement> & React.HTMLAttributes<HTMLTableRowElement> & {
24
+ as?: React.ElementType<any> | undefined;
25
+ }>;
26
+ export declare const th: import("@linaria/core").StyledMeta & React.FunctionComponent<React.ClassAttributes<HTMLTableHeaderCellElement> & React.ThHTMLAttributes<HTMLTableHeaderCellElement> & {
27
+ as?: React.ElementType<any> | undefined;
28
+ }>;
29
+ export declare const td: import("@linaria/core").StyledMeta & React.FunctionComponent<React.ClassAttributes<HTMLTableDataCellElement> & React.TdHTMLAttributes<HTMLTableDataCellElement> & {
30
+ as?: React.ElementType<any> | undefined;
31
+ }>;
32
+ export declare const code: import("@linaria/core").StyledMeta & React.FunctionComponent<React.ClassAttributes<HTMLElement> & React.HTMLAttributes<HTMLElement> & {
33
+ as?: React.ElementType<any> | undefined;
34
+ }>;
35
+ export declare const a: import("@linaria/core").StyledMeta & React.FunctionComponent<React.ClassAttributes<HTMLAnchorElement> & React.AnchorHTMLAttributes<HTMLAnchorElement> & {
36
+ as?: React.ElementType<any> | undefined;
37
+ }>;
38
+ export declare const p: import("@linaria/core").StyledMeta & React.FunctionComponent<React.ClassAttributes<HTMLParagraphElement> & React.HTMLAttributes<HTMLParagraphElement> & {
39
+ as?: React.ElementType<any> | undefined;
40
+ }>;
41
+ export declare const ul: import("@linaria/core").StyledMeta & React.FunctionComponent<React.ClassAttributes<HTMLUListElement> & React.HTMLAttributes<HTMLUListElement> & {
42
+ as?: React.ElementType<any> | undefined;
43
+ }>;
44
+ export declare const ol: import("@linaria/core").StyledMeta & React.FunctionComponent<React.ClassAttributes<HTMLOListElement> & React.OlHTMLAttributes<HTMLOListElement> & {
45
+ as?: React.ElementType<any> | undefined;
46
+ }>;
@@ -0,0 +1,76 @@
1
+ # API
2
+
3
+ <div style={ { display: "grid", gridTemplateColumns: "min-content 1fr" } }>
4
+ <div style={ { fontWeight: "bold", marginRight: 16 } }>Root:</div>
5
+ <div>{`<div>`}</div>
6
+ <div style={ { fontWeight: "bold", marginRight: 16 } }>Ref:</div>
7
+ <div>Forward <span style={ { color: "rgb(153, 153, 153)" } }>(HTMLDivElement)</span></div>
8
+ </div>
9
+
10
+ ## Props
11
+
12
+ <Props {...{"fields":[{"name":"location","type":{"optional":false,"name":"{ asPath: string; push: (path: string) => void; }","module":""},"comment":{"shortText":""}},{"name":"toc","type":{"optional":false,"name":"readonly Node[]","module":""},"comment":{"shortText":""}},{"name":"Link","type":{"optional":false,"name":"typeof Link","module":""},"comment":{"shortText":""}},{"name":"mdxComponents","type":{"optional":true,"name":"MDXProviderComponents","module":""},"comment":{"shortText":"Overrides the built-in MDX component implementations.\n\nTimvir only provides styling for Markdown components, no interactivity or customization.\nThis is done to keep the core small. For example, code blocks do not provide syntax\nhighlighting. If you want to enable syntax highlighting in code blocks, use the\n'<Code>' component from 'timvir/blocks'."}},{"name":"search","type":{"optional":true,"name":"{ label?: ReactNode; Component: ComponentType<{ open: boolean; }>; }","module":""},"comment":{"shortText":"Search Configuration. When provided, then the Search menu will appear in the sidebar."}},{"name":"Footer","type":{"optional":true,"name":"ElementType<{}>","module":""},"comment":{"shortText":"Optional footer which is shown at the bottom of every page.\n\nYou can use any component here, though timvir provides a ready-made component which\nshould fit most use cases ('<Footer>')."}}]}} />
13
+
14
+ export const required = (
15
+ <svg
16
+ x="0px"
17
+ y="0px"
18
+ width="10px"
19
+ height="10px"
20
+ viewBox="0 0 16 16"
21
+ style={ { position: "relative", top: 0, display: "inline-block", marginRight: 8 } }
22
+ >
23
+ <g transform="translate(0, 0)">
24
+ <circle cx="8" cy="8" r="8" fill="#444444"></circle>
25
+ </g>
26
+ </svg>
27
+ );
28
+
29
+ export const optional = (
30
+ <svg
31
+ x="0px"
32
+ y="0px"
33
+ width="10px"
34
+ height="10px"
35
+ viewBox="0 0 16 16"
36
+ style={ { position: "relative", top: 0, display: "inline-block", marginRight: 8 } }
37
+ >
38
+ <g transform="translate(0, 0)">
39
+ <circle
40
+ cx="8"
41
+ cy="8"
42
+ r="7.5"
43
+ fill="none"
44
+ stroke="#444444"
45
+ strokeLinecap="round"
46
+ strokeLinejoin="round"
47
+ data-cap="butt"
48
+ ></circle>
49
+ </g>
50
+ </svg>
51
+ );
52
+
53
+ export const Props = ({ fields }) => (
54
+ <div style={ { marginTop: 16, display: "grid", gridGap: 24 } }>
55
+ {fields.map(({ name, type, def, example, comment }) => (
56
+ <div key={name}>
57
+ <div style={ { marginLeft: -18 } }>
58
+ {type.optional ? optional : required}
59
+ <span style={ { fontWeight: "bold" } }>{name}</span>{`: `}
60
+ <span>{type.name}</span>
61
+ {def && (
62
+ <>
63
+ {` = `}<span style={ { fontWeight: "bold" } }>{def}</span>
64
+ </>
65
+ )}
66
+ </div>
67
+ <div>{comment.shortText}</div>
68
+ {example && (
69
+ <div style={ { marginLeft: 0, marginTop: 8, color: "rgb(153, 153, 153)", fontSize: "0.8rem" } }>
70
+ Example: <span style={ { fontWeight: "bold" } }>{example}</span>
71
+ </div>
72
+ )}
73
+ </div>
74
+ ))}
75
+ </div>
76
+ )