Skip to content

Latest commit

 

History

History
65 lines (48 loc) · 2.07 KB

File metadata and controls

65 lines (48 loc) · 2.07 KB

Milestone: v2.0.0

Breaking Changes TODO

  • kamado/features エクスポートを削除
    • getBreadcrumbs@kamado-io/page-compiler 内部に移動
    • getNavTree@kamado-io/page-compiler 内部に移動
    • getTitleList@kamado-io/page-compiler 内部に移動
    • getTitle を削除(getTitleFromHtmlString@kamado-io/page-compiler/title で公開)
    • getTitleFromStaticFile を削除
    • kamado/features に deprecation 警告を追加(v2.0.0 で削除予定)
    • PageData 型を追加(metaData.title でタイトル管理)

Migration Guide

kamado/features の削除 (v2.0.0)

kamado/features エクスポートは v2.0.0 で削除されました。

v1.x での使用方法

import { getBreadcrumbs, getNavTree, titleList } from 'kamado/features';

// テンプレート内で直接使用
const breadcrumbs = getBreadcrumbs(file, pageList, options);
const nav = getNavTree(file, pageList, options);

v2.0.0 での対応方法

これらの機能は @kamado-io/page-compiler 内部で自動的に使用されるため、直接インポートする必要はありません。テンプレート内で breadcrumbsnav() 関数が自動的に利用可能です。

// Pug テンプレート例
ul.breadcrumbs
  each item in breadcrumbs
    li= item.title

nav
  each item in nav({ depth: 2 })
    a(href=item.url)= item.meta.title

カスタマイズが必要な場合

PageCompilerOptionstransformBreadcrumbItem および filterNavigationNode オプションを使用してください。

import { createPageCompiler } from '@kamado-io/page-compiler';

export const config = {
	compilers: (def) => [
		def(createPageCompiler(), {
			transformBreadcrumbItem: (item) => ({
				...item,
				icon: item.href === '/' ? 'home' : 'page',
			}),
			filterNavigationNode: (node) => !node.url.includes('/drafts/'),
		}),
	],
};

詳細は @kamado-io/page-compiler の README を参照してください。