Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
33 commits
Select commit Hold shift + click to select a range
7bc91cb
feat(nav): add the navigation data model, resolver and validation gate
marcus-souza-azion Sep 4, 2026
57d7b18
feat(nav): add the coming-soon page and the required product sections
marcus-souza-azion Sep 4, 2026
d1162cf
feat(nav): render the sidebar, breadcrumb and pagination from the new…
marcus-souza-azion Sep 4, 2026
f543c6e
feat(nav): build the top navigation directory from the nav model
marcus-souza-azion Sep 4, 2026
2e94ec0
feat(guides): rebuild the guides home as a filterable hub
marcus-souza-azion Sep 4, 2026
e22d6c0
refactor(nav): move every documentation URL to its position in the tree
marcus-souza-azion Sep 4, 2026
b57f74a
refactor(nav): delete the menu model the tree replaces
marcus-souza-azion Sep 4, 2026
6bd9de2
ci(nav): run the navigation check before the build
marcus-souza-azion Sep 4, 2026
08175a9
fix(nav): give Platform and Professional Services a landing page
marcus-souza-azion Sep 4, 2026
40194f8
fix(deps): let a menu dropdown trigger render its icon
marcus-souza-azion Sep 4, 2026
b4239d3
feat(nav): reshape the root catalog into labeled groups of dropdowns
marcus-souza-azion Sep 4, 2026
3920852
fix(deps): gate the Dropdown and Tooltip teleports on mount
marcus-souza-azion Sep 4, 2026
ef33fdc
feat(nav): size the top-nav panels to their columns and fix their hyd…
marcus-souza-azion Sep 4, 2026
f42d3d8
feat(nav): give the tree state a header with a filter
marcus-souza-azion Sep 5, 2026
a6270c6
feat(nav): give the mobile drawer the tree header and filter
marcus-souza-azion Sep 5, 2026
f06f66b
feat(nav): list the same products in the panel as the site menu
marcus-souza-azion Sep 5, 2026
a4e457f
feat(guides): turn the guides home into a filterable, paginated catalog
marcus-souza-azion Sep 5, 2026
407deee
feat(nav): rename the Trust dropdown to Policies and updates
marcus-souza-azion Sep 5, 2026
f4cd185
feat(guides): give every product its own guides and tutorials page
marcus-souza-azion Sep 5, 2026
7e084f7
feat(home): rebuild the docs home on the webkit sample
marcus-souza-azion Sep 5, 2026
68710a8
feat(agents): add the Agent Setup section from the webkit sample
marcus-souza-azion Sep 5, 2026
608169f
feat(first-deploy): add the First deploy tutorial reached from the ho…
marcus-souza-azion Sep 5, 2026
a1e7a62
feat(page-header): show the last content change and a way to Agent Setup
marcus-souza-azion Sep 5, 2026
785bdc5
fix(redirects): check redirected urls
marcus-souza-azion Sep 8, 2026
21927cf
refactor(nav): flatten the root sidebar into visible rows
marcus-souza-azion Sep 8, 2026
0ba97f8
refactor(nav): shape the Manage sections around their own pages
marcus-souza-azion Sep 8, 2026
32a798b
feat(home): point the objective and security cards at how-to guides
marcus-souza-azion Sep 8, 2026
75fcaed
fix(header): keep the bar on one line on narrow screens
marcus-souza-azion Sep 8, 2026
8fc6d30
chore(redirects): remove the generated url-map folder
marcus-souza-azion Sep 8, 2026
fcb48d1
chore: drop the explanatory comments the branch introduced
marcus-souza-azion Sep 8, 2026
5b027bc
fix(styles): shim the theme utilities only webkit components use
marcus-souza-azion Sep 8, 2026
468c4c8
refactor: apply the code review findings on the navigation rework
marcus-souza-azion Sep 9, 2026
0b914a5
fix(agents): show the last content change on the agent pages
marcus-souza-azion Sep 9, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
3 changes: 3 additions & 0 deletions .github/workflows/pr-checks.yml
Original file line number Diff line number Diff line change
Expand Up @@ -32,6 +32,9 @@ jobs:
- name: Install dependencies
run: pnpm install --frozen-lockfile

