Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
188 commits
Select commit Hold shift + click to select a range
044bbeb
Add Helios
backspace Sep 22, 2025
43f1e4b
Convert one button
backspace Sep 22, 2025
d6a4d2b
Add preliminary AppHeader
backspace Sep 22, 2025
cbab916
Merge branch 'main' into helios
backspace Oct 4, 2025
b5db9bf
Update lockfile
backspace Oct 4, 2025
6e97388
Add missing dependency
backspace Oct 4, 2025
450817b
Fix merge error
backspace Oct 4, 2025
baf2365
Replace Ember Paper with placeholder components
backspace Oct 4, 2025
9a99404
Update component library version
backspace Oct 4, 2025
a99b5bf
Merge branch 'main' into helios
backspace Oct 5, 2025
5048045
Add decorator-transforms hack
backspace Oct 5, 2025
b1a5ea2
Add missing classic decorator
backspace Oct 5, 2025
6972e0d
Remove toast cleanup for now
backspace Oct 5, 2025
e63ceee
Migrate login route
backspace Oct 5, 2025
3c1a2bf
Migrate registration
backspace Oct 5, 2025
27e95ea
Migrate gas prices
backspace Oct 5, 2025
4b1b431
Migrate application template
backspace Oct 5, 2025
dca14a5
Migrate users
backspace Oct 5, 2025
01f7af2
Migrate driver list, partially
backspace Oct 5, 2025
b8b9938
Add ember-focus-trap version override
backspace Oct 5, 2025
e1503c1
Fix person-editing modal
backspace Oct 6, 2025
65c3194
Fix more driver errors
backspace Oct 6, 2025
8d577c5
Migrate debts
backspace Oct 11, 2025
29876e0
Migrate toolbar header
backspace Oct 11, 2025
7679f55
Migrate calendar
backspace Oct 11, 2025
6fc93c1
Migrate rides
backspace Oct 15, 2025
c9b3ec1
Migrate forgot and reset routes
backspace Oct 15, 2025
9f15078
Fix LinkedComponent tests
backspace Oct 15, 2025
7f9b40c
Migrate institutions
backspace Oct 16, 2025
25314eb
Fix person test
backspace Oct 16, 2025
d15c4e4
Migrate reimbursements
backspace Oct 16, 2025
651f917
Migrate log
backspace Oct 17, 2025
2d42afc
Migrate reporting
backspace Oct 19, 2025
3d52d8c
Fix logout
backspace Oct 19, 2025
6af08dd
Fix request time chart import
backspace Oct 19, 2025
42944c1
Migrate statistics
backspace Oct 19, 2025
4de8bae
Change to consistent moment-timezone imports
backspace Oct 19, 2025
51210da
Fix width of container
backspace Oct 19, 2025
732b175
Remove unused classes
backspace Oct 19, 2025
6d8bdfa
Add hack for table header overlap
backspace Oct 19, 2025
7c4d8c0
Fix month rows in reimbursements table
backspace Oct 19, 2025
ecd57d6
Fix reimbursment button sizes
backspace Oct 19, 2025
ed5005e
Change report fields to number
backspace Oct 19, 2025
5d2b2e2
Change login to use modal
backspace Oct 19, 2025
3465161
Add button set for ride form footer
backspace Oct 19, 2025
50dc5d1
Add some ride form appearance fixes
backspace Oct 19, 2025
fe0fc75
Fix cancellation dropdown
backspace Oct 20, 2025
1b5de74
Move login buttons back inside form
backspace Oct 20, 2025
0309b53
Change some ride row buttons to icons
backspace Oct 22, 2025
6704d4c
Update person badge
backspace Oct 22, 2025
9b2ac6c
Add default font styling
backspace Oct 22, 2025
552c628
Fix icon position for visitor contact
backspace Oct 22, 2025
e8ad2e1
Fix icon sizes
backspace Oct 22, 2025
9284e7b
Add styling for rides filters
backspace Oct 22, 2025
3744375
Fix selector for testing uncombine button title
backspace Oct 22, 2025
6306923
Update rides table to use HdsTable
backspace Oct 22, 2025
97a6905
Remove divider before overlaps
backspace Oct 22, 2025
fca7d25
Restore ride highlights
backspace Oct 22, 2025
5b53308
Remove top border before confirmation row
backspace Oct 22, 2025
db7baa1
Remove header dividers
backspace Oct 22, 2025
fbf8c85
Remove border before reports
backspace Oct 22, 2025
0ed1f4c
Change more icons to inline
backspace Oct 22, 2025
71c3b41
Add report icons
backspace Oct 22, 2025
c046be2
Move header to sit within app frame
backspace Oct 23, 2025
f111891
Remove body margin
backspace Oct 23, 2025
e7c11be
Remove debugging text
backspace Oct 23, 2025
d954e36
Remove unused import
backspace Oct 23, 2025
9a67ff0
Remove intermediate mobiledoc container
backspace Oct 23, 2025
5a09afb
Restore driver sorting
backspace Oct 23, 2025
341aeec
Remove space above log posts
backspace Oct 23, 2025
797efd6
Update ride form layout somewhat
backspace Oct 23, 2025
a4f8aa0
Add toast dismissal and positioning
backspace Oct 24, 2025
f2d1c97
Fix input widths within modals
backspace Oct 24, 2025
95f6a1a
Fix button order in modals
backspace Oct 24, 2025
c03fa6f
Add autoformat changes
backspace Oct 24, 2025
17e2c5b
Change more buttons to be tertiary
backspace Oct 24, 2025
1615456
Change ride row buttons to be inline
backspace Oct 24, 2025
6ddaffe
Add first time icon explanation
backspace Oct 24, 2025
09a3dcb
Remove incorrect test selectors
backspace Oct 24, 2025
cee71a1
Update assignments appearance
backspace Oct 25, 2025
68a83a7
Remove final use of ember-cli-clipboard button
backspace Oct 25, 2025
a91751b
Fix PersonBadge/RidePerson test selectors
backspace Oct 25, 2025
8301a20
Move timespan-result selector to fit assertions
backspace Oct 25, 2025
c4f57d0
Add cancellation button title
backspace Oct 25, 2025
9bd7364
Fix whitespace
backspace Oct 25, 2025
42b519c
Restore RidePerson clear button
backspace Oct 25, 2025
ce8ccdf
Update RidePerson clearing to Glimmer style
backspace Oct 25, 2025
cd5b2a7
Fix selector for car owner select
backspace Oct 25, 2025
084036b
Fix assertion for timespan override button
backspace Oct 25, 2025
588a038
Add main container padding
backspace Oct 25, 2025
ba5c939
Fix overflow of ride search field
backspace Oct 25, 2025
fed1fdf
Remove bolding from reimbursement name cells
backspace Oct 25, 2025
63714dd
Fix search clear expectations
backspace Oct 25, 2025
65d46a3
Remove redundant or unused properties
backspace Oct 25, 2025
8b24aac
Merge remote-tracking branch 'origin/main' into helios
backspace Oct 25, 2025
5d483c8
Convert CalendarSlot to Glimmer component
backspace Oct 25, 2025
081c98f
Fix commitment save failure checkbox status
backspace Oct 25, 2025
ed17197
Add autoformat changes
backspace Oct 25, 2025
806f4bf
Fix various lint errors
backspace Oct 25, 2025
b63df12
Fix ember/no-empty-glimmer-component-classes
backspace Oct 25, 2025
843bdfc
Update stubbed HdsIntl service
backspace Oct 25, 2025
3072523
Remove use of runloop function
backspace Oct 25, 2025
4a58ba4
Add exception for decorator-transforms “missing”
backspace Oct 25, 2025
3f02afb
Add hack to borrow icons from Lucide
backspace Oct 25, 2025
7ee3b35
Fix cancellation dropdown
backspace Oct 25, 2025
0d42923
Add missing modal close handlers
backspace Oct 25, 2025
8097f0b
Remove outdated note
backspace Oct 25, 2025
111bccf
Move selectChoose into page objects
backspace Oct 25, 2025
a0d0135
Restore non-matching visitor name display
backspace Oct 25, 2025
7107616
Add start/end validation errors on timespan
backspace Oct 25, 2025
bf994ad
Convert various toasts into alerts
backspace Oct 26, 2025
87fdc41
Add lint autofixes
backspace Oct 26, 2025
516a311
Add lint fixes
backspace Oct 26, 2025
621c410
Remove sandbox chips hackery
backspace Oct 26, 2025
dee33df
Remove redundant dialog cancel handlers
backspace Oct 26, 2025
e99175f
Fix sidebar toggle and badge
backspace Oct 26, 2025
20cf7da
Remove unused imports
backspace Oct 26, 2025
9d58775
Remove unused action
backspace Oct 26, 2025
5ce9bb5
Remove unused getter
backspace Oct 26, 2025
80d7847
Remove unused property
backspace Oct 26, 2025
4a427f1
Remove bolding from debt ride times
backspace Oct 26, 2025
6e2c885
Change header to be shorter
backspace Oct 26, 2025
3cb4e25
Update header background colour
backspace Oct 26, 2025
c17e7d1
Change header buttons to be consistent
backspace Oct 26, 2025
d803e80
Update rides controller to not be classic
backspace Oct 26, 2025
5796bf3
Restore ride query parameters and add assertions
backspace Oct 26, 2025
5bf9e8a
Change calendar hours labels to not be bold
backspace Oct 26, 2025
845af22
Fix modal headers and arrangement
backspace Oct 26, 2025
ee87d57
Move log buttons into set
backspace Oct 26, 2025
dc623fd
Fix layering and position of toasts
backspace Oct 27, 2025
92f3376
Fix alignment of modal close button
backspace Oct 27, 2025
7201296
Move all modal form buttons into modal footer
backspace Oct 27, 2025
5c02d01
Change no matches for ride visitor name
backspace Oct 27, 2025
9b0a3e0
Restore ability to enter name regardless of match
backspace Oct 27, 2025
f321d66
Add lint autofixes
backspace Oct 28, 2025
c8d24cc
Update person badge appearance
backspace Oct 28, 2025
e0e672a
Change assignment elements to not stretch
backspace Oct 28, 2025
dc008a3
Update combine/uncombine to use icons
backspace Oct 28, 2025
6566f57
Update assignments appearance and alignment
backspace Oct 28, 2025
12eab70
Remove bolding from report ride options
backspace Oct 28, 2025
f64b893
Remove redundant toast service
backspace Oct 31, 2025
02ee2d5
Fix sidebar on mobile
backspace Dec 22, 2025
7db75f7
Fix header button position on mobile
backspace Dec 22, 2025
0cecce6
Change sidebar to close on mobile on link tap
backspace Dec 22, 2025
189f11e
Fix whitespace
backspace Dec 22, 2025
4001b0d
Merge branch 'main' into helios
backspace Dec 22, 2025
ebe9390
Fix formatting
backspace Dec 22, 2025
50a4fa7
Remove unused imports
backspace Dec 22, 2025
79ab1d2
Fix template-only component formats
backspace Dec 22, 2025
776f2cb
Remove unused import
backspace Dec 22, 2025
5b8fb2c
Remove private status for some methods
backspace Dec 22, 2025
f3c5c8b
Fix runloop lint errors
backspace Dec 22, 2025
b3049e2
Fix sidebar on mobile
backspace Dec 22, 2025
31e3462
Add mobile fix for rides filter
backspace Dec 22, 2025
44af223
Fix statistics route title
backspace Dec 23, 2025
99b3cad
Fix modal height on mobile
backspace Dec 23, 2025
57c527f
Fix name-setting when choosing from previous rides
backspace Dec 23, 2025
b2c0fd0
Fix notes and report row text sizes
backspace Dec 23, 2025
d280493
Remove Ember Paper-related styles
backspace Dec 23, 2025
ce45589
Add highlight to notes row on unconfirmed ride
backspace Dec 23, 2025
9084eda
Update statistics controls layout
backspace Dec 23, 2025
4f049df
Fix whitespace around calendar subscription links
backspace Dec 23, 2025
fc8e409
Add calendar header
backspace Dec 23, 2025
8429f6e
Fix user calendar appearance
backspace Dec 23, 2025
9666c99
Fix ride filter row alignment
backspace Dec 23, 2025
a3c75b2
Fix report and overlap icon alignment
backspace Dec 23, 2025
5498c0d
Add spacing around session button
backspace Dec 23, 2025
503e582
Remove unused import
backspace Dec 23, 2025
6cdbb81
Move calendar session about about text
backspace Dec 23, 2025
fc73fd5
Update registration modal
backspace Dec 23, 2025
86ca064
Update appearance of forgot modal
backspace Dec 23, 2025
bc68616
Add login button on forgot form
backspace Dec 23, 2025
c37e22f
Update appearance of login route
backspace Dec 23, 2025
00bdf19
Update appearance of calendar person edit
backspace Dec 23, 2025
1317a7b
Update appearance of reset route
backspace Dec 23, 2025
b2645ef
Change sidebar width
backspace Dec 23, 2025
e80dd4d
Update header background
backspace Dec 23, 2025
78091d9
Update menu toggle button style
backspace Dec 23, 2025
02b3226
Update loading animation
backspace Dec 23, 2025
d589ac1
Add more Helios override notes
backspace Dec 23, 2025
c37e098
Remove superfluous elements and classes
backspace Dec 23, 2025
1646a07
Remove overly-defensive event processing
backspace Dec 23, 2025
1eec695
Remove obsolete comments
backspace Dec 23, 2025
21823f7
Remove placeholder component
backspace Dec 23, 2025
c1315da
Remove superfluous getter
backspace Dec 23, 2025
28dde99
Remove redundant setter
backspace Dec 23, 2025
077a6bd
Remove unused Sass variables
backspace Dec 23, 2025
534d94b
Remove redundant page object properties
backspace Dec 23, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 2 additions & 0 deletions app/adapters/application.js
Original file line number Diff line number Diff line change
@@ -1,9 +1,11 @@
/* eslint-disable ember/classic-decorator-no-classic-methods, ember/no-computed-properties-in-native-classes, ember/no-get */
import classic from 'ember-classic-decorator';
import JSONAPIAdapter from '@ember-data/adapter/json-api';
import config from 'prison-rideshare-ui/config/environment';
import { computed } from '@ember/object';
import { inject as service } from '@ember/service';

