├── assets ├── page-toc.png ├── page-toc-anchors.js └── page-toc-anchors.css ├── vendor ├── composer │ ├── tmp-f711f3efca8baf836db7f0f0b18aef94~ │ ├── autoload_namespaces.php │ ├── autoload_classmap.php │ ├── autoload_psr4.php │ ├── platform_check.php │ ├── LICENSE │ ├── autoload_real.php │ ├── installed.php │ ├── autoload_static.php │ └── installed.json ├── knplabs │ └── knp-menu │ │ ├── src │ │ └── Knp │ │ │ └── Menu │ │ │ ├── Resources │ │ │ └── views │ │ │ │ ├── knp_menu_base.html.twig │ │ │ │ ├── knp_menu_ordered.html.twig │ │ │ │ └── knp_menu.html.twig │ │ │ ├── FactoryInterface.php │ │ │ ├── Loader │ │ │ ├── LoaderInterface.php │ │ │ ├── NodeLoader.php │ │ │ └── ArrayLoader.php │ │ │ ├── Matcher │ │ │ ├── Voter │ │ │ │ ├── VoterInterface.php │ │ │ │ ├── UriVoter.php │ │ │ │ ├── CallbackVoter.php │ │ │ │ ├── RegexVoter.php │ │ │ │ └── RouteVoter.php │ │ │ ├── MatcherInterface.php │ │ │ └── Matcher.php │ │ │ ├── Renderer │ │ │ ├── RendererProviderInterface.php │ │ │ ├── RendererInterface.php │ │ │ ├── PsrProvider.php │ │ │ ├── ArrayAccessProvider.php │ │ │ ├── TwigRenderer.php │ │ │ ├── Renderer.php │ │ │ └── ListRenderer.php │ │ │ ├── Iterator │ │ │ ├── DisplayedItemFilterIterator.php │ │ │ ├── CurrentItemFilterIterator.php │ │ │ └── RecursiveItemIterator.php │ │ │ ├── Provider │ │ │ ├── MenuProviderInterface.php │ │ │ ├── PsrProvider.php │ │ │ ├── ChainProvider.php │ │ │ ├── ArrayAccessProvider.php │ │ │ └── LazyProvider.php │ │ │ ├── Factory │ │ │ ├── ExtensionInterface.php │ │ │ └── CoreExtension.php │ │ │ ├── NodeInterface.php │ │ │ ├── Integration │ │ │ └── Symfony │ │ │ │ └── RoutingExtension.php │ │ │ ├── MenuFactory.php │ │ │ ├── Twig │ │ │ ├── MenuExtension.php │ │ │ └── Helper.php │ │ │ ├── ItemInterface.php │ │ │ └── Util │ │ │ └── MenuManipulator.php │ │ ├── LICENSE │ │ ├── composer.json │ │ └── CHANGELOG.md ├── cocur │ └── slugify │ │ ├── src │ │ ├── RuleProvider │ │ │ ├── RuleProviderInterface.php │ │ │ └── FileRuleProvider.php │ │ ├── Bridge │ │ │ ├── ZF2 │ │ │ │ ├── SlugifyViewHelperFactory.php │ │ │ │ ├── SlugifyService.php │ │ │ │ ├── SlugifyViewHelper.php │ │ │ │ └── Module.php │ │ │ ├── Latte │ │ │ │ └── SlugifyHelper.php │ │ │ ├── Symfony │ │ │ │ ├── CocurSlugifyBundle.php │ │ │ │ ├── Configuration.php │ │ │ │ └── CocurSlugifyExtension.php │ │ │ ├── Laravel │ │ │ │ ├── SlugifyFacade.php │ │ │ │ └── SlugifyServiceProvider.php │ │ │ ├── League │ │ │ │ └── SlugifyServiceProvider.php │ │ │ ├── Plum │ │ │ │ └── SlugifyConverter.php │ │ │ ├── Nette │ │ │ │ └── SlugifyExtension.php │ │ │ └── Twig │ │ │ │ └── SlugifyExtension.php │ │ ├── SlugifyInterface.php │ │ └── Slugify.php │ │ ├── LICENSE │ │ └── composer.json └── autoload.php ├── composer.json ├── templates └── components │ └── page-toc.html.twig ├── LICENSE ├── page-toc.yaml ├── classes ├── shortcodes │ └── AnchorShortcode.php ├── UniqueSlugify.php ├── OrderedListRenderer.php ├── MarkupFixer.php ├── HtmlHelper.php └── TocGenerator.php ├── CHANGELOG.md ├── blueprints.yaml ├── blueprints └── page-toc.yaml ├── composer.lock ├── languages.yaml ├── page-toc.php └── README.md /assets/page-toc.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/trilbymedia/grav-plugin-page-toc/HEAD/assets/page-toc.png -------------------------------------------------------------------------------- /vendor/composer/tmp-f711f3efca8baf836db7f0f0b18aef94~: -------------------------------------------------------------------------------- 1 | {"message":"Bad credentials","documentation_url":"https://docs.github.com/rest"} -------------------------------------------------------------------------------- /vendor/knplabs/knp-menu/src/Knp/Menu/Resources/views/knp_menu_base.html.twig: -------------------------------------------------------------------------------- 1 | {% if options.compressed %}{{ block('compressed_root') }}{% else %}{{ block('root') }}{% endif %} 2 | -------------------------------------------------------------------------------- /vendor/composer/autoload_namespaces.php: -------------------------------------------------------------------------------- 1 | $vendorDir . '/composer/InstalledVersions.php', 10 | 'Grav\\Plugin\\PageTOCPlugin' => $baseDir . '/page-toc.php', 11 | ); 12 | -------------------------------------------------------------------------------- /assets/page-toc-anchors.js: -------------------------------------------------------------------------------- 1 | document.body.addEventListener('click', (event) => { 2 | if (typeof event.target.dataset.anchorIcon !== 'undefined') { 3 | const href = event.target.href; 4 | navigator.clipboard.writeText(href) 5 | .then(() => {}) 6 | .catch((error) => { 7 | console.error('Unable to copy to clipboard the anchor', error); 8 | }); 9 | } 10 | }, true); -------------------------------------------------------------------------------- /vendor/composer/autoload_psr4.php: -------------------------------------------------------------------------------- 1 | array($vendorDir . '/knplabs/knp-menu/src/Knp/Menu'), 10 | 'Grav\\Plugin\\PageToc\\' => array($baseDir . '/classes'), 11 | 'Cocur\\Slugify\\' => array($vendorDir . '/cocur/slugify/src'), 12 | ); 13 | -------------------------------------------------------------------------------- /vendor/knplabs/knp-menu/src/Knp/Menu/FactoryInterface.php: -------------------------------------------------------------------------------- 1 | $options 14 | */ 15 | public function createItem(string $name, array $options = []): ItemInterface; 16 | } 17 | -------------------------------------------------------------------------------- /vendor/knplabs/knp-menu/src/Knp/Menu/Resources/views/knp_menu_ordered.html.twig: -------------------------------------------------------------------------------- 1 | {% extends 'knp_menu.html.twig' %} 2 | 3 | {% block list %} 4 | {% import 'knp_menu.html.twig' as macros %} 5 | 6 | {% if item.hasChildren and options.depth is not same as(0) and item.displayChildren %} 7 |