Skip to content

Commit

Permalink
fix(ember): migrate to pnpm
Browse files Browse the repository at this point in the history
update dependencies
run prettier, eslint
fix test setup
  • Loading branch information
Yelinz committed Jan 18, 2024
1 parent 18dd78e commit 7638fc8
Show file tree
Hide file tree
Showing 112 changed files with 14,683 additions and 16,407 deletions.
14 changes: 10 additions & 4 deletions .github/dependabot.yml
Original file line number Diff line number Diff line change
@@ -1,5 +1,13 @@
version: 2
updates:
- package-ecosystem: github-actions
directory: "/"
schedule:
interval: "weekly"
day: "friday"
time: "12:00"
timezone: "Europe/Zurich"

- package-ecosystem: pip
directory: "/"
schedule:
Expand All @@ -14,6 +22,7 @@ updates:
commit-message:
prefix: chore
include: scope

- package-ecosystem: docker
directory: "/"
schedule:
Expand All @@ -28,6 +37,7 @@ updates:
commit-message:
prefix: chore
include: scope

- package-ecosystem: npm
directory: "/ember"
schedule:
Expand All @@ -44,7 +54,3 @@ updates:
- dependency-name: graphql
versions:
- ">= 16"
# https://github.com/ember-cli/ember-cli/issues/9307
- dependency-name: eslint
versions:
- ">= 8"
26 changes: 13 additions & 13 deletions .github/workflows/tests.yml
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ jobs:
api-tests:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- uses: actions/checkout@v4
- name: Set UID
run: echo "UID=$(id --user)" > .env
- name: Build the containers
Expand All @@ -27,7 +27,7 @@ jobs:
caluma-tests:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- uses: actions/checkout@v4
- name: Set UID
run: echo "UID=$(id --user)" > .env
- name: Build the containers
Expand All @@ -37,11 +37,11 @@ jobs:
caluma-lint:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- uses: actions/checkout@v4
- name: Install poetry
run: pipx install poetry
- name: Setup Python
uses: actions/setup-python@v4
uses: actions/setup-python@v5
with:
python-version: '3.9'
cache: 'poetry'
Expand All @@ -52,35 +52,35 @@ jobs:
ember-test:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- uses: actions/setup-node@v3
- uses: actions/checkout@v4
- uses: wyvox/action-setup-pnpm@v3
with:
node-version: 16
node-version: 18
- name: Install dependencies
run: yarn install
run: pnpm install
working-directory: ${{env.ember-dir}}
- name: Lint the code
run: yarn lint
run: pnpm run lint
working-directory: ${{env.ember-dir}}
- name: Run tests
run: yarn test:ember
run: pnpm run test:ember
working-directory: ${{env.ember-dir}}
ember-build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- uses: actions/checkout@v4
- name: Set UID
run: echo "UID=$(id --user)" > .env
- name: Build and start the container
run: docker compose up -d --build ember
commit-lint:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- uses: actions/checkout@v4
with:
fetch-depth: 0
- name: Setup Python
uses: actions/setup-python@v4
uses: actions/setup-python@v5
with:
python-version: '3.9'
- name: Install gitlint
Expand Down
6 changes: 3 additions & 3 deletions Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -93,12 +93,12 @@ caluma-foreground: ## run caluma in foreground with dev server for debugging

.PHONY: ember-lint
ember-lint: ## lint the frontend
@docker compose run --rm ember yarn lint
@docker compose run --rm ember pnpm run lint

.PHONY: ember-lint-fix
ember-lint-fix: ## lint and fix the frontend
@docker compose run --rm ember yarn lint:js --fix
@docker compose run --rm ember pnpm run lint:js --fix

.PHONY: ember-test
ember-test: ## test the frontend
@docker compose run --rm ember yarn test:ember
@docker compose run --rm ember pnpm run test:ember
2 changes: 1 addition & 1 deletion ember/.eslintrc.js
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
"use strict";

module.exports = {
extends: ["@adfinis-sygroup/eslint-config/ember-app"],
extends: ["@adfinis/eslint-config/ember-app"],

settings: { "import/internal-regex": "^mysagw/" },

Expand Down
10 changes: 6 additions & 4 deletions ember/Dockerfile
Original file line number Diff line number Diff line change
@@ -1,14 +1,16 @@
FROM danlynn/ember-cli:3.28.5 as build
FROM danlynn/ember-cli:4.12.1 as build

ARG OIDC_HOST

COPY package.json yarn.lock /myapp/
COPY package.json pnpm-lock.yaml /myapp/

RUN yarn install
RUN npm install -g pnpm

RUN pnpm install

COPY . /myapp/

RUN yarn deploy production
RUN pnpm run deploy production

FROM nginx:alpine

Expand Down
6 changes: 3 additions & 3 deletions ember/app/abilities/-base.js
Original file line number Diff line number Diff line change
Expand Up @@ -44,7 +44,7 @@ export default class BaseAbility extends Ability {
(member) =>
member.authorized &&
!member.isInactive &&
this.isOwnIdentity(member.identity.get("idpId"))
this.isOwnIdentity(member.identity.get("idpId")),
);
}

