mirror of
https://github.com/tiennm99/HugoBlox-kit.git
synced 2026-10-11 12:11:45 +00:00
- Linting/format - Replace ESLint/Prettier with Biome; remove old configs; add `biome.json`; update scripts - Tailwind-friendly `.stylelintrc.yaml`; Stylelint and Biome pass - Enable Biome across `modules/**`; prune legacy JS globals; ignore oversized `devicon.json` - Code fixes - `hb-theme.js`: avoid assignment-in-expressions; clearer dataset updates - `hugoblox-slides.js`: fix inner var scope (var → let); apply formatting - CI/CD - Split lint/build workflows; add path filters; Node via Corepack (pnpm from package.json) - Hugo pinned to env `HUGO_VERSION`; add consistency check vs `starters/academic-cv/hugoblox.yaml` - Nightly starters matrix build (academic-cv, landing-page); CodeQL weekly; resource caches - Workflows/Community - Greeter: switch to `pull_request_target`; add Contributor Guide to PR message - PR labeler for path-based labels - Repo policies/docs - `CODEOWNERS` for `@gcushen` - `SECURITY.md`, `SUPPORT.md` - Documented branch protection in `.github/settings.yml` - Move `CODE_OF_CONDUCT.md` to `.github/` - docs(zh): update `README.zh.md` translation Notes: - pnpm is sourced from `package.json: packageManager` via Corepack; no hard-coded pnpm versions in CI.
118 lines
3.8 KiB
JSON
118 lines
3.8 KiB
JSON
{
|
|
"$schema": "http://json-schema.org/draft-07/schema#",
|
|
"$id": "https://hugoblox.com/schemas/blocks/collection.json",
|
|
"title": "Collection Block Schema",
|
|
"description": "Schema for the Collection block - displays filtered and sorted collections of pages",
|
|
"allOf": [
|
|
{
|
|
"$ref": "../shared/schemas/base-block.json"
|
|
},
|
|
{
|
|
"type": "object",
|
|
"properties": {
|
|
"block": {
|
|
"const": "collection"
|
|
},
|
|
"content": {
|
|
"type": "object",
|
|
"description": "Content configuration for the collection block",
|
|
"properties": {
|
|
"title": {
|
|
"type": "string",
|
|
"description": "Section title (supports Markdown)"
|
|
},
|
|
"text": {
|
|
"type": "string",
|
|
"description": "Section description (supports Markdown)"
|
|
},
|
|
"count": {
|
|
"type": "number",
|
|
"description": "Maximum number of items to display",
|
|
"minimum": 0,
|
|
"default": 5
|
|
},
|
|
"offset": {
|
|
"type": "number",
|
|
"description": "Number of items to skip",
|
|
"minimum": 0,
|
|
"default": 0
|
|
},
|
|
"page_type": {
|
|
"type": "string",
|
|
"description": "Filter by page type (e.g., 'post', 'publication')"
|
|
},
|
|
"sort_by": {
|
|
"type": "string",
|
|
"description": "Field to sort by",
|
|
"default": "Date"
|
|
},
|
|
"sort_ascending": {
|
|
"type": "boolean",
|
|
"description": "Sort in ascending order",
|
|
"default": false
|
|
},
|
|
"order": {
|
|
"type": "string",
|
|
"enum": ["asc", "desc"],
|
|
"description": "Sort order (alternative to sort_ascending)"
|
|
},
|
|
"filters": {
|
|
"type": "object",
|
|
"description": "Content filtering options",
|
|
"properties": {
|
|
"folders": {
|
|
"type": "array",
|
|
"description": "Filter by content folders/sections",
|
|
"items": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
"tag": {
|
|
"type": "string",
|
|
"description": "Filter by tag"
|
|
},
|
|
"category": {
|
|
"type": "string",
|
|
"description": "Filter by category"
|
|
},
|
|
"publication_type": {
|
|
"type": "string",
|
|
"description": "Filter by publication type"
|
|
},
|
|
"exclude_publication_type": {
|
|
"type": "string",
|
|
"description": "Exclude specific publication type"
|
|
},
|
|
"author": {
|
|
"type": "string",
|
|
"description": "Filter by author"
|
|
},
|
|
"featured_only": {
|
|
"type": "boolean",
|
|
"description": "Show only featured content",
|
|
"default": false
|
|
},
|
|
"exclude_featured": {
|
|
"type": "boolean",
|
|
"description": "Exclude featured content",
|
|
"default": false
|
|
},
|
|
"exclude_past": {
|
|
"type": "boolean",
|
|
"description": "Exclude past-dated content",
|
|
"default": false
|
|
},
|
|
"exclude_future": {
|
|
"type": "boolean",
|
|
"description": "Exclude future-dated content",
|
|
"default": false
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
]
|
|
}
|