Skip to content

Commit

Permalink
Adds OutstandingNeeds and OutstandingCommitments components.
Browse files Browse the repository at this point in the history
  • Loading branch information
wjames111 committed Jan 9, 2024
0 parents commit f3e1a02
Show file tree
Hide file tree
Showing 3,573 changed files with 189,920 additions and 0 deletions.
The diff you're trying to view is too large. We only load the first 3000 changed files.
6 changes: 6 additions & 0 deletions .codecov.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
codecov:
notify:
# Github actions is running 4 test jobs so wait until all those have finished
after_n_builds: 4

comment: false
16 changes: 16 additions & 0 deletions .devcontainer/Dockerfile
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
# See here for image contents: https://github.com/microsoft/vscode-dev-containers/tree/v0.192.0/containers/javascript-node/.devcontainer/base.Dockerfile

# [Choice] Node.js version: 16, 14, 12
ARG VARIANT="16-buster"
FROM mcr.microsoft.com/vscode/devcontainers/javascript-node:0-${VARIANT}

# [Optional] Uncomment this section to install additional OS packages.
# RUN apt-get update && export DEBIAN_FRONTEND=noninteractive \
# && apt-get -y install --no-install-recommends <your-package-list-here>

# [Optional] Uncomment if you want to install an additional version of node using nvm
# ARG EXTRA_NODE_VERSION=10
# RUN su node -c "source /usr/local/share/nvm/nvm.sh && nvm install ${EXTRA_NODE_VERSION}"

# [Optional] Uncomment if you want to install more global node modules
# RUN su node -c "npm install -g <your-package-list-here>"
40 changes: 40 additions & 0 deletions .devcontainer/devcontainer.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,40 @@
// For format details, see https://aka.ms/devcontainer.json. For config options, see the README at:
// https://github.com/microsoft/vscode-dev-containers/tree/v0.192.0/containers/javascript-node
{
"name": "Node.js",
"build": {
"dockerfile": "Dockerfile",
// Update 'VARIANT' to pick a Node version: 12, 14, 16
"args": { "VARIANT": "16" }
},

// Set *default* container specific settings.json values on container create.
"settings": {},

// Add the IDs of extensions you want installed when the container is created.
"extensions": [
"apollographql.vscode-apollo",
"arcanis.vscode-zipfs",
"dbaeumer.vscode-eslint",
"eamodio.gitlens",
"EdgardMessias.clipboard-manager",
"EditorConfig.EditorConfig",
"esbenp.prettier-vscode",
"GraphQL.vscode-graphql",
"naumovs.color-highlight",
"Orta.vscode-jest",
"ryu1kn.partial-diff",
"streetsidesoftware.code-spell-checker",
"waderyan.nodejs-extension-pack",
"ziyasal.vscode-open-in-github"
],

// Use 'forwardPorts' to make a list of ports inside the container available locally.
"forwardPorts": [3000],

// Use 'postCreateCommand' to run commands after the container is created.
"postCreateCommand": "yarn install && yarn gql && yarn gql:server",

// Comment out connect as root instead. More info: https://aka.ms/vscode-remote/containers/non-root.
"remoteUser": "node"
}
10 changes: 10 additions & 0 deletions .eslintignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
build
node_modules
.next
.now
public
dist

