Skip to content

Import Figma variables #38

Import Figma variables

Import Figma variables #38

Workflow file for this run

name: Import Figma variables
on:
workflow_dispatch:
jobs:
import:
name: Import Figma variables
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: pnpm/action-setup@v4
- name: Setup Node.js
uses: actions/setup-node@v4
with:
node-version-file: .node-version
cache: pnpm
- name: 📦 Install dependencies
run: pnpm install
- name: 🛠️ Build Figma utils
run: pnpm run build
working-directory: packages/figma-utils
# we need to separately import the themes because they are all needed in different formats and selectors
- name: 🎨 Import onyx light variables
run: |
pnpm run @sit-onyx/figma-utils import-variables -k "${{ vars.FIGMA_FILE_KEY }}" -t "${{ secrets.FIGMA_TOKEN }}" -d "../sit-onyx/src/styles/variables/themes" -m value onyx-light -f CSS -s ":where(:root), .onyx-theme-default"
working-directory: packages/figma-utils
- name: 🎨 Import onyx dark variables
run: |
pnpm run @sit-onyx/figma-utils import-variables -k "${{ vars.FIGMA_FILE_KEY }}" -t "${{ secrets.FIGMA_TOKEN }}" -d "../sit-onyx/src/styles/variables/themes" -m onyx-dark -f CSS -s ":where(.dark), .onyx-theme-default-dark"
working-directory: packages/figma-utils
- name: 🎨 Import additional onyx light-themes
run: |
pnpm run @sit-onyx/figma-utils import-variables -k "${{ vars.FIGMA_FILE_KEY }}" -t "${{ secrets.FIGMA_TOKEN }}" -d "../sit-onyx/src/styles/variables/themes" -m lidl-light kaufland-light digits-light -f CSS -s ":where(:root), .onyx-theme-{mode}"
working-directory: packages/figma-utils
- name: 🎨 Import additional onyx dark-themes
run: |
pnpm run @sit-onyx/figma-utils import-variables -k "${{ vars.FIGMA_FILE_KEY }}" -t "${{ secrets.FIGMA_TOKEN }}" -d "../sit-onyx/src/styles/variables/themes" -m lidl-dark kaufland-dark digits-dark -f CSS -s ":where(.dark), .onyx-theme-{mode}"
working-directory: packages/figma-utils
- name: 🛠️ Import spacing variables
run: |
pnpm run @sit-onyx/figma-utils import-variables -k "${{ vars.FIGMA_FILE_KEY }}" -t "${{ secrets.FIGMA_TOKEN }}" -d "../sit-onyx/src/styles/variables" -m spacing -s ":where(:root)"
working-directory: packages/figma-utils
- name: 🛠️ Import default density variables
run: |
pnpm run @sit-onyx/figma-utils import-variables -k "${{ vars.FIGMA_FILE_KEY }}" -t "${{ secrets.FIGMA_TOKEN }}" -d "../sit-onyx/src/styles/variables" -m default -s ":where(:root), :where(.onyx-density-{mode})" -n density-
working-directory: packages/figma-utils
- name: 🛠️ Import remaining densities
run: |
pnpm run @sit-onyx/figma-utils import-variables -k "${{ vars.FIGMA_FILE_KEY }}" -t "${{ secrets.FIGMA_TOKEN }}" -d "../sit-onyx/src/styles/variables" -m compact cozy -s ":where(.onyx-density-{mode})" -n density-
working-directory: packages/figma-utils
- name: Create pull request
uses: peter-evans/create-pull-request@v7
with:
commit-message: "feat: update Figma variables"
title: "feat: update Figma variables"
body: |
This is an auto-generated pull request.
All variables have been updated from the [Figma file](https://www.figma.com/design/${{ vars.FIGMA_FILE_KEY }}).
branch-suffix: short-commit-hash # needed to not override other pull requests created via workflows
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
BRANCH_NAME: ${{ github.ref_name }}