Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
42 commits
Select commit Hold shift + click to select a range
4ebfba4
Remove react and deskpro-ui to slimline the app-sdk
HappyPaul55 May 30, 2025
cfe5f26
Remove node leftovers
HappyPaul55 Jun 2, 2025
20b991e
Linting
HappyPaul55 Jun 2, 2025
81362d3
More context types
HappyPaul55 Jun 2, 2025
cda8a64
More context types
HappyPaul55 Jun 2, 2025
04f47d3
More context types
HappyPaul55 Jun 2, 2025
57395d4
Coding standards and more tests
HappyPaul55 Jun 3, 2025
07a22a5
Coding standards and more tests
HappyPaul55 Jun 3, 2025
7cae7fe
Coding standards and more tests
HappyPaul55 Jun 3, 2025
f690e05
Coding standards and more tests
HappyPaul55 Jun 3, 2025
c3c418e
Coding standards and more tests
HappyPaul55 Jun 3, 2025
9fc5039
Coding standards and more tests
HappyPaul55 Jun 3, 2025
773770f
Coding standards and more tests
HappyPaul55 Jun 3, 2025
a78ae69
Coding standards and more tests
HappyPaul55 Jun 3, 2025
8c2e9f6
Coding standards and more tests
HappyPaul55 Jun 4, 2025
3505a9d
Coding standards and more tests
HappyPaul55 Jun 4, 2025
b30956f
Coding standards and more tests
HappyPaul55 Jun 4, 2025
ab6bf32
Coding standards and more tests
HappyPaul55 Jun 4, 2025
54716cf
Coding standards and more tests
HappyPaul55 Jun 4, 2025
c460827
Coding standards and more tests
HappyPaul55 Jun 4, 2025
8380d05
Coding standards and more tests
HappyPaul55 Jun 4, 2025
8e0a6c5
Add types from Deskpro for Context
HappyPaul55 Jun 4, 2025
35c8d71
Add types from Deskpro for Context
HappyPaul55 Jun 4, 2025
5a7eea2
Add types from Deskpro for Context
HappyPaul55 Jun 4, 2025
bc1b2e4
Add types from Deskpro for Context
HappyPaul55 Jun 4, 2025
bc1a0ef
Improve types
HappyPaul55 Jun 5, 2025
2c6d8c3
Improve types
HappyPaul55 Jun 5, 2025
712da7f
Improve types and use a event listener to support multiple listeners …
HappyPaul55 Jun 5, 2025
76d23b8
Fix typings
HappyPaul55 Jun 5, 2025
545cda5
Add documentation to types
HappyPaul55 Jun 6, 2025
e99fe53
Namespace all public APIs for the SDK, more tests and more
HappyPaul55 Jun 6, 2025
fa0ab22
Coding standards
HappyPaul55 Jun 6, 2025
23928e7
naming
HappyPaul55 Jun 9, 2025
a75419d
Add missing exports
HappyPaul55 Jun 9, 2025
25ffb33
Add missing exports
HappyPaul55 Jun 9, 2025
be2f9e6
More docs, examples and links
HappyPaul55 Jun 9, 2025
c716d0e
More docs, examples and links
HappyPaul55 Jun 9, 2025
2ce40ef
Improve build process
HappyPaul55 Jun 10, 2025
2e10ccc
Add test task
HappyPaul55 Jun 11, 2025
48aca01
Fix deno releases
HappyPaul55 Jun 11, 2025
ab03bd2
Use deno task test for tests
HappyPaul55 Jun 11, 2025
a322405
Better docs
HappyPaul55 Jun 11, 2025
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
  •  
  •  
  •  
11 changes: 0 additions & 11 deletions .babelrc

This file was deleted.

50 changes: 25 additions & 25 deletions .devcontainer/devcontainer.json
Original file line number Diff line number Diff line change
@@ -1,26 +1,26 @@
{
"name": "App Container",
"image": "mcr.microsoft.com/devcontainers/javascript-node:latest",
"features": {
"ghcr.io/devcontainers/features/node:1": {
"version": "lts",
"pnpm": "latest"
}
},
"customizations": {
"vscode": {
"settings": {
"terminal.integrated.defaultProfile.linux": "bash",
"editor.tabSize": 2
},
"extensions": [
"dbaeumer.vscode-eslint"
]
}
},
"mounts": [
"source=${localEnv:HOME}/.gitconfig,target=/home/node/.gitconfig,type=bind,consistency=cached",
"source=${localEnv:HOME}/.ssh,target=/home/node/.ssh,type=bind,consistency=cached"
],
"postCreateCommand": "pnpm install"
}
"name": "App Container",
"image": "mcr.microsoft.com/devcontainers/javascript-node:latest",
"features": {
"ghcr.io/devcontainers/features/node:1": {
"version": "lts",
"pnpmVersion": "latest"
}
},
"customizations": {
"vscode": {
"settings": {
"terminal.integrated.defaultProfile.linux": "bash",
"editor.tabSize": 2
},
"extensions": [
"denoland.vscode-deno"
]
}
},
"mounts": [
"source=${localEnv:HOME}/.gitconfig,target=/home/node/.gitconfig,type=bind,consistency=cached",
"source=${localEnv:HOME}/.ssh,target=/home/node/.ssh,type=bind,consistency=cached"
],
"onCreateCommand": "curl -fsSL https://deno.land/x/install/install.sh | sh -s -- --yes && . \"/home/node/.deno/env\""
}
26 changes: 0 additions & 26 deletions .editorconfig

This file was deleted.

16 changes: 0 additions & 16 deletions .eslintrc.js

This file was deleted.

