diff --git a/.github/workflows/catalog-previews.yml b/.github/workflows/catalog-previews.yml index 1822e7683b..9cf3a9c0b6 100644 --- a/.github/workflows/catalog-previews.yml +++ b/.github/workflows/catalog-previews.yml @@ -70,9 +70,13 @@ jobs: env: BASE_SHA: ${{ github.event.pull_request.base.sha }} run: | - # Find which blocks/components changed in this PR + # Find which blocks/components changed in this PR. The trailing slash + # in the grep matters: an item is a directory, and a file sitting + # directly under registry/components (CATALOG.md) does not match the + # sed, so without it the whole path survives and is passed to the + # renderer as if it were an item name. CHANGED_ITEMS=$(git diff --name-only --diff-filter=ACMR "$BASE_SHA"...HEAD -- registry/blocks/ registry/components/ \ - | grep -E '^registry/(blocks|components)/' \ + | grep -E '^registry/(blocks|components)/[^/]+/' \ | sed 's|^registry/[^/]*/\([^/]*\)/.*|\1|' \ | sort -u) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 43b10f519c..22ebe40685 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -293,10 +293,13 @@ jobs: node-version: 22 - uses: ./.github/actions/prepare-ffmpeg-bin - run: bash scripts/ci/install-workspace-dependencies.sh - - run: bun run test:scripts - run: bun run --filter '@hyperframes/{parsers,lint,studio-server}' build - run: bun run --cwd packages/core build - run: bun run --cwd packages/core build:hyperframes-runtime + # After the builds: the preview scripts drive the producer, which imports + # @hyperframes/core from dist, so running these first fails on a missing + # module rather than on anything the test is actually checking. + - run: bun run test:scripts - run: bun run --filter '!@hyperframes/producer' test producer-source-tests: diff --git a/.oxlintrc.json b/.oxlintrc.json index 40afcb08e5..6c6686f48f 100644 --- a/.oxlintrc.json +++ b/.oxlintrc.json @@ -11,6 +11,7 @@ "node_modules/", "playground/", "packages/producer/tests/**/src/vendor/**", + "docs/public/catalog/", "registry/blocks/**/lib/*.iife.js", "chrome/" ], @@ -34,6 +35,9 @@ }, { "files": ["docs/snippets/**/*.jsx", "docs/snippets/**/*.tsx"], + "globals": { + "CodeBlock": "readonly" + }, "rules": { "react-hooks/rules-of-hooks": "error", "react-hooks/exhaustive-deps": "warn" diff --git a/bun.lock b/bun.lock index d0a60ce835..a42c529bcf 100644 --- a/bun.lock +++ b/bun.lock @@ -24,7 +24,7 @@ }, "packages/aws-lambda": { "name": "@hyperframes/aws-lambda", - "version": "0.7.78", + "version": "0.7.103", "dependencies": { "@aws-sdk/client-s3": "^3.700.0", "@aws-sdk/client-sfn": "^3.700.0", @@ -57,7 +57,7 @@ }, "packages/cli": { "name": "@hyperframes/cli", - "version": "0.7.78", + "version": "0.7.103", "bin": { "hyperframes": "./bin/hyperframes.mjs", }, @@ -107,7 +107,7 @@ }, "packages/core": { "name": "@hyperframes/core", - "version": "0.7.78", + "version": "0.7.103", "dependencies": { "@chenglou/pretext": "^0.0.5", "@hyperframes/lint": "workspace:*", @@ -132,7 +132,7 @@ }, "packages/engine": { "name": "@hyperframes/engine", - "version": "0.7.78", + "version": "0.7.103", "dependencies": { "@hono/node-server": "^2.0.5", "@hyperframes/core": "workspace:^", @@ -151,7 +151,7 @@ }, "packages/gcp-cloud-run": { "name": "@hyperframes/gcp-cloud-run", - "version": "0.7.78", + "version": "0.7.103", "dependencies": { "@google-cloud/storage": "^7.14.0", "@google-cloud/workflows": "^4.2.0", @@ -172,7 +172,7 @@ }, "packages/lint": { "name": "@hyperframes/lint", - "version": "0.7.78", + "version": "0.7.103", "dependencies": { "@hyperframes/parsers": "workspace:*", "htmlparser2": "^10.1.0", @@ -190,7 +190,7 @@ }, "packages/parsers": { "name": "@hyperframes/parsers", - "version": "0.7.78", + "version": "0.7.103", "dependencies": { "@babel/parser": "^7.27.0", "acorn": "^8.17.0", @@ -210,7 +210,7 @@ }, "packages/player": { "name": "@hyperframes/player", - "version": "0.7.78", + "version": "0.7.103", "dependencies": { "@hyperframes/core": "workspace:*", }, @@ -225,7 +225,7 @@ }, "packages/producer": { "name": "@hyperframes/producer", - "version": "0.7.78", + "version": "0.7.103", "dependencies": { "@fontsource/archivo-black": "^5.2.8", "@fontsource/eb-garamond": "^5.2.7", @@ -270,7 +270,7 @@ }, "packages/sdk": { "name": "@hyperframes/sdk", - "version": "0.7.78", + "version": "0.7.103", "dependencies": { "@hyperframes/core": "workspace:*", "@hyperframes/parsers": "workspace:*", @@ -300,7 +300,7 @@ }, "packages/shader-transitions": { "name": "@hyperframes/shader-transitions", - "version": "0.7.78", + "version": "0.7.103", "dependencies": { "html2canvas": "^1.4.1", }, @@ -312,7 +312,7 @@ }, "packages/studio": { "name": "@hyperframes/studio", - "version": "0.7.78", + "version": "0.7.103", "dependencies": { "@codemirror/autocomplete": "^6.20.1", "@codemirror/commands": "^6.10.3", @@ -362,7 +362,7 @@ }, "packages/studio-server": { "name": "@hyperframes/studio-server", - "version": "0.7.78", + "version": "0.7.103", "dependencies": { "@hyperframes/core": "workspace:*", "@hyperframes/parsers": "workspace:*", diff --git a/docs/catalog/blocks/app-showcase.mdx b/docs/catalog/blocks/app-showcase.mdx index 7bac206143..5fa245c146 100644 --- a/docs/catalog/blocks/app-showcase.mdx +++ b/docs/catalog/blocks/app-showcase.mdx @@ -3,34 +3,979 @@ title: "App Showcase" description: "Fitness app product showcase with three floating smartphone screens" --- -