# Storybook cache
/node_modules/.cache
/storybook-static
106 changes: 106 additions & 0 deletions .eslintrc.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,106 @@
module.exports = {
parser: '@typescript-eslint/parser', // Specifies the ESLint parser
extends: [
'plugin:jest/recommended',
'plugin:import/errors',
'plugin:import/warnings',
'plugin:import/typescript',
'plugin:react/recommended', // Uses the recommended rules from @eslint-plugin-react
'plugin:@typescript-eslint/recommended', // Uses the recommended rules from the @typescript-eslint/eslint-plugin
'plugin:jsx-a11y/recommended',
'plugin:@next/next/recommended',
'prettier',
],
rules: {
'@typescript-eslint/camelcase': 'off',
'import/no-duplicates': 'error',
'import/extensions': 'error',
'import/order': [
'error',
{
groups: [
'builtin',
'external',
'internal',
'parent',
'sibling',
'index',
'object',
'type',
],
alphabetize: { order: 'asc' },
'newlines-between': 'never',
pathGroups: [
{
pattern: '{next,next/**,react}',
group: 'external',
position: 'before',
},
{
pattern: '{src,pages,__tests__}/**',
group: 'parent',
position: 'before',
},
],
},
],
'import/newline-after-import': 'error',
'import/no-named-default': 'error',
'import/no-named-as-default-member': 'off',
'import/no-anonymous-default-export': 'error',
'import/no-useless-path-segments': 'error',
'import/dynamic-import-chunkname': 'error',
'sort-imports': [
'error',
{
ignoreDeclarationSort: true,
ignoreMemberSort: false,
},
],
eqeqeq: 'error',
'no-console': 'error',
'@typescript-eslint/no-loss-of-precision': 'warn',
'@typescript-eslint/no-unused-vars': [
'error',
{ argsIgnorePattern: '^_', varsIgnorePattern: '^_' },
],
'react/jsx-no-useless-fragment': 'error',
'react/prop-types': 'off',
'react/react-in-jsx-scope': 'off',
},
settings: {
react: {
version: 'detect',
},
'import/resolver': {
node: {
paths: ['.'], // Allows to import url starting from 'src'
},
},
},
overrides: [
{
files: ['*.js'],
rules: {
'@typescript-eslint/explicit-function-return-type': 'off',
'@typescript-eslint/no-var-requires': 'off',
},
},
{
files: ['*.stories.tsx', '*.test.tsx', '__tests__/**.*'],
rules: {
'import/no-anonymous-default-export': 'off',
'@typescript-eslint/no-empty-function': 'off',
'jsx-a11y/anchor-is-valid': 'off',
'jsx-a11y/click-events-have-key-events': 'off',
'jsx-a11y/no-static-element-interactions': 'off',
},
},
{
files: ['onesky/**.ts'],
rules: {
'@typescript-eslint/no-var-requires': 'off',
},
},
],
};
10 changes: 10 additions & 0 deletions .github/PULL_REQUEST_TEMPLATE.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
## Description

Please explain a bullet-point summary of the changes.
List any PRs that this PR is dependent on and any Jira tickets that this PR is related to.

## Checklist:

- [ ] I have given my PR a title with the format "MPDX-(JIRA#) (summary sentence max 80 chars)"
- [ ] I have applied the appropriate labels. (_Add the label "On Staging" to get the branch automatically merged into staging._)
- [ ] I have requested a review from another person on the project
7 changes: 7 additions & 0 deletions .github/renovate.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
{
"extends": ["config:base", ":preserveSemverRanges"],
"ignorePaths": [".yarn/sdks/"],
"labels": ["dependencies"],
"prConcurrentLimit": 8,
"prHourlyLimit": 2
}
136 changes: 136 additions & 0 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,136 @@
name: CI

on:
push:
branches: [main]
pull_request:
branches: [main]
workflow_dispatch:

env:
# Use production API for codegen to make sure production is compatible with the code to be merged
API_URL: 'https://api.mpdx.org/graphql'
SITE_URL: 'http://next-stage.mpdx.org'

