@docsector/docsector-reader 2.3.0 → 3.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 (294) hide show
  1. package/README.md +50 -21
  2. package/bin/docsector.js +1 -1
  3. package/package.json +5 -3
  4. package/src/components/DMenu.vue +15 -8
  5. package/src/components/DPage.vue +99 -5
  6. package/src/components/DPageExpandable.vue +78 -0
  7. package/src/components/DPageSection.vue +7 -572
  8. package/src/components/DPageSourceCode.vue +1 -1
  9. package/src/components/DPageTokens.vue +122 -0
  10. package/src/components/DSubpage.vue +1 -1
  11. package/src/components/page-section-tokens.js +613 -0
  12. package/src/composables/useReadingProgress.js +46 -0
  13. package/src/pages/guide/getting-started.overview.en-US.md +2 -2
  14. package/src/pages/guide/getting-started.overview.pt-BR.md +2 -2
  15. package/src/pages/guide/i18n-and-markdown.overview.en-US.md +16 -0
  16. package/src/pages/guide/i18n-and-markdown.overview.pt-BR.md +16 -0
  17. package/src/pages/guide.index.js +48 -0
  18. package/src/pages/manual/components/d-menu.overview.en-US.md +1 -1
  19. package/src/pages/manual/components/d-menu.overview.pt-BR.md +1 -1
  20. package/src/pages/manual/components/d-page-expandable.overview.en-US.md +58 -0
  21. package/src/pages/manual/components/d-page-expandable.overview.pt-BR.md +58 -0
  22. package/src/pages/manual/components/d-page-expandable.showcase.en-US.md +33 -0
  23. package/src/pages/manual/components/d-page-expandable.showcase.pt-BR.md +33 -0
  24. package/src/pages/manual/components/d-page.overview.en-US.md +3 -0
  25. package/src/pages/manual/components/d-page.overview.pt-BR.md +3 -0
  26. package/src/pages/manual/components/d-subpage.overview.en-US.md +5 -1
  27. package/src/pages/manual/components/d-subpage.overview.pt-BR.md +5 -1
  28. package/src/pages/manual.index.js +102 -0
  29. package/src/quasar.factory.js +158 -13
  30. package/src/search/book-search.js +25 -0
  31. package/public/Docsphere/flags/brazil.png +0 -0
  32. package/public/Docsphere/flags/united-states-of-america.png +0 -0
  33. package/src/i18n/tags.hjson +0 -46
  34. /package/public/{Docsphere → images}/flags/abkhazia.png +0 -0
  35. /package/public/{Docsphere → images}/flags/afghanistan.png +0 -0
  36. /package/public/{Docsphere → images}/flags/aland-islands.png +0 -0
  37. /package/public/{Docsphere → images}/flags/albania.png +0 -0
  38. /package/public/{Docsphere → images}/flags/algeria.png +0 -0
  39. /package/public/{Docsphere → images}/flags/american-samoa.png +0 -0
  40. /package/public/{Docsphere → images}/flags/andorra.png +0 -0
  41. /package/public/{Docsphere → images}/flags/angola.png +0 -0
  42. /package/public/{Docsphere → images}/flags/anguilla.png +0 -0
  43. /package/public/{Docsphere → images}/flags/antigua-and-barbuda.png +0 -0
  44. /package/public/{Docsphere → images}/flags/argentina.png +0 -0
  45. /package/public/{Docsphere → images}/flags/armenia.png +0 -0
  46. /package/public/{Docsphere → images}/flags/aruba.png +0 -0
  47. /package/public/{Docsphere → images}/flags/australia.png +0 -0
  48. /package/public/{Docsphere → images}/flags/austria.png +0 -0
  49. /package/public/{Docsphere → images}/flags/azerbaijan.png +0 -0
  50. /package/public/{Docsphere → images}/flags/azores-islands.png +0 -0
  51. /package/public/{Docsphere → images}/flags/bahamas.png +0 -0
  52. /package/public/{Docsphere → images}/flags/bahrain.png +0 -0
  53. /package/public/{Docsphere → images}/flags/balearic-islands.png +0 -0
  54. /package/public/{Docsphere → images}/flags/bangladesh.png +0 -0
  55. /package/public/{Docsphere → images}/flags/barbados.png +0 -0
  56. /package/public/{Docsphere → images}/flags/basque-country.png +0 -0
  57. /package/public/{Docsphere → images}/flags/belarus.png +0 -0
  58. /package/public/{Docsphere → images}/flags/belgium.png +0 -0
  59. /package/public/{Docsphere → images}/flags/belize.png +0 -0
  60. /package/public/{Docsphere → images}/flags/benin.png +0 -0
  61. /package/public/{Docsphere → images}/flags/bermuda.png +0 -0
  62. /package/public/{Docsphere → images}/flags/bhutan-1.png +0 -0
  63. /package/public/{Docsphere → images}/flags/bhutan.png +0 -0
  64. /package/public/{Docsphere → images}/flags/bolivia.png +0 -0
  65. /package/public/{Docsphere → images}/flags/bonaire.png +0 -0
  66. /package/public/{Docsphere → images}/flags/bosnia-and-herzegovina.png +0 -0
  67. /package/public/{Docsphere → images}/flags/botswana.png +0 -0
  68. /package/public/{Docsphere → images}/flags/british-columbia.png +0 -0
  69. /package/public/{Docsphere → images}/flags/british-indian-ocean-territory.png +0 -0
  70. /package/public/{Docsphere → images}/flags/british-virgin-islands.png +0 -0
  71. /package/public/{Docsphere → images}/flags/brunei.png +0 -0
  72. /package/public/{Docsphere → images}/flags/bulgaria.png +0 -0
  73. /package/public/{Docsphere → images}/flags/burkina-faso.png +0 -0
  74. /package/public/{Docsphere → images}/flags/burundi.png +0 -0
  75. /package/public/{Docsphere → images}/flags/cambodia.png +0 -0
  76. /package/public/{Docsphere → images}/flags/cameroon.png +0 -0
  77. /package/public/{Docsphere → images}/flags/canada.png +0 -0
  78. /package/public/{Docsphere → images}/flags/canary-islands.png +0 -0
  79. /package/public/{Docsphere → images}/flags/cape-verde.png +0 -0
  80. /package/public/{Docsphere → images}/flags/cayman-islands.png +0 -0
  81. /package/public/{Docsphere → images}/flags/central-african-republic.png +0 -0
  82. /package/public/{Docsphere → images}/flags/ceuta.png +0 -0
  83. /package/public/{Docsphere → images}/flags/chad.png +0 -0
  84. /package/public/{Docsphere → images}/flags/chile.png +0 -0
  85. /package/public/{Docsphere → images}/flags/china.png +0 -0
  86. /package/public/{Docsphere → images}/flags/christmas-island.png +0 -0
  87. /package/public/{Docsphere → images}/flags/cocos-island.png +0 -0
  88. /package/public/{Docsphere → images}/flags/colombia.png +0 -0
  89. /package/public/{Docsphere → images}/flags/comoros.png +0 -0
  90. /package/public/{Docsphere → images}/flags/cook-islands.png +0 -0
  91. /package/public/{Docsphere → images}/flags/corsica.png +0 -0
  92. /package/public/{Docsphere → images}/flags/costa-rica.png +0 -0
  93. /package/public/{Docsphere → images}/flags/croatia.png +0 -0
  94. /package/public/{Docsphere → images}/flags/cuba.png +0 -0
  95. /package/public/{Docsphere → images}/flags/curacao.png +0 -0
  96. /package/public/{Docsphere → images}/flags/cyprus.png +0 -0
  97. /package/public/{Docsphere → images}/flags/czech-republic.png +0 -0
  98. /package/public/{Docsphere → images}/flags/democratic-republic-of-congo.png +0 -0
  99. /package/public/{Docsphere → images}/flags/denmark.png +0 -0
  100. /package/public/{Docsphere → images}/flags/djibouti.png +0 -0
  101. /package/public/{Docsphere → images}/flags/dominica.png +0 -0
  102. /package/public/{Docsphere → images}/flags/dominican-republic.png +0 -0
  103. /package/public/{Docsphere → images}/flags/east-timor.png +0 -0
  104. /package/public/{Docsphere → images}/flags/ecuador.png +0 -0
  105. /package/public/{Docsphere → images}/flags/egypt.png +0 -0
  106. /package/public/{Docsphere → images}/flags/england.png +0 -0
  107. /package/public/{Docsphere → images}/flags/equatorial-guinea.png +0 -0
  108. /package/public/{Docsphere → images}/flags/eritrea.png +0 -0
  109. /package/public/{Docsphere → images}/flags/estonia.png +0 -0
  110. /package/public/{Docsphere → images}/flags/ethiopia.png +0 -0
  111. /package/public/{Docsphere → images}/flags/european-union.png +0 -0
  112. /package/public/{Docsphere → images}/flags/falkland-islands.png +0 -0
  113. /package/public/{Docsphere → images}/flags/faroe-islands.png +0 -0
  114. /package/public/{Docsphere → images}/flags/fiji.png +0 -0
  115. /package/public/{Docsphere → images}/flags/finland.png +0 -0
  116. /package/public/{Docsphere → images}/flags/france.png +0 -0
  117. /package/public/{Docsphere → images}/flags/french-polynesia.png +0 -0
  118. /package/public/{Docsphere → images}/flags/gabon.png +0 -0
  119. /package/public/{Docsphere → images}/flags/galapagos-islands.png +0 -0
  120. /package/public/{Docsphere → images}/flags/gambia.png +0 -0
  121. /package/public/{Docsphere → images}/flags/georgia.png +0 -0
  122. /package/public/{Docsphere → images}/flags/germany.png +0 -0
  123. /package/public/{Docsphere → images}/flags/ghana.png +0 -0
  124. /package/public/{Docsphere → images}/flags/gibraltar.png +0 -0
  125. /package/public/{Docsphere → images}/flags/greece.png +0 -0
  126. /package/public/{Docsphere → images}/flags/greenland.png +0 -0
  127. /package/public/{Docsphere → images}/flags/grenada.png +0 -0
  128. /package/public/{Docsphere → images}/flags/guam.png +0 -0
  129. /package/public/{Docsphere → images}/flags/guatemala.png +0 -0
  130. /package/public/{Docsphere → images}/flags/guernsey.png +0 -0
  131. /package/public/{Docsphere → images}/flags/guinea-bissau.png +0 -0
  132. /package/public/{Docsphere → images}/flags/guinea.png +0 -0
  133. /package/public/{Docsphere → images}/flags/guyana.png +0 -0
  134. /package/public/{Docsphere → images}/flags/haiti.png +0 -0
  135. /package/public/{Docsphere → images}/flags/hawaii.png +0 -0
  136. /package/public/{Docsphere → images}/flags/honduras.png +0 -0
  137. /package/public/{Docsphere → images}/flags/hong-kong.png +0 -0
  138. /package/public/{Docsphere → images}/flags/hungary.png +0 -0
  139. /package/public/{Docsphere → images}/flags/iceland.png +0 -0
  140. /package/public/{Docsphere → images}/flags/india.png +0 -0
  141. /package/public/{Docsphere → images}/flags/indonesia.png +0 -0
  142. /package/public/{Docsphere → images}/flags/iran.png +0 -0
  143. /package/public/{Docsphere → images}/flags/iraq.png +0 -0
  144. /package/public/{Docsphere → images}/flags/ireland.png +0 -0
  145. /package/public/{Docsphere → images}/flags/isle-of-man.png +0 -0
  146. /package/public/{Docsphere → images}/flags/israel.png +0 -0
  147. /package/public/{Docsphere → images}/flags/italy.png +0 -0
  148. /package/public/{Docsphere → images}/flags/ivory-coast.png +0 -0
  149. /package/public/{Docsphere → images}/flags/jamaica.png +0 -0
  150. /package/public/{Docsphere → images}/flags/japan.png +0 -0
  151. /package/public/{Docsphere → images}/flags/jersey.png +0 -0
  152. /package/public/{Docsphere → images}/flags/jordan.png +0 -0
  153. /package/public/{Docsphere → images}/flags/kazakhstan.png +0 -0
  154. /package/public/{Docsphere → images}/flags/kenya.png +0 -0
  155. /package/public/{Docsphere → images}/flags/kiribati.png +0 -0
  156. /package/public/{Docsphere → images}/flags/kosovo.png +0 -0
  157. /package/public/{Docsphere → images}/flags/kuwait.png +0 -0
  158. /package/public/{Docsphere → images}/flags/kyrgyzstan.png +0 -0
  159. /package/public/{Docsphere → images}/flags/laos.png +0 -0
  160. /package/public/{Docsphere → images}/flags/latvia.png +0 -0
  161. /package/public/{Docsphere → images}/flags/lebanon.png +0 -0
  162. /package/public/{Docsphere → images}/flags/lesotho.png +0 -0
  163. /package/public/{Docsphere → images}/flags/liberia.png +0 -0
  164. /package/public/{Docsphere → images}/flags/libya.png +0 -0
  165. /package/public/{Docsphere → images}/flags/liechtenstein.png +0 -0
  166. /package/public/{Docsphere → images}/flags/lithuania.png +0 -0
  167. /package/public/{Docsphere → images}/flags/luxembourg.png +0 -0
  168. /package/public/{Docsphere → images}/flags/macao.png +0 -0
  169. /package/public/{Docsphere → images}/flags/madagascar.png +0 -0
  170. /package/public/{Docsphere → images}/flags/madeira.png +0 -0
  171. /package/public/{Docsphere → images}/flags/malawi.png +0 -0
  172. /package/public/{Docsphere → images}/flags/malaysia.png +0 -0
  173. /package/public/{Docsphere → images}/flags/maldives.png +0 -0
  174. /package/public/{Docsphere → images}/flags/mali.png +0 -0
  175. /package/public/{Docsphere → images}/flags/malta.png +0 -0
  176. /package/public/{Docsphere → images}/flags/marshall-island.png +0 -0
  177. /package/public/{Docsphere → images}/flags/martinique.png +0 -0
  178. /package/public/{Docsphere → images}/flags/mauritania.png +0 -0
  179. /package/public/{Docsphere → images}/flags/mauritius.png +0 -0
  180. /package/public/{Docsphere → images}/flags/melilla.png +0 -0
  181. /package/public/{Docsphere → images}/flags/mexico.png +0 -0
  182. /package/public/{Docsphere → images}/flags/micronesia.png +0 -0
  183. /package/public/{Docsphere → images}/flags/moldova.png +0 -0
  184. /package/public/{Docsphere → images}/flags/monaco.png +0 -0
  185. /package/public/{Docsphere → images}/flags/mongolia.png +0 -0
  186. /package/public/{Docsphere → images}/flags/montenegro.png +0 -0
  187. /package/public/{Docsphere → images}/flags/montserrat.png +0 -0
  188. /package/public/{Docsphere → images}/flags/morocco.png +0 -0
  189. /package/public/{Docsphere → images}/flags/mozambique.png +0 -0
  190. /package/public/{Docsphere → images}/flags/myanmar.png +0 -0
  191. /package/public/{Docsphere → images}/flags/namibia.png +0 -0
  192. /package/public/{Docsphere → images}/flags/nato.png +0 -0
  193. /package/public/{Docsphere → images}/flags/nauru.png +0 -0
  194. /package/public/{Docsphere → images}/flags/nepal.png +0 -0
  195. /package/public/{Docsphere → images}/flags/netherlands.png +0 -0
  196. /package/public/{Docsphere → images}/flags/new-zealand.png +0 -0
  197. /package/public/{Docsphere → images}/flags/nicaragua.png +0 -0
  198. /package/public/{Docsphere → images}/flags/niger.png +0 -0
  199. /package/public/{Docsphere → images}/flags/nigeria.png +0 -0
  200. /package/public/{Docsphere → images}/flags/niue.png +0 -0
  201. /package/public/{Docsphere → images}/flags/norfolk-island.png +0 -0
  202. /package/public/{Docsphere → images}/flags/north-korea.png +0 -0
  203. /package/public/{Docsphere → images}/flags/northen-cyprus.png +0 -0
  204. /package/public/{Docsphere → images}/flags/northern-marianas-islands.png +0 -0
  205. /package/public/{Docsphere → images}/flags/norway.png +0 -0
  206. /package/public/{Docsphere → images}/flags/oman.png +0 -0
  207. /package/public/{Docsphere → images}/flags/orkney-islands.png +0 -0
  208. /package/public/{Docsphere → images}/flags/ossetia.png +0 -0
  209. /package/public/{Docsphere → images}/flags/pakistan.png +0 -0
  210. /package/public/{Docsphere → images}/flags/palau.png +0 -0
  211. /package/public/{Docsphere → images}/flags/palestine.png +0 -0
  212. /package/public/{Docsphere → images}/flags/panama.png +0 -0
  213. /package/public/{Docsphere → images}/flags/papua-new-guinea.png +0 -0
  214. /package/public/{Docsphere → images}/flags/paraguay.png +0 -0
  215. /package/public/{Docsphere → images}/flags/peru.png +0 -0
  216. /package/public/{Docsphere → images}/flags/philippines.png +0 -0
  217. /package/public/{Docsphere → images}/flags/pitcairn-islands.png +0 -0
  218. /package/public/{Docsphere → images}/flags/portugal.png +0 -0
  219. /package/public/{Docsphere → images}/flags/puerto-rico.png +0 -0
  220. /package/public/{Docsphere → images}/flags/qatar.png +0 -0
  221. /package/public/{Docsphere → images}/flags/rapa-nui.png +0 -0
  222. /package/public/{Docsphere → images}/flags/republic-of-macedonia.png +0 -0
  223. /package/public/{Docsphere → images}/flags/republic-of-poland.png +0 -0
  224. /package/public/{Docsphere → images}/flags/republic-of-the-congo.png +0 -0
  225. /package/public/{Docsphere → images}/flags/romania.png +0 -0
  226. /package/public/{Docsphere → images}/flags/russia.png +0 -0
  227. /package/public/{Docsphere → images}/flags/rwanda.png +0 -0
  228. /package/public/{Docsphere → images}/flags/saba-island.png +0 -0
  229. /package/public/{Docsphere → images}/flags/saint-kitts-and-nevis.png +0 -0
  230. /package/public/{Docsphere → images}/flags/salvador.png +0 -0
  231. /package/public/{Docsphere → images}/flags/samoa.png +0 -0
  232. /package/public/{Docsphere → images}/flags/san-marino.png +0 -0
  233. /package/public/{Docsphere → images}/flags/sao-tome-and-principe.png +0 -0
  234. /package/public/{Docsphere → images}/flags/sardinia.png +0 -0
  235. /package/public/{Docsphere → images}/flags/saudi-arabia.png +0 -0
  236. /package/public/{Docsphere → images}/flags/scotland.png +0 -0
  237. /package/public/{Docsphere → images}/flags/senegal.png +0 -0
  238. /package/public/{Docsphere → images}/flags/serbia.png +0 -0
  239. /package/public/{Docsphere → images}/flags/seychelles.png +0 -0
  240. /package/public/{Docsphere → images}/flags/sierra-leone.png +0 -0
  241. /package/public/{Docsphere → images}/flags/singapore.png +0 -0
  242. /package/public/{Docsphere → images}/flags/sint-eustatius.png +0 -0
  243. /package/public/{Docsphere → images}/flags/sint-maarten.png +0 -0
  244. /package/public/{Docsphere → images}/flags/slovakia.png +0 -0
  245. /package/public/{Docsphere → images}/flags/slovenia.png +0 -0
  246. /package/public/{Docsphere → images}/flags/solomon-islands.png +0 -0
  247. /package/public/{Docsphere → images}/flags/somalia.png +0 -0
  248. /package/public/{Docsphere → images}/flags/somaliland.png +0 -0
  249. /package/public/{Docsphere → images}/flags/south-africa.png +0 -0
  250. /package/public/{Docsphere → images}/flags/south-korea.png +0 -0
  251. /package/public/{Docsphere → images}/flags/south-sudan.png +0 -0
  252. /package/public/{Docsphere → images}/flags/spain.png +0 -0
  253. /package/public/{Docsphere → images}/flags/sri-lanka.png +0 -0
  254. /package/public/{Docsphere → images}/flags/st-barts.png +0 -0
  255. /package/public/{Docsphere → images}/flags/st-lucia.png +0 -0
  256. /package/public/{Docsphere → images}/flags/st-vincent-and-the-grenadines.png +0 -0
  257. /package/public/{Docsphere → images}/flags/sudan.png +0 -0
  258. /package/public/{Docsphere → images}/flags/suriname.png +0 -0
  259. /package/public/{Docsphere → images}/flags/swaziland.png +0 -0
  260. /package/public/{Docsphere → images}/flags/sweden.png +0 -0
  261. /package/public/{Docsphere → images}/flags/switzerland.png +0 -0
  262. /package/public/{Docsphere → images}/flags/syria.png +0 -0
  263. /package/public/{Docsphere → images}/flags/taiwan.png +0 -0
  264. /package/public/{Docsphere → images}/flags/tajikistan.png +0 -0
  265. /package/public/{Docsphere → images}/flags/tanzania.png +0 -0
  266. /package/public/{Docsphere → images}/flags/thailand.png +0 -0
  267. /package/public/{Docsphere → images}/flags/tibet.png +0 -0
  268. /package/public/{Docsphere → images}/flags/togo.png +0 -0
  269. /package/public/{Docsphere → images}/flags/tokelau.png +0 -0
  270. /package/public/{Docsphere → images}/flags/tonga.png +0 -0
  271. /package/public/{Docsphere → images}/flags/transnistria.png +0 -0
  272. /package/public/{Docsphere → images}/flags/trinidad-and-tobago.png +0 -0
  273. /package/public/{Docsphere → images}/flags/tunisia.png +0 -0
  274. /package/public/{Docsphere → images}/flags/turkey.png +0 -0
  275. /package/public/{Docsphere → images}/flags/turkmenistan.png +0 -0
  276. /package/public/{Docsphere → images}/flags/turks-and-caicos.png +0 -0
  277. /package/public/{Docsphere → images}/flags/tuvalu.png +0 -0
  278. /package/public/{Docsphere → images}/flags/uganda.png +0 -0
  279. /package/public/{Docsphere → images}/flags/ukraine.png +0 -0
  280. /package/public/{Docsphere → images}/flags/united-arab-emirates.png +0 -0
  281. /package/public/{Docsphere → images}/flags/united-kingdom.png +0 -0
  282. /package/public/{Docsphere → images}/flags/united-nations.png +0 -0
  283. /package/public/{Docsphere → images}/flags/uruguay.png +0 -0
  284. /package/public/{Docsphere → images}/flags/uzbekistn.png +0 -0
  285. /package/public/{Docsphere → images}/flags/vanuatu.png +0 -0
  286. /package/public/{Docsphere → images}/flags/vatican-city.png +0 -0
  287. /package/public/{Docsphere → images}/flags/venezuela.png +0 -0
  288. /package/public/{Docsphere → images}/flags/vietnam.png +0 -0
  289. /package/public/{Docsphere → images}/flags/virgin-islands.png +0 -0
  290. /package/public/{Docsphere → images}/flags/wales.png +0 -0
  291. /package/public/{Docsphere → images}/flags/western-sahara.png +0 -0
  292. /package/public/{Docsphere → images}/flags/yemen.png +0 -0
  293. /package/public/{Docsphere → images}/flags/zambia.png +0 -0
  294. /package/public/{Docsphere → images}/flags/zimbabwe.png +0 -0
