Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Amycommits/appeals 37719 #20444

Merged
merged 4 commits into from
Jan 8, 2024
Merged
Show file tree
Hide file tree
Changes from 3 commits
Commits
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
4 changes: 2 additions & 2 deletions app/models/case_distribution_lever.rb
Original file line number Diff line number Diff line change
Expand Up @@ -4,8 +4,8 @@ class CaseDistributionLever < ApplicationRecord
validates :title, presence: true
validates :data_type, presence: true
validates :value, presence: true, if: Proc.new { |lever| lever.data_type != Constants.ACD_LEVERS.number }
validates :is_active, inclusion: { in: [true, false] }
validates :is_disabled, inclusion: { in: [true, false] }
validates :is_toggle_active, inclusion: { in: [true, false] }
validates :is_disabled_in_ui, inclusion: { in: [true, false] }

self.table_name = "case_distribution_levers"
INTEGER_LEVERS = %W(
Expand Down
4 changes: 2 additions & 2 deletions app/views/case_distribution_levers/test.html.erb
Original file line number Diff line number Diff line change
Expand Up @@ -43,8 +43,8 @@
<% else %>
<td> n/a </td>
<% end %>
<td> <%= lever.is_active %> </td>
<td> <%= lever.is_disabled %> </td>
<td> <%= lever.is_toggle_active %> </td>
<td> <%= lever.is_disabled_in_ui %> </td>
</tr>
<% end %>
</tbody>
Expand Down
14 changes: 7 additions & 7 deletions client/app/caseDistribution/components/AffinityDays.jsx
Original file line number Diff line number Diff line change
Expand Up @@ -128,8 +128,8 @@ const AffinityDays = (props) => {
};

const generateFields = (dataType, option, lever) => {
const useAriaLabel = !lever.is_disabled;
const tabIndex = lever.is_disabled ? -1 : null;
const useAriaLabel = !lever.is_disabled_in_ui;
const tabIndex = lever.is_disabled_in_ui ? -1 : null;

if (dataType === ACD_LEVERS.number) {
return (
Expand All @@ -138,7 +138,7 @@ const AffinityDays = (props) => {
title={option.text}
label={option.unit}
isInteger
readOnly={lever.is_disabled ? true : (lever.value !== option.item)}
readOnly={lever.is_disabled_in_ui ? true : (lever.value !== option.item)}
value={option.value}
errorMessage={option.errorMessage}
onChange={(event) => updatedLever(lever, option)(event)}
Expand All @@ -155,7 +155,7 @@ const AffinityDays = (props) => {
name={option.item}
title={option.text}
label={false}
readOnly={lever.is_disabled ? true : (lever.value !== option.item)}
readOnly={lever.is_disabled_in_ui ? true : (lever.value !== option.item)}
value={option.value}
onChange={(event) => updatedLever(lever, option)(event)}
id={`${lever.item}-${option.value}`}
Expand All @@ -174,7 +174,7 @@ const AffinityDays = (props) => {
return (
<div>
<div>
<label className={lever.is_disabled ? styles.leverDisabled : styles.leverActive}
<label className={lever.is_disabled_in_ui ? styles.leverDisabled : styles.leverActive}
htmlFor={`${lever.item}-${option.item}`}>
{`${option.text} ${option.data_type === ACD_LEVERS.number ? `${option.value} ${option.unit}` : ''}`}
</label>
Expand All @@ -196,7 +196,7 @@ const AffinityDays = (props) => {
checked={option.item === lever.value}
type={ACD_LEVERS.radio}
value={option.item}
disabled={lever.is_disabled}
disabled={lever.is_disabled_in_ui}
id={`${lever.item}-${option.item}`}
name={lever.item}
onChange={() => handleRadioChange(lever, option)}
Expand All @@ -222,7 +222,7 @@ const AffinityDays = (props) => {
<div className={styles.leverRight}><strong>Value</strong></div>
</div>
{affinityLevers.map((lever, index) => (
<div className={cx(styles.activeLever, lever.is_disabled ? styles.leverDisabled : '')}
<div className={cx(styles.activeLever, lever.is_disabled_in_ui ? styles.leverDisabled : '')}
key={`${lever.item}-${index}`}
>
<div className={styles.leverLeft}>
Expand Down
10 changes: 5 additions & 5 deletions client/app/caseDistribution/components/BatchSize.jsx
Original file line number Diff line number Diff line change
Expand Up @@ -104,22 +104,22 @@ const BatchSize = (props) => {
{batchSizeLevers && batchSizeLevers.map((lever, index) => (
<div className={styles.activeLever} key={`${lever.item}-${index}`}>
<div className={styles.leverLeft}>
<strong className={lever.is_disabled ? styles.leverDisabled : styles.leverActive}>{lever.title}</strong>
<p className={lever.is_disabled ? styles.leverDisabled : styles.leverActive}>{lever.description}</p>
<strong className={lever.is_disabled_in_ui ? styles.leverDisabled : styles.leverActive}>{lever.title}</strong>
<p className={lever.is_disabled_in_ui ? styles.leverDisabled : styles.leverActive}>{lever.description}</p>
</div>
<div className={`${styles.leverRight} ${leverNumberDiv}`}>
{isAdmin ?
<NumberField
name={lever.item}
label={lever.unit}
isInteger
readOnly={lever.is_disabled}
readOnly={lever.is_disabled_in_ui}
value={lever.value}
errorMessage={errorMessagesList[lever.item]}
onChange={updateLever(index, lever.item, lever.item)}
tabIndex={lever.is_disabled ? -1 : null}
tabIndex={lever.is_disabled_in_ui ? -1 : null}
/> :
<label className={lever.is_disabled ? styles.leverDisabled : styles.leverActive}>
<label className={lever.is_disabled_in_ui ? styles.leverDisabled : styles.leverActive}>
{lever.value} {lever.unit}
</label>
}
Expand Down
24 changes: 12 additions & 12 deletions client/app/caseDistribution/components/DocketTimeGoals.jsx
Original file line number Diff line number Diff line change
Expand Up @@ -176,7 +176,7 @@ const DocketTimeGoals = (props) => {
const toggleLever = (index) => () => {
const levers = docketDistributionLevers.map((lever, i) => {
if (index === i) {
lever.is_active = !lever.is_active;
lever.is_toggle_active = !lever.is_toggle_active;

return lever;
}
Expand Down Expand Up @@ -204,16 +204,16 @@ const DocketTimeGoals = (props) => {
key={`${distributionPriorLever.item}-${index}`}
>
<div className={cx(styles.leverLeft, styles.docketLeverLeft)}>
<strong className={docketTimeGoalLever.is_disabled ? styles.leverDisabled : ''}>
<strong className={docketTimeGoalLever.is_disabled_in_ui ? styles.leverDisabled : ''}>
{index < sectionTitles.length ? sectionTitles[index] : ''}
</strong>
</div>
<div className={`${styles.leverMiddle} ${leverNumberDiv}
${docketTimeGoalLever.is_disabled ? styles.leverDisabled : styles.leverActive}}`}>
${docketTimeGoalLever.is_disabled_in_ui ? styles.leverDisabled : styles.leverActive}}`}>
<NumberField
name={docketTimeGoalLever.item}
isInteger
readOnly={docketTimeGoalLever.is_disabled}
readOnly={docketTimeGoalLever.is_disabled_in_ui}
value={docketTimeGoalLever.value}
label={docketTimeGoalLever.unit}
errorMessage={errorMessagesList[docketTimeGoalLever.item]}
Expand All @@ -223,16 +223,16 @@ const DocketTimeGoals = (props) => {
<div className={`${styles.leverRight} ${styles.docketLeverRight} ${leverNumberDiv}`}>
<ToggleSwitch
id={`toggle-switch-${distributionPriorLever.item}`}
selected={distributionPriorLever.is_active}
disabled={distributionPriorLever.is_disabled}
selected={distributionPriorLever.is_toggle_active}
disabled={distributionPriorLever.is_disabled_in_ui}
toggleSelected={toggleLever(index)}
/>
<div className={distributionPriorLever.is_active ? styles.toggleSwitchInput : styles.toggleInputHide}>
<div className={distributionPriorLever.is_toggle_active ? styles.toggleSwitchInput : styles.toggleInputHide}>

<NumberField
name={`toggle-${distributionPriorLever.item}`}
isInteger
readOnly={distributionPriorLever.is_disabled}
readOnly={distributionPriorLever.is_disabled_in_ui}
value={distributionPriorLever.value}
label={distributionPriorLever.unit}
errorMessage={errorMessagesList[distributionPriorLever.item]}
Expand All @@ -251,19 +251,19 @@ const DocketTimeGoals = (props) => {
key={`${distributionPriorLever.item}-${index}`}
>
<div className={cx(styles.leverLeft, styles.docketLeverLeft)}>
<strong className={docketTimeGoalLever.is_disabled ? styles.leverDisabled : ''}>
<strong className={docketTimeGoalLever.is_disabled_in_ui ? styles.leverDisabled : ''}>
{index < sectionTitles.length ? sectionTitles[index] : ''}
</strong>
</div>
<div className={`${styles.leverMiddle} ${leverNumberDiv}`}>
<span className={docketTimeGoalLever.is_disabled ? styles.leverDisabled : styles.leverActive}>
<span className={docketTimeGoalLever.is_disabled_in_ui ? styles.leverDisabled : styles.leverActive}>
{docketTimeGoalLever.value} {docketTimeGoalLever.unit}
</span>
</div>
<div className={`${styles.leverRight} ${styles.docketLeverRight} ${leverNumberDiv}`}>
<div className={`${styles.leverRight} ${styles.docketLeverRight} ${leverNumberDiv}`}>
<span className={distributionPriorLever.is_disabled ? styles.leverDisabled : styles.leverActive}>
{distributionPriorLever.is_active ? 'On' : 'Off'}
<span className={distributionPriorLever.is_disabled_in_ui ? styles.leverDisabled : styles.leverActive}>
{distributionPriorLever.is_toggle_active ? 'On' : 'Off'}
</span>
</div>
</div>
Expand Down
3 changes: 2 additions & 1 deletion client/app/caseDistribution/components/StaticLever.jsx
Original file line number Diff line number Diff line change
Expand Up @@ -47,7 +47,8 @@ StaticLever.propTypes = {
data_type: PropTypes.string.isRequired,
value: PropTypes.oneOfType([PropTypes.bool, PropTypes.number, PropTypes.string]).isRequired,
unit: PropTypes.string.isRequired,
is_active: PropTypes.bool.isRequired,
is_toggle_active: PropTypes.bool,
is_disabled_in_ui: PropTypes.bool,
options: PropTypes.arrayOf(
PropTypes.shape({
item: PropTypes.string.isRequired,
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -50,10 +50,10 @@ describe('DocketTimeGoals Component', () => {
it('toggles lever on switch click', () => {
const lever = mockLeverStore.getState().levers.find((lev) => lev.item === 'lever_11');

expect(lever.is_active).toBe(false);
expect(lever.is_toggle_active).toBe(false);
const leverToggle = component.container.querySelector('#toggle-switch-lever_11');

fireEvent.click(leverToggle);
expect(mockLeverStore.getState().levers.find((lev) => lev.item === 'lever_11').is_active).toBe(true);
expect(mockLeverStore.getState().levers.find((lev) => lev.item === 'lever_11').is_toggle_active).toBe(true);
});
});
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ describe('StaticLever', () => {
data_type: 'number',
value: 10,
unit: 'Days',
is_active: true,
is_toggle_active: true,
options: [],
};

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -47,7 +47,7 @@ describe('Lever reducer', () => {
"data_type": "boolean",
"value": false,
"unit": "",
"is_active": true
"is_toggle_active": true
}

leverStore.dispatch({
Expand Down
Loading
Loading