@docsector/docsector-reader 0.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.
- package/.eslintrc.cjs +42 -0
- package/LICENSE.md +9 -0
- package/README.md +175 -0
- package/bin/docsector.js +129 -0
- package/docsector.config.js +54 -0
- package/index.html +20 -0
- package/jsconfig.json +16 -0
- package/package.json +99 -0
- package/postcss.config.cjs +5 -0
- package/public/Docsphere/flags/abkhazia.png +0 -0
- package/public/Docsphere/flags/afghanistan.png +0 -0
- package/public/Docsphere/flags/aland-islands.png +0 -0
- package/public/Docsphere/flags/albania.png +0 -0
- package/public/Docsphere/flags/algeria.png +0 -0
- package/public/Docsphere/flags/american-samoa.png +0 -0
- package/public/Docsphere/flags/andorra.png +0 -0
- package/public/Docsphere/flags/angola.png +0 -0
- package/public/Docsphere/flags/anguilla.png +0 -0
- package/public/Docsphere/flags/antigua-and-barbuda.png +0 -0
- package/public/Docsphere/flags/argentina.png +0 -0
- package/public/Docsphere/flags/armenia.png +0 -0
- package/public/Docsphere/flags/aruba.png +0 -0
- package/public/Docsphere/flags/australia.png +0 -0
- package/public/Docsphere/flags/austria.png +0 -0
- package/public/Docsphere/flags/azerbaijan.png +0 -0
- package/public/Docsphere/flags/azores-islands.png +0 -0
- package/public/Docsphere/flags/bahamas.png +0 -0
- package/public/Docsphere/flags/bahrain.png +0 -0
- package/public/Docsphere/flags/balearic-islands.png +0 -0
- package/public/Docsphere/flags/bangladesh.png +0 -0
- package/public/Docsphere/flags/barbados.png +0 -0
- package/public/Docsphere/flags/basque-country.png +0 -0
- package/public/Docsphere/flags/belarus.png +0 -0
- package/public/Docsphere/flags/belgium.png +0 -0
- package/public/Docsphere/flags/belize.png +0 -0
- package/public/Docsphere/flags/benin.png +0 -0
- package/public/Docsphere/flags/bermuda.png +0 -0
- package/public/Docsphere/flags/bhutan-1.png +0 -0
- package/public/Docsphere/flags/bhutan.png +0 -0
- package/public/Docsphere/flags/bolivia.png +0 -0
- package/public/Docsphere/flags/bonaire.png +0 -0
- package/public/Docsphere/flags/bosnia-and-herzegovina.png +0 -0
- package/public/Docsphere/flags/botswana.png +0 -0
- package/public/Docsphere/flags/brazil.png +0 -0
- package/public/Docsphere/flags/british-columbia.png +0 -0
- package/public/Docsphere/flags/british-indian-ocean-territory.png +0 -0
- package/public/Docsphere/flags/british-virgin-islands.png +0 -0
- package/public/Docsphere/flags/brunei.png +0 -0
- package/public/Docsphere/flags/bulgaria.png +0 -0
- package/public/Docsphere/flags/burkina-faso.png +0 -0
- package/public/Docsphere/flags/burundi.png +0 -0
- package/public/Docsphere/flags/cambodia.png +0 -0
- package/public/Docsphere/flags/cameroon.png +0 -0
- package/public/Docsphere/flags/canada.png +0 -0
- package/public/Docsphere/flags/canary-islands.png +0 -0
- package/public/Docsphere/flags/cape-verde.png +0 -0
- package/public/Docsphere/flags/cayman-islands.png +0 -0
- package/public/Docsphere/flags/central-african-republic.png +0 -0
- package/public/Docsphere/flags/ceuta.png +0 -0
- package/public/Docsphere/flags/chad.png +0 -0
- package/public/Docsphere/flags/chile.png +0 -0
- package/public/Docsphere/flags/china.png +0 -0
- package/public/Docsphere/flags/christmas-island.png +0 -0
- package/public/Docsphere/flags/cocos-island.png +0 -0
- package/public/Docsphere/flags/colombia.png +0 -0
- package/public/Docsphere/flags/comoros.png +0 -0
- package/public/Docsphere/flags/cook-islands.png +0 -0
- package/public/Docsphere/flags/corsica.png +0 -0
- package/public/Docsphere/flags/costa-rica.png +0 -0
- package/public/Docsphere/flags/croatia.png +0 -0
- package/public/Docsphere/flags/cuba.png +0 -0
- package/public/Docsphere/flags/curacao.png +0 -0
- package/public/Docsphere/flags/cyprus.png +0 -0
- package/public/Docsphere/flags/czech-republic.png +0 -0
- package/public/Docsphere/flags/democratic-republic-of-congo.png +0 -0
- package/public/Docsphere/flags/denmark.png +0 -0
- package/public/Docsphere/flags/djibouti.png +0 -0
- package/public/Docsphere/flags/dominica.png +0 -0
- package/public/Docsphere/flags/dominican-republic.png +0 -0
- package/public/Docsphere/flags/east-timor.png +0 -0
- package/public/Docsphere/flags/ecuador.png +0 -0
- package/public/Docsphere/flags/egypt.png +0 -0
- package/public/Docsphere/flags/england.png +0 -0
- package/public/Docsphere/flags/equatorial-guinea.png +0 -0
- package/public/Docsphere/flags/eritrea.png +0 -0
- package/public/Docsphere/flags/estonia.png +0 -0
- package/public/Docsphere/flags/ethiopia.png +0 -0
- package/public/Docsphere/flags/european-union.png +0 -0
- package/public/Docsphere/flags/falkland-islands.png +0 -0
- package/public/Docsphere/flags/faroe-islands.png +0 -0
- package/public/Docsphere/flags/fiji.png +0 -0
- package/public/Docsphere/flags/finland.png +0 -0
- package/public/Docsphere/flags/france.png +0 -0
- package/public/Docsphere/flags/french-polynesia.png +0 -0
- package/public/Docsphere/flags/gabon.png +0 -0
- package/public/Docsphere/flags/galapagos-islands.png +0 -0
- package/public/Docsphere/flags/gambia.png +0 -0
- package/public/Docsphere/flags/georgia.png +0 -0
- package/public/Docsphere/flags/germany.png +0 -0
- package/public/Docsphere/flags/ghana.png +0 -0
- package/public/Docsphere/flags/gibraltar.png +0 -0
- package/public/Docsphere/flags/greece.png +0 -0
- package/public/Docsphere/flags/greenland.png +0 -0
- package/public/Docsphere/flags/grenada.png +0 -0
- package/public/Docsphere/flags/guam.png +0 -0
- package/public/Docsphere/flags/guatemala.png +0 -0
- package/public/Docsphere/flags/guernsey.png +0 -0
- package/public/Docsphere/flags/guinea-bissau.png +0 -0
- package/public/Docsphere/flags/guinea.png +0 -0
- package/public/Docsphere/flags/guyana.png +0 -0
- package/public/Docsphere/flags/haiti.png +0 -0
- package/public/Docsphere/flags/hawaii.png +0 -0
- package/public/Docsphere/flags/honduras.png +0 -0
- package/public/Docsphere/flags/hong-kong.png +0 -0
- package/public/Docsphere/flags/hungary.png +0 -0
- package/public/Docsphere/flags/iceland.png +0 -0
- package/public/Docsphere/flags/india.png +0 -0
- package/public/Docsphere/flags/indonesia.png +0 -0
- package/public/Docsphere/flags/iran.png +0 -0
- package/public/Docsphere/flags/iraq.png +0 -0
- package/public/Docsphere/flags/ireland.png +0 -0
- package/public/Docsphere/flags/isle-of-man.png +0 -0
- package/public/Docsphere/flags/israel.png +0 -0
- package/public/Docsphere/flags/italy.png +0 -0
- package/public/Docsphere/flags/ivory-coast.png +0 -0
- package/public/Docsphere/flags/jamaica.png +0 -0
- package/public/Docsphere/flags/japan.png +0 -0
- package/public/Docsphere/flags/jersey.png +0 -0
- package/public/Docsphere/flags/jordan.png +0 -0
- package/public/Docsphere/flags/kazakhstan.png +0 -0
- package/public/Docsphere/flags/kenya.png +0 -0
- package/public/Docsphere/flags/kiribati.png +0 -0
- package/public/Docsphere/flags/kosovo.png +0 -0
- package/public/Docsphere/flags/kuwait.png +0 -0
- package/public/Docsphere/flags/kyrgyzstan.png +0 -0
- package/public/Docsphere/flags/laos.png +0 -0
- package/public/Docsphere/flags/latvia.png +0 -0
- package/public/Docsphere/flags/lebanon.png +0 -0
- package/public/Docsphere/flags/lesotho.png +0 -0
- package/public/Docsphere/flags/liberia.png +0 -0
- package/public/Docsphere/flags/libya.png +0 -0
- package/public/Docsphere/flags/liechtenstein.png +0 -0
- package/public/Docsphere/flags/lithuania.png +0 -0
- package/public/Docsphere/flags/luxembourg.png +0 -0
- package/public/Docsphere/flags/macao.png +0 -0
- package/public/Docsphere/flags/madagascar.png +0 -0
- package/public/Docsphere/flags/madeira.png +0 -0
- package/public/Docsphere/flags/malawi.png +0 -0
- package/public/Docsphere/flags/malaysia.png +0 -0
- package/public/Docsphere/flags/maldives.png +0 -0
- package/public/Docsphere/flags/mali.png +0 -0
- package/public/Docsphere/flags/malta.png +0 -0
- package/public/Docsphere/flags/marshall-island.png +0 -0
- package/public/Docsphere/flags/martinique.png +0 -0
- package/public/Docsphere/flags/mauritania.png +0 -0
- package/public/Docsphere/flags/mauritius.png +0 -0
- package/public/Docsphere/flags/melilla.png +0 -0
- package/public/Docsphere/flags/mexico.png +0 -0
- package/public/Docsphere/flags/micronesia.png +0 -0
- package/public/Docsphere/flags/moldova.png +0 -0
- package/public/Docsphere/flags/monaco.png +0 -0
- package/public/Docsphere/flags/mongolia.png +0 -0
- package/public/Docsphere/flags/montenegro.png +0 -0
- package/public/Docsphere/flags/montserrat.png +0 -0
- package/public/Docsphere/flags/morocco.png +0 -0
- package/public/Docsphere/flags/mozambique.png +0 -0
- package/public/Docsphere/flags/myanmar.png +0 -0
- package/public/Docsphere/flags/namibia.png +0 -0
- package/public/Docsphere/flags/nato.png +0 -0
- package/public/Docsphere/flags/nauru.png +0 -0
- package/public/Docsphere/flags/nepal.png +0 -0
- package/public/Docsphere/flags/netherlands.png +0 -0
- package/public/Docsphere/flags/new-zealand.png +0 -0
- package/public/Docsphere/flags/nicaragua.png +0 -0
- package/public/Docsphere/flags/niger.png +0 -0
- package/public/Docsphere/flags/nigeria.png +0 -0
- package/public/Docsphere/flags/niue.png +0 -0
- package/public/Docsphere/flags/norfolk-island.png +0 -0
- package/public/Docsphere/flags/north-korea.png +0 -0
- package/public/Docsphere/flags/northen-cyprus.png +0 -0
- package/public/Docsphere/flags/northern-marianas-islands.png +0 -0
- package/public/Docsphere/flags/norway.png +0 -0
- package/public/Docsphere/flags/oman.png +0 -0
- package/public/Docsphere/flags/orkney-islands.png +0 -0
- package/public/Docsphere/flags/ossetia.png +0 -0
- package/public/Docsphere/flags/pakistan.png +0 -0
- package/public/Docsphere/flags/palau.png +0 -0
- package/public/Docsphere/flags/palestine.png +0 -0
- package/public/Docsphere/flags/panama.png +0 -0
- package/public/Docsphere/flags/papua-new-guinea.png +0 -0
- package/public/Docsphere/flags/paraguay.png +0 -0
- package/public/Docsphere/flags/peru.png +0 -0
- package/public/Docsphere/flags/philippines.png +0 -0
- package/public/Docsphere/flags/pitcairn-islands.png +0 -0
- package/public/Docsphere/flags/portugal.png +0 -0
- package/public/Docsphere/flags/puerto-rico.png +0 -0
- package/public/Docsphere/flags/qatar.png +0 -0
- package/public/Docsphere/flags/rapa-nui.png +0 -0
- package/public/Docsphere/flags/republic-of-macedonia.png +0 -0
- package/public/Docsphere/flags/republic-of-poland.png +0 -0
- package/public/Docsphere/flags/republic-of-the-congo.png +0 -0
- package/public/Docsphere/flags/romania.png +0 -0
- package/public/Docsphere/flags/russia.png +0 -0
- package/public/Docsphere/flags/rwanda.png +0 -0
- package/public/Docsphere/flags/saba-island.png +0 -0
- package/public/Docsphere/flags/saint-kitts-and-nevis.png +0 -0
- package/public/Docsphere/flags/salvador.png +0 -0
- package/public/Docsphere/flags/samoa.png +0 -0
- package/public/Docsphere/flags/san-marino.png +0 -0
- package/public/Docsphere/flags/sao-tome-and-principe.png +0 -0
- package/public/Docsphere/flags/sardinia.png +0 -0
- package/public/Docsphere/flags/saudi-arabia.png +0 -0
- package/public/Docsphere/flags/scotland.png +0 -0
- package/public/Docsphere/flags/senegal.png +0 -0
- package/public/Docsphere/flags/serbia.png +0 -0
- package/public/Docsphere/flags/seychelles.png +0 -0
- package/public/Docsphere/flags/sierra-leone.png +0 -0
- package/public/Docsphere/flags/singapore.png +0 -0
- package/public/Docsphere/flags/sint-eustatius.png +0 -0
- package/public/Docsphere/flags/sint-maarten.png +0 -0
- package/public/Docsphere/flags/slovakia.png +0 -0
- package/public/Docsphere/flags/slovenia.png +0 -0
- package/public/Docsphere/flags/solomon-islands.png +0 -0
- package/public/Docsphere/flags/somalia.png +0 -0
- package/public/Docsphere/flags/somaliland.png +0 -0
- package/public/Docsphere/flags/south-africa.png +0 -0
- package/public/Docsphere/flags/south-korea.png +0 -0
- package/public/Docsphere/flags/south-sudan.png +0 -0
- package/public/Docsphere/flags/spain.png +0 -0
- package/public/Docsphere/flags/sri-lanka.png +0 -0
- package/public/Docsphere/flags/st-barts.png +0 -0
- package/public/Docsphere/flags/st-lucia.png +0 -0
- package/public/Docsphere/flags/st-vincent-and-the-grenadines.png +0 -0
- package/public/Docsphere/flags/sudan.png +0 -0
- package/public/Docsphere/flags/suriname.png +0 -0
- package/public/Docsphere/flags/swaziland.png +0 -0
- package/public/Docsphere/flags/sweden.png +0 -0
- package/public/Docsphere/flags/switzerland.png +0 -0
- package/public/Docsphere/flags/syria.png +0 -0
- package/public/Docsphere/flags/taiwan.png +0 -0
- package/public/Docsphere/flags/tajikistan.png +0 -0
- package/public/Docsphere/flags/tanzania.png +0 -0
- package/public/Docsphere/flags/thailand.png +0 -0
- package/public/Docsphere/flags/tibet.png +0 -0
- package/public/Docsphere/flags/togo.png +0 -0
- package/public/Docsphere/flags/tokelau.png +0 -0
- package/public/Docsphere/flags/tonga.png +0 -0
- package/public/Docsphere/flags/transnistria.png +0 -0
- package/public/Docsphere/flags/trinidad-and-tobago.png +0 -0
- package/public/Docsphere/flags/tunisia.png +0 -0
- package/public/Docsphere/flags/turkey.png +0 -0
- package/public/Docsphere/flags/turkmenistan.png +0 -0
- package/public/Docsphere/flags/turks-and-caicos.png +0 -0
- package/public/Docsphere/flags/tuvalu.png +0 -0
- package/public/Docsphere/flags/uganda.png +0 -0
- package/public/Docsphere/flags/ukraine.png +0 -0
- package/public/Docsphere/flags/united-arab-emirates.png +0 -0
- package/public/Docsphere/flags/united-kingdom.png +0 -0
- package/public/Docsphere/flags/united-nations.png +0 -0
- package/public/Docsphere/flags/united-states-of-america.png +0 -0
- package/public/Docsphere/flags/uruguay.png +0 -0
- package/public/Docsphere/flags/uzbekistn.png +0 -0
- package/public/Docsphere/flags/vanuatu.png +0 -0
- package/public/Docsphere/flags/vatican-city.png +0 -0
- package/public/Docsphere/flags/venezuela.png +0 -0
- package/public/Docsphere/flags/vietnam.png +0 -0
- package/public/Docsphere/flags/virgin-islands.png +0 -0
- package/public/Docsphere/flags/wales.png +0 -0
- package/public/Docsphere/flags/western-sahara.png +0 -0
- package/public/Docsphere/flags/yemen.png +0 -0
- package/public/Docsphere/flags/zambia.png +0 -0
- package/public/Docsphere/flags/zimbabwe.png +0 -0
- package/public/favicon.ico +0 -0
- package/public/images/flags/brazil.png +0 -0
- package/public/images/flags/united-states-of-america.png +0 -0
- package/public/images/logo.png +0 -0
- package/public/logo.png +0 -0
- package/public/robots.txt +2 -0
- package/public/sad.svg +1 -0
- package/quasar.config.js +117 -0
- package/src/App.vue +235 -0
- package/src/boot/QZoom.js +7 -0
- package/src/boot/axios.js +11 -0
- package/src/boot/i18n.js +15 -0
- package/src/boot/store.js +26 -0
- package/src/components/DH1.vue +42 -0
- package/src/components/DH2.vue +36 -0
- package/src/components/DH3.vue +36 -0
- package/src/components/DH4.vue +26 -0
- package/src/components/DH5.vue +26 -0
- package/src/components/DH6.vue +26 -0
- package/src/components/DMenu.vue +446 -0
- package/src/components/DMenuItem.vue +127 -0
- package/src/components/DPage.vue +222 -0
- package/src/components/DPageAnchor.vue +123 -0
- package/src/components/DPageBlockquote.vue +19 -0
- package/src/components/DPageMeta.vue +203 -0
- package/src/components/DPageSection.vue +243 -0
- package/src/components/DPageSourceCode.vue +376 -0
- package/src/components/DSubpage.vue +33 -0
- package/src/components/QZoom.js +278 -0
- package/src/components/QZoom.styl +43 -0
- package/src/composables/useNavigator.js +113 -0
- package/src/css/app.sass +279 -0
- package/src/css/quasar.variables.scss +24 -0
- package/src/i18n/index.js +126 -0
- package/src/i18n/languages/en-US.hjson +98 -0
- package/src/i18n/languages/pt-BR.hjson +97 -0
- package/src/i18n/tags.hjson +44 -0
- package/src/index.js +99 -0
- package/src/layouts/DefaultLayout.vue +95 -0
- package/src/layouts/SystemLayout.vue +4 -0
- package/src/pages/@/404Page.vue +15 -0
- package/src/pages/@/BootPage.vue +106 -0
- package/src/pages/boot.js +10 -0
- package/src/pages/guide/configuration.overview.en-US.md +107 -0
- package/src/pages/guide/configuration.overview.pt-BR.md +107 -0
- package/src/pages/guide/deployment.overview.en-US.md +49 -0
- package/src/pages/guide/deployment.overview.pt-BR.md +49 -0
- package/src/pages/guide/getting-started.overview.en-US.md +59 -0
- package/src/pages/guide/getting-started.overview.pt-BR.md +59 -0
- package/src/pages/guide/i18n-and-markdown.overview.en-US.md +77 -0
- package/src/pages/guide/i18n-and-markdown.overview.pt-BR.md +77 -0
- package/src/pages/guide/pages-and-routing.overview.en-US.md +85 -0
- package/src/pages/guide/pages-and-routing.overview.pt-BR.md +85 -0
- package/src/pages/guide/plugins.overview.en-US.md +3 -0
- package/src/pages/guide/plugins.overview.pt-BR.md +3 -0
- package/src/pages/guide/theming.overview.en-US.md +55 -0
- package/src/pages/guide/theming.overview.pt-BR.md +55 -0
- package/src/pages/index.js +385 -0
- package/src/pages/manual/components/d-headings.overview.en-US.md +54 -0
- package/src/pages/manual/components/d-headings.overview.pt-BR.md +54 -0
- package/src/pages/manual/components/d-headings.showcase.en-US.md +32 -0
- package/src/pages/manual/components/d-headings.showcase.pt-BR.md +32 -0
- package/src/pages/manual/components/d-menu.overview.en-US.md +59 -0
- package/src/pages/manual/components/d-menu.overview.pt-BR.md +59 -0
- package/src/pages/manual/components/d-page-anchor.overview.en-US.md +49 -0
- package/src/pages/manual/components/d-page-anchor.overview.pt-BR.md +49 -0
- package/src/pages/manual/components/d-page-blockquote.overview.en-US.md +44 -0
- package/src/pages/manual/components/d-page-blockquote.overview.pt-BR.md +44 -0
- package/src/pages/manual/components/d-page-blockquote.showcase.en-US.md +27 -0
- package/src/pages/manual/components/d-page-blockquote.showcase.pt-BR.md +27 -0
- package/src/pages/manual/components/d-page-meta.overview.en-US.md +51 -0
- package/src/pages/manual/components/d-page-meta.overview.pt-BR.md +51 -0
- package/src/pages/manual/components/d-page-section.overview.en-US.md +55 -0
- package/src/pages/manual/components/d-page-section.overview.pt-BR.md +55 -0
- package/src/pages/manual/components/d-page-section.showcase.en-US.md +43 -0
- package/src/pages/manual/components/d-page-section.showcase.pt-BR.md +43 -0
- package/src/pages/manual/components/d-page-source-code.overview.en-US.md +54 -0
- package/src/pages/manual/components/d-page-source-code.overview.pt-BR.md +54 -0
- package/src/pages/manual/components/d-page-source-code.showcase.en-US.md +50 -0
- package/src/pages/manual/components/d-page-source-code.showcase.pt-BR.md +50 -0
- package/src/pages/manual/components/d-page.overview.en-US.md +56 -0
- package/src/pages/manual/components/d-page.overview.pt-BR.md +56 -0
- package/src/pages/manual/components/d-page.showcase.en-US.md +35 -0
- package/src/pages/manual/components/d-page.showcase.pt-BR.md +35 -0
- package/src/pages/manual/components/d-subpage.overview.en-US.md +56 -0
- package/src/pages/manual/components/d-subpage.overview.pt-BR.md +56 -0
- package/src/pages/manual/components/q-zoom.overview.en-US.md +71 -0
- package/src/pages/manual/components/q-zoom.overview.pt-BR.md +71 -0
- package/src/pages/manual/composables/use-navigator.overview.en-US.md +89 -0
- package/src/pages/manual/composables/use-navigator.overview.pt-BR.md +89 -0
- package/src/pages/manual/store/modules.overview.en-US.md +96 -0
- package/src/pages/manual/store/modules.overview.pt-BR.md +96 -0
- package/src/router/index.js +30 -0
- package/src/router/routes.js +93 -0
- package/src/store/App.js +43 -0
- package/src/store/I18n.js +22 -0
- package/src/store/Layout.js +124 -0
- package/src/store/Page.js +103 -0
- package/src/store/Settings.js +18 -0
- package/src/store/index.js +24 -0
|
@@ -0,0 +1,385 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Docsector Reader - Pages Registry
|
|
3
|
+
*
|
|
4
|
+
* Define your documentation pages here. Each entry maps a URL path
|
|
5
|
+
* to its configuration, data (titles per language), and optional metadata.
|
|
6
|
+
*
|
|
7
|
+
* config.type: determines the top-level route prefix (e.g., 'manual', 'guide', 'API')
|
|
8
|
+
* config.status: 'done' | 'draft' | 'empty'
|
|
9
|
+
* config.icon: Material Design icon name
|
|
10
|
+
* config.menu: menu display options (header, subheader, separator)
|
|
11
|
+
* config.subpages: { showcase: bool, vs: bool }
|
|
12
|
+
* data: per-language titles (use '*' for all languages)
|
|
13
|
+
* meta: per-language section/translation counts
|
|
14
|
+
*
|
|
15
|
+
* Set config to null for category nodes (non-navigable groupings).
|
|
16
|
+
*/
|
|
17
|
+
export default {
|
|
18
|
+
// =========================================================================
|
|
19
|
+
// Guides
|
|
20
|
+
// =========================================================================
|
|
21
|
+
'/getting-started': {
|
|
22
|
+
config: {
|
|
23
|
+
icon: 'flag',
|
|
24
|
+
status: 'done',
|
|
25
|
+
type: 'guide',
|
|
26
|
+
menu: {
|
|
27
|
+
header: {
|
|
28
|
+
icon: 'school',
|
|
29
|
+
label: 'Guides'
|
|
30
|
+
}
|
|
31
|
+
},
|
|
32
|
+
subpages: {
|
|
33
|
+
showcase: false
|
|
34
|
+
}
|
|
35
|
+
},
|
|
36
|
+
data: {
|
|
37
|
+
'en-US': { title: 'Getting Started' },
|
|
38
|
+
'pt-BR': { title: 'Começando' }
|
|
39
|
+
}
|
|
40
|
+
},
|
|
41
|
+
|
|
42
|
+
'/configuration': {
|
|
43
|
+
config: {
|
|
44
|
+
icon: 'tune',
|
|
45
|
+
status: 'done',
|
|
46
|
+
type: 'guide',
|
|
47
|
+
menu: {
|
|
48
|
+
separator: ' page'
|
|
49
|
+
},
|
|
50
|
+
subpages: {
|
|
51
|
+
showcase: false
|
|
52
|
+
}
|
|
53
|
+
},
|
|
54
|
+
data: {
|
|
55
|
+
'en-US': { title: 'Configuration' },
|
|
56
|
+
'pt-BR': { title: 'Configuração' }
|
|
57
|
+
}
|
|
58
|
+
},
|
|
59
|
+
|
|
60
|
+
'/pages-and-routing': {
|
|
61
|
+
config: {
|
|
62
|
+
icon: 'route',
|
|
63
|
+
status: 'done',
|
|
64
|
+
type: 'guide',
|
|
65
|
+
menu: {},
|
|
66
|
+
subpages: {
|
|
67
|
+
showcase: false
|
|
68
|
+
}
|
|
69
|
+
},
|
|
70
|
+
data: {
|
|
71
|
+
'en-US': { title: 'Pages & Routing' },
|
|
72
|
+
'pt-BR': { title: 'Páginas & Rotas' }
|
|
73
|
+
}
|
|
74
|
+
},
|
|
75
|
+
|
|
76
|
+
'/i18n-and-markdown': {
|
|
77
|
+
config: {
|
|
78
|
+
icon: 'translate',
|
|
79
|
+
status: 'done',
|
|
80
|
+
type: 'guide',
|
|
81
|
+
menu: {},
|
|
82
|
+
subpages: {
|
|
83
|
+
showcase: false
|
|
84
|
+
}
|
|
85
|
+
},
|
|
86
|
+
data: {
|
|
87
|
+
'en-US': { title: 'i18n & Markdown' },
|
|
88
|
+
'pt-BR': { title: 'i18n & Markdown' }
|
|
89
|
+
}
|
|
90
|
+
},
|
|
91
|
+
|
|
92
|
+
'/theming': {
|
|
93
|
+
config: {
|
|
94
|
+
icon: 'palette',
|
|
95
|
+
status: 'done',
|
|
96
|
+
type: 'guide',
|
|
97
|
+
menu: {},
|
|
98
|
+
subpages: {
|
|
99
|
+
showcase: false
|
|
100
|
+
}
|
|
101
|
+
},
|
|
102
|
+
data: {
|
|
103
|
+
'en-US': { title: 'Theming' },
|
|
104
|
+
'pt-BR': { title: 'Temas' }
|
|
105
|
+
}
|
|
106
|
+
},
|
|
107
|
+
|
|
108
|
+
'/deployment': {
|
|
109
|
+
config: {
|
|
110
|
+
icon: 'cloud_upload',
|
|
111
|
+
status: 'draft',
|
|
112
|
+
type: 'guide',
|
|
113
|
+
menu: {},
|
|
114
|
+
subpages: {
|
|
115
|
+
showcase: false
|
|
116
|
+
}
|
|
117
|
+
},
|
|
118
|
+
data: {
|
|
119
|
+
'en-US': { title: 'Deployment' },
|
|
120
|
+
'pt-BR': { title: 'Deploy' }
|
|
121
|
+
}
|
|
122
|
+
},
|
|
123
|
+
|
|
124
|
+
'/plugins': {
|
|
125
|
+
config: {
|
|
126
|
+
icon: 'extension',
|
|
127
|
+
status: 'empty',
|
|
128
|
+
type: 'guide',
|
|
129
|
+
menu: {},
|
|
130
|
+
subpages: {
|
|
131
|
+
showcase: false
|
|
132
|
+
}
|
|
133
|
+
},
|
|
134
|
+
data: {
|
|
135
|
+
'en-US': { title: 'Plugins' },
|
|
136
|
+
'pt-BR': { title: 'Plugins' }
|
|
137
|
+
}
|
|
138
|
+
},
|
|
139
|
+
|
|
140
|
+
// =========================================================================
|
|
141
|
+
// Components — Layout
|
|
142
|
+
// =========================================================================
|
|
143
|
+
'/components': {
|
|
144
|
+
config: null,
|
|
145
|
+
data: {
|
|
146
|
+
'en-US': { title: 'Components' },
|
|
147
|
+
'pt-BR': { title: 'Componentes' }
|
|
148
|
+
}
|
|
149
|
+
},
|
|
150
|
+
|
|
151
|
+
'/components/d-page': {
|
|
152
|
+
config: {
|
|
153
|
+
icon: 'web',
|
|
154
|
+
status: 'done',
|
|
155
|
+
type: 'manual',
|
|
156
|
+
menu: {
|
|
157
|
+
header: {
|
|
158
|
+
icon: 'widgets',
|
|
159
|
+
label: 'Components'
|
|
160
|
+
},
|
|
161
|
+
subheader: '.components'
|
|
162
|
+
},
|
|
163
|
+
subpages: {
|
|
164
|
+
showcase: true
|
|
165
|
+
}
|
|
166
|
+
},
|
|
167
|
+
data: {
|
|
168
|
+
'en-US': { title: 'DPage' },
|
|
169
|
+
'pt-BR': { title: 'DPage' }
|
|
170
|
+
}
|
|
171
|
+
},
|
|
172
|
+
|
|
173
|
+
'/components/d-subpage': {
|
|
174
|
+
config: {
|
|
175
|
+
icon: 'layers',
|
|
176
|
+
status: 'done',
|
|
177
|
+
type: 'manual',
|
|
178
|
+
menu: {},
|
|
179
|
+
subpages: {
|
|
180
|
+
showcase: false
|
|
181
|
+
}
|
|
182
|
+
},
|
|
183
|
+
data: {
|
|
184
|
+
'en-US': { title: 'DSubpage' },
|
|
185
|
+
'pt-BR': { title: 'DSubpage' }
|
|
186
|
+
}
|
|
187
|
+
},
|
|
188
|
+
|
|
189
|
+
'/components/d-page-section': {
|
|
190
|
+
config: {
|
|
191
|
+
icon: 'article',
|
|
192
|
+
status: 'done',
|
|
193
|
+
type: 'manual',
|
|
194
|
+
menu: {
|
|
195
|
+
separator: ' page'
|
|
196
|
+
},
|
|
197
|
+
subpages: {
|
|
198
|
+
showcase: true
|
|
199
|
+
}
|
|
200
|
+
},
|
|
201
|
+
data: {
|
|
202
|
+
'en-US': { title: 'DPageSection' },
|
|
203
|
+
'pt-BR': { title: 'DPageSection' }
|
|
204
|
+
}
|
|
205
|
+
},
|
|
206
|
+
|
|
207
|
+
// =========================================================================
|
|
208
|
+
// Components — Content
|
|
209
|
+
// =========================================================================
|
|
210
|
+
'/components/d-headings': {
|
|
211
|
+
config: {
|
|
212
|
+
icon: 'title',
|
|
213
|
+
status: 'done',
|
|
214
|
+
type: 'manual',
|
|
215
|
+
menu: {},
|
|
216
|
+
subpages: {
|
|
217
|
+
showcase: true
|
|
218
|
+
}
|
|
219
|
+
},
|
|
220
|
+
data: {
|
|
221
|
+
'en-US': { title: 'DH1 – DH6 (Headings)' },
|
|
222
|
+
'pt-BR': { title: 'DH1 – DH6 (Títulos)' }
|
|
223
|
+
}
|
|
224
|
+
},
|
|
225
|
+
|
|
226
|
+
'/components/d-page-source-code': {
|
|
227
|
+
config: {
|
|
228
|
+
icon: 'code',
|
|
229
|
+
status: 'done',
|
|
230
|
+
type: 'manual',
|
|
231
|
+
menu: {},
|
|
232
|
+
subpages: {
|
|
233
|
+
showcase: true
|
|
234
|
+
}
|
|
235
|
+
},
|
|
236
|
+
data: {
|
|
237
|
+
'en-US': { title: 'DPageSourceCode' },
|
|
238
|
+
'pt-BR': { title: 'DPageSourceCode' }
|
|
239
|
+
}
|
|
240
|
+
},
|
|
241
|
+
|
|
242
|
+
'/components/d-page-blockquote': {
|
|
243
|
+
config: {
|
|
244
|
+
icon: 'format_quote',
|
|
245
|
+
status: 'done',
|
|
246
|
+
type: 'manual',
|
|
247
|
+
menu: {
|
|
248
|
+
separator: ' page'
|
|
249
|
+
},
|
|
250
|
+
subpages: {
|
|
251
|
+
showcase: true
|
|
252
|
+
}
|
|
253
|
+
},
|
|
254
|
+
data: {
|
|
255
|
+
'en-US': { title: 'DPageBlockquote' },
|
|
256
|
+
'pt-BR': { title: 'DPageBlockquote' }
|
|
257
|
+
}
|
|
258
|
+
},
|
|
259
|
+
|
|
260
|
+
// =========================================================================
|
|
261
|
+
// Components — Navigation
|
|
262
|
+
// =========================================================================
|
|
263
|
+
'/components/d-menu': {
|
|
264
|
+
config: {
|
|
265
|
+
icon: 'menu_open',
|
|
266
|
+
status: 'done',
|
|
267
|
+
type: 'manual',
|
|
268
|
+
menu: {},
|
|
269
|
+
subpages: {
|
|
270
|
+
showcase: false
|
|
271
|
+
}
|
|
272
|
+
},
|
|
273
|
+
data: {
|
|
274
|
+
'en-US': { title: 'DMenu' },
|
|
275
|
+
'pt-BR': { title: 'DMenu' }
|
|
276
|
+
}
|
|
277
|
+
},
|
|
278
|
+
|
|
279
|
+
'/components/d-page-anchor': {
|
|
280
|
+
config: {
|
|
281
|
+
icon: 'account_tree',
|
|
282
|
+
status: 'done',
|
|
283
|
+
type: 'manual',
|
|
284
|
+
menu: {},
|
|
285
|
+
subpages: {
|
|
286
|
+
showcase: false
|
|
287
|
+
}
|
|
288
|
+
},
|
|
289
|
+
data: {
|
|
290
|
+
'en-US': { title: 'DPageAnchor' },
|
|
291
|
+
'pt-BR': { title: 'DPageAnchor' }
|
|
292
|
+
}
|
|
293
|
+
},
|
|
294
|
+
|
|
295
|
+
'/components/d-page-meta': {
|
|
296
|
+
config: {
|
|
297
|
+
icon: 'info',
|
|
298
|
+
status: 'done',
|
|
299
|
+
type: 'manual',
|
|
300
|
+
menu: {},
|
|
301
|
+
subpages: {
|
|
302
|
+
showcase: false
|
|
303
|
+
}
|
|
304
|
+
},
|
|
305
|
+
data: {
|
|
306
|
+
'en-US': { title: 'DPageMeta' },
|
|
307
|
+
'pt-BR': { title: 'DPageMeta' }
|
|
308
|
+
}
|
|
309
|
+
},
|
|
310
|
+
|
|
311
|
+
// =========================================================================
|
|
312
|
+
// Components — Utility
|
|
313
|
+
// =========================================================================
|
|
314
|
+
'/components/q-zoom': {
|
|
315
|
+
config: {
|
|
316
|
+
icon: 'zoom_in',
|
|
317
|
+
status: 'done',
|
|
318
|
+
type: 'manual',
|
|
319
|
+
menu: {
|
|
320
|
+
separator: ' page'
|
|
321
|
+
},
|
|
322
|
+
subpages: {
|
|
323
|
+
showcase: false
|
|
324
|
+
}
|
|
325
|
+
},
|
|
326
|
+
data: {
|
|
327
|
+
'en-US': { title: 'QZoom' },
|
|
328
|
+
'pt-BR': { title: 'QZoom' }
|
|
329
|
+
}
|
|
330
|
+
},
|
|
331
|
+
|
|
332
|
+
// =========================================================================
|
|
333
|
+
// Composables
|
|
334
|
+
// =========================================================================
|
|
335
|
+
'/composables': {
|
|
336
|
+
config: null,
|
|
337
|
+
data: {
|
|
338
|
+
'en-US': { title: 'Composables' },
|
|
339
|
+
'pt-BR': { title: 'Composables' }
|
|
340
|
+
}
|
|
341
|
+
},
|
|
342
|
+
|
|
343
|
+
'/composables/use-navigator': {
|
|
344
|
+
config: {
|
|
345
|
+
icon: 'navigation',
|
|
346
|
+
status: 'done',
|
|
347
|
+
type: 'manual',
|
|
348
|
+
menu: {},
|
|
349
|
+
subpages: {
|
|
350
|
+
showcase: false
|
|
351
|
+
}
|
|
352
|
+
},
|
|
353
|
+
data: {
|
|
354
|
+
'en-US': { title: 'useNavigator' },
|
|
355
|
+
'pt-BR': { title: 'useNavigator' }
|
|
356
|
+
}
|
|
357
|
+
},
|
|
358
|
+
|
|
359
|
+
// =========================================================================
|
|
360
|
+
// Store
|
|
361
|
+
// =========================================================================
|
|
362
|
+
'/store': {
|
|
363
|
+
config: null,
|
|
364
|
+
data: {
|
|
365
|
+
'en-US': { title: 'Store' },
|
|
366
|
+
'pt-BR': { title: 'Store' }
|
|
367
|
+
}
|
|
368
|
+
},
|
|
369
|
+
|
|
370
|
+
'/store/modules': {
|
|
371
|
+
config: {
|
|
372
|
+
icon: 'storage',
|
|
373
|
+
status: 'done',
|
|
374
|
+
type: 'manual',
|
|
375
|
+
menu: {},
|
|
376
|
+
subpages: {
|
|
377
|
+
showcase: false
|
|
378
|
+
}
|
|
379
|
+
},
|
|
380
|
+
data: {
|
|
381
|
+
'en-US': { title: 'Vuex Modules' },
|
|
382
|
+
'pt-BR': { title: 'Módulos Vuex' }
|
|
383
|
+
}
|
|
384
|
+
}
|
|
385
|
+
}
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
## Overview
|
|
2
|
+
|
|
3
|
+
`DH1` through `DH6` are **heading components** that render section titles with anchor navigation support. Each heading level corresponds to a Markdown heading (`##` through `######`).
|
|
4
|
+
|
|
5
|
+
## Component Hierarchy
|
|
6
|
+
|
|
7
|
+
| Component | Markdown | HTML | Usage |
|
|
8
|
+
|-----------|----------|------|-------|
|
|
9
|
+
| `DH1` | `#` (implicit) | `<h1>` | Page title, auto-generated from i18n |
|
|
10
|
+
| `DH2` | `##` | `<h2>` | Main sections |
|
|
11
|
+
| `DH3` | `###` | `<h3>` | Sub-sections |
|
|
12
|
+
| `DH4` | `####` | `<h4>` | Detail sections |
|
|
13
|
+
| `DH5` | `#####` | `<h5>` | Minor sections |
|
|
14
|
+
| `DH6` | `######` | `<h6>` | Micro sections |
|
|
15
|
+
|
|
16
|
+
## DH1 — Page Title
|
|
17
|
+
|
|
18
|
+
DH1 is special — it doesn't receive content via props. Instead, it reads the page title from the i18n store:
|
|
19
|
+
|
|
20
|
+
```javascript
|
|
21
|
+
const heading = computed(() => {
|
|
22
|
+
const base = store.state.i18n.base
|
|
23
|
+
return t('_.' + base + '._')
|
|
24
|
+
})
|
|
25
|
+
```
|
|
26
|
+
|
|
27
|
+
DH1 also **registers** itself as anchor `0` in the `useNavigator` composable, enabling the ToC tree to show the page title as the root node.
|
|
28
|
+
|
|
29
|
+
## DH2–DH6 — Section Titles
|
|
30
|
+
|
|
31
|
+
These components receive their content via the `value` prop (already rendered as HTML by `DPageSection`):
|
|
32
|
+
|
|
33
|
+
## Props (DH2–DH6)
|
|
34
|
+
|
|
35
|
+
| Prop | Type | Required | Description |
|
|
36
|
+
|------|------|----------|-------------|
|
|
37
|
+
| `id` | `Number` | Yes | Anchor ID for navigation |
|
|
38
|
+
| `value` | `String` | Yes | HTML content of the heading |
|
|
39
|
+
|
|
40
|
+
## Anchor Navigation
|
|
41
|
+
|
|
42
|
+
Clicking any heading triggers the `navigate(id)` function from `useNavigator`, which:
|
|
43
|
+
|
|
44
|
+
1. Updates the URL hash to `#{id}`
|
|
45
|
+
2. Scrolls the viewport to the heading element
|
|
46
|
+
3. Highlights the heading in the ToC tree
|
|
47
|
+
|
|
48
|
+
## Node Registration
|
|
49
|
+
|
|
50
|
+
Each heading component (DH2+) calls `useNavigator().index(id)` on mount and update, which pushes a node into the `page/nodes` store, building the ToC tree dynamically as the page renders.
|
|
51
|
+
|
|
52
|
+
## Styling
|
|
53
|
+
|
|
54
|
+
Headings use standard HTML heading elements with `v-html` rendering. Custom styling can be applied through the global `app.sass` file or by targeting the heading tags directly.
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
## Visão Geral
|
|
2
|
+
|
|
3
|
+
`DH1` até `DH6` são **componentes de título** que renderizam títulos de seção com suporte a navegação por âncora. Cada nível de título corresponde a um heading Markdown (`##` até `######`).
|
|
4
|
+
|
|
5
|
+
## Hierarquia de Componentes
|
|
6
|
+
|
|
7
|
+
| Componente | Markdown | HTML | Uso |
|
|
8
|
+
|------------|----------|------|-----|
|
|
9
|
+
| `DH1` | `#` (implícito) | `<h1>` | Título da página, gerado automaticamente do i18n |
|
|
10
|
+
| `DH2` | `##` | `<h2>` | Seções principais |
|
|
11
|
+
| `DH3` | `###` | `<h3>` | Sub-seções |
|
|
12
|
+
| `DH4` | `####` | `<h4>` | Seções de detalhe |
|
|
13
|
+
| `DH5` | `#####` | `<h5>` | Seções menores |
|
|
14
|
+
| `DH6` | `######` | `<h6>` | Micro seções |
|
|
15
|
+
|
|
16
|
+
## DH1 — Título da Página
|
|
17
|
+
|
|
18
|
+
DH1 é especial — não recebe conteúdo via props. Em vez disso, lê o título da página da store i18n:
|
|
19
|
+
|
|
20
|
+
```javascript
|
|
21
|
+
const heading = computed(() => {
|
|
22
|
+
const base = store.state.i18n.base
|
|
23
|
+
return t('_.' + base + '._')
|
|
24
|
+
})
|
|
25
|
+
```
|
|
26
|
+
|
|
27
|
+
DH1 também se **registra** como âncora `0` no composable `useNavigator`, permitindo que a árvore de ToC mostre o título da página como nó raiz.
|
|
28
|
+
|
|
29
|
+
## DH2–DH6 — Títulos de Seção
|
|
30
|
+
|
|
31
|
+
Esses componentes recebem seu conteúdo via prop `value` (já renderizado como HTML pelo `DPageSection`):
|
|
32
|
+
|
|
33
|
+
## Props (DH2–DH6)
|
|
34
|
+
|
|
35
|
+
| Prop | Tipo | Obrigatório | Descrição |
|
|
36
|
+
|------|------|-------------|-----------|
|
|
37
|
+
| `id` | `Number` | Sim | ID da âncora para navegação |
|
|
38
|
+
| `value` | `String` | Sim | Conteúdo HTML do título |
|
|
39
|
+
|
|
40
|
+
## Navegação por Âncora
|
|
41
|
+
|
|
42
|
+
Clicar em qualquer título dispara a função `navigate(id)` do `useNavigator`, que:
|
|
43
|
+
|
|
44
|
+
1. Atualiza o hash da URL para `#{id}`
|
|
45
|
+
2. Faz scroll do viewport até o elemento do título
|
|
46
|
+
3. Destaca o título na árvore de ToC
|
|
47
|
+
|
|
48
|
+
## Registro de Nós
|
|
49
|
+
|
|
50
|
+
Cada componente de título (DH2+) chama `useNavigator().index(id)` no mount e update, que insere um nó no store `page/nodes`, construindo a árvore de ToC dinamicamente conforme a página renderiza.
|
|
51
|
+
|
|
52
|
+
## Estilização
|
|
53
|
+
|
|
54
|
+
Os títulos usam elementos HTML de heading padrão com renderização `v-html`. Estilos customizados podem ser aplicados através do arquivo global `app.sass` ou direcionando as tags de heading diretamente.
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
## Showcase
|
|
2
|
+
|
|
3
|
+
Here is how headings appear when rendered from Markdown:
|
|
4
|
+
|
|
5
|
+
## This is an H2
|
|
6
|
+
|
|
7
|
+
### This is an H3
|
|
8
|
+
|
|
9
|
+
#### This is an H4
|
|
10
|
+
|
|
11
|
+
##### This is an H5
|
|
12
|
+
|
|
13
|
+
###### This is an H6
|
|
14
|
+
|
|
15
|
+
Each heading above creates an anchor in the right-side ToC tree. Click on any heading to navigate directly to it. Notice how the URL hash updates and the ToC tree highlights the selected heading.
|
|
16
|
+
|
|
17
|
+
## Usage in Markdown
|
|
18
|
+
|
|
19
|
+
Simply use standard Markdown heading syntax in your `.md` content files:
|
|
20
|
+
|
|
21
|
+
```
|
|
22
|
+
## Main Section
|
|
23
|
+
Content here...
|
|
24
|
+
|
|
25
|
+
### Sub-Section
|
|
26
|
+
More content...
|
|
27
|
+
|
|
28
|
+
#### Detail
|
|
29
|
+
Even more content...
|
|
30
|
+
```
|
|
31
|
+
|
|
32
|
+
DPageSection automatically maps each heading level to the corresponding DH component.
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
## Demonstração
|
|
2
|
+
|
|
3
|
+
Veja como os títulos aparecem quando renderizados a partir do Markdown:
|
|
4
|
+
|
|
5
|
+
## Este é um H2
|
|
6
|
+
|
|
7
|
+
### Este é um H3
|
|
8
|
+
|
|
9
|
+
#### Este é um H4
|
|
10
|
+
|
|
11
|
+
##### Este é um H5
|
|
12
|
+
|
|
13
|
+
###### Este é um H6
|
|
14
|
+
|
|
15
|
+
Cada título acima cria uma âncora na árvore de ToC à direita. Clique em qualquer título para navegar diretamente até ele. Note como o hash da URL atualiza e a árvore de ToC destaca o título selecionado.
|
|
16
|
+
|
|
17
|
+
## Uso no Markdown
|
|
18
|
+
|
|
19
|
+
Simplesmente use a sintaxe padrão de heading Markdown nos seus arquivos de conteúdo `.md`:
|
|
20
|
+
|
|
21
|
+
```
|
|
22
|
+
## Seção Principal
|
|
23
|
+
Conteúdo aqui...
|
|
24
|
+
|
|
25
|
+
### Sub-Seção
|
|
26
|
+
Mais conteúdo...
|
|
27
|
+
|
|
28
|
+
#### Detalhe
|
|
29
|
+
Ainda mais conteúdo...
|
|
30
|
+
```
|
|
31
|
+
|
|
32
|
+
DPageSection automaticamente mapeia cada nível de heading ao componente DH correspondente.
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
## Overview
|
|
2
|
+
|
|
3
|
+
`DMenu` is the **left sidebar navigation** component. It renders the project branding, external links, search functionality, and the documentation page tree.
|
|
4
|
+
|
|
5
|
+
## Features
|
|
6
|
+
|
|
7
|
+
- **Search** — Filter pages by searching content, titles, and tags
|
|
8
|
+
- **Branding section** — Logo, project name, version selector
|
|
9
|
+
- **External links** — GitHub, discussions, chat, email, changelog, roadmap, sponsor
|
|
10
|
+
- **Explore section** — Custom external links
|
|
11
|
+
- **Page tree** — Auto-generated from the page registry with expansion panels
|
|
12
|
+
|
|
13
|
+
## Search
|
|
14
|
+
|
|
15
|
+
The search input at the top of the menu filters pages by matching the search term against:
|
|
16
|
+
|
|
17
|
+
1. **Tags** — Defined in `src/i18n/tags.hjson`
|
|
18
|
+
2. **Page content** — The Markdown source of each page's overview, showcase, and vs subpages
|
|
19
|
+
|
|
20
|
+
Search is debounced by 300ms and supports the current locale with en-US fallback.
|
|
21
|
+
|
|
22
|
+
## Branding Section
|
|
23
|
+
|
|
24
|
+
Reads from `docsector.config.js`:
|
|
25
|
+
|
|
26
|
+
- `branding.logo` — Project logo image
|
|
27
|
+
- `branding.name` — Project name text
|
|
28
|
+
- `branding.version` — Current version
|
|
29
|
+
- `branding.versions` — Version dropdown options
|
|
30
|
+
|
|
31
|
+
## External Links
|
|
32
|
+
|
|
33
|
+
Each link is conditionally rendered — set to `null` in the config to hide:
|
|
34
|
+
|
|
35
|
+
- **GitHub** — Repository link
|
|
36
|
+
- **Discussions** — GitHub Discussions
|
|
37
|
+
- **Chat** — Discord/Slack/etc.
|
|
38
|
+
- **Email** — Opens mailto link
|
|
39
|
+
- **Changelog** — External or internal page
|
|
40
|
+
- **Roadmap** — Project roadmap
|
|
41
|
+
- **Sponsor** — Sponsorship page
|
|
42
|
+
- **Explore** — Array of custom external links
|
|
43
|
+
|
|
44
|
+
## Page Tree
|
|
45
|
+
|
|
46
|
+
The page tree is built from the router's routes at component creation time. Routes are grouped by their basepath (second URL segment). Groups with a `menu.header` configuration get an expansion panel with a sticky header.
|
|
47
|
+
|
|
48
|
+
## Menu Item Grouping
|
|
49
|
+
|
|
50
|
+
Items are grouped when:
|
|
51
|
+
|
|
52
|
+
1. The first item in a basepath group has `meta.menu.header` defined
|
|
53
|
+
2. All subsequent items sharing the same basepath are collected into the same group
|
|
54
|
+
|
|
55
|
+
Items without a header are displayed as standalone entries.
|
|
56
|
+
|
|
57
|
+
## Auto-Scroll
|
|
58
|
+
|
|
59
|
+
On mount and after navigation, DMenu automatically scrolls to the currently active menu item, centering it in the viewport with a smooth 300ms animation.
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
## Visão Geral
|
|
2
|
+
|
|
3
|
+
`DMenu` é o componente de **navegação lateral esquerda**. Ele renderiza o branding do projeto, links externos, funcionalidade de busca e a árvore de páginas de documentação.
|
|
4
|
+
|
|
5
|
+
## Funcionalidades
|
|
6
|
+
|
|
7
|
+
- **Busca** — Filtra páginas pesquisando conteúdo, títulos e tags
|
|
8
|
+
- **Seção de branding** — Logo, nome do projeto, seletor de versão
|
|
9
|
+
- **Links externos** — GitHub, discussões, chat, email, changelog, roadmap, sponsor
|
|
10
|
+
- **Seção explore** — Links externos customizados
|
|
11
|
+
- **Árvore de páginas** — Gerada automaticamente do registro de páginas com painéis de expansão
|
|
12
|
+
|
|
13
|
+
## Busca
|
|
14
|
+
|
|
15
|
+
O input de busca no topo do menu filtra páginas comparando o termo de busca com:
|
|
16
|
+
|
|
17
|
+
1. **Tags** — Definidas em `src/i18n/tags.hjson`
|
|
18
|
+
2. **Conteúdo da página** — O source Markdown de cada sub-página overview, showcase e vs
|
|
19
|
+
|
|
20
|
+
A busca tem debounce de 300ms e suporta o locale atual com fallback para en-US.
|
|
21
|
+
|
|
22
|
+
## Seção de Branding
|
|
23
|
+
|
|
24
|
+
Lê do `docsector.config.js`:
|
|
25
|
+
|
|
26
|
+
- `branding.logo` — Imagem do logo do projeto
|
|
27
|
+
- `branding.name` — Texto do nome do projeto
|
|
28
|
+
- `branding.version` — Versão atual
|
|
29
|
+
- `branding.versions` — Opções do dropdown de versão
|
|
30
|
+
|
|
31
|
+
## Links Externos
|
|
32
|
+
|
|
33
|
+
Cada link é renderizado condicionalmente — defina como `null` no config para ocultar:
|
|
34
|
+
|
|
35
|
+
- **GitHub** — Link do repositório
|
|
36
|
+
- **Discussions** — GitHub Discussions
|
|
37
|
+
- **Chat** — Discord/Slack/etc.
|
|
38
|
+
- **Email** — Abre link mailto
|
|
39
|
+
- **Changelog** — Página externa ou interna
|
|
40
|
+
- **Roadmap** — Roadmap do projeto
|
|
41
|
+
- **Sponsor** — Página de patrocínio
|
|
42
|
+
- **Explore** — Array de links externos customizados
|
|
43
|
+
|
|
44
|
+
## Árvore de Páginas
|
|
45
|
+
|
|
46
|
+
A árvore de páginas é construída a partir das rotas do roteador no momento de criação do componente. Rotas são agrupadas pelo seu basepath (segundo segmento da URL). Grupos com configuração `menu.header` recebem um painel de expansão com header sticky.
|
|
47
|
+
|
|
48
|
+
## Agrupamento de Itens
|
|
49
|
+
|
|
50
|
+
Itens são agrupados quando:
|
|
51
|
+
|
|
52
|
+
1. O primeiro item de um grupo de basepath tem `meta.menu.header` definido
|
|
53
|
+
2. Todos os itens subsequentes compartilhando o mesmo basepath são coletados no mesmo grupo
|
|
54
|
+
|
|
55
|
+
Itens sem header são exibidos como entradas independentes.
|
|
56
|
+
|
|
57
|
+
## Auto-Scroll
|
|
58
|
+
|
|
59
|
+
No mount e após navegação, DMenu automaticamente faz scroll até o item de menu ativo, centralizando-o no viewport com uma animação suave de 300ms.
|