@@ -94,6 +94,22 @@ echo "Exemplo"
94
94
 
95
95
  `filename` aparece na barra de info em blocos simples. Fences consecutivos com o mesmo `group` são renderizados como abas. `tab` define o rótulo da aba, então labels que parecem arquivo, como `exemplo.php`, recebem ícones na aba. `breadcrumb` define os segmentos acima do bloco ativo, e o segmento final que parece arquivo recebe o mesmo ícone.
96
96
 
97
+ ### Conteúdo Expansível
98
+
99
+ Use `<d-expandable>` para esconder conteúdo secundário sem perder os recursos ricos de Markdown da página:
100
+
101
+ ```markdown
102
+ <d-expandable title="Mais detalhes">
103
+
104
+ Explicações opcionais, notas operacionais ou exemplos maiores.
105
+
106
+ </d-expandable>
107
+ ```
108
+
109
+ Defina `open="true"` quando o bloco precisar começar aberto.
110
+
111
+ O corpo do expansível suporta parágrafos, listas, alertas, blocos de código, diagramas Mermaid, tabelas, HTML bruto e quick links. Nesta primeira versão, mantenha títulos fora do bloco expansível, porque títulos dentro do corpo viram parágrafos comuns para preservar o ToC da página.
112
+
97
113
  ## Adicionando um Novo Idioma