@classic
export default class ApplicationAdapter extends JSONAPIAdapter {
@service session;

Expand Down
2 changes: 2 additions & 0 deletions app/app.js
Original file line number Diff line number Diff line change
@@ -1,3 +1,5 @@
import 'decorator-transforms/globals';

import Application from '@ember/application';
import Resolver from 'ember-resolver';
import loadInitializers from 'ember-load-initializers';
Expand Down
30 changes: 30 additions & 0 deletions app/components/alert.gjs
Original file line number Diff line number Diff line change
@@ -0,0 +1,30 @@
import Component from '@glimmer/component';
import { HdsAlert } from '@hashicorp/design-system-components/components';

export default class Alert extends Component {
get color() {
return this.args.color ?? 'critical';
}

get type() {
return this.args.type ?? 'inline';
}

<template>
<HdsAlert
@color={{this.color}}
@type={{this.type}}
data-test-inline-alert
...attributes
as |Alert|
>
<Alert.Title data-test-inline-alert-text>
{{#if (has-block)}}
{{yield}}
{{else}}
{{@message}}
{{/if}}
</Alert.Title>
</HdsAlert>
</template>
}
11 changes: 11 additions & 0 deletions app/components/app-frame.gjs
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
import { hash } from '@ember/helper';
import Header from 'prison-rideshare-ui/components/app-frame/header';
import Sidebar from 'prison-rideshare-ui/components/app-frame/sidebar';
import Main from 'prison-rideshare-ui/components/app-frame/main';

<template>
{{! See docs/helios-overrides.md }}
<div class='app-frame' ...attributes>
{{yield (hash Header=Header Sidebar=Sidebar Main=Main)}}
</div>
</template>
6 changes: 6 additions & 0 deletions app/components/app-frame/header.gjs
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
<template>
{{! See docs/helios-overrides.md }}
<header class='app-frame__header' ...attributes>
{{yield}}
</header>
</template>
6 changes: 6 additions & 0 deletions app/components/app-frame/main.gjs
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
<template>
{{! See docs/helios-overrides.md }}
<main class='app-frame__main' ...attributes>
{{yield}}
</main>
</template>
6 changes: 6 additions & 0 deletions app/components/app-frame/sidebar.gjs
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
<template>
{{! See docs/helios-overrides.md }}
<aside class='app-frame__sidebar' ...attributes>
{{yield}}
</aside>
</template>
73 changes: 73 additions & 0 deletions app/components/app-side-nav.gjs
Original file line number Diff line number Diff line change
@@ -0,0 +1,73 @@
import { action } from '@ember/object';
import Component from '@glimmer/component';
import { on } from '@ember/modifier';
import { hash } from '@ember/helper';
import List from 'prison-rideshare-ui/components/app-side-nav/list';

// See docs/helios-overrides.md
export default class AppSideNavComponent extends Component {
constructor(owner, args) {
super(owner, args);

this.args?.onRegister?.(this);
}

willDestroy() {
super.willDestroy(...arguments);

this.args?.onRegister?.(null);
}

get isMinimized() {
return Boolean(this.args.isMinimized);
}

get isResponsive() {
return Boolean(this.args.isResponsive);
}

get state() {
return this.isMinimized ? 'closed' : 'open';
}

get navClasses() {
return `app-side-nav app-side-nav--${this.state}`;
}

get showScrim() {
return this.isResponsive && !this.isMinimized;
}

@action
toggleMinimizedStatus() {
const nextState = !this.isMinimized;

this.args?.onToggleMinimizedStatus?.(nextState);
}

<template>
<div
class={{this.navClasses}}
data-state={{this.state}}
data-test-app-sidenav
aria-hidden={{this.isMinimized}}
...attributes
>
<div class='app-side-nav__panel'>
<div class='app-side-nav__scroll'>
{{yield (hash List=List)}}
</div>
</div>

{{#if this.isResponsive}}
<button
type='button'
class='app-side-nav__scrim'
hidden={{this.isMinimized}}
aria-label='Close navigation menu'
{{on 'click' this.toggleMinimizedStatus}}
/>
{{/if}}
</div>
</template>
}
6 changes: 6 additions & 0 deletions app/components/app-side-nav/item.gjs
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
<template>
{{! See docs/helios-overrides.md }}
<li class='app-side-nav__item' ...attributes>
{{yield}}
</li>
</template>
40 changes: 40 additions & 0 deletions app/components/app-side-nav/link.gjs
Original file line number Diff line number Diff line change
@@ -0,0 +1,40 @@
import Component from '@glimmer/component';
import LinkTo from '@ember/routing/link-component';

// See docs/helios-overrides.md
export default class AppSideNavLinkComponent extends Component {
get hasModel() {
return this.args.model !== undefined && this.args.model !== null;
}

<template>
<li class='app-side-nav__item'>
{{#if this.hasModel}}
<LinkTo
@route={{@route}}
@model={{@model}}
@activeClass='app-side-nav__link--active'
class='app-side-nav__link'
...attributes
>
<span class='app-side-nav__link-label'>
{{@text}}
</span>
{{yield}}
</LinkTo>
{{else}}
<LinkTo
@route={{@route}}
@activeClass='app-side-nav__link--active'
class='app-side-nav__link'
...attributes
>
<span class='app-side-nav__link-label'>
{{@text}}
</span>
{{yield}}
</LinkTo>
{{/if}}
</li>
</template>
}
43 changes: 43 additions & 0 deletions app/components/app-side-nav/list.gjs
Original file line number Diff line number Diff line change
@@ -0,0 +1,43 @@
import Component from '@glimmer/component';
import { hash } from '@ember/helper';
import Link from 'prison-rideshare-ui/components/app-side-nav/link';
import Item from 'prison-rideshare-ui/components/app-side-nav/item';
import { action } from '@ember/object';
import { inject as service } from '@ember/service';
import { on } from '@ember/modifier';

// See docs/helios-overrides.md
export default class AppSideNavListComponent extends Component {
@service sidebar;

@action handleNavClick(event) {
if (typeof window === 'undefined') {
return;
}

const isDesktop = window.matchMedia?.('(min-width: 1088px)')?.matches;

if (isDesktop) {
return;
}

if (event.target.closest('.app-side-nav__link')) {
this.sidebar.open = false;
this.sidebar.setNavMinimizedState(true);
}
}

<template>
{{! Delegated click handler closes the nav on mobile; interactive behavior is intentional. }}
{{! template-lint-disable no-invalid-interactive }}
<nav
class='app-side-nav__nav'
{{on 'click' this.handleNavClick capture=true}}
>
<ul class='app-side-nav__list'>
{{yield (hash Link=Link Item=Item)}}
</ul>
</nav>
{{! template-lint-enable no-invalid-interactive }}
</template>
}
1 change: 1 addition & 0 deletions app/components/calendar-day.gjs
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,7 @@ export default class CalendarDay extends Component {
@person={{this.person}}
@count={{this.count}}
@setViewingSlot={{this.setViewingSlot}}
@setError={{this.setError}}
/>
{{/each}}
</template>
Expand Down
Loading