@trebired/frontend 29.0.0 → 29.1.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 (185) hide show
  1. package/CHANGELOG.md +18 -0
  2. package/README.md +30 -0
  3. package/dist/actions/copy-components.js +1 -1
  4. package/dist/actions/copy-components.js.map +1 -1
  5. package/dist/config/default/component-tokens.d.ts +2 -0
  6. package/dist/config/default/component-tokens.d.ts.map +1 -1
  7. package/dist/config/default/component-tokens.js +1 -0
  8. package/dist/config/default/component-tokens.js.map +1 -1
  9. package/dist/config/default/config.d.ts.map +1 -1
  10. package/dist/config/default/config.js +1 -0
  11. package/dist/config/default/config.js.map +1 -1
  12. package/dist/config/default/primitive-tokens.d.ts +1 -0
  13. package/dist/config/default/primitive-tokens.d.ts.map +1 -1
  14. package/dist/config/default/primitive-tokens.js +1 -0
  15. package/dist/config/default/primitive-tokens.js.map +1 -1
  16. package/dist/config/normalize.d.ts.map +1 -1
  17. package/dist/config/normalize.js +12 -5
  18. package/dist/config/normalize.js.map +1 -1
  19. package/dist/config/scss.d.ts.map +1 -1
  20. package/dist/config/scss.js +6 -0
  21. package/dist/config/scss.js.map +1 -1
  22. package/dist/config/titles.d.ts +28 -0
  23. package/dist/config/titles.d.ts.map +1 -0
  24. package/dist/config/titles.js +178 -0
  25. package/dist/config/titles.js.map +1 -0
  26. package/dist/config/types/design.d.ts +3 -0
  27. package/dist/config/types/design.d.ts.map +1 -1
  28. package/dist/config/types.d.ts +2 -0
  29. package/dist/config/types.d.ts.map +1 -1
  30. package/dist/document/components/index.js +1 -1
  31. package/dist/document/components/index.js.map +1 -1
  32. package/dist/editor/components/surface.js +1 -1
  33. package/dist/editor/components/surface.js.map +1 -1
  34. package/dist/entity/list.js +1 -1
  35. package/dist/entity/list.js.map +1 -1
  36. package/dist/entries/react/02.d.ts +1 -1
  37. package/dist/entries/react/02.d.ts.map +1 -1
  38. package/dist/entries/react/02.js +1 -1
  39. package/dist/entries/react/02.js.map +1 -1
  40. package/dist/graph/advanced/graph/details.js +1 -1
  41. package/dist/graph/advanced/graph/details.js.map +1 -1
  42. package/dist/heading/glyphs.d.ts +7 -0
  43. package/dist/heading/glyphs.d.ts.map +1 -0
  44. package/dist/heading/glyphs.js +79 -0
  45. package/dist/heading/glyphs.js.map +1 -0
  46. package/dist/heading/index.d.ts +3 -1
  47. package/dist/heading/index.d.ts.map +1 -1
  48. package/dist/heading/index.js +19 -4
  49. package/dist/heading/index.js.map +1 -1
  50. package/dist/inputs/styles/primitives.scss +7 -2
  51. package/dist/language/source/modal.js +1 -1
  52. package/dist/language/source/modal.js.map +1 -1
  53. package/dist/language/source/visualizer.js +1 -1
  54. package/dist/language/source/visualizer.js.map +1 -1
  55. package/dist/layout/components/outline.d.ts +20 -4
  56. package/dist/layout/components/outline.d.ts.map +1 -1
  57. package/dist/layout/components/outline.js +147 -70
  58. package/dist/layout/components/outline.js.map +1 -1
  59. package/dist/layout/components/outline_dock.d.ts +5 -0
  60. package/dist/layout/components/outline_dock.d.ts.map +1 -0
  61. package/dist/layout/components/outline_dock.js +139 -0
  62. package/dist/layout/components/outline_dock.js.map +1 -0
  63. package/dist/layout/components/site/category.d.ts +11 -0
  64. package/dist/layout/components/site/category.d.ts.map +1 -0
  65. package/dist/layout/components/site/category.js +9 -0
  66. package/dist/layout/components/site/category.js.map +1 -0
  67. package/dist/layout/components/site/footer.d.ts.map +1 -1
  68. package/dist/layout/components/site/footer.js +2 -1
  69. package/dist/layout/components/site/footer.js.map +1 -1
  70. package/dist/layout/components/site/header/groups.d.ts.map +1 -1
  71. package/dist/layout/components/site/header/groups.js +3 -2
  72. package/dist/layout/components/site/header/groups.js.map +1 -1
  73. package/dist/layout/scroll.js +3 -3
  74. package/dist/layout/scroll.js.map +1 -1
  75. package/dist/layout/styles/index.scss +1 -0
  76. package/dist/layout/styles/outline.scss +126 -0
  77. package/dist/layout/styles/site/category.scss +16 -0
  78. package/dist/layout/styles/site/footer.scss +1 -11
  79. package/dist/layout/styles/site/menu.scss +5 -12
  80. package/dist/layout/styles/site/sheet.scss +20 -15
  81. package/dist/logs/view/detail_modal.js +1 -1
  82. package/dist/logs/view/detail_modal.js.map +1 -1
  83. package/dist/popover/index.js +3 -3
  84. package/dist/popover/index.js.map +1 -1
  85. package/dist/primitives/components/index.d.ts +1 -0
  86. package/dist/primitives/components/index.d.ts.map +1 -1
  87. package/dist/primitives/components/index.js +1 -0
  88. package/dist/primitives/components/index.js.map +1 -1
  89. package/dist/primitives/components/quote.d.ts +9 -0
  90. package/dist/primitives/components/quote.d.ts.map +1 -0
  91. package/dist/primitives/components/quote.js +16 -0
  92. package/dist/primitives/components/quote.js.map +1 -0
  93. package/dist/primitives/styles/_link.scss +5 -1
  94. package/dist/primitives/styles/_quote.scss +34 -0
  95. package/dist/primitives/styles/index.scss +1 -0
  96. package/dist/src/actions/copy-components.js +1 -1
  97. package/dist/src/actions/copy-components.js.map +1 -1
  98. package/dist/src/config/default/component-tokens.d.ts +2 -0
  99. package/dist/src/config/default/component-tokens.d.ts.map +1 -1
  100. package/dist/src/config/default/component-tokens.js +1 -0
  101. package/dist/src/config/default/component-tokens.js.map +1 -1
  102. package/dist/src/config/default/config.d.ts.map +1 -1
  103. package/dist/src/config/default/config.js +1 -0
  104. package/dist/src/config/default/config.js.map +1 -1
  105. package/dist/src/config/default/primitive-tokens.d.ts +1 -0
  106. package/dist/src/config/default/primitive-tokens.d.ts.map +1 -1
  107. package/dist/src/config/default/primitive-tokens.js +1 -0
  108. package/dist/src/config/default/primitive-tokens.js.map +1 -1
  109. package/dist/src/config/normalize.d.ts.map +1 -1
  110. package/dist/src/config/normalize.js +12 -5
  111. package/dist/src/config/normalize.js.map +1 -1
  112. package/dist/src/config/scss.d.ts.map +1 -1
  113. package/dist/src/config/scss.js +6 -0
  114. package/dist/src/config/scss.js.map +1 -1
  115. package/dist/src/config/titles.d.ts +28 -0
  116. package/dist/src/config/titles.d.ts.map +1 -0
  117. package/dist/src/config/titles.js +178 -0
  118. package/dist/src/config/titles.js.map +1 -0
  119. package/dist/src/config/types/design.d.ts +3 -0
  120. package/dist/src/config/types/design.d.ts.map +1 -1
  121. package/dist/src/config/types.d.ts +2 -0
  122. package/dist/src/config/types.d.ts.map +1 -1
  123. package/dist/src/document/components/index.js +1 -1
  124. package/dist/src/document/components/index.js.map +1 -1
  125. package/dist/src/editor/components/surface.js +1 -1
  126. package/dist/src/editor/components/surface.js.map +1 -1
  127. package/dist/src/entity/list.js +1 -1
  128. package/dist/src/entity/list.js.map +1 -1
  129. package/dist/src/entries/react/02.d.ts +1 -1
  130. package/dist/src/entries/react/02.d.ts.map +1 -1
  131. package/dist/src/entries/react/02.js +1 -1
  132. package/dist/src/entries/react/02.js.map +1 -1
  133. package/dist/src/graph/advanced/graph/details.js +1 -1
  134. package/dist/src/graph/advanced/graph/details.js.map +1 -1
  135. package/dist/src/heading/glyphs.d.ts +7 -0
  136. package/dist/src/heading/glyphs.d.ts.map +1 -0
  137. package/dist/src/heading/glyphs.js +79 -0
  138. package/dist/src/heading/glyphs.js.map +1 -0
  139. package/dist/src/heading/index.d.ts +3 -1
  140. package/dist/src/heading/index.d.ts.map +1 -1
  141. package/dist/src/heading/index.js +19 -4
  142. package/dist/src/heading/index.js.map +1 -1
  143. package/dist/src/language/source/modal.js +1 -1
  144. package/dist/src/language/source/modal.js.map +1 -1
  145. package/dist/src/language/source/visualizer.js +1 -1
  146. package/dist/src/language/source/visualizer.js.map +1 -1
  147. package/dist/src/layout/components/outline.d.ts +20 -4
  148. package/dist/src/layout/components/outline.d.ts.map +1 -1
  149. package/dist/src/layout/components/outline.js +147 -70
  150. package/dist/src/layout/components/outline.js.map +1 -1
  151. package/dist/src/layout/components/outline_dock.d.ts +5 -0
  152. package/dist/src/layout/components/outline_dock.d.ts.map +1 -0
  153. package/dist/src/layout/components/outline_dock.js +139 -0
  154. package/dist/src/layout/components/outline_dock.js.map +1 -0
  155. package/dist/src/layout/components/site/category.d.ts +11 -0
  156. package/dist/src/layout/components/site/category.d.ts.map +1 -0
  157. package/dist/src/layout/components/site/category.js +9 -0
  158. package/dist/src/layout/components/site/category.js.map +1 -0
  159. package/dist/src/layout/components/site/footer.d.ts.map +1 -1
  160. package/dist/src/layout/components/site/footer.js +2 -1
  161. package/dist/src/layout/components/site/footer.js.map +1 -1
  162. package/dist/src/layout/components/site/header/groups.d.ts.map +1 -1
  163. package/dist/src/layout/components/site/header/groups.js +3 -2
  164. package/dist/src/layout/components/site/header/groups.js.map +1 -1
  165. package/dist/src/layout/scroll.js +3 -3
  166. package/dist/src/layout/scroll.js.map +1 -1
  167. package/dist/src/logs/view/detail_modal.js +1 -1
  168. package/dist/src/logs/view/detail_modal.js.map +1 -1
  169. package/dist/src/popover/index.js +3 -3
  170. package/dist/src/popover/index.js.map +1 -1
  171. package/dist/src/primitives/components/index.d.ts +1 -0
  172. package/dist/src/primitives/components/index.d.ts.map +1 -1
  173. package/dist/src/primitives/components/index.js +1 -0
  174. package/dist/src/primitives/components/index.js.map +1 -1
  175. package/dist/src/primitives/components/quote.d.ts +9 -0
  176. package/dist/src/primitives/components/quote.d.ts.map +1 -0
  177. package/dist/src/primitives/components/quote.js +16 -0
  178. package/dist/src/primitives/components/quote.js.map +1 -0
  179. package/dist/src/steps/panel.js +1 -1
  180. package/dist/src/steps/panel.js.map +1 -1
  181. package/dist/steps/panel.js +1 -1
  182. package/dist/steps/panel.js.map +1 -1
  183. package/dist/styles/tokens.scss +1 -0
  184. package/dist/styles/utils/text/core.scss +6 -6
  185. package/package.json +3 -3