98
114
 
99
115
  1. Crie `src/i18n/languages/xx-XX.hjson` com todas as traduções de UI
@@ -23,6 +23,12 @@ export default {
23
23
  data: {
24
24
  'en-US': { title: 'Getting Started' },
25
25
  'pt-BR': { title: 'Começando' }
26
+ },
27
+ metadata: {
28
+ tags: {
29
+ 'en-US': 'install setup start begin quick project structure',
30
+ 'pt-BR': 'instalar configurar iniciar começar rápido projeto estrutura'
31
+ }
26
32
  }
27
33
  },
28
34
 
@@ -48,6 +54,12 @@ export default {
48
54
  data: {
49
55
  'en-US': { title: 'Configuration' },
50
56
  'pt-BR': { title: 'Configuração' }
57
+ },
58
+ metadata: {
59
+ tags: {
60
+ 'en-US': 'config branding logo name version language links github docsector.config.js',
61
+ 'pt-BR': 'config branding logo nome versão idioma links github docsector.config.js'
62
+ }
51
63
  }
52
64
  },
53
65
 
@@ -71,6 +83,12 @@ export default {
71
83
  data: {
72
84
  'en-US': { title: 'Pages & Routing' },
73
85
  'pt-BR': { title: 'Páginas & Rotas' }
86
+ },
87
+ metadata: {
88
+ tags: {
89
+ 'en-US': 'pages routes routing registry menu navigation path type status subpages',
90
+ 'pt-BR': 'páginas rotas roteamento registro menu navegação caminho tipo status subpages'
91
+ }
74
92
  }
75
93
  },