Expand All @@ -55,8 +55,8 @@ export default class BaseAbility extends Ability {
return Boolean(
calumaCase.accesses.findBy(
"identity.idpId",
this.session.data.authenticated.userinfo.sub
)
this.session.data.authenticated.userinfo.sub,
),
);
}
}
2 changes: 1 addition & 1 deletion ember/app/abilities/case.js
Original file line number Diff line number Diff line change
Expand Up @@ -37,7 +37,7 @@ export default class CaseAbility extends BaseAbility {
*/
return (
ENV.APP.caluma.redoableTaskSlugs.includes(
this.model.redoWorkItem?.task.slug
this.model.redoWorkItem?.task.slug,
) &&
this.isStaffOrAdmin &&
(this.model.canRedoWorkItem ||
Expand Down
4 changes: 2 additions & 2 deletions ember/app/adapters/application.js
Original file line number Diff line number Diff line change
Expand Up @@ -29,14 +29,14 @@ export default class ApplicationAdapter extends OIDCJSONAPIAdapter {
urlForCreateRecord(modelName, snapshot) {
return this._appendInclude(
super.urlForCreateRecord(modelName, snapshot),
snapshot.adapterOptions
snapshot.adapterOptions,
);
}

urlForUpdateRecord(id, modelName, snapshot) {
return this._appendInclude(
super.urlForUpdateRecord(id, modelName, snapshot),
snapshot.adapterOptions
snapshot.adapterOptions,
);
}

Expand Down
16 changes: 8 additions & 8 deletions ember/app/caluma-query/models/case.js
Original file line number Diff line number Diff line change
Expand Up @@ -32,7 +32,7 @@ export default class CustomCaseModel extends CaseModel {
get hasEditableWorkItem() {
return this.workItems
.filter((workItem) =>
ENV.APP.caluma.documentEditableTaskSlugs.includes(workItem.task.slug)
ENV.APP.caluma.documentEditableTaskSlugs.includes(workItem.task.slug),
)
.isAny("status", "READY");
}
Expand All @@ -42,7 +42,7 @@ export default class CustomCaseModel extends CaseModel {
(workItem) =>
(workItem.task.slug === ENV.APP.caluma.submitTaskSlug ||
workItem.task.slug === ENV.APP.caluma.reviseTaskSlug) &&
workItem.status === "READY"
workItem.status === "READY",
);
}

Expand All @@ -51,22 +51,22 @@ export default class CustomCaseModel extends CaseModel {
return this.workItems.find(
(workItem) =>
workItem.status === "COMPLETED" &&
workItem.task.slug === "decision-and-credit"
workItem.task.slug === "decision-and-credit",
);
}

return this.workItems.find(
(workItem) =>
(workItem.status === "COMPLETED" || workItem.status === "SKIPPED") &&
ENV.APP.caluma.redoableTaskSlugs.includes(workItem.task.slug)
ENV.APP.caluma.redoableTaskSlugs.includes(workItem.task.slug),
);
}

get canRedoWorkItem() {
return this.workItems.find(
(workItem) =>
workItem.status === "READY" &&
ENV.APP.caluma.canRedoTaskSlug.includes(workItem.task.slug)
ENV.APP.caluma.canRedoTaskSlug.includes(workItem.task.slug),
);
}

Expand All @@ -77,14 +77,14 @@ export default class CustomCaseModel extends CaseModel {
get documentNumber() {
return this.document.answers.edges.findBy(
"node.question.slug",
"dossier-nr"
"dossier-nr",
)?.node.StringAnswerValue;
}

get distributionPlan() {
const answer = this.document.answers.edges.findBy(
"node.question.slug",
"verteilplan-nr"
"verteilplan-nr",
)?.node;

if (!answer) {
Expand All @@ -93,7 +93,7 @@ export default class CustomCaseModel extends CaseModel {

return answer.question.options.edges.findBy(
"node.slug",
answer.StringAnswerValue
answer.StringAnswerValue,
).node.label;
}

Expand Down
4 changes: 2 additions & 2 deletions ember/app/caluma-query/models/work-item.js
Original file line number Diff line number Diff line change
Expand Up @@ -41,7 +41,7 @@ export default class CustomWorkItemModel extends WorkItemModel {

get isAssignedToCurrentUser() {
return this.assignedUsers.includes(
this.session.data.authenticated.userinfo.sub
this.session.data.authenticated.userinfo.sub,
);
}

Expand Down Expand Up @@ -90,7 +90,7 @@ export default class CustomWorkItemModel extends WorkItemModel {

async assignToMe() {
return await this.assignToUser(
this.session.data.authenticated.userinfo.sub
this.session.data.authenticated.userinfo.sub,
);
}

Expand Down
4 changes: 2 additions & 2 deletions ember/app/services/case-data.js
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@ export default class CaseDataService extends Service {
variables: { filter: [{ id: caseId }] },
fetchPolicy: "network-only",
},
"allCases.edges"
"allCases.edges",
);

const caseModel = new CustomCaseModel(caseEdges[0].node);
Expand All @@ -46,7 +46,7 @@ export default class CaseDataService extends Service {
},
fetchPolicy: "network-only",
},
"allWorkItems.edges"
"allWorkItems.edges",
);

this.circulation = circulation.firstObject;
Expand Down
4 changes: 2 additions & 2 deletions ember/app/services/fetch.js
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ const CONTENT_TYPE = "application/vnd.api+json";
const cleanObject = (obj) =>
Object.fromEntries(
// eslint-disable-next-line no-unused-vars
Object.entries(obj).filter(([key, value]) => !isEmpty(value))
Object.entries(obj).filter(([key, value]) => !isEmpty(value)),
);

export default class FetchService extends Service {
Expand Down Expand Up @@ -42,7 +42,7 @@ export default class FetchService extends Service {

// throw an error containing a human readable message
throw new Error(
`Fetch request to URL ${response.url} returned ${response.status} ${response.statusText}:\n\n${body}`
`Fetch request to URL ${response.url} returned ${response.status} ${response.statusText}:\n\n${body}`,
);
}

Expand Down
6 changes: 3 additions & 3 deletions ember/app/services/filtered-forms.js
Original file line number Diff line number Diff line change
Expand Up @@ -45,10 +45,10 @@ export default class FilteredFormsService extends Service {

this.value = this.value.filter((form) => {
const visibilities = ENV.APP.caluma.formVisibilities.map(
(visibility) => form.meta[visibility] && userVisibilities[visibility]
(visibility) => form.meta[visibility] && userVisibilities[visibility],
);
const publicVisibility = visibilities.every(
(visibility) => visibility === undefined
(visibility) => visibility === undefined,
);

return publicVisibility || visibilities.any((visibility) => visibility);
Expand All @@ -64,7 +64,7 @@ export default class FilteredFormsService extends Service {
query: getFormsQuery,
variables,
},
"allForms.edges"
"allForms.edges",
)
).map((form) => form.node);
}
Expand Down
8 changes: 4 additions & 4 deletions ember/app/services/session.js
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,7 @@ export default class CustomSession extends Session {
{
include: "organisation",
},
{ adapterOptions: { customEndpoint: "my-memberships" } }
{ adapterOptions: { customEndpoint: "my-memberships" } },
),
this.store.queryRecord("identity", {}),
]);
Expand All @@ -48,9 +48,9 @@ export default class CustomSession extends Session {
this.identity?.memberships.find(
(membership) =>
ENV.APP.circulationOrganisations.includes(
membership.organisation.get("organisationName")
) && !membership.isInactive
)
membership.organisation.get("organisationName"),
) && !membership.isInactive,
),
);
}
}
4 changes: 2 additions & 2 deletions ember/app/ui/cases/detail/circulation/controller.js
Original file line number Diff line number Diff line change
Expand Up @@ -82,7 +82,7 @@ export default class CasesDetailCirculationController extends Controller {
get finishCirculationWorkItem() {
return this.circulationWorkItemsQuery.value.findBy(
"task.slug",
"finish-circulation"
"finish-circulation",
);
}

Expand All @@ -98,7 +98,7 @@ export default class CasesDetailCirculationController extends Controller {
}

return this.workItemsQuery.value.every(
(workItem) => workItem.raw.status === "COMPLETED"
(workItem) => workItem.raw.status === "COMPLETED",
);
}

Expand Down
Loading

0 comments on commit 7638fc8

Please sign in to comment.