Files
threshold-ui/package.json
T
hashiccandZhihe Li b42ecbff36 Add api client for playwright e2e tests (#2901)
* chore: 🤖 add @openapitools/openapi-generator-cli

* chore: 🤖 Add @nestjs/core and @openapitools/openapi-generator-cli to ignoredBuiltDependencies

These packages use postinstall for a opencollective notice

* chore: 🤖 add package.json scripts for open-api client gen

* chore: 🤖 add openapi generated files

* chore: 🤖 add boundary api client fixture

* chore: 🤖 incorporate api client fixture with base fixture

* chore: 🤖 migrate existing test to use boundary api fixture

* refactor: 💡 remove org cleanup from test

* refactor: 💡 update sorting e2e test to use api client

* refactor: 💡 clean up api client resource clean up logging

* docs: ✏️ update jsdoc links for domain clients

* chore: 🤖 avoid adding copywright headers to generated api

* Add missing copyright headers

* chore: 🤖 remove fetch argument from api client class

The hope was to use request.fetch but playwright's fetch is a
non-standard fetch which causes the generated api client to fail when
using .clone() on the response

* chore: 🤖 add optional OPENAPI_SWAGGER_URL_OR_FILE for openapi-client
generation

The OPENAPI_SWAGGER_URL_OR_FILE env var can be used to specify the
-i flag the generate:api-client script with either:
* a relative path
* an absolute path
* a url like: https://raw.githubusercontent.com/hashicorp/boundary/refs/heads/main/internal/gen/controller.swagger.json

* refactor: 💡 clean up and refactor boundary-api-client fixture

* chore: 🤖 add extra doc links and delete methods

* test: 💍 add test to ensure that api-client fixture works

* test: 💍 update existing e2e test examples with api-client

* docs: ✏️ add comment for api-client e2e test

* docs: ✏️ add additional links to service docs for api clients

* refactor: 💡 cleanup api-client and corresponding test

* docs: ✏️ add api client fixture docs to e2e README

* fix: 🐛 fix regex

* remove unnecessary capture group
* add "-" to regex to allow for url segments like "storage-buckets" in
  "/v1/storage-buckets"

* docs: ✏️ comment potential edge case in e2e api client cleanup

* docs: ✏️ fix comment typo

Co-authored-by: Zhihe Li <zhihe.li@hashicorp.com>

* docs: ✏️ remove auth flag for generating e2e client

* docs: ✏️ add mention that java is required for generate:api

* chore: 🤖 implement pr feedback

* chore: 🤖 Clean up api client and add more extensive test

* chore: 🤖 fix casing in api-client test

Co-authored-by: Zhihe Li <zhihe.li@hashicorp.com>

---------

Co-authored-by: Zhihe Li <zhihe.li@hashicorp.com>
2025-08-12 18:08:35 -04:00

74 lines
3.0 KiB
JSON
Executable File

{
"private": true,
"description": "Monorepo for Boundary UIs and addons.",
"license": "BUSL-1.1",
"author": "HashiCorp",
"scripts": {
"build": "pnpm build:ui:admin",
"build:ui:admin": "pnpm run --filter admin build",
"build:ui:admin:oss": "pnpm run --filter admin build:oss",
"build:ui:admin:enterprise": "pnpm run --filter admin build:enterprise",
"build:ui:admin:hcp": "pnpm run --filter admin build:hcp",
"build:ui:desktop": "pnpm run --filter desktop build",
"build:ui:desktop:production": "pnpm run --filter desktop build:production",
"build:ui:desktop:app": "pnpm run --filter desktop build:desktop",
"lint": "concurrently \"pnpm:lint:*\" --names \"lint:\"",
"lint:addons-api": "pnpm run --filter api lint",
"lint:addons-auth": "pnpm run --filter auth lint",
"lint:addons-core": "pnpm run --filter core lint",
"lint:addons-rose": "pnpm run --filter rose lint",
"lint:ui-admin": "pnpm run --filter admin lint",
"lint:ui-desktop": "pnpm run --filter desktop lint",
"test": "concurrently \"pnpm:test:*\" --names \"test:\"",
"test:addons-api": "pnpm run --filter api test",
"test:addons-auth": "pnpm run --filter auth test",
"test:addons-core": "pnpm run --filter core test",
"test:addons-rose": "pnpm run --filter rose test",
"test:ui-admin": "pnpm run --filter admin test",
"test:ui-desktop": "pnpm run --filter desktop test",
"compliance:licenses": "license-checker --onlyAllow 'Apache*;Apache License, Version 2.0;Apache-2.0;Apache 2.0;Artistic-2.0;BSD;BSD-3-Clause;CC-BY-3.0;CC-BY-4.0;CC0-1.0;ISC;MIT;MPL-2.0;BUSL-1.1;Public Domain;Python-2.0;Unicode-TOU;Unlicense;WTFPL;BlueOak-1.0.0' --excludePackages 'boundary-ui;admin@0.0.0;desktop@0.0.0;e2e-tests@0.0.0;cycle@1.0.3;cldr-core@43.1.0;make-plural@7.2.0;@hashicorp/ember-asciinema-player@0.0.0;path-scurry@1.10.1'",
"doc:toc": "doctoc README.md",
"prepare": "husky"
},
"devDependencies": {
"concurrently": "^9.1.0",
"doctoc": "^2.2.0",
"git-cz": "^4.9.0",
"husky": "^9.1.6",
"license-checker": "^25.0.1",
"lint-staged": "^15.2.10"
},
"pnpm": {
"overrides": {
"nomnom>underscore": "^1.12.1",
"@hashicorp/design-system-components>ember-stargate": "^0.6.0",
"@hashicorp/ember-asciinema-player>asciinema-player": "3.4.0",
"micromatch": "^4.0.8",
"css-select>nth-check": "^2.0.1",
"node-gyp": "^10.0.0",
"ansi-html": "^0.0.9",
"fireworm>async": "^2.6.4",
"ember-cli-babel>@babel/runtime": "7.27.6",
"ember-try-config>package-json": "^10.0.1",
"ember-stargate@^0.6.0>@glimmer/component": "^2.0.0"
},
"ignoredBuiltDependencies": [
"@parcel/watcher",
"core-js",
"tesseract.js",
"@nestjs/core",
"@openapitools/openapi-generator-cli"
],
"onlyBuiltDependencies": []
},
"config": {
"commitizen": {
"path": "git-cz"
}
},
"engines": {
"node": "20.* || 22.*"
},
"packageManager": "pnpm@10.8.1"
}