76
94
 
@@ -93,6 +111,12 @@ export default {
93
111
  data: {
94
112
  'en-US': { title: 'i18n & Markdown' },
95
113
  'pt-BR': { title: 'i18n & Markdown' }
114
+ },
115
+ metadata: {
116
+ tags: {
117
+ 'en-US': 'i18n internationalization language locale hjson markdown content translation',
118
+ 'pt-BR': 'i18n internacionalização idioma locale hjson markdown conteúdo tradução'
119
+ }
96
120
  }
97
121
  },
98
122
 
@@ -115,6 +139,12 @@ export default {
115
139
  data: {
116
140
  'en-US': { title: 'Alerts & Blockquotes' },
117
141
  'pt-BR': { title: 'Alertas & Blockquotes' }
142
+ },
143
+ metadata: {
144
+ tags: {
145
+ 'en-US': 'alerts blockquotes github note tip important warning caution markdown quote admonition',
146
+ 'pt-BR': 'alertas blockquotes github note tip important warning caution markdown citação admonition'
147
+ }
118
148
  }
119
149
  },
120
150
 
@@ -137,6 +167,12 @@ export default {
137
167
  data: {
138
168
  'en-US': { title: 'Theming' },
139
169
  'pt-BR': { title: 'Temas' }
170
+ },
171
+ metadata: {
172
+ tags: {
173
+ 'en-US': 'theme dark light mode color css sass variables styling',
174
+ 'pt-BR': 'tema escuro claro modo cor css sass variáveis estilização'
175
+ }
140
176
  }
141
177
  },