jobs:
split-tests:
runs-on: ubuntu-latest
outputs:
test-chunks: ${{ steps['set-test-chunks'].outputs['test-chunks'] }}
test-chunk-ids: ${{ steps['set-test-chunk-ids'].outputs['test-chunk-ids'] }}
steps:
- uses: actions/checkout@v3
- uses: actions/setup-node@v3
with:
node-version: 18
- name: 📦 Install Dependencies
run: yarn install --immutable --immutable-cache
- id: set-test-chunks
name: Set Chunks
run: echo "test-chunks=$(yarn test --silent --listTests --json | jq -cM '[_nwise(length / 4 | ceil)]')" >> $GITHUB_OUTPUT
- id: set-test-chunk-ids
name: Set Chunk IDs
run: echo "test-chunk-ids=$(echo $CHUNKS | jq -cM 'to_entries | map(.key)')" >> $GITHUB_OUTPUT
env:
CHUNKS: ${{ steps['set-test-chunks'].outputs['test-chunks'] }}

test:
runs-on: ubuntu-latest
name: test (chunk ${{ matrix.chunk }})
needs:
- split-tests
strategy:
matrix:
chunk: ${{ fromJson(needs.split-tests.outputs['test-chunk-ids']) }}
steps:
- uses: actions/checkout@v3
- uses: actions/setup-node@v3
with:
node-version: 18
- name: 📦 Install Dependencies
run: yarn install --immutable --immutable-cache
- name: 📈 Run GraphQL Codegen
run: |
yarn gql
yarn gql:server
- name: 🧪 Test (chunk ${{ matrix.chunk }})
run: echo $CHUNKS | jq '.[${{ matrix.chunk }}] | .[] | @text' | xargs yarn test:coverage --ci
env:
CHUNKS: ${{ needs.split-tests.outputs['test-chunks'] }}
- name: Codecov
uses: codecov/codecov-action@v3
with:
token: ${{ secrets.CODECOV_TOKEN }}
fail_ci_if_error: true

eslint:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- uses: actions/setup-node@v3
with:
node-version: 18
- name: 📦 Install Dependencies
run: yarn install --immutable --immutable-cache
- name: 📈 Run GraphQL Codegen
run: |
yarn gql
yarn gql:server
- name: 💨 ESLint
run: yarn lint:ci

typescript:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- uses: actions/setup-node@v3
with:
node-version: 18
- name: 📦 Install Dependencies
run: yarn install --immutable --immutable-cache
- name: 📈 Run GraphQL Codegen
run: |
yarn gql
yarn gql:server
- name: ✅ TypeScript lint
run: yarn lint:ts

prettier:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- uses: actions/setup-node@v3
with:
node-version: 18
- name: 📦 Install Dependencies
run: yarn install --immutable --immutable-cache
- name: 💅 Prettier Check
run: yarn prettier:check

yarn-check-cache:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- uses: actions/setup-node@v3
with:
node-version: 18
- name: 📦 Install Dependencies
run: yarn install --immutable --immutable-cache --check-cache

onesky-upload:
runs-on: ubuntu-latest
needs: [test, eslint, typescript, prettier]
if: github.event_name == 'push' && github.ref == 'refs/heads/main'
steps:
- uses: actions/checkout@v3
- uses: actions/setup-node@v3
with:
node-version: 18
- name: 📦 Install Dependencies
run: yarn install --immutable --immutable-cache
- name: ⛅🔼 OneSky Upload
env:
ONESKY_API_KEY: ${{ secrets.ONESKY_API_KEY }}
ONESKY_API_SECRET: ${{ secrets.ONESKY_API_SECRET }}
ONESKY_PROJECT_ID: ${{ secrets.ONESKY_PROJECT_ID }}
run: yarn onesky:upload
20 changes: 20 additions & 0 deletions .github/workflows/update-staging.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
name: Update staging
on:
push:
branches:
- main
pull_request:
types: [labeled, synchronize]

jobs:
update-staging:
runs-on: ubuntu-latest
if: github.ref == 'refs/heads/main' || contains(github.event.pull_request.labels.*.name, 'On Staging')
steps:
- uses: actions/checkout@v3
- name: 🖇️ Merge current branch into staging
uses: devmasx/[email protected]
with:
type: now
target_branch: 'staging'
github_token: ${{ github.token }}
Loading

0 comments on commit f3e1a02

Please sign in to comment.