@@ -1 +1 @@
1
- {"version":3,"file":"02.js","sourceRoot":"","sources":["../../../../src/entries/react/02.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,sBAAsB,EACtB,OAAO,EACP,eAAe,EACf,WAAW,EACX,eAAe,EACf,YAAY,GACb,MAAM,eAAe,CAAC;AAEvB,OAAO,EACL,WAAW,EACX,MAAM,GACP,MAAM,eAAe,CAAC;AAEvB,OAAO,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAChD,OAAO,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AAKtC,OAAO,EACL,gBAAgB,GACjB,MAAM,eAAe,CAAC;AAEvB,OAAO,EACL,uBAAuB,EACvB,0BAA0B,EAC1B,gBAAgB,GACjB,MAAM,eAAe,CAAC;AAEvB,OAAO,EACL,cAAc,EACd,4BAA4B,EAC5B,eAAe,EACf,+BAA+B,EAC/B,kCAAkC,EAClC,0BAA0B,GAC3B,MAAM,eAAe,CAAC;AAEvB,OAAO,EAAE,OAAO,IAAI,QAAQ,EAAE,MAAM,eAAe,CAAC;AACpD,OAAO,EAAE,OAAO,IAAI,UAAU,EAAE,MAAM,eAAe,CAAC;AACtD,OAAO,EAAE,OAAO,IAAI,QAAQ,EAAE,MAAM,eAAe,CAAC;AACpD,OAAO,EAAE,OAAO,IAAI,KAAK,EAAE,MAAM,eAAe,CAAC;AACjD,OAAO,EAAE,OAAO,IAAI,QAAQ,EAAE,MAAM,eAAe,CAAC;AACpD,OAAO,EAAE,0BAA0B,EAAE,OAAO,IAAI,eAAe,EAAE,MAAM,eAAe,CAAC;AACvF,OAAO,EAAE,OAAO,IAAI,KAAK,EAAE,MAAM,eAAe,CAAC;AACjD,OAAO,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAC7C,OAAO,EAAE,OAAO,IAAI,IAAI,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAC3D,OAAO,EAAE,OAAO,IAAI,MAAM,EAAE,MAAM,eAAe,CAAC;AAClD,OAAO,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AACtD,OAAO,EACL,OAAO,IAAI,MAAM,EACjB,oBAAoB,EACpB,aAAa,EACb,WAAW,EACX,YAAY,EACZ,kBAAkB,GACnB,MAAM,eAAe,CAAC;AACvB,OAAO,EAAE,OAAO,IAAI,kBAAkB,EAAE,MAAM,eAAe,CAAC;AAC9D,OAAO,EACL,OAAO,IAAI,MAAM,EACjB,mBAAmB,EACnB,kBAAkB,EAClB,sBAAsB,GACvB,MAAM,eAAe,CAAC;AACvB,OAAO,EACL,OAAO,EACP,SAAS,EACT,KAAK,EACL,IAAI,EACJ,QAAQ,EACR,gBAAgB,EAChB,WAAW,EACX,MAAM,EACN,GAAG,EACH,MAAM,EACN,YAAY,EACZ,IAAI,EACJ,SAAS,EACT,SAAS,EACT,aAAa,EACb,MAAM,EACN,SAAS,EACT,IAAI,EACJ,cAAc,EACd,kBAAkB,EAClB,WAAW,EACX,eAAe,EACf,SAAS,EACT,IAAI,EACJ,OAAO,EACP,IAAI,EACJ,MAAM,EACN,SAAS,EACT,UAAU,EACV,YAAY,EACZ,iBAAiB,EACjB,KAAK,EACL,YAAY,EACZ,oBAAoB,GACrB,MAAM,eAAe,CAAC;AAEvB,OAAO,EACL,iBAAiB,EACjB,eAAe,EACf,eAAe,GAChB,MAAM,eAAe,CAAC;AAEvB,OAAO,EAAE,aAAa,EAAE,cAAc,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAEzE,OAAO,EACL,QAAQ,EACR,UAAU,EACV,eAAe,EACf,QAAQ,EACR,QAAQ,GACT,MAAM,eAAe,CAAC;AACvB,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC"}
1
+ {"version":3,"file":"02.js","sourceRoot":"","sources":["../../../../src/entries/react/02.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,sBAAsB,EACtB,OAAO,EACP,eAAe,EACf,WAAW,EACX,eAAe,EACf,YAAY,GACb,MAAM,eAAe,CAAC;AAEvB,OAAO,EACL,WAAW,EACX,MAAM,GACP,MAAM,eAAe,CAAC;AAEvB,OAAO,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAChD,OAAO,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AAKtC,OAAO,EACL,gBAAgB,GACjB,MAAM,eAAe,CAAC;AAEvB,OAAO,EACL,uBAAuB,EACvB,0BAA0B,EAC1B,gBAAgB,GACjB,MAAM,eAAe,CAAC;AAEvB,OAAO,EACL,cAAc,EACd,4BAA4B,EAC5B,eAAe,EACf,+BAA+B,EAC/B,kCAAkC,EAClC,0BAA0B,GAC3B,MAAM,eAAe,CAAC;AAEvB,OAAO,EAAE,OAAO,IAAI,QAAQ,EAAE,MAAM,eAAe,CAAC;AACpD,OAAO,EAAE,OAAO,IAAI,UAAU,EAAE,MAAM,eAAe,CAAC;AACtD,OAAO,EAAE,OAAO,IAAI,QAAQ,EAAE,MAAM,eAAe,CAAC;AACpD,OAAO,EAAE,OAAO,IAAI,KAAK,EAAE,MAAM,eAAe,CAAC;AACjD,OAAO,EAAE,OAAO,IAAI,QAAQ,EAAE,MAAM,eAAe,CAAC;AACpD,OAAO,EAAE,0BAA0B,EAAE,OAAO,IAAI,eAAe,EAAE,MAAM,eAAe,CAAC;AACvF,OAAO,EAAE,OAAO,IAAI,KAAK,EAAE,MAAM,eAAe,CAAC;AACjD,OAAO,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAC7C,OAAO,EAAE,OAAO,IAAI,IAAI,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAC3D,OAAO,EAAE,OAAO,IAAI,MAAM,EAAE,MAAM,eAAe,CAAC;AAClD,OAAO,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AACtD,OAAO,EACL,OAAO,IAAI,MAAM,EACjB,oBAAoB,EACpB,aAAa,EACb,WAAW,EACX,YAAY,EACZ,kBAAkB,GACnB,MAAM,eAAe,CAAC;AACvB,OAAO,EAAE,OAAO,IAAI,kBAAkB,EAAE,MAAM,eAAe,CAAC;AAC9D,OAAO,EACL,OAAO,IAAI,MAAM,EACjB,mBAAmB,EACnB,kBAAkB,EAClB,sBAAsB,GACvB,MAAM,eAAe,CAAC;AACvB,OAAO,EACL,OAAO,EACP,SAAS,EACT,KAAK,EACL,KAAK,EACL,IAAI,EACJ,QAAQ,EACR,gBAAgB,EAChB,WAAW,EACX,MAAM,EACN,GAAG,EACH,MAAM,EACN,YAAY,EACZ,IAAI,EACJ,SAAS,EACT,SAAS,EACT,aAAa,EACb,MAAM,EACN,SAAS,EACT,IAAI,EACJ,cAAc,EACd,kBAAkB,EAClB,WAAW,EACX,eAAe,EACf,SAAS,EACT,IAAI,EACJ,OAAO,EACP,IAAI,EACJ,MAAM,EACN,SAAS,EACT,UAAU,EACV,YAAY,EACZ,iBAAiB,EACjB,KAAK,EACL,YAAY,EACZ,oBAAoB,GACrB,MAAM,eAAe,CAAC;AAEvB,OAAO,EACL,iBAAiB,EACjB,eAAe,EACf,eAAe,GAChB,MAAM,eAAe,CAAC;AAEvB,OAAO,EAAE,aAAa,EAAE,cAAc,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAEzE,OAAO,EACL,QAAQ,EACR,UAAU,EACV,eAAe,EACf,QAAQ,EACR,QAAQ,GACT,MAAM,eAAe,CAAC;AACvB,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC"}
@@ -38,7 +38,7 @@ function renderGroupedDetails(groups) {
38
38
  const safeGroups = safeGroupedDetails(groups);
39
39
  if (!safeGroups.length)
40
40
  return null;
41
- return (_jsx(Stack, { gap: "sm", children: safeGroups.map((group, groupIndex) => (_jsxs("div", { className: primitiveCardClassName({ gap: "sm" }), children: [group.title ? _jsx(HeadingScope, { children: _jsx(Title, { children: group.title }) }) : null, _jsx(Grid, { gap: "sm", children: group.rows.map((row, rowIndex) => (_jsxs(Stack, { gap: "sm", children: [_jsx("span", { className: frontendClassNames("label", "lh-xs"), children: String(row.label || "") }), renderDetailValue(row, rowIndex)] }, `graph_group_row_${String(row.label || "row")}_${rowIndex}`))) })] }, `graph_group_${group.title || "group"}_${groupIndex}`))) }));
41
+ return (_jsx(Stack, { gap: "sm", children: safeGroups.map((group, groupIndex) => (_jsxs("div", { className: primitiveCardClassName({ gap: "sm" }), children: [group.title ? _jsx(HeadingScope, { children: _jsx(Title, { fit: false, children: group.title }) }) : null, _jsx(Grid, { gap: "sm", children: group.rows.map((row, rowIndex) => (_jsxs(Stack, { gap: "sm", children: [_jsx("span", { className: frontendClassNames("label", "lh-xs"), children: String(row.label || "") }), renderDetailValue(row, rowIndex)] }, `graph_group_row_${String(row.label || "row")}_${rowIndex}`))) })] }, `graph_group_${group.title || "group"}_${groupIndex}`))) }));
42
42
  }
43
43
  function renderRowDetails(rows) {
44
44
  const safeRows = rows.filter((row) => row && typeof row === "object" && row.label);
@@ -1 +1 @@
1
- {"version":3,"file":"details.js","sourceRoot":"","sources":["../../../../../src/graph/advanced/graph/details.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"details.js","sourceRoot":"","sources":["../../../../../src/graph/advanced/graph/details.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC;AACnD,OAAO,EAAE,YAAY,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AACpD,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAEzC,OAAO,EACL,IAAI,EACJ,KAAK,EACL,sBAAsB,EACtB,sBAAsB,GACvB,MAAM,eAAe,CAAC;AAEvB,SAAS,qBAAqB,CAAC,GAAkB;IAC/C,OAAO;QACL,GAAG,CAAC,GAAG,CAAC,KAAK,IAAI,OAAO,GAAG,CAAC,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC;QAChE,GAAG,CAAC,GAAG,CAAC,WAAW,IAAI,OAAO,GAAG,CAAC,WAAW,KAAK,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,CAAC;QAClF,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KAC1C,CAAC;AACJ,CAAC;AAED,SAAS,sBAAsB,CAAC,GAAkB;IAChD,MAAM,KAAK,GAAG,GAAG,CAAC,KAAK,CAAC;IACxB,IAAI,KAAK,KAAK,IAAI,IAAI,KAAK,KAAK,SAAS;QAAE,OAAO,EAAE,CAAC;IACrD,MAAM,SAAS,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;IAChC,OAAO,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,SAAS,IAAI,GAAG,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC;AAC3D,CAAC;AAED,SAAS,iBAAiB,CAAC,GAAkB,EAAE,KAAa;IAC1D,MAAM,SAAS,GAAG,OAAO,GAAG,CAAC,UAAU,KAAK,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC;IAE3E,IAAI,SAAS,EAAE,CAAC;QACd,OAAO,CACL,cAEA,SAAS,EAAE,sBAAsB,CAAC,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,KAClD,qBAAqB,CAAC,GAAG,CAAC,EAC9B,uBAAuB,EAAE,EAAE,MAAM,EAAE,SAAS,EAAE,IAHzC,2BAA2B,KAAK,EAAE,CAIrC,CACH,CAAC;IACJ,CAAC;IAED,OAAO,CACL,cAEA,SAAS,EAAE,sBAAsB,CAAC,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,KAClD,qBAAqB,CAAC,GAAG,CAAC,YAE7B,sBAAsB,CAAC,GAAG,CAAC,IAJvB,sBAAsB,KAAK,EAAE,CAK5B,CACP,CAAC;AACJ,CAAC;AAED,SAAS,kBAAkB,CAAC,MAAyB;IACnD,OAAO,MAAM;SACZ,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;QACX,KAAK,EAAE,QAAQ,CAAC,KAAK,IAAI,KAAK,CAAC,KAAK,CAAC;QACrC,IAAI,EAAE,KAAK,CAAC,OAAO,CAAC,KAAK,IAAI,KAAK,CAAC,IAAI,CAAC;YACxC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CACjB,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,GAAG,CAAC,KAAK,CACrD;YACD,CAAC,CAAC,EAAE;KACT,CAAC,CAAC;SACF,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;AACxC,CAAC;AAED,SAAS,oBAAoB,CAAC,MAAyB;IACrD,MAAM,UAAU,GAAG,kBAAkB,CAAC,MAAM,CAAC,CAAC;IAC9C,IAAI,CAAC,UAAU,CAAC,MAAM;QAAE,OAAO,IAAI,CAAC;IAEpC,OAAO,CACL,KAAC,KAAK,IAAC,GAAG,EAAC,IAAI,YACd,UAAU,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,UAAU,EAAE,EAAE,CAAC,CACjC,eACA,SAAS,EAAE,sBAAsB,CAAC,EAAE,GAAG,EAAE,IAAI,EAAE,CAAC,aAG/C,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,KAAC,YAAY,cAAC,KAAC,KAAK,IAAC,GAAG,EAAE,KAAK,YAAG,KAAK,CAAC,KAAK,GAAS,GAAe,CAAC,CAAC,CAAC,IAAI,EAC3F,KAAC,IAAI,IAAC,GAAG,EAAC,IAAI,YACb,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,QAAQ,EAAE,EAAE,CAAC,CAC7B,MAAC,KAAK,IACN,GAAG,EAAC,IAAI,aAGR,eAAM,SAAS,EAAE,kBAAkB,CAAC,OAAO,EAAE,OAAO,CAAC,YAAG,MAAM,CAAC,GAAG,CAAC,KAAK,IAAI,EAAE,CAAC,GAAQ,EACtF,iBAAiB,CAAC,GAAG,EAAE,QAAQ,CAAC,KAH5B,mBAAmB,MAAM,CAAC,GAAG,CAAC,KAAK,IAAI,KAAK,CAAC,IAAI,QAAQ,EAAE,CAIxD,CACb,CAAC,GACK,KAbF,eAAe,KAAK,CAAC,KAAK,IAAI,OAAO,IAAI,UAAU,EAAE,CAcpD,CACX,CAAC,GACM,CACT,CAAC;AACJ,CAAC;AAED,SAAS,gBAAgB,CAAC,IAAqB;IAC7C,MAAM,QAAQ,GAAG,IAAI,CAAC,MAAM,CAC1B,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,GAAG,CAAC,KAAK,CACrD,CAAC;IACF,IAAI,CAAC,QAAQ,CAAC,MAAM;QAAE,OAAO,IAAI,CAAC;IAElC,OAAO,CACL,KAAC,KAAK,IAAC,GAAG,EAAC,IAAI,YACf,KAAC,IAAI,IAAC,GAAG,EAAC,IAAI,YACb,QAAQ,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,QAAQ,EAAE,EAAE,CAAC,CAC3B,eACA,SAAS,EAAE,sBAAsB,CAAC,EAAE,GAAG,EAAE,IAAI,EAAE,CAAC,aAGhD,eAAM,SAAS,EAAE,kBAAkB,CAAC,OAAO,EAAE,OAAO,CAAC,YAAG,MAAM,CAAC,GAAG,CAAC,KAAK,IAAI,EAAE,CAAC,GAAQ,EACtF,iBAAiB,CAAC,GAAG,EAAE,QAAQ,CAAC,KAH5B,aAAa,MAAM,CAAC,GAAG,CAAC,KAAK,IAAI,KAAK,CAAC,IAAI,QAAQ,EAAE,CAIpD,CACX,CAAC,GACK,GACC,CACT,CAAC;AACJ,CAAC;AAED,OAAO,EAAE,oBAAoB,EAAE,gBAAgB,EAAE,CAAC"}
@@ -0,0 +1,7 @@
1
+ declare const GLYPH_FIRST = 32;
2
+ declare const GLYPH_LAST = 126;
3
+ declare const OTHER = "other";
4
+ declare function glyphVar(key: string): string;
5
+ declare function titleFitVars(text: string): Record<string, string> | null;
6
+ export { GLYPH_FIRST, GLYPH_LAST, OTHER as GLYPH_OTHER, glyphVar, titleFitVars };
7
+ //# sourceMappingURL=glyphs.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"glyphs.d.ts","sourceRoot":"","sources":["../../../src/heading/glyphs.ts"],"names":[],"mappings":"AAEA,QAAA,MAAM,WAAW,KAAK,CAAC;AAEvB,QAAA,MAAM,UAAU,MAAM,CAAC;AAEvB,QAAA,MAAM,KAAK,UAAU,CAAC;AAOtB,iBAAS,QAAQ,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAErC;AAgED,iBAAS,YAAY,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAC,IAAI,CAS/D;AAED,OAAO,EAAE,WAAW,EAAE,UAAU,EAAE,KAAK,IAAI,WAAW,EAAE,QAAQ,EAAE,YAAY,EAAE,CAAC"}
@@ -0,0 +1,79 @@
1
+ import { frontendCssVar } from "./../namespace/index.js";
2
+ const GLYPH_FIRST = 32;
3
+ const GLYPH_LAST = 126;
4
+ const OTHER = "other";
5
+ function glyphKey(char) {
6
+ const code = char.codePointAt(0) ?? 0;
7
+ return code >= GLYPH_FIRST && code <= GLYPH_LAST ? String(code) : OTHER;
8
+ }
9
+ function glyphVar(key) {
10
+ return frontendCssVar(`glyph-${key}`);
11
+ }
12
+ function plainChars(text) {
13
+ return [...text.normalize("NFD").replace(/\p{M}/gu, "")];
14
+ }
15
+ function glyphSum(text) {
16
+ const counts = new Map();
17
+ for (const char of plainChars(text))
18
+ counts.set(glyphKey(char), (counts.get(glyphKey(char)) || 0) + 1);
19
+ const terms = [...counts].sort(([a], [b]) => a.localeCompare(b)).map(([key, count]) => {
20
+ const ref = `var(${glyphVar(key)})`;
21
+ return count > 1 ? `${count} * ${ref}` : ref;
22
+ });
23
+ return terms.length ? `calc(${terms.join(" + ")})` : "0";
24
+ }
25
+ const MAX_LINES = 6;
26
+ const FIT = "100cqi / (%s * 1.04)";
27
+ function charWidth(char) {
28
+ return char === " " ? 0.4 : 1;
29
+ }
30
+ function lengthOf(words) {
31
+ return words.reduce((sum, word, index) => sum + (index ? 0.4 : 0) + [...word].reduce((width, char) => width + charWidth(char), 0), 0);
32
+ }
33
+ function balanced(words, lines) {
34
+ const count = words.length;
35
+ const best = Array.from({ length: lines + 1 }, () => Array(count + 1).fill(Infinity));
36
+ const cut = Array.from({ length: lines + 1 }, () => Array(count + 1).fill(0));
37
+ best[0][0] = 0;
38
+ for (let line = 1; line <= lines; line++) {
39
+ for (let end = line; end <= count; end++) {
40
+ for (let start = line - 1; start < end; start++) {
41
+ const worst = Math.max(best[line - 1][start], lengthOf(words.slice(start, end)));
42
+ if (worst >= best[line][end])
43
+ continue;
44
+ best[line][end] = worst;
45
+ cut[line][end] = start;
46
+ }
47
+ }
48
+ }
49
+ const ranges = [];
50
+ for (let line = lines, end = count; line > 0; line--) {
51
+ const start = cut[line][end];
52
+ ranges.unshift(Array.from({ length: end - start }, (_, index) => start + index));
53
+ end = start;
54
+ }
55
+ return ranges;
56
+ }
57
+ function lineSum(indexes) {
58
+ const terms = indexes.map((index) => `var(${frontendCssVar(`title-w${index}`)})`);
59
+ const spaces = indexes.length - 1;
60
+ return `calc(${[...terms, ...(spaces ? [`${spaces} * var(${glyphVar("32")})`] : [])].join(" + ")})`;
61
+ }
62
+ function candidate(words, lines, last) {
63
+ const widest = balanced(words, lines).map(lineSum);
64
+ const size = FIT.replace("%s", widest.length > 1 ? `max(${widest.join(", ")})` : widest[0]);
65
+ return last ? `calc(${size})` : `calc(${size} + clamp(0px, (1em - ${size}) * 1000, 1px) * 100000)`;
66
+ }
67
+ function titleFitVars(text) {
68
+ const words = text.replace(/\s+/gu, " ").trim().split(" ").filter(Boolean);
69
+ if (!words.length)
70
+ return null;
71
+ const most = Math.min(words.length, MAX_LINES);
72
+ const sizes = Array.from({ length: most }, (_, index) => candidate(words, index + 1, index + 1 === most));
73
+ return {
74
+ ...Object.fromEntries(words.map((word, index) => [frontendCssVar(`title-w${index}`), glyphSum(word)])),
75
+ [frontendCssVar("title-size")]: sizes.length > 1 ? `min(${sizes.join(", ")})` : sizes[0],
76
+ };
77
+ }
78
+ export { GLYPH_FIRST, GLYPH_LAST, OTHER as GLYPH_OTHER, glyphVar, titleFitVars };
79
+ //# sourceMappingURL=glyphs.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"glyphs.js","sourceRoot":"","sources":["../../../src/heading/glyphs.ts"],"names":[],"mappings":"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"}
@@ -1,8 +1,10 @@
1
1
  import { type HTMLAttributes, type ReactNode } from "react";
2
- type HeadingLevel = 2 | 3 | 4 | 5 | 6;
2
+ type HeadingLevel = 1 | 2 | 3 | 4 | 5 | 6;
3
3
  type TitleProps = HTMLAttributes<HTMLHeadingElement> & {
4
4
  children?: ReactNode;
5
+ fit?: boolean;
5
6
  level?: HeadingLevel;
7
+ text?: string;
6
8
  };
7
9
  type HeadingScopeProps = {
8
10
  children?: ReactNode;
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/heading/index.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAiB,KAAK,cAAc,EAAE,KAAK,SAAS,EAAE,MAAM,OAAO,CAAC;AAE3E,KAAK,YAAY,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;AAEtC,KAAK,UAAU,GAAG,cAAc,CAAC,kBAAkB,CAAC,GAAG;IACrD,QAAQ,CAAC,EAAE,SAAS,CAAC;IACrB,KAAK,CAAC,EAAE,YAAY,CAAC;CACtB,CAAC;AAEF,KAAK,iBAAiB,GAAG;IACvB,QAAQ,CAAC,EAAE,SAAS,CAAC;IACrB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB,CAAC;AAQF,iBAAS,oBAAoB,CAAC,KAAK,EAAE,MAAM,GAAG,YAAY,CAGzD;AAaD,iBAAS,KAAK,CAAC,KAAK,EAAE,UAAU,+BAQ/B;AAED,iBAAS,YAAY,CAAC,KAAK,EAAE,iBAAiB,+BAS7C;AAED,iBAAS,YAAY,CAAC,KAAK,EAAE;IAAE,QAAQ,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,SAAS,CAAA;CAAE,+BAEtE;AAED,OAAO,EAAE,YAAY,EAAE,YAAY,EAAE,KAAK,EAAE,oBAAoB,EAAE,CAAC;AACnE,YAAY,EAAE,YAAY,EAAE,iBAAiB,EAAE,UAAU,EAAE,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/heading/index.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAqD,KAAK,cAAc,EAAE,KAAK,SAAS,EAAE,MAAM,OAAO,CAAC;AAK/G,KAAK,YAAY,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;AAE1C,KAAK,UAAU,GAAG,cAAc,CAAC,kBAAkB,CAAC,GAAG;IACrD,QAAQ,CAAC,EAAE,SAAS,CAAC;IACrB,GAAG,CAAC,EAAE,OAAO,CAAC;IACd,KAAK,CAAC,EAAE,YAAY,CAAC;IACrB,IAAI,CAAC,EAAE,MAAM,CAAC;CACf,CAAC;AAEF,KAAK,iBAAiB,GAAG;IACvB,QAAQ,CAAC,EAAE,SAAS,CAAC;IACrB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB,CAAC;AAQF,iBAAS,oBAAoB,CAAC,KAAK,EAAE,MAAM,GAAG,YAAY,CAGzD;AA2BD,iBAAS,KAAK,CAAC,KAAK,EAAE,UAAU,+BAQ/B;AAED,iBAAS,YAAY,CAAC,KAAK,EAAE,iBAAiB,+BAS7C;AAED,iBAAS,YAAY,CAAC,KAAK,EAAE;IAAE,QAAQ,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,SAAS,CAAA;CAAE,+BAEtE;AAED,OAAO,EAAE,YAAY,EAAE,YAAY,EAAE,KAAK,EAAE,oBAAoB,EAAE,CAAC;AACnE,YAAY,EAAE,YAAY,EAAE,iBAAiB,EAAE,UAAU,EAAE,CAAC"}
@@ -1,5 +1,7 @@
1
1
  import { jsx as _jsx } from "react/jsx-runtime";
2
- import { createContext } from "react";
2
+ import { createContext, isValidElement } from "react";
3
+ import { FRONTEND_PREFIX } from "./../namespace/index.js";
4
+ import { titleFitVars } from "./glyphs.js";
3
5
  const PAGE_DEPTH = 0;
4
6
  const MIN_LEVEL = 2;
5
7
  const MAX_LEVEL = 6;
@@ -10,12 +12,25 @@ function headingLevelForDepth(depth) {
10
12
  }
11
13
  function explicitLevel(value) {
12
14
  const level = Number(value);
13
- return Number.isInteger(level) && level >= 2 && level <= MAX_LEVEL ? level : null;
15
+ return Number.isInteger(level) && level >= 1 && level <= MAX_LEVEL ? level : null;
16
+ }
17
+ function textOf(node) {
18
+ if (typeof node === "string" || typeof node === "number")
19
+ return String(node);
20
+ if (Array.isArray(node))
21
+ return node.map(textOf).join("");
22
+ if (isValidElement(node))
23
+ return textOf(node.props.children);
24
+ return "";
14
25
  }
15
26
  function renderHeading(level, props) {
16
- const { children, level: _level, ...rest } = props;
27
+ const { children, className, fit = true, level: _level, style, text, ...rest } = props;
17
28
  const Tag = `h${level}`;
18
- return _jsx(Tag, { ...rest, children: children });
29
+ const vars = fit ? titleFitVars(text ?? textOf(children)) : null;
30
+ if (!vars)
31
+ return _jsx(Tag, { className: className, style: style, ...rest, children: children });
32
+ const classes = [`${FRONTEND_PREFIX}-title`, className].filter(Boolean).join(" ");
33
+ return (_jsx(Tag, { className: classes, style: { ...style, ...vars }, ...rest, children: _jsx("span", { className: `${FRONTEND_PREFIX}-title__fit`, children: children }) }));
19
34
  }
20
35
  function Title(props) {
21
36
  const fixed = explicitLevel(props.level);
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/heading/index.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,aAAa,EAAuC,MAAM,OAAO,CAAC;AAc3E,MAAM,UAAU,GAAG,CAAC,CAAC;AACrB,MAAM,SAAS,GAAG,CAAC,CAAC;AACpB,MAAM,SAAS,GAAG,CAAC,CAAC;AAEpB,MAAM,mBAAmB,GAAG,aAAa,CAAS,UAAU,CAAC,CAAC;AAE9D,SAAS,oBAAoB,CAAC,KAAa;IACzC,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,SAAS,EAAE,IAAI,CAAC,GAAG,CAAC,SAAS,EAAE,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;IAC3F,OAAO,KAAqB,CAAC;AAC/B,CAAC;AAED,SAAS,aAAa,CAAC,KAAc;IACnC,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;IAC5B,OAAO,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,KAAK,IAAI,CAAC,IAAI,KAAK,IAAI,SAAS,CAAC,CAAC,CAAC,KAAqB,CAAC,CAAC,CAAC,IAAI,CAAC;AACpG,CAAC;AAED,SAAS,aAAa,CAAC,KAAmB,EAAE,KAAiB;IAC3D,MAAM,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,IAAI,EAAE,GAAG,KAAK,CAAC;IACnD,MAAM,GAAG,GAAG,IAAI,KAAK,EAAW,CAAC;IACjC,OAAO,KAAC,GAAG,OAAK,IAAI,YAAG,QAAQ,GAAO,CAAC;AACzC,CAAC;AAED,SAAS,KAAK,CAAC,KAAiB;IAC9B,MAAM,KAAK,GAAG,aAAa,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;IACzC,IAAI,KAAK;QAAE,OAAO,aAAa,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;IAC9C,OAAO,CACL,KAAC,mBAAmB,CAAC,QAAQ,cAC5B,CAAC,KAAK,EAAE,EAAE,CAAC,aAAa,CAAC,oBAAoB,CAAC,KAAK,CAAC,EAAE,KAAK,CAAC,GAC9B,CAChC,CAAC;AACJ,CAAC;AAED,SAAS,YAAY,CAAC,KAAwB;IAC5C,IAAI,OAAO,KAAK,CAAC,KAAK,KAAK,QAAQ,EAAE,CAAC;QACpC,OAAO,KAAC,mBAAmB,CAAC,QAAQ,IAAC,KAAK,EAAE,KAAK,CAAC,KAAK,YAAG,KAAK,CAAC,QAAQ,GAAgC,CAAC;IAC3G,CAAC;IACD,OAAO,CACL,KAAC,mBAAmB,CAAC,QAAQ,cAC5B,CAAC,KAAK,EAAE,EAAE,CAAC,KAAC,mBAAmB,CAAC,QAAQ,IAAC,KAAK,EAAE,KAAK,GAAG,CAAC,YAAG,KAAK,CAAC,QAAQ,GAAgC,GAC5E,CAChC,CAAC;AACJ,CAAC;AAED,SAAS,YAAY,CAAC,KAAiD;IACrE,OAAO,KAAC,mBAAmB,CAAC,QAAQ,cAAE,KAAK,CAAC,QAAQ,GAAgC,CAAC;AACvF,CAAC;AAED,OAAO,EAAE,YAAY,EAAE,YAAY,EAAE,KAAK,EAAE,oBAAoB,EAAE,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/heading/index.tsx"],"names":[],"mappings":"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"}
@@ -65,7 +65,7 @@ function sourceLanguageModalSummaryCard(model, props) {
65
65
  });
66
66
  }
67
67
  function filesHeader(model, props) {
68
- return (_jsxs(Stack, { className: frontendClassName("title-desc"), gap: "sm", children: [_jsxs(InlineRow, { gap: "sm", children: [_jsx(Title, { children: translate(props.lang, "files") }), model.matchingPathsText ? (_jsx("div", { className: frontendClassName("right"), children: copy_button({
68
+ return (_jsxs(Stack, { className: frontendClassName("title-desc"), gap: "sm", children: [_jsxs(InlineRow, { gap: "sm", children: [_jsx(Title, { fit: false, children: translate(props.lang, "files") }), model.matchingPathsText ? (_jsx("div", { className: frontendClassName("right"), children: copy_button({
69
69
  size: "sm",
70
70
  target: `#${model.matchingPathsId}`,
71
71
  title: translate(props.lang, "copyFilePaths"),
@@ -1 +1 @@
1
- {"version":3,"file":"modal.js","sourceRoot":"","sources":["../../../../src/language/source/modal.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"modal.js","sourceRoot":"","sources":["../../../../src/language/source/modal.tsx"],"names":[],"mappings":"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"}
@@ -10,7 +10,7 @@ function headerCard(model) {
10
10
  return card({
11
11
  className: primitiveInlineRowClassName({ gap: "sm" }),
12
12
  layout: "none",
13
- children: (_jsxs(_Fragment, { children: [_jsx(Title, { children: translate(model.lang, "languages") }), button({
13
+ children: (_jsxs(_Fragment, { children: [_jsx(Title, { fit: false, children: translate(model.lang, "languages") }), button({
14
14
  type: "button",
15
15
  [frontendDataAttr("source-language-reset")]: "",
16
16
  hidden: true,
@@ -1 +1 @@
1
- {"version":3,"file":"visualizer.js","sourceRoot":"","sources":["../../../../src/language/source/visualizer.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"visualizer.js","sourceRoot":"","sources":["../../../../src/language/source/visualizer.tsx"],"names":[],"mappings":"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"}
@@ -1,4 +1,5 @@
1
- import type { ReactNode } from "react";
1
+ import { useEffect } from "react";
2
+ import type { ReactNode, RefObject } from "react";
2
3
  type PageOutlineItem = {
3
4
  id: string;
4
5
  label: ReactNode;
@@ -7,14 +8,29 @@ type PageOutlineProps = {
7
8
  className?: string;
8
9
  items: PageOutlineItem[];
9
10
  label?: string;
11
+ state?: PageOutlineState;
12
+ };
13
+ type PageOutlineState = {
14
+ active: string;
15
+ listRef: RefObject<HTMLOListElement | null>;
16
+ select: (id: string) => void;
10
17
  };
11
18
  type PageOutlineLayoutProps = PageOutlineProps & {
12
19
  aside?: ReactNode;
13
20
  children: ReactNode;
14
21
  frame?: boolean;
15
22
  };
23
+ declare const block = "page-outline";
24
+ declare const useClientLayoutEffect: typeof useEffect;
25
+ declare function usePageOutline(items: PageOutlineItem[]): PageOutlineState;
26
+ type OutlineListProps = {
27
+ closes?: boolean;
28
+ items: PageOutlineItem[];
29
+ listRef: RefObject<HTMLOListElement | null>;
30
+ state: PageOutlineState;
31
+ };
32
+ declare function OutlineList({ closes, items, listRef, state }: OutlineListProps): import("react").JSX.Element;
16
33
  declare function PageOutline(props: PageOutlineProps): import("react").JSX.Element;
17
- declare function PageOutlineLayout(props: PageOutlineLayoutProps): import("react").JSX.Element;
18
- export { PageOutline, PageOutlineLayout };
19
- export type { PageOutlineItem, PageOutlineLayoutProps, PageOutlineProps };
34
+ export { block as outlineBlock, OutlineList, PageOutline, useClientLayoutEffect, usePageOutline };
35
+ export type { PageOutlineItem, PageOutlineLayoutProps, PageOutlineProps, PageOutlineState };
20
36
  //# sourceMappingURL=outline.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"outline.d.ts","sourceRoot":"","sources":["../../../../src/layout/components/outline.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAa,MAAM,OAAO,CAAC;AAKlD,KAAK,eAAe,GAAG;IACrB,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,SAAS,CAAC;CAClB,CAAC;AAEF,KAAK,gBAAgB,GAAG;IACtB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,EAAE,eAAe,EAAE,CAAC;IACzB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB,CAAC;AAEF,KAAK,sBAAsB,GAAG,gBAAgB,GAAG;IAC/C,KAAK,CAAC,EAAE,SAAS,CAAC;IAClB,QAAQ,EAAE,SAAS,CAAC;IACpB,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB,CAAC;AAyGF,iBAAS,WAAW,CAAC,KAAK,EAAE,gBAAgB,+BAoC3C;AAED,iBAAS,iBAAiB,CAAC,KAAK,EAAE,sBAAsB,+BAuBvD;AAED,OAAO,EAAE,WAAW,EAAE,iBAAiB,EAAE,CAAC;AAC1C,YAAY,EAAE,eAAe,EAAE,sBAAsB,EAAE,gBAAgB,EAAE,CAAC"}
1
+ {"version":3,"file":"outline.d.ts","sourceRoot":"","sources":["../../../../src/layout/components/outline.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAe,SAAS,EAAqC,MAAM,OAAO,CAAC;AAClF,OAAO,KAAK,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAKlD,KAAK,eAAe,GAAG;IACrB,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,SAAS,CAAC;CAClB,CAAC;AAEF,KAAK,gBAAgB,GAAG;IACtB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,EAAE,eAAe,EAAE,CAAC;IACzB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,gBAAgB,CAAC;CAC1B,CAAC;AAEF,KAAK,gBAAgB,GAAG;IACtB,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,SAAS,CAAC,gBAAgB,GAAC,IAAI,CAAC,CAAC;IAC1C,MAAM,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,IAAI,CAAC;CAC9B,CAAC;AAEF,KAAK,sBAAsB,GAAG,gBAAgB,GAAG;IAC/C,KAAK,CAAC,EAAE,SAAS,CAAC;IAClB,QAAQ,EAAE,SAAS,CAAC;IACpB,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB,CAAC;AAIF,QAAA,MAAM,KAAK,iBAAiB,CAAC;AAK7B,QAAA,MAAM,qBAAqB,kBAA8D,CAAC;AAiK1F,iBAAS,cAAc,CAAC,KAAK,EAAE,eAAe,EAAE,GAAG,gBAAgB,CAIlE;AAED,KAAK,gBAAgB,GAAG;IACtB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,KAAK,EAAE,eAAe,EAAE,CAAC;IACzB,OAAO,EAAE,SAAS,CAAC,gBAAgB,GAAC,IAAI,CAAC,CAAC;IAC1C,KAAK,EAAE,gBAAgB,CAAC;CACzB,CAAC;AAEF,iBAAS,WAAW,CAAC,EAAE,MAAc,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,EAAE,gBAAgB,+BAyB/E;AAED,iBAAS,WAAW,CAAC,KAAK,EAAE,gBAAgB,+BAc3C;AAED,OAAO,EAAE,KAAK,IAAI,YAAY,EAAE,WAAW,EAAE,WAAW,EAAE,qBAAqB,EAAE,cAAc,EAAE,CAAC;AAClG,YAAY,EAAE,eAAe,EAAE,sBAAsB,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,CAAC"}
@@ -1,27 +1,44 @@
1
1
  import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
2
- import { useCallback, useEffect, useRef, useState } from "react";
2
+ import { useCallback, useEffect, useLayoutEffect, useRef, useState } from "react";
3
3
  import { classNames } from "../../../components/index.js";
4
- import { frontendClassName, frontendCssVar, frontendDataAttr, frontendElementClass } from "../../../namespace/index.js";
4
+ import { frontendClassName, frontendCssVar, frontendDataAttr, frontendDataAttrs, frontendElementClass } from "../../../namespace/index.js";
5
5
  import { motionReduced } from "./../../a11y/attributes.js";
6
6
  const block = "page-outline";
7
- const layoutBlock = "page-outline-layout";
8
7
  const ACTIVE_LINE = 0.3;
8
+ const SETTLE_DELAY = 160;
9
9
  const OUTLINE_STORAGE_PREFIX = "tbf.outline:";
10
- function activeId(items) {
11
- let current = "";
12
- let nearest = -Infinity;
13
- const line = Math.max(window.innerHeight * ACTIVE_LINE, 120);
10
+ const USER_SCROLL_EVENTS = ["wheel", "touchstart", "keydown"];
11
+ const useClientLayoutEffect = typeof window === "undefined" ? useEffect : useLayoutEffect;
12
+ function sectionTops(items) {
13
+ const tops = [];
14
14
  for (const item of items) {
15
15
  const element = document.getElementById(item.id);
16
- if (!element)
17
- continue;
18
- const { top } = element.getBoundingClientRect();
19
- if (top > line || top <= nearest)
20
- continue;
21
- nearest = top;
22
- current = item.id;
16
+ if (element)
17
+ tops.push([item.id, element.getBoundingClientRect().top]);
23
18
  }
24
- return current || items[0]?.id || "";
19
+ return tops;
20
+ }
21
+ function atPageEnd() {
22
+ const { scrollHeight } = document.documentElement;
23
+ return window.scrollY > 0 && window.scrollY + window.innerHeight >= scrollHeight - 2;
24
+ }
25
+ function activeId(items) {
26
+ const tops = sectionTops(items);
27
+ const last = tops[tops.length - 1];
28
+ if (!last)
29
+ return items[0]?.id || "";
30
+ if (atPageEnd())
31
+ return last[0];
32
+ const line = Math.max(window.innerHeight * ACTIVE_LINE, 120);
33
+ let current = tops[0]?.[0] || "";
34
+ for (const [id, top] of tops)
35
+ if (top <= line)
36
+ current = id;
37
+ return current;
38
+ }
39
+ function bootedId(list, items) {
40
+ const id = list?.querySelector("a[aria-current=\"true\"]")?.getAttribute("href")?.slice(1) || "";
41
+ return items.some((item) => item.id === id) ? id : "";
25
42
  }
26
43
  function scrollToSection(id) {
27
44
  const target = document.getElementById(id);
@@ -32,93 +49,153 @@ function scrollToSection(id) {
32
49
  target.scrollIntoView({ behavior: motionReduced() ? "auto" : "smooth", block: "start" });
33
50
  window.history.replaceState(null, "", `#${id}`);
34
51
  }
35
- function useActiveSection(items) {
52
+ function settleLater(hold) {
53
+ window.clearTimeout(hold.timer);
54
+ hold.timer = window.setTimeout(() => {
55
+ hold.settled = true;
56
+ }, SETTLE_DELAY);
57
+ }
58
+ function watchScroll(measure, hold) {
59
+ let frame = 0;
60
+ const schedule = () => {
61
+ if (!frame)
62
+ frame = requestAnimationFrame(() => {
63
+ frame = 0;
64
+ measure();
65
+ });
66
+ };
67
+ const release = () => {
68
+ if (hold.current)
69
+ window.clearTimeout(hold.current.timer);
70
+ hold.current = null;
71
+ schedule();
72
+ };
73
+ const onScroll = () => {
74
+ const held = hold.current;
75
+ if (!held)
76
+ schedule();
77
+ else if (held.settled)
78
+ release();
79
+ else
80
+ settleLater(held);
81
+ };
82
+ if (document.readyState === "complete")
83
+ schedule();
84
+ else
85
+ window.addEventListener("load", schedule, { once: true });
86
+ window.addEventListener("scroll", onScroll, { passive: true });
87
+ window.addEventListener("resize", schedule, { passive: true });
88
+ USER_SCROLL_EVENTS.forEach((name) => window.addEventListener(name, release, { passive: true }));
89
+ return () => {
90
+ if (frame)
91
+ cancelAnimationFrame(frame);
92
+ if (hold.current)
93
+ window.clearTimeout(hold.current.timer);
94
+ window.removeEventListener("load", schedule);
95
+ window.removeEventListener("scroll", onScroll);
96
+ window.removeEventListener("resize", schedule);
97
+ USER_SCROLL_EVENTS.forEach((name) => window.removeEventListener(name, release));
98
+ };
99
+ }
100
+ function useActiveSection(items, listRef) {
36
101
  const [active, setActive] = useState(() => items[0]?.id || "");
37
102
  const key = items.map((item) => item.id).join("|");
38
103
  const itemsRef = useRef(items);
39
104
  itemsRef.current = items;
40
- const measure = useCallback(() => {
41
- setActive(activeId(itemsRef.current));
105
+ const hold = useRef(null);
106
+ useClientLayoutEffect(() => {
107
+ if (!itemsRef.current.length)
108
+ return;
109
+ const booted = bootedId(listRef.current, itemsRef.current);
110
+ if (booted)
111
+ setActive(booted);
112
+ return watchScroll(() => setActive(hold.current ? hold.current.id : activeId(itemsRef.current)), hold);
113
+ }, [key, listRef]);
114
+ const select = useCallback((id) => {
115
+ if (hold.current)
116
+ window.clearTimeout(hold.current.timer);
117
+ const next = { id, settled: false, timer: 0 };
118
+ settleLater(next);
119
+ hold.current = next;
120
+ setActive(id);
42
121
  }, []);
43
- useEffect(() => {
44
- let frame = 0;
45
- const run = () => {
46
- frame = 0;
47
- measure();
48
- };
49
- const schedule = () => {
50
- if (!frame)
51
- frame = requestAnimationFrame(run);
52
- };
53
- measure();
54
- window.addEventListener("scroll", schedule, { passive: true });
55
- window.addEventListener("resize", schedule, { passive: true });
56
- return () => {
57
- if (frame)
58
- cancelAnimationFrame(frame);
59
- window.removeEventListener("scroll", schedule);
60
- window.removeEventListener("resize", schedule);
61
- };
62
- }, [key, measure]);
63
- return active;
122
+ return [active, select];
64
123
  }
65
- function useMarker(active) {
66
- const listRef = useRef(null);
67
- useEffect(() => {
124
+ function useMarker(listRef, active) {
125
+ useClientLayoutEffect(() => {
68
126
  const list = listRef.current;
69
127
  if (!list)
70
128
  return;
71
- const current = list.querySelector("[aria-current=\"true\"]");
72
- list.style.setProperty(frontendCssVar("outline-marker-top"), `${current ? current.offsetTop : 0}px`);
73
- list.style.setProperty(frontendCssVar("outline-marker-height"), `${current ? current.offsetHeight : 0}px`);
74
- if (current)
129
+ const place = () => {
130
+ const current = list.querySelector("[aria-current=\"true\"]");
131
+ if (!current)
132
+ return;
133
+ list.style.setProperty(frontendCssVar("outline-marker-top"), `${current.offsetTop}px`);
134
+ list.style.setProperty(frontendCssVar("outline-marker-height"), `${current.offsetHeight}px`);
75
135
  list.setAttribute(frontendDataAttr("outline-ready"), "true");
76
- }, [active]);
77
- return listRef;
136
+ };
137
+ place();
138
+ if (typeof ResizeObserver === "undefined")
139
+ return;
140
+ const observer = new ResizeObserver(place);
141
+ observer.observe(list);
142
+ return () => observer.disconnect();
143
+ }, [active, listRef]);
78
144
  }
79
145
  function outlineBootWanted() {
80
146
  return [
81
- `var K=${JSON.stringify(OUTLINE_STORAGE_PREFIX)}+location.pathname+location.search,w='',N='';`,
147
+ `var P=${JSON.stringify(OUTLINE_STORAGE_PREFIX)},w='',N='';`,
82
148
  "try{N=(performance.getEntriesByType('navigation')[0]||{}).type||''}catch(e){}",
83
- "if(N==='reload'||N==='back_forward'){try{w=sessionStorage.getItem(K)||''}catch(e){}}",
149
+ "if(N==='reload'||N==='back_forward'){try{w=sessionStorage.getItem(P+location.pathname+location.search)||''}catch(e){}}",
84
150
  "if(!w){try{w=decodeURIComponent(location.hash.slice(1))}catch(e){}}",
85
151
  ];
86
152
  }
153
+ function outlineBootSave() {
154
+ const current = JSON.stringify(`.${frontendElementClass(block, "link")}[aria-current="true"]`);
155
+ return [
156
+ "addEventListener('pagehide',function(){try{",
157
+ `var k=document.querySelector(${current});`,
158
+ "if(k)sessionStorage.setItem(P+location.pathname+location.search,k.getAttribute('href').slice(1))}catch(e){}});",
159
+ ];
160
+ }
87
161
  function outlineBootSource() {
88
162
  const markerTop = JSON.stringify(frontendCssVar("outline-marker-top"));
89
163
  const markerHeight = JSON.stringify(frontendCssVar("outline-marker-height"));
90
164
  const ready = JSON.stringify(frontendDataAttr("outline-ready"));
91
165
  return [
92
166
  "(function(){try{var s=document.currentScript,n=s&&s.previousElementSibling;if(!n)return;",
93
- "var l=n.querySelector('ol'),a=n.querySelectorAll('a[href^=\"#\"]'),c=null;",
167
+ "var l=n.querySelector('ol'),a=n.querySelectorAll('a[href^=\"#\"]'),c=a[0]||null;",
94
168
  ...outlineBootWanted(),
95
- "for(var i=0;i<a.length;i++){var id=a[i].getAttribute('href').slice(1);",
96
- "if(w?id===w:i===0){c=a[i];a[i].setAttribute('aria-current','true')}else a[i].removeAttribute('aria-current')}",
169
+ "for(var i=0;i<a.length;i++){if(a[i].getAttribute('href').slice(1)===w)c=a[i]}",
170
+ "for(var j=0;j<a.length;j++){if(a[j]===c)a[j].setAttribute('aria-current','true');else a[j].removeAttribute('aria-current')}",
97
171
  `if(l&&c){l.style.setProperty(${markerTop},c.offsetTop+'px');`,
98
172
  `l.style.setProperty(${markerHeight},c.offsetHeight+'px');l.setAttribute(${ready},'true')}`,
99
- "addEventListener('pagehide',function(){try{var k=n.querySelector('a[aria-current=\"true\"]');",
100
- "if(k)sessionStorage.setItem(K,k.getAttribute('href').slice(1))}catch(e){}});",
173
+ ...outlineBootSave(),
101
174
  "}catch(e){}})();",
102
175
  ].join("");
103
176
  }
177
+ function usePageOutline(items) {
178
+ const listRef = useRef(null);
179
+ const [active, select] = useActiveSection(items, listRef);
180
+ return { active, listRef, select };
181
+ }
182
+ function OutlineList({ closes = false, items, listRef, state }) {
183
+ useMarker(listRef, state.active);
184
+ return (_jsx("ol", { className: frontendElementClass(block, "list"), ref: listRef, suppressHydrationWarning: true, children: items.map((item) => (_jsx("li", { children: _jsx("a", { "aria-current": item.id === state.active ? "true" : undefined, className: frontendElementClass(block, "link"), href: `#${item.id}`, suppressHydrationWarning: true, ...frontendDataAttrs({ "popover-close": closes ? "" : undefined }), onClick: (event) => {
185
+ if (event.metaKey || event.ctrlKey || event.shiftKey)
186
+ return;
187
+ event.preventDefault();
188
+ state.select(item.id);
189
+ scrollToSection(item.id);
190
+ }, children: item.label }) }, item.id))) }));
191
+ }
104
192
  function PageOutline(props) {
105
193
  const { className, items, label } = props;
106
- const active = useActiveSection(items);
107
- const listRef = useMarker(active);
194
+ const own = usePageOutline(props.state ? [] : items);
195
+ const state = props.state || own;
108
196
  if (items.length === 0)
109
197
  return null;
110
- return (_jsxs(_Fragment, { children: [_jsx("nav", { "aria-label": label, className: classNames(frontendClassName(block), className), children: _jsx("ol", { className: frontendElementClass(block, "list"), ref: listRef, suppressHydrationWarning: true, children: items.map((item) => (_jsx("li", { children: _jsx("a", { "aria-current": item.id === active ? "true" : undefined, className: frontendElementClass(block, "link"), href: `#${item.id}`, suppressHydrationWarning: true, onClick: (event) => {
111
- if (event.metaKey || event.ctrlKey || event.shiftKey)
112
- return;
113
- event.preventDefault();
114
- scrollToSection(item.id);
115
- }, children: item.label }) }, item.id))) }) }), _jsx("script", { dangerouslySetInnerHTML: { __html: outlineBootSource() } })] }));
116
- }
117
- function PageOutlineLayout(props) {
118
- const { aside, children, className, frame, items, label } = props;
119
- if (items.length === 0 && !frame && !aside)
120
- return _jsx(_Fragment, { children: children });
121
- return (_jsxs("div", { className: classNames(frontendClassName(layoutBlock), frame ? frontendClassName(`${layoutBlock}--frame`) : "", className), children: [items.length > 0 || aside ? (_jsx("div", { className: frontendElementClass(layoutBlock, "track"), children: _jsxs("aside", { className: frontendElementClass(layoutBlock, "rail"), children: [aside ? _jsx("div", { className: frontendElementClass(layoutBlock, "aside"), children: aside }) : null, _jsx(PageOutline, { items: items, label: label })] }) })) : null, _jsx("div", { className: frontendElementClass(layoutBlock, "content"), children: children })] }));
198
+ return (_jsxs(_Fragment, { children: [_jsx("nav", { "aria-label": label, className: classNames(frontendClassName(block), className), children: _jsx(OutlineList, { items: items, listRef: state.listRef, state: state }) }), _jsx("script", { dangerouslySetInnerHTML: { __html: outlineBootSource() } })] }));
122
199
  }
123
- export { PageOutline, PageOutlineLayout };
200
+ export { block as outlineBlock, OutlineList, PageOutline, useClientLayoutEffect, usePageOutline };
124
201
  //# sourceMappingURL=outline.js.map