142
178
 
@@ -159,6 +195,12 @@ export default {
159
195
  data: {
160
196
  'en-US': { title: 'Deployment' },
161
197
  'pt-BR': { title: 'Deploy' }
198
+ },
199
+ metadata: {
200
+ tags: {
201
+ 'en-US': 'deploy hosting production build static nginx netlify vercel github pages',
202
+ 'pt-BR': 'deploy hospedagem produção build estático nginx netlify vercel github pages'
203
+ }
162
204
  }
163
205
  },
164
206
 
@@ -181,6 +223,12 @@ export default {
181
223
  data: {
182
224
  'en-US': { title: 'Plugins' },
183
225
  'pt-BR': { title: 'Plugins' }
226
+ },
227
+ metadata: {
228
+ tags: {
229
+ 'en-US': 'plugins extensions addons customize',
230
+ 'pt-BR': 'plugins extensões complementos customizar'
231
+ }
184
232
  }
185
233
  }
186
234
  }
@@ -14,7 +14,7 @@
14
14
 
15
15
  The search input at the top of the menu filters pages by matching the search term against:
16
16
 
17
- 1. **Tags** — Defined in `src/i18n/tags.hjson`
17
+ 1. **Tags** — Defined per page in `src/pages/*.index.js` under `metadata.tags`
18
18
  2. **Page content** — The Markdown source of each page's overview, showcase, and vs subpages
19
19
 
20
20
  Search is debounced by 300ms and supports the current locale with en-US fallback.
@@ -14,7 +14,7 @@
14
14
 
15
15
  O input de busca no topo do menu filtra páginas comparando o termo de busca com:
16
16
 
