Skip to content

Commit

Permalink
Merge pull request #7934 from jrjohnson/i5374-some-stuff
Browse files Browse the repository at this point in the history
Remove render modifiers in school components
  • Loading branch information
stopfstedt committed Jul 15, 2024
2 parents 78d70bb + 25d276d commit fcec5a7
Show file tree
Hide file tree
Showing 30 changed files with 323 additions and 346 deletions.
22 changes: 0 additions & 22 deletions packages/frontend/.lint-todo
Original file line number Diff line number Diff line change
@@ -1,24 +1,4 @@
add|ember-template-lint|no-at-ember-render-modifiers|5|2|5|2|23cd787c79c34a628dadb6e96dd4004d42eebb79|1719360000000|1734915600000|1750464000000|app/components/new-directory-user.hbs
add|ember-template-lint|no-at-ember-render-modifiers|4|2|4|2|23cd787c79c34a628dadb6e96dd4004d42eebb79|1719360000000|1734915600000|1750464000000|app/components/school-competencies-collapsed.hbs
add|ember-template-lint|no-at-ember-render-modifiers|5|2|5|2|d0274adc777d08699935bd8c5f7a4a3346d93065|1719360000000|1734915600000|1750464000000|app/components/school-competencies-collapsed.hbs
add|ember-template-lint|no-at-ember-render-modifiers|3|2|3|2|23cd787c79c34a628dadb6e96dd4004d42eebb79|1719360000000|1734915600000|1750464000000|app/components/school-competencies-expanded.hbs
add|ember-template-lint|no-at-ember-render-modifiers|4|2|4|2|d0274adc777d08699935bd8c5f7a4a3346d93065|1719360000000|1734915600000|1750464000000|app/components/school-competencies-expanded.hbs
add|ember-template-lint|no-at-ember-render-modifiers|5|4|5|4|7312526529ca39ed820819d1478d8e1b8f555279|1719360000000|1734915600000|1750464000000|app/components/school-curriculum-inventory-institution-manager.hbs
add|ember-template-lint|no-at-ember-render-modifiers|6|4|6|4|58a8dc317204df6b5fac13a4349906b0c7b1db7b|1719360000000|1734915600000|1750464000000|app/components/school-curriculum-inventory-institution-manager.hbs
add|ember-template-lint|no-at-ember-render-modifiers|4|2|4|2|7312526529ca39ed820819d1478d8e1b8f555279|1719360000000|1734915600000|1750464000000|app/components/school-manager.hbs
add|ember-template-lint|no-at-ember-render-modifiers|3|2|3|2|66a5b0f89c3a88a7c0b541518f72e20531cd4be7|1719360000000|1734915600000|1750464000000|app/components/school-session-attributes.hbs
add|ember-template-lint|no-at-ember-render-modifiers|4|2|4|2|1d825ec0c79a15f259a520b8cd57683cbcbef5a2|1719360000000|1734915600000|1750464000000|app/components/school-session-attributes.hbs
add|ember-template-lint|no-at-ember-render-modifiers|5|4|5|4|23cd787c79c34a628dadb6e96dd4004d42eebb79|1719360000000|1734915600000|1750464000000|app/components/school-session-type-form.hbs
add|ember-template-lint|no-at-ember-render-modifiers|3|2|3|2|23cd787c79c34a628dadb6e96dd4004d42eebb79|1719360000000|1734915600000|1750464000000|app/components/school-session-type-manager.hbs
add|ember-template-lint|no-at-ember-render-modifiers|3|2|3|2|66a5b0f89c3a88a7c0b541518f72e20531cd4be7|1719360000000|1734915600000|1750464000000|app/components/school-session-types-collapsed.hbs
add|ember-template-lint|no-at-ember-render-modifiers|4|2|4|2|a90be151f45cd8ab32827e9247a9a9eb7f1baef2|1719360000000|1734915600000|1750464000000|app/components/school-session-types-collapsed.hbs
add|ember-template-lint|no-at-ember-render-modifiers|3|2|3|2|66a5b0f89c3a88a7c0b541518f72e20531cd4be7|1719360000000|1734915600000|1750464000000|app/components/school-session-types-expanded.hbs
add|ember-template-lint|no-at-ember-render-modifiers|4|2|4|2|af2ee7cd6f5c12e29ee3d5dc0ec4a76db43b7556|1719360000000|1734915600000|1750464000000|app/components/school-session-types-expanded.hbs
add|ember-template-lint|no-at-ember-render-modifiers|3|2|3|2|66a5b0f89c3a88a7c0b541518f72e20531cd4be7|1719360000000|1734915600000|1750464000000|app/components/school-vocabularies-expanded.hbs
add|ember-template-lint|no-at-ember-render-modifiers|4|2|4|2|df089fc2824cc65ff8a25e7787cf29a1911298b6|1719360000000|1734915600000|1750464000000|app/components/school-vocabularies-expanded.hbs
add|ember-template-lint|no-at-ember-render-modifiers|5|4|5|4|7312526529ca39ed820819d1478d8e1b8f555279|1719360000000|1734915600000|1750464000000|app/components/school-vocabulary-manager.hbs
add|ember-template-lint|no-at-ember-render-modifiers|5|4|5|4|1fe23f11c7d96a9f1082ef86c3d1f725c2212c21|1719360000000|1734915600000|1750464000000|app/components/school-vocabulary-term-manager.hbs
add|ember-template-lint|no-at-ember-render-modifiers|6|4|6|4|99e02f01ac450458b91299ca7b0c6e67d69d26d2|1719360000000|1734915600000|1750464000000|app/components/school-vocabulary-term-manager.hbs
add|ember-template-lint|no-at-ember-render-modifiers|4|4|4|4|5d93dc162628c4faaa7bce9ef9bfba305f14ce38|1719360000000|1734915600000|1750464000000|app/components/unassigned-students-summary.hbs
add|ember-template-lint|no-at-ember-render-modifiers|5|4|5|4|5f7f17419fe451673ab74fb58778311bc01912c0|1719360000000|1734915600000|1750464000000|app/components/unassigned-students-summary.hbs
add|ember-template-lint|no-at-ember-render-modifiers|5|4|5|4|ddf86727990ead62165fe28c6dff53552a4d49b7|1719360000000|1734915600000|1750464000000|app/components/user-menu.hbs
Expand Down Expand Up @@ -79,8 +59,6 @@ add|ember-template-lint|no-at-ember-render-modifiers|5|2|5|2|fc55335d86e2b3d97a0
add|ember-template-lint|no-at-ember-render-modifiers|6|2|6|2|12443b4ba50f603e3c3af3d9e10ce840e7b67d9e|1719360000000|1734915600000|1750464000000|app/components/program-year/objective-list-item.hbs
add|ember-template-lint|no-at-ember-render-modifiers|3|2|3|2|286929067e02096dda5597efc45c876218621874|1719360000000|1734915600000|1750464000000|app/components/program-year/objectives.hbs
add|ember-template-lint|no-at-ember-render-modifiers|4|2|4|2|f37fd8ee0b117114a09137593ed6f113b2c80806|1719360000000|1734915600000|1750464000000|app/components/program-year/objectives.hbs
add|ember-template-lint|no-at-ember-render-modifiers|6|4|6|4|7312526529ca39ed820819d1478d8e1b8f555279|1719360000000|1734915600000|1750464000000|app/components/school/emails-editor.hbs
add|ember-template-lint|no-at-ember-render-modifiers|7|4|7|4|534e66e31edefd389dd85626b3fe99ddc2d7750a|1719360000000|1734915600000|1750464000000|app/components/school/emails-editor.hbs
add|ember-template-lint|no-at-ember-render-modifiers|10|6|10|6|d919d2af254f782c01fe2ba15416673e52e91124|1719360000000|1734915600000|1750464000000|app/components/reports/subject/new/academic-year.hbs
add|ember-template-lint|no-at-ember-render-modifiers|11|6|11|6|940005188b476a060b0e5d3f05baea24ba178878|1719360000000|1734915600000|1750464000000|app/components/reports/subject/new/academic-year.hbs
add|ember-template-lint|no-at-ember-render-modifiers|10|6|10|6|d919d2af254f782c01fe2ba15416673e52e91124|1719360000000|1734915600000|1750464000000|app/components/reports/subject/new/competency.hbs
Expand Down
56 changes: 25 additions & 31 deletions packages/frontend/app/components/school-competencies-collapsed.hbs
Original file line number Diff line number Diff line change
@@ -1,8 +1,6 @@
<section
class="school-competencies-collapsed"
data-test-school-competencies-collapsed
{{did-insert (perform this.load)}}
{{did-update (perform this.load) @school.competencies}}
...attributes
>
<div>
Expand All @@ -19,34 +17,30 @@
<FaIcon @icon="caret-right" />
</button>
</div>
{{#if this.load.isRunning}}
<LoadingSpinner @tagName="h3" />
{{else}}
<div class="content">
<table class="condensed">
<thead>
<tr>
<th class="text-left">
{{t "general.competencyDomain"}}
</th>
<th class="text-left">
{{t "general.summary"}}
</th>
<div class="content">
<table class="condensed">
<thead>
<tr>
<th class="text-left">
{{t "general.competencyDomain"}}
</th>
<th class="text-left">
{{t "general.summary"}}
</th>
</tr>
</thead>
<tbody>
{{#each (sort-by "title" this.domains) as |domain|}}
<tr data-test-domain>
<td data-test-domain-title>
{{domain.title}}
</td>
<td class="summary-highlight" data-test-domain-summary>
{{t "general.subCompetencyCount" count=domain.childCount}}
</td>
</tr>
</thead>
<tbody>
{{#each (sort-by "title" this.domains) as |domain|}}
<tr data-test-domain>
<td data-test-domain-title>
{{domain.title}}
</td>
<td class="summary-highlight" data-test-domain-summary>
{{t "general.subCompetencyCount" count=domain.childCount}}
</td>
</tr>
{{/each}}
</tbody>
</table>
</div>
{{/if}}
{{/each}}
</tbody>
</table>
</div>
</section>
19 changes: 12 additions & 7 deletions packages/frontend/app/components/school-competencies-collapsed.js
Original file line number Diff line number Diff line change
@@ -1,12 +1,21 @@
import Component from '@glimmer/component';
import { tracked } from '@glimmer/tracking';
import { restartableTask } from 'ember-concurrency';
import { cached, tracked } from '@glimmer/tracking';
import { TrackedAsyncData } from 'ember-async-data';

export default class SchoolCompetenciesCollapsedComponent extends Component {
@tracked competenciesRelationship;

@cached
get schoolCompetenciesData() {
return new TrackedAsyncData(this.args.school.competencies);
}

get competencies() {
return this.competenciesRelationship ? this.competenciesRelationship.slice() : [];
if (this.schoolCompetenciesData.isResolved) {
return this.schoolCompetenciesData.value;
}

return [];
}

get domains() {
Expand All @@ -20,8 +29,4 @@ export default class SchoolCompetenciesCollapsedComponent extends Component {
return competency.belongsTo('parent').id();
});
}

load = restartableTask(async () => {
this.competenciesRelationship = await this.args.school.competencies;
});
}
Original file line number Diff line number Diff line change
@@ -1,7 +1,5 @@
<section
class="school-competencies-expanded"
{{did-insert (perform this.load)}}
{{did-update (perform this.load) @school.competencies}}
data-test-school-competencies-expanded
...attributes
>
Expand Down
24 changes: 12 additions & 12 deletions packages/frontend/app/components/school-competencies-expanded.js
Original file line number Diff line number Diff line change
@@ -1,27 +1,27 @@
import Component from '@glimmer/component';
import { service } from '@ember/service';
import { all } from 'rsvp';
import { tracked } from '@glimmer/tracking';
import { cached, tracked } from '@glimmer/tracking';
import { action } from '@ember/object';
import { dropTask, restartableTask } from 'ember-concurrency';
import { dropTask } from 'ember-concurrency';
import { filterBy, uniqueValues } from 'ilios-common/utils/array-helpers';
import { TrackedAsyncData } from 'ember-async-data';

export default class SchoolCompetenciesExpandedComponent extends Component {
@service store;
@tracked competenciesToAdd = [];
@tracked competenciesToRemove = [];
@tracked schoolCompetencies;

load = restartableTask(async () => {
this.cleanup();
this.schoolCompetencies = await this.args.school.competencies;
});
@cached
get schoolCompetenciesData() {
return new TrackedAsyncData(this.args.school.competencies);
}

get competencies() {
if (!this.schoolCompetencies) {
if (!this.schoolCompetenciesData.isResolved) {
return [];
}
const arr = [...this.schoolCompetencies.slice(), ...this.competenciesToAdd];
const arr = [...this.schoolCompetenciesData.value, ...this.competenciesToAdd];
return uniqueValues(
arr.filter((competency) => !this.competenciesToRemove.includes(competency)),
);
Expand Down Expand Up @@ -80,10 +80,11 @@ export default class SchoolCompetenciesExpandedComponent extends Component {
}

save = dropTask(async () => {
const domainsToRemove = this.schoolCompetencies.filter((competency) => {
const competencies = this.schoolCompetenciesData.value;
const domainsToRemove = competencies.filter((competency) => {
return !competency.belongsTo('parent').id() && !this.competencies.includes(competency);
});
const competenciesToRemove = this.schoolCompetencies.filter((competency) => {
const competenciesToRemove = competencies.filter((competency) => {
return competency.belongsTo('parent').id() && !this.competencies.includes(competency);
});

Expand All @@ -104,6 +105,5 @@ export default class SchoolCompetenciesExpandedComponent extends Component {
// cleanup
this.cleanup();
this.args.setSchoolManageCompetencies(false);
this.schoolCompetencies = await this.args.school.competencies;
});
}
Original file line number Diff line number Diff line change
Expand Up @@ -2,8 +2,6 @@
<div
class="school-curriculum-inventory-institution-manager"
data-test-school-curriculum-inventory-institution-manager
{{did-insert this.load}}
{{did-update this.load @institution}}
...attributes
>
<div
Expand Down
Original file line number Diff line number Diff line change
@@ -1,41 +1,21 @@
import Component from '@glimmer/component';
import { tracked } from '@glimmer/tracking';
import { action } from '@ember/object';
import { service } from '@ember/service';
import { dropTask } from 'ember-concurrency';
import { validatable, IsInt, Gte, Length, Lte, NotBlank } from 'ilios-common/decorators/validation';

@validatable
export default class SchoolCurriculumInventoryInstitutionManagerComponent extends Component {
@service store;
@tracked @Length(1, 100) @NotBlank() name;
@tracked @IsInt() @Gte(1) @Lte(99999) aamcCode;
@tracked @Length(1, 100) @NotBlank() addressStreet;
@tracked @Length(1, 100) @NotBlank() addressCity;
@tracked @Length(1, 50) @NotBlank() addressStateOrProvince;
@tracked @Length(1, 10) @NotBlank() addressZipCode;
@tracked @Length(1, 2) @NotBlank() addressCountryCode;

@action
load() {
if (this.args.institution) {
this.name = this.args.institution?.name;
this.aamcCode = this.args.institution?.aamcCode;
this.addressStreet = this.args.institution?.addressStreet;
this.addressCity = this.args.institution?.addressCity;
this.addressStateOrProvince = this.args.institution?.addressStateOrProvince;
this.addressZipCode = this.args.institution?.addressZipCode;
this.addressCountryCode = this.args.institution?.addressCountryCode;
} else {
this.name = '';
this.aamcCode = '';
this.addressStreet = '';
this.addressCity = '';
this.addressStateOrProvince = '';
this.addressZipCode = '';
this.addressCountryCode = '';
}
}
@tracked @Length(1, 100) @NotBlank() name = this.args.institution?.name ?? '';
@tracked @IsInt() @Gte(1) @Lte(99999) aamcCode = this.args.institution?.aamcCode ?? '';
@tracked @Length(1, 100) @NotBlank() addressStreet = this.args.institution?.addressStreet ?? '';
@tracked @Length(1, 100) @NotBlank() addressCity = this.args.institution?.addressCity ?? '';
@tracked @Length(1, 50) @NotBlank() addressStateOrProvince =
this.args.institution?.addressStateOrProvince ?? '';
@tracked @Length(1, 10) @NotBlank() addressZipCode = this.args.institution?.addressZipCode ?? '';
@tracked @Length(1, 2) @NotBlank() addressCountryCode =
this.args.institution?.addressCountryCode ?? '';

save = dropTask(async () => {
this.addErrorDisplaysFor([
Expand Down
1 change: 0 additions & 1 deletion packages/frontend/app/components/school-manager.hbs
Original file line number Diff line number Diff line change
@@ -1,7 +1,6 @@
<section
class="school-manager"
data-test-school-manager
{{did-insert this.load}}
...attributes
>
<div class="backtolink">
Expand Down
4 changes: 2 additions & 2 deletions packages/frontend/app/components/school-manager.js
Original file line number Diff line number Diff line change
Expand Up @@ -11,8 +11,8 @@ export default class SchoolManagerComponent extends Component {
@service flashMessages;
@tracked @NotBlank() @Length(1, 60) title;

@action
load() {
constructor() {
super(...arguments);
this.title = this.args.school.title;
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -64,12 +64,14 @@ export default class SchoolSessionAttributesExpandedComponent extends Component
}

save = dropTask(async () => {
await this.args.saveAll({
//read the flipped values before we reset them
const all = {
showSessionAttendanceRequired: this.showSessionAttendanceRequired,
showSessionSupplemental: this.showSessionSupplemental,
showSessionSpecialAttireRequired: this.showSessionSpecialAttireRequired,
showSessionSpecialEquipmentRequired: this.showSessionSpecialEquipmentRequired,
});
this.resetFlipped();
};
this.resetFlipped(); //reset before we save, otherwise there will be a flash of the old values
await this.args.saveAll(all);
});
}
Original file line number Diff line number Diff line change
@@ -1,11 +1,9 @@
<div
class="school-session-attributes"
{{did-insert (perform this.load) @school}}
{{did-update (perform this.load) @school @school.configurations}}
data-test-school-session-attributes
...attributes
>
{{#if this.load.lastSuccessful}}
{{#if (or this.schoolConfigsData.isResolved this.save.isRunning)}}
{{#if @details}}
<SchoolSessionAttributesExpanded
@canUpdate={{@canUpdate}}
Expand Down
Loading

0 comments on commit fcec5a7

Please sign in to comment.