Helping you handle TDX tickets more efficiently.
Ticket Assister (stylized TkAst) optimizes your workflow with TeamDynamix (TDX) tickets by setting defaults, filling out forms, and consolidating information. It reduces your cognitive load so that you can focus on getting work done accurately and efficiently.
It has many features, all of which can be toggled on and off in the Options page.
-
Install deps
- install
npm
npm install
project dependencies
- install
-
Make sure that
package.json
andmanifest.json
have their version numbers bumped- Extension web stores will reject the build if it is the same version number as the current uploaded version
-
npm run build
-
This will build for production, i.e. for URLs at https://help.uillinois.edu/TDNext/*
- To build for development, run
npm run build:dev
- To build for development, run
-
This will generate files in the
build/
directory- As a side effect, all previous files in the
build
directory will be removed
- As a side effect, all previous files in the
-
Two main scripts are ran in this command:
vite build
- this builds the pages, e.g. the Options page and the default popup (index) page
node buildContentScripts.mjs
- this builds each of the content scripts
- each script is packaged as an IIFE to allow turning the features on and off at runtime
-
-
Zip the output files
-
Zip all of the files from the
build/
directory. Do not zip thebuild
directory in itself. Only the contents. -
Name the zipped file
- For Chrome,
YYYYMMDD_tkast_X.Y.Z.zip
YYYYMMDD
is the current date (which the files were built)X.Y.Z
is the version number
- For Chrome,
-
Save the zip file in the
releases/
directory- This directory is ignored from source control
-
-
Upload package to the relevant extension store
- Upload the zip file and Submit for Review
This repository partially automates the build pipeline for the Chrome Web store.
-
Update the version in
manifest.json
andpackage.json
and merge these changes into main -
git tag
the latest commit with the version number (e.g.,1.0.0
) -
A GitHub action will trigger to create a release and associated artifact. Download the artifact zip file
-
Upload the artifact zip file to the Chrome Web Store via the developer dashboard
As of September of 2023, this repository is configured to continue to deploy under the original "Alpo" developer account. This may change in the future.
Tests are ran automatically with each commit to a pull request.
Manually run unit tests with npm run test
- This verifies that all of the content scripts ("rules") are properly associated
- This runs basic tests on helper functions
Manually run integration tests with npm run test-integration
- This runs the Playwright test suite
- As of October 2023, these tests are not yet comprehensive
To install locally and manually test the extension, see CONTRIBUTING.md
Issues and PRs are welcome. See CONTRIBUTING.md to get started.
This product is supported by Elijah Mock, Cybersecurity, and Technology Services on a best-effort basis.
As of the last update to this README, the expected End-of-Life and End-of-Support dates of this product are February 2024.
End-of-Life was decided upon based on these dependencies:
Chrome Manifest V3 (undocumented; expected January 2025 or later based on V2 retirement timeline)
TeamDynamix (quarterly; possible breaking changes February 2024)
Cerebro (unknown; dynamic release schedule)