17
- 1. **Tags** — Definidas em `src/i18n/tags.hjson`
17
+ 1. **Tags** — Definidas por página em `src/pages/*.index.js` em `metadata.tags`
18
18
  2. **Conteúdo da página** — O source Markdown de cada sub-página overview, showcase e vs
19
19
 
20
20
  A busca tem debounce de 300ms e suporta o locale atual com fallback para en-US.
@@ -0,0 +1,58 @@
1
+ ## Overview
2
+
3
+ `DPageExpandable` renders a collapsible content section backed by the Markdown custom element `<d-expandable>`.
4
+
5
+ It is designed for secondary content that should stay available without stretching the main reading flow. The body keeps the same rich Markdown features already available in page sections, including lists, blockquotes, code blocks, Mermaid diagrams, tables, raw HTML, and quick links.
6
+
7
+ ## Props
8
+
9
+ | Prop | Type | Default | Description |
10
+ |------|------|---------|-------------|
11
+ | `title` | `String` | `''` | Header label shown in the expandable trigger |
12
+ | `open` | `Boolean` | `false` | Initial expanded state |
13
+
14
+ ## Slot
15
+
16
+ The default slot receives the parsed content body.
17
+
18
+ ## HTML Example
19
+
20
+ The custom element can be authored directly in page Markdown:
21
+
22
+ ````html
23
+ <d-expandable title="Why hide this content?">
24
+
25
+ Use expandable blocks when the main section should stay concise but readers may still need more detail.
26
+
27
+ </d-expandable>
28
+
29
+ ### Open by Default
30
+
31
+ <d-expandable title="Release checklist" open="true">
32
+
33
+ - Review breaking changes
34
+ - Update screenshots
35
+ - Run smoke tests
36
+
37
+ </d-expandable>
38
+
39
+ ### Rich Content
40
+
41
+ <d-expandable title="Deployment appendix">
42
+
43
+ > [!TIP]
44
+ > Keep the primary flow in the main section and move optional details here.
45
+
46
+ ```bash
47
+ npm install
48
+ npm run build
49
+ ```
50
+
51
+ </d-expandable>
52
+ ````
53
+
54
+ ## Notes
55
+
56
+ - Use `open="true"` when the section should start expanded.
57
+ - Keep page headings outside the expandable block. Headings inside the body are flattened to regular paragraphs so the page ToC stays stable.
58
+ - Avoid nesting one `<d-expandable>` inside another in this first version.
@@ -0,0 +1,58 @@
1
+ ## Visão Geral
2
+
3
+ `DPageExpandable` renderiza uma seção recolhível baseada no elemento customizado de Markdown `<d-expandable>`.
4
+
5
+ Ele foi criado para conteúdo secundário que deve continuar disponível sem alongar o fluxo principal de leitura. O corpo mantém os mesmos recursos ricos de Markdown já usados nas seções da página, incluindo listas, blockquotes, blocos de código, diagramas Mermaid, tabelas, HTML bruto e quick links.
6
+
7
+ ## Props
8
+
9
+ | Prop | Tipo | Padrão | Descrição |
10
+ |------|------|--------|-----------|
11
+ | `title` | `String` | `''` | Rótulo do cabeçalho exibido no gatilho do expansível |
12
+ | `open` | `Boolean` | `false` | Estado inicial expandido |
13
+
14
+ ## Slot
15
+
16
+ O slot padrão recebe o corpo de conteúdo já parseado.
17
+
18
+ ## Exemplo em HTML
19
+
20
+ O custom element pode ser escrito diretamente no Markdown da página:
21
+
22
+ ````html
23
+ <d-expandable title="Por que esconder este conteúdo?">
24
+
25
+ Use blocos expansíveis quando a seção principal deve continuar concisa, mas o leitor ainda pode precisar de mais detalhes.
26
+
27
+ </d-expandable>
28
+
29
+ ### Aberto por Padrão
30
+
31
+ <d-expandable title="Checklist de release" open="true">
32
+
33
+ - Revisar breaking changes
34
+ - Atualizar screenshots
35
+ - Rodar smoke tests
36
+
37
+ </d-expandable>
38
+
39
+ ### Conteúdo Rico
40
+
41
+ <d-expandable title="Apêndice de deploy">
42
+
43
+ > [!TIP]
44
+ > Mantenha o fluxo principal na seção principal e mova detalhes opcionais para cá.
45
+
46
+ ```bash
47
+ npm install
48
+ npm run build
49
+ ```
50
+
51
+ </d-expandable>
52
+ ````
53
+
54
+ ## Observações
55
+
56
+ - Use `open="true"` quando a seção precisar começar aberta.
57
+ - Mantenha os títulos principais fora do bloco expansível. Títulos dentro do corpo viram parágrafos comuns para manter o ToC estável.
58
+ - Evite aninhar um `<d-expandable>` dentro de outro nesta primeira versão.
@@ -0,0 +1,33 @@
1
+ ## Showcase
2
+
3
+ ### Basic
4
+
5
+ <d-expandable title="Why hide this content?">
6
+
7
+ Use expandable blocks when the main section should stay concise but readers may still need more detail.
8
+
9
+ </d-expandable>
10
+
11
+ ### Open by Default
12
+
13
+ <d-expandable title="Release checklist" open="true">
14
+
15
+ - Review breaking changes
16
+ - Update screenshots
17
+ - Run smoke tests
18
+
19
+ </d-expandable>
20
+
21
+ ### Rich Content
22
+
23
+ <d-expandable title="Deployment appendix">
24
+
25
+ > [!TIP]
26
+ > Keep the primary flow in the main section and move optional details here.
27
+
28
+ ```bash
29
+ npm install
30
+ npm run build
31
+ ```
32
+
33
+ </d-expandable>
@@ -0,0 +1,33 @@
1
+ ## Demonstração
2
+
3
+ ### Básico
4
+
5
+ <d-expandable title="Por que esconder este conteúdo?">
6
+
7
+ Use blocos expansíveis quando a seção principal deve continuar concisa, mas o leitor ainda pode precisar de mais detalhes.
8
+
9
+ </d-expandable>
10
+
11
+ ### Aberto por Padrão
12
+
13
+ <d-expandable title="Checklist de release" open="true">
14
+
15
+ - Revisar breaking changes
16
+ - Atualizar screenshots
17
+ - Rodar smoke tests
18
+
19
+ </d-expandable>
20
+
21
+ ### Conteúdo Rico
22
+
23
+ <d-expandable title="Apêndice de deploy">
24
+
25
+ > [!TIP]
26
+ > Mantenha o fluxo principal na seção principal e mova detalhes opcionais para cá.
27
+
28
+ ```bash
29
+ npm install
30
+ npm run build
31
+ ```
32
+
33
+ </d-expandable>
@@ -9,6 +9,7 @@ Every documentation page is rendered inside a `DPage` instance.
9
9
  | Prop | Type | Default | Description |