93 changes: 12 additions & 81 deletions .github/workflows/main.yaml
Original file line number Diff line number Diff line change
@@ -1,89 +1,20 @@
name: CI/CD
name: Main Build

on:
pull_request:
types: [closed]
push:
branches:
- main

concurrency:
group: ${{ github.workflow }}-build
cancel-in-progress: false

jobs:
release:
if: github.event.pull_request.merged == true
build_and_tag:
uses: ./.github/workflows/subworkflow-build.yml
secrets: inherit
with:
push-tag: true
permissions:
contents: write
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v4

- name: Set up Node.js
uses: actions/setup-node@v4
with:
node-version: "22"

- uses: pnpm/action-setup@v4
name: Install pnpm
id: pnpm-install
with:
version: 9
run_install: false

- name: Get pnpm store directory
id: pnpm-cache
shell: bash
run: |
echo "STORE_PATH=$(pnpm store path)" >> $GITHUB_OUTPUT

- uses: actions/cache@v4
name: Setup pnpm cache
with:
path: ${{ steps.pnpm-cache.outputs.STORE_PATH }}
key: ${{ runner.os }}-pnpm-store-${{ hashFiles('**/pnpm-lock.yaml') }}
restore-keys: |
${{ runner.os }}-pnpm-store-

- name: Install dependencies
run: pnpm install --frozen-lockfile --strict-peer-dependencies

- name: Build package
run: pnpm run build

- name: Get labels from pull request
id: labels
run: echo "milestone=$(jq --raw-output '.pull_request.labels[].name' $GITHUB_EVENT_PATH | grep -E 'major-version|minor-version' | head -1)" >> $GITHUB_OUTPUT

- name: Bump Version
run: |
git config --global user.name "git log -1 --pretty=format:%an"
git config --global user.email "$(git log -1 --pretty=format:%ae)"

if [ "$(git log -1 --pretty=format:%ae)" = "noreply@github.com" ]; then
echo "Skipping workflow run because previous commit was not made by workflow."
exit 0
fi

if [[ "${{ steps.labels.outputs.milestone }}" == "major-version" ]]; then
pnpm version major
elif [[ "${{ steps.labels.outputs.milestone }}" == "minor-version" ]]; then
pnpm version minor
else
pnpm version patch
fi

pnpm run docs:storybook

git add docs/*

git commit -m "Updated Storybook"

git push origin main

- name: Authenticate Registry
env:
NODE_AUTH_TOKEN: ${{ secrets.NPM_AUTH_TOKEN }}
run: pnpm config set //registry.npmjs.org/:_authToken $NODE_AUTH_TOKEN

- name: Publish to Registry
env:
NODE_AUTH_TOKEN: ${{ secrets.NPM_AUTH_TOKEN }}
run: pnpm publish
pull-requests: read
92 changes: 13 additions & 79 deletions .github/workflows/pr_build.yml
Original file line number Diff line number Diff line change
@@ -1,85 +1,19 @@
name: PR Build
name: Feature Build

on:
pull_request:
branches:
- main
merge_group: # support for merge queues/groups
workflow_dispatch:

# Allow this job to be canceled when new commits are pushed
concurrency:
group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }}
cancel-in-progress: true

jobs:
deskpro_ui:
name: Test / Build
timeout-minutes: 30
runs-on: ubuntu-latest
build:
uses: ./.github/workflows/subworkflow-build.yml
secrets: inherit
permissions:
contents: read
pull-requests: write
issues: write
steps:
- name: Checkout
uses: actions/checkout@v4
with:
fetch-depth: 0

- name: Set up Node.js
uses: actions/setup-node@v4
with:
node-version: "22"

- uses: pnpm/action-setup@v4
name: Install pnpm
id: pnpm-install
with:
version: 9
run_install: false

- name: Get pnpm store directory
id: pnpm-cache
shell: bash
run: |
echo "STORE_PATH=$(pnpm store path)" >> $GITHUB_OUTPUT

- uses: actions/cache@v4
name: Setup pnpm cache
with:
path: ${{ steps.pnpm-cache.outputs.STORE_PATH }}
key: ${{ runner.os }}-pnpm-store-${{ hashFiles('**/pnpm-lock.yaml') }}
restore-keys: |
${{ runner.os }}-pnpm-store-

- name: Install dependencies
run: pnpm install --frozen-lockfile --strict-peer-dependencies

- name: Build package
run: pnpm run build

- name: Lint
run: pnpm run lint

- name: Type check
run: pnpm exec tsc -b

- name: Run tests
run: pnpm run test

- name: Build Storybook
run: pnpm run build:storybook

- name: Deploy Storybook
id: chromauideployment
if: github.actor != 'dependabot[bot]'
uses: chromaui/action@c93e0bc3a63aa176e14a75b61a31847cbfdd341c # v1
with:
token: ${{ secrets.GITHUB_TOKEN }}
projectToken: ${{ secrets.CHROMATIC_PROJECT_TOKEN }}
storybookBuildDir: storybook
exitOnceUploaded: true

- name: Leave comment with URL
if: github.actor != 'dependabot[bot]'
uses: peter-evans/create-or-update-comment@71345be0265236311c031f5c7866368bd1eff043 # v4
with:
issue-number: ${{ github.event.pull_request.number }}
body: |
:rocket: **Storybook is ready!** :rocket:
You can view the [Storybook Build here](${{ steps.chromauideployment.outputs.storybookUrl }}) and the [Chromatic Build here](${{steps.chromauideployment.outputs.buildUrl}}).
reactions: rocket
contents: write
pull-requests: read
Loading
Loading