Files
threshold-ui/addons/api/README.md
T
hashicc 5a302b0bcc Migrate to pnpm (#2828)
* chore: 🤖 remove packageManager field from package.json

* chore: 🤖 migrate yarn resolutions to pnpm overrides

* chore: 🤖 generate pnpm-lock.yml by using: pnpm import yarn.lock

* chore: 🤖 remove yarn.lock file

* chore: 🤖 migrate workspace configuration

* chore: 🤖 remove .yarn and .yarnrc.yml config

* chore: 🤖 update .copyright.hcl to ignore root pnpm files

* chore: 🤖 migrate husky pre-commit hook from yarn to pnpm

* chore: 🤖 migrate package.json scripts from yarn to pnpm

* chore: 🤖 update rose package.json & build to use explicit deps

* chore: 🤖 remove unused cp metadata.json command in pjson script

The cp metadata.json to dist was added in:
d19a251

The addons/rose/metadata.json no longer exists so it can't be copied

* chore: 🤖 migrate electron-app package.json scripts to pnpm

* chore: 🤖 create pnpm workspace for electron-app w/ hoisted deps

* chore: 🤖 migrate electron-app yarn lockfile to pnpm lockfile

Used "pnpm import yarn.lock"

* chore: 🤖 migrate electron-app overrides

node-gyp isn't needed since the fork is used via @electron/node-gyp
see: https://github.com/electron/node-gyp?tab=readme-ov-file#node-gyp---nodejs-native-addon-build-tool

* chore: 🤖 add trusted deps to be built to onlyBuiltDependencies

This is a pnpm feature that increases security. By defining these
dependencies they are being trusted to allow install hooks,
including postinstall. See:
https://pnpm.io/settings#onlybuiltdependencies

* chore: 🤖 add electron-app pnpm files to copyright header ignore

* chore: 🤖 remove yarn references from .*ignore files

* chore: 🤖 migrate --yarn to --pnpm for ember-cli-update.json

This isn't clearly documented but something that is supported
and can be found in other ember apps:
https://github.com/search?q=--pnpm+ember-cli-update.json&type=code

* chore: 🤖 migrate ci and related scripts to use pnpm

The cache is migrated to use the cache supported by
actions/setup-node@v4, an action we are already using. This is the
recommended way by pnpm:
https://pnpm.io/continuous-integration#github-actions

This commit also ensures that all github actions are using
consistent versions of actions/setup-node and pnpm/action-setup

* docs: ✏️ update documentation to use pnpm instead of yarn

* chore: 🤖 use explicit asciinema-player dependency

Because we override styles on asciinema-player we depend on their
styles. What might be a minor non-breaking change in their version could
(and did) break our style expectations in our overrides.

* chore: 🤖 run pnpm install and commit lockfile changes

* chore: 🤖 Remove ember-inflector from being overidden

https://github.com/hashicorp/boundary-ui/pull/2828#discussion_r2110380711

* chore: 🤖 remove highlight.js from pnpm overrides

https://github.com/hashicorp/boundary-ui/pull/2828#discussion_r2109847938

* chore: 🤖 remove additional unnecessary files from ignore files

* docs: ✏️ fix pnpm doc links

* chore: 🤖 use corepack to specify packageManager in package.json

* chore: 🤖 let pnpm action in ci use packageManager for version

https://github.com/pnpm/action-setup?tab=readme-ov-file#version

* docs: ✏️ fix broken pnpm website links
2025-06-03 12:55:12 -04:00

3.1 KiB
Raw Blame History

API data layer Ember Addon for Boundary

This addon contains the API data access layer for Boundary.

Table of Contents generated with DocToc

Add API to an App

Add this addon to an Ember application's devDependencies as: "api": "workspace:*", for applications included in this monorepo.

Since this addon also includes Mirage mocks, be sure to install ember-cli-mirage and add the following config to your UI project:

'ember-cli-mirage': {
  directory: '../../addons/api/mirage'
}

Installation

See monorepo README for installation instructions.

When manually installing addon, ensure ember-data-fragments@5.0.0-beta.* is installed to use api models with data fragments.

Pnpm Commands

List of available project commands. pnpm run <command-name>

Command Description
build:development Builds the dummy app in development mode.
build Builds the dummy app for production.
lint Runs all lint commands.
lint:fix Runs automatic lint fixes for all type of file.
lint:hbs Runs lint for hbs template files.
lint:hbs:fix Runs automatic lint fixes for hbs template files.
lint:js Lints js files.
lint:js:fix Runs automatic lint fixes for js files.
format Runs all auto-formatters.
format:js Auto-formats js files using Prettier.
start Runs the dummy app local server.
test Runs all tests.
test:ember-compatibility Runs tests across multiple Ember versions with ember-try.
precommit Runs all lint and format.
doc:toc Automatically generates a table of contents for this README file.

Additional commands in the monorepo package may affect this projects.

Linting

  • pnpm lint:fix
  • pnpm lint:hbs
  • pnpm lint:hbs:fix
  • pnpm lint:js
  • pnpm lint:js:fix

Formatting

Before submitting your work, be sure to run auto-formatters (see commands above). This helps to ensure consistency among authors.

  • pnpm format

Running tests

  • pnpm test – Runs the test suite on the current Ember version
  • pnpm test --server – Runs the test suite in "watch mode"
  • pnpm test:all – Runs the test suite against multiple Ember versions

Running the dummy application

Contributing

See monorepo README for more contribution instructions.

Building ToC

To autogenerate a ToC (table of contents) for this README, run pnpm doc:toc. Please update the ToC whenever editing the structure of README.