10
10
  |------|------|---------|-------------|
11
11
  | `disableNav` | `Boolean` | `false` | Hides the DPageMeta navigation footer |
12
+ | `showBackToTopControl` | `Boolean` | `false` | Enables the floating back-to-top control with circular reading progress |
12
13
 
13
14
  ## Template Structure
14
15
 
@@ -46,6 +47,8 @@ DPage reads the route's `meta.subpages` configuration to determine which tabs to
46
47
 
47
48
  DPage resets the scroll position on route changes via `router.beforeEach`. The scroll observer monitors vertical scroll position and updates the anchor selection via the `useNavigator` composable.
48
49
 
50
+ When `showBackToTopControl` is enabled, DPage also derives reading progress from the same scroll container. The floating control stays hidden at the top, appears after a small amount of scroll, shows circular progress, and returns to anchor `0` when clicked.
51
+
49
52
  ## Store Integration
50
53
 
51
54
  DPage reads from and writes to several Vuex store modules:
@@ -9,6 +9,7 @@ Toda página de documentação é renderizada dentro de uma instância de `DPage
9
9
  | Prop | Tipo | Padrão | Descrição |
10
10
  |------|------|--------|-----------|
11
11
  | `disableNav` | `Boolean` | `false` | Oculta o rodapé de navegação DPageMeta |
12
+ | `showBackToTopControl` | `Boolean` | `false` | Habilita o controle flutuante de voltar ao topo com progresso circular de leitura |
12
13
 
13
14
  ## Estrutura do Template
14
15
 
@@ -46,6 +47,8 @@ DPage lê a configuração `meta.subpages` da rota para determinar quais abas ex
46
47
 
47
48
  DPage reseta a posição de scroll nas mudanças de rota via `router.beforeEach`. O observador de scroll monitora a posição vertical e atualiza a seleção de âncora via composable `useNavigator`.
48
49
 
50
+ Quando `showBackToTopControl` está habilitada, DPage também deriva o progresso de leitura a partir da mesma área de scroll. O controle flutuante fica oculto no topo, aparece após uma pequena rolagem, exibe progresso circular e retorna para a âncora `0` ao ser clicado.
51
+
49
52
  ## Integração com Store
50
53
 
51
54
  DPage lê e escreve em vários módulos da Vuex store:
@@ -9,7 +9,7 @@ DSubpage generates a deterministic numeric ID from the current route path using
9
9
  ## Template
10
10
 
11
11
  ```html
12
- <d-page>
12
+ <d-page show-back-to-top-control>
13
13
  <header>
14
14
  <d-h1 :id="0" />
15
15
  </header>
@@ -54,3 +54,7 @@ DSubpage is automatically used by the router for all documentation pages. You do
54
54
  - `DSubpage` **uses** `DPage` as its container
55
55
  - `DPage` handles layout (scroll, toolbar, drawer)
56
56
  - `DSubpage` handles content composition (H1 + sections)
57
+
58
+ ## Built-in Back to Top Control
59
+
60
+ Routed documentation subpages enable DPage's floating back-to-top control automatically. The control is only shown when the content actually overflows, becomes visible after the reader scrolls a little, and visualizes the current reading progress with a circular indicator.
@@ -9,7 +9,7 @@ DSubpage gera um ID numérico determinístico a partir do caminho da rota atual
9
9
  ## Template
10
10
 