- name: Validate navigation
run: pnpm lint:navcheck

- name: Build and validate frontmatter
run: pnpm build:local
env:
Expand Down
17 changes: 0 additions & 17 deletions astro.config.ts
Original file line number Diff line number Diff line change
Expand Up @@ -46,19 +46,12 @@ export default defineConfig({
astroAsides(),
astroCodeBlocks(),
mdx(),
// No appEntrypoint: the only global Vue plugin was vue-instantsearch,
// gone with the Algolia dialog (the palette talks to Algolia directly).
vue()
],
markdown: {
// Astro 7 defaults to the SΓ€tteri (Rust) markdown pipeline, which does not
// run remark/rehype plugins. Keep the unified() processor until the custom
// plugins below are ported to SΓ€tteri (planned as a follow-up).
processor: unified() as unknown as MarkdownConfig['processor'],
// Override with our own config
smartypants: false,
// The plugins below were written against unified 10 typings; they run
// fine on the unified() processor but Astro 7's plugin types reject them.
remarkPlugins: [
[remarkSmartypants, { dashes: false }],
// Add our custom plugin that marks links to fallback language pages
Expand Down Expand Up @@ -88,21 +81,11 @@ export default defineConfig({
plugins: [
tailwindcss(),
{
// Astro 7 renders static pages in a dedicated `prerender` Vite
// environment that does not inherit the legacy `ssr.noExternal`
// list (and Astro overwrites `environments.prerender` wholesale in
// its build config).
name: 'azion:server-noexternal',
configEnvironment(name: string) {
if (name === 'client') return null;
return {
resolve: {
// `@aziontech/webkit` has to be bundled, not externalised:
// its `navigation-menu` entry is an `index.js` that imports
// `.vue` files, and Node cannot load those on its own
// ("Unknown file extension .vue"). Components whose entry is
// itself a `.vue` or a `.ts` happen to work either way, which
// is why this only surfaced when NavigationMenu was adopted.
noExternal: ['@astrojs/vue', '@aziontech/theme', '@aziontech/webkit'],
external: ['vue']
}
Expand Down
18 changes: 0 additions & 18 deletions azion.config.mjs
Original file line number Diff line number Diff line change
@@ -1,21 +1,3 @@
/**
* This file was automatically generated based on your preset configuration.
*
* For better type checking and IntelliSense:
* 1. Install azion config as dev dependency:
* npm install -D @aziontech/config
*
* 2. Use defineConfig:
* import { defineConfig } from '@aziontech/config'
*
* 3. Replace the configuration with defineConfig:
* export default defineConfig({
* // Your configuration here
* })
*
* For more configuration options, visit:
* https://github.com/aziontech/lib/tree/main/packages/config
*/

export default {
build: {
Expand Down
5 changes: 0 additions & 5 deletions eslint.config.mjs
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,6 @@ export default tseslint.config(
},
},

// TypeScript (and the <script> blocks Astro/Vue hand over as .ts).
...tseslint.configs.recommended.map((config) => ({
...config,
files: ['**/*.ts', '**/*.tsx', '**/*.mts', '**/*.cts'],
Expand All @@ -50,7 +49,6 @@ export default tseslint.config(
...astro.configs.recommended,
...vue.configs['flat/recommended'],

// Vue SFCs: the design-system rules from the webkit plugin apply here.
{
files: ['**/*.vue'],
languageOptions: {
Expand All @@ -60,9 +58,7 @@ export default tseslint.config(
},
},
rules: {
// Docs components are single-word by convention (Footer.vue, Tag.vue).
'vue/multi-word-component-names': 'off',
// Formatting is Prettier's job β€” these rules only fight it.
'vue/html-indent': 'off',
'vue/html-quotes': 'off',
'vue/html-self-closing': 'off',
Expand All @@ -74,7 +70,6 @@ export default tseslint.config(

...webkit.configs.recommended,

// Node-only tooling: build scripts, plugins and configs.
{
files: [
'*.{js,mjs,cjs,ts}',
Expand Down
30 changes: 0 additions & 30 deletions integrations/astro-code-blocks.ts
Original file line number Diff line number Diff line change
Expand Up @@ -9,45 +9,19 @@ export const codeBlockAutoImport: Record<string, [string, string][]> = {
'~/components/CodeBlock/CodeBlock.astro': [['default', CodeBlockTagname]],
};

/**
* Extracts a `title="..."` (or `title='...'`) entry from a fence meta string,
* e.g. ```js title="azion.config.js"
*/
function parseTitle(meta: string | null | undefined): string | undefined {
if (!meta) return undefined;
const match = meta.match(/title=(["'])(.*?)\1/);
return match?.[2] || undefined;
}

/**
* remark plugin that converts fenced code blocks into instances of the
* Webkit-backed `<CodeBlock>` component. Because it runs at the remark level,
* it also covers fences inside imported MDX partials (snippets/tabs), which
* `<Content components={...}>` overrides would miss.
*
* For example, this Markdown
*
* ````md
* ```js title="azion.config.js"
* console.log('hello');
* ```
* ````
*
* will produce this output
*
* ```astro
* <CodeBlock lang="js" fileName="azion.config.js" code="console.log('hello');" />
* ```
*/
function remarkCodeBlocks(): unified.Plugin<[], mdast.Root> {
const transformer: unified.Transformer<mdast.Root> = (tree) => {
visit(tree, 'code', (node: mdast.Code, index, parent) => {
if (!parent || index === null || index === undefined) return;

parent.children[index] = makeComponentNode(CodeBlockTagname, {
attributes: {
// makeComponentNode drops falsy attribute values, so keep an
// empty fence renderable by passing a single blank line.
code: node.value || ' ',
lang: node.lang ?? undefined,
fileName: parseTitle(node.meta),
Expand All @@ -61,10 +35,6 @@ function remarkCodeBlocks(): unified.Plugin<[], mdast.Root> {
};
}

/**
* Astro integration that sets up the remark plugin and auto-imports the
* `<CodeBlock>` component everywhere.
*/
export function astroCodeBlocks(): AstroIntegration {
return {
name: '@azion/code-blocks',
Expand Down
4 changes: 4 additions & 0 deletions package.json
Original file line number Diff line number Diff line change
Expand Up @@ -30,6 +30,10 @@
"lint:linkcheck": "SKIP_OG=true pnpm run build && tsm --require=./scripts/lib/filter-warnings.cjs ./scripts/lint-linkcheck.ts",
"lint:linkcheck:nobuild": "tsm --require=./scripts/lib/filter-warnings.cjs ./scripts/lint-linkcheck.ts",
"lint:slugcheck": "node ./scripts/lint-slugcheck.mjs",
"lint:navcheck": "tsm --require=./scripts/lib/filter-warnings.cjs ./scripts/lint-navcheck.ts",
"nav:url-map": "tsm --require=./scripts/lib/filter-warnings.cjs ./scripts/nav/url-map.ts",
"nav:migrate": "tsm --require=./scripts/lib/filter-warnings.cjs ./scripts/nav/migrate-permalinks.ts",
"nav:retarget": "tsm --require=./scripts/lib/filter-warnings.cjs ./scripts/nav/retarget-links.ts",
"lint:eslint": "eslint .",
"translation-status": "tsm --require=./scripts/lib/filter-warnings.cjs ./scripts/translation-status.ts",
"cp-doc-helpcenter": "cp -R ../docs_help_center/* src/includes/help_center/en/",
Expand Down
Loading
Loading