11
11
  ```html
12
- <d-page>
12
+ <d-page show-back-to-top-control>
13
13
  <header>
14
14
  <d-h1 :id="0" />
15
15
  </header>
@@ -54,3 +54,7 @@ DSubpage é usado automaticamente pelo roteador para todas as páginas de docume
54
54
  - `DSubpage` **usa** `DPage` como container
55
55
  - `DPage` cuida do layout (scroll, toolbar, drawer)
56
56
  - `DSubpage` cuida da composição de conteúdo (H1 + seções)
57
+
58
+ ## Controle Integrado de Voltar ao Topo
59
+
60
+ As sub-páginas de documentação roteadas habilitam automaticamente o controle flutuante de voltar ao topo do DPage. O controle só é exibido quando o conteúdo realmente tem overflow, fica visível após uma pequena rolagem do leitor e mostra o progresso atual de leitura com um indicador circular.
@@ -35,6 +35,12 @@ export default {
35
35
  data: {
36
36
  'en-US': { title: 'DPage' },
37
37
  'pt-BR': { title: 'DPage' }
38
+ },
39
+ metadata: {
40
+ tags: {
41
+ 'en-US': 'page container scroll toolbar drawer layout subpage tabs',
42
+ 'pt-BR': 'página container scroll toolbar drawer layout subpágina abas'
43
+ }
38
44
  }
39
45
  },
40
46
 
@@ -57,6 +63,12 @@ export default {
57
63
  data: {
58
64
  'en-US': { title: 'DSubpage' },
59
65
  'pt-BR': { title: 'DSubpage' }
66
+ },
67
+ metadata: {
68
+ tags: {
69
+ 'en-US': 'subpage wrapper composition dh1 section hash',
70
+ 'pt-BR': 'subpágina wrapper composição dh1 seção hash'
71
+ }
60
72
  }
61
73
  },
62
74
 
@@ -81,6 +93,12 @@ export default {
81
93
  data: {
82
94
  'en-US': { title: 'DPageSection' },
83
95
  'pt-BR': { title: 'DPageSection' }
96
+ },
97
+ metadata: {
98
+ tags: {
99
+ 'en-US': 'section markdown renderer tokenizer parser heading paragraph list table code',
100
+ 'pt-BR': 'seção markdown renderizador tokenizador parser título parágrafo lista tabela código'
101
+ }
84
102
  }
85
103
  },
86
104
 
@@ -106,6 +124,12 @@ export default {
106
124
  data: {
107
125
  'en-US': { title: 'DH1 – DH6 (Headings)' },
108
126
  'pt-BR': { title: 'DH1 – DH6 (Títulos)' }
127
+ },
128
+ metadata: {
129
+ tags: {
130
+ 'en-US': 'h1 h2 h3 h4 h5 h6 heading title anchor navigation toc',
131
+ 'pt-BR': 'h1 h2 h3 h4 h5 h6 título heading âncora navegação toc'
132
+ }
109
133
  }
110
134
  },
111
135
 
@@ -128,6 +152,12 @@ export default {
128
152
  data: {
129
153
  'en-US': { title: 'DPageSourceCode' },
130
154
  'pt-BR': { title: 'DPageSourceCode' }
155
+ },
156
+ metadata: {
157
+ tags: {
158
+ 'en-US': 'code syntax highlight prism php bash html copy clipboard line numbers',
159
+ 'pt-BR': 'código sintaxe highlight prism php bash html copiar clipboard números linha'
160
+ }
131
161
  }
132
162
  },
133
163
 
@@ -174,6 +204,42 @@ export default {
174
204
  data: {
175
205
  'en-US': { title: 'DPageBlockquote' },
176
206
  'pt-BR': { title: 'DPageBlockquote' }
207
+ },
208
+ metadata: {
209
+ tags: {
210
+ 'en-US': 'blockquote important warning note quote',
211
+ 'pt-BR': 'blockquote importante aviso nota citação'
212
+ }
213
+ }
214
+ },
215
+
216
+ '/components/d-page-expandable': {
217
+ config: {
218
+ icon: 'unfold_more',
219
+ status: 'done',
220
+ meta: {
221
+ description: {
222
+ 'en-US': 'DPageExpandable — Documentation of Docsector Reader',
223
+ 'pt-BR': 'DPageExpandable — Documentacao do Docsector Reader'
224
+ }
225
+ },
226
+ book: 'manual',
227
+ menu: {
228
+ separator: ' page'
229
+ },
230
+ subpages: {
231
+ showcase: true
232
+ }
233
+ },
234
+ data: {
235
+ 'en-US': { title: 'DPageExpandable' },
236
+ 'pt-BR': { title: 'DPageExpandable' }
237
+ },
238
+ metadata: {
239
+ tags: {
240
+ 'en-US': 'expandable collapsible accordion disclosure details markdown toggle',
241
+ 'pt-BR': 'expansível colapsável acordeão detalhes markdown alternância'
242
+ }
177
243
  }
178
244
  },
179
245
 
@@ -200,6 +266,12 @@ export default {
200
266
  data: {
201
267
  'en-US': { title: 'DMenu' },
202
268
  'pt-BR': { title: 'DMenu' }
269
+ },
270
+ metadata: {
271
+ tags: {
272
+ 'en-US': 'menu sidebar navigation search branding links tree expansion',
273
+ 'pt-BR': 'menu lateral navegação busca branding links árvore expansão'
274
+ }
203
275
  }
204
276
  },
205
277
 
@@ -222,6 +294,12 @@ export default {
222
294
  data: {
223
295
  'en-US': { title: 'DPageAnchor' },
224
296
  'pt-BR': { title: 'DPageAnchor' }
297
+ },
298
+ metadata: {
299
+ tags: {
300
+ 'en-US': 'anchor toc table contents tree drawer navigation scroll',
301
+ 'pt-BR': 'âncora toc índice conteúdo árvore drawer navegação scroll'
302
+ }
225
303
  }
226
304
  },
227
305
 
@@ -244,6 +322,12 @@ export default {
244
322
  data: {
245
323
  'en-US': { title: 'DPageMeta' },
246
324
  'pt-BR': { title: 'DPageMeta' }
325
+ },
326
+ metadata: {
327
+ tags: {
328
+ 'en-US': 'meta footer edit github translation progress prev next navigation',
329
+ 'pt-BR': 'meta rodapé editar github tradução progresso anterior próximo navegação'
330
+ }
247
331
  }
248
332
  },
249
333
 
@@ -271,6 +355,12 @@ export default {
271
355
  data: {
272
356
  'en-US': { title: 'QZoom' },
273
357
  'pt-BR': { title: 'QZoom' }
358
+ },
359
+ metadata: {
360
+ tags: {
361
+ 'en-US': 'zoom overlay fullscreen scale mouse wheel escape',
362
+ 'pt-BR': 'zoom overlay tela cheia escala roda mouse escape'
363
+ }
274
364
  }
275
365
  },
276
366
 
@@ -304,6 +394,12 @@ export default {
304
394
  data: {
305
395
  'en-US': { title: 'useNavigator' },
306
396
  'pt-BR': { title: 'useNavigator' }
397
+ },
398
+ metadata: {
399
+ tags: {
400
+ 'en-US': 'navigator composable anchor scroll register navigate toc',
401
+ 'pt-BR': 'navegador composable âncora scroll registro navegar toc'
402
+ }
307
403
  }
308
404
  },
309
405
 
@@ -337,6 +433,12 @@ export default {
337
433
  data: {
338
434
  'en-US': { title: 'Vuex Modules' },
339
435
  'pt-BR': { title: 'Módulos Vuex' }
436
+ },
437
+ metadata: {
438
+ tags: {
439
+ 'en-US': 'vuex store state mutations getters actions app i18n page layout settings',
440
+ 'pt-BR': 'vuex store estado mutations getters actions app i18n page layout settings'
441
+ }
340
442
  }
341
443
  }
342
444
  }