-
Notifications
You must be signed in to change notification settings - Fork 26
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
Add storybook a11y testing #142 #1450
Conversation
✔️ Deploy Preview for clever-edison-cd22c1 ready! 🔨 Explore the source changes: 5eb1361 🔍 Inspect the deploy log: https://app.netlify.com/sites/clever-edison-cd22c1/deploys/60dfb00fa433eb000808b763 😎 Browse the preview: https://deploy-preview-1450--clever-edison-cd22c1.netlify.app |
initStoryshots({ | ||
suite: "a11y checks", | ||
test: axeTest({ | ||
storybookUrl: "http://192.168.0.102:62285", |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This needs to be updated to work automatically
@@ -26,7 +26,7 @@ const ImageCard = (props: ImageCardProps) => { | |||
const image = ( | |||
<div className="image-card__wrapper"> | |||
<figure className="image-card"> | |||
{props.imageUrl && <img src={props.imageUrl} alt={props.title} />} | |||
{props.imageUrl && <img src={props.imageUrl} alt={"A picture of the building"} />} |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This comes from the rule "Ensure image alternative is not repeated as text", which is a best-practice not a WCAGAA rule, but it does seem like it would be annoying/redundant.
More info for the rule from Deque. An alternative is to leave the alt empty in this case if it's not providing value. Up to you all what you think would be a better solution here
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Would be nice to add a prop for description instead of this, since for now it's not actually a building.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I added an optional description prop for alt to use and defaults to "An picture of the building"
@@ -18,13 +18,13 @@ const InfoCard = (props: InfoCardProps) => { | |||
return ( | |||
<div className={wrapperClasses.join(" ")}> | |||
{props.externalHref ? ( | |||
<h4 className="info-card__title"> | |||
<h3 className="info-card__title"> |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I updated this because of the rule "Ensures the order of headings is semantically correct". We had a jump from an h2 at the InfoCard grid level to this h3. It doesn't affect the styling, just the semantics
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Longterm plan, should have props for tags so that you set it at the appropriate level depending on the context. Add a TODO to add props, or create an issue about it.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Added #1516 to address this.
@@ -33,7 +33,7 @@ More content | |||
className="is-normal-primary-lighter" | |||
> | |||
{` | |||
### Header 3 | |||
#### Header 4 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Same issue as this comment
d73e027
to
849a3bb
Compare
Follow-up ticket created in #1489
849a3bb
to
e083707
Compare
✔️ Deploy Preview for dev-bloom ready! 🔨 Explore the source changes: 378ceb9 🔍 Inspect the deploy log: https://app.netlify.com/sites/dev-bloom/deploys/60ef345ad0f7910007eed9ee 😎 Browse the preview: https://deploy-preview-1450--dev-bloom.netlify.app |
✔️ Deploy Preview for dev-partners-bloom ready! 🔨 Explore the source changes: 378ceb9 🔍 Inspect the deploy log: https://app.netlify.com/sites/dev-partners-bloom/deploys/60ef345a22edc900074c9d81 😎 Browse the preview: https://deploy-preview-1450--dev-partners-bloom.netlify.app |
✔️ Deploy Preview for jovial-davinci-1d67a0 ready! 🔨 Explore the source changes: 378ceb9 🔍 Inspect the deploy log: https://app.netlify.com/sites/jovial-davinci-1d67a0/deploys/60ef345a97a6c6000805a465 😎 Browse the preview: https://deploy-preview-1450--jovial-davinci-1d67a0.netlify.app |
✔️ Deploy Preview for dev-storybook-bloom ready! 🔨 Explore the source changes: 378ceb9 🔍 Inspect the deploy log: https://app.netlify.com/sites/dev-storybook-bloom/deploys/60ef345adef5e80008693a55 😎 Browse the preview: https://deploy-preview-1450--dev-storybook-bloom.netlify.app |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
There are accessibility issues in these changes.
@@ -42,7 +42,12 @@ export const defaultDropzone = () => { | |||
{progressValue == 0 && ( | |||
<p className="mt-16">(Provide Cloudinary credentials via the Knobs below.)</p> | |||
)} | |||
<img src={cloudinaryImage} style={{ width: "200px" }} /> | |||
<img |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This ARIA role is not valid.
@seanmalbert @emilyjablonski this is ready for review. A couple of notes:
Note: I'm heading offline in an hour or so for a long weekend so if you have comments I will address them Monday! |
@seanmalbert @emilyjablonski do you have time to review this PR sometime this week? I'll work on fixing the merge conflict |
@@ -26,7 +26,7 @@ const ImageCard = (props: ImageCardProps) => { | |||
const image = ( | |||
<div className="image-card__wrapper"> | |||
<figure className="image-card"> | |||
{props.imageUrl && <img src={props.imageUrl} alt={props.title} />} | |||
{props.imageUrl && <img src={props.imageUrl} alt={"A picture of the building"} />} |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I added an optional description prop for alt to use and defaults to "An picture of the building"
@@ -18,13 +18,13 @@ const InfoCard = (props: InfoCardProps) => { | |||
return ( | |||
<div className={wrapperClasses.join(" ")}> | |||
{props.externalHref ? ( | |||
<h4 className="info-card__title"> | |||
<h3 className="info-card__title"> |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Added #1516 to address this.
@@ -26,7 +27,9 @@ const ImageCard = (props: ImageCardProps) => { | |||
const image = ( | |||
<div className="image-card__wrapper"> | |||
<figure className="image-card"> | |||
{props.imageUrl && <img src={props.imageUrl} alt={"A picture of the building"} />} | |||
{props.imageUrl && ( | |||
<img src={props.imageUrl} alt={props.description || "An picture of the building"} /> |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
oops @seanmalbert I just had this PR open again because I was demoing it to the rest of our team, and I noticed that this default has a typo in it 😕
* 1320/additional eligibility, listings management (#1374) * 1349/leasing agent section, listings management (#1376) * Issue 1328/move property to the listing model (#1361) * Working seeding and read/write * Refactor seeds types * Add tests for encapsulated property * Update frontend client * Update changelog * Update sites/partners and sites/public according to new Listing schema * Update Waitlist.test.tsx and listings-importer.ts * Fix url-helper.ts * Update ui-components tests after schema changes * Fix listingUrlSlug and corresponding tests * Fix types in cypress/support/helpers.ts * Updated broken tests Co-authored-by: dominikx96 <dominik@airnauts.com> * Align dev with master (#1399) * Issue 1362/total flagged bug (#1366) * Fix counting totalFlagged property in AFS module * Fix a race condition in AFS module * Update changelog * fix retry import * Throw 429 on application creation retry failure Co-authored-by: Sean Albert <smabert@gmail.com> * fix merge conflicts in master (#1375) * Replace UserContext with AuthContext (#1311) * Replace UserContext with AuthContext * Remove api_requests * Fix imports * Fix userService params * Fix ConfirmationModal * Add missing appUrl * Fixes after rebase and remove useRouter for ui-components * Fix language passed to axios * Adds debug instructions to backend/core readme (#15) (#1390) * Adds start command for backend in debug mode (#15) * Adds start command for backend in debug mode * add notes to readme on debugging the backend * remove package.json changes since there was already a debug command, and update readme (#16) * Add backend/proxy Dockerfile, README.md and nginx config file (#1380) * Add backend/proxy Dockerfile, README.md and nginx config file * Update changelog * Add /jurisdictions endpoint (#1391) * Add /jurisdictions endpoint * Update changelog * Update migration to create jurisdiction relation automatically for existing listings * Revert "Merge latest master (#1370)" (#1394) * Revert "Merge latest master (#1370)" This reverts commit 845f2e6. * Retain overrideTranslations related change from housingbayarea fork * Add reservedCommunityType endpoint (#1395) * Revert "Merge latest master (#1370)" This reverts commit 845f2e6. * Add reservedCommunityType endpoint * adds reservedCommunityType join and select to listing service qb adds reservedCommunityType join and select to listing service qb and reverts change to _app Co-authored-by: seanmalbert <smabert@gmail.com> * updates listing units reference * fixes cypress tests for application household Co-authored-by: Sean Albert <smabert@gmail.com> Co-authored-by: Emily Jablonski <65367387+emilyjablonski@users.noreply.github.com> Co-authored-by: Marcin Jędras <mjjedras@gmail.com> Co-authored-by: Austin Valeske <avaleske@users.noreply.github.com> * 1351 Preview (#1359) * updates pull request template * removes BACKEND_API_BASE from netlify.toml * updates for partners translation locale overrides * resolve issue with out of sync lock and package files * removes package-lock * updates Layout path * removes gtm key for production, since it should be coming from netlify's settings Already deployed to alameda. * adds simple filter capability to listings and implements * regenerated swagger * changelog entry * Brings dev up-to-date with master (#1360) * updates pull request template * removes BACKEND_API_BASE from netlify.toml * updates for partners translation locale overrides * resolve issue with out of sync lock and package files * removes package-lock * updates Layout path * Fixed paper app submission error if there are no preferences (#1340) * Fixed paper app submission error if there are no preferences * Updated changelog Co-authored-by: dominikx96 <dominik@airnauts.com> * Add assets module (#1307) * Add basic tests for assets module * Add eager to createpresignedurl dto and implement CloudinaryService * Move AppModule imports from module to dynamic resolver * Rework assets service to return timestamp and signature * Rework assets service to return timestamp and signature * Add missing ApiProperty decorator for FormMetadata properties * Add fake cloudinary environment variables to circleci config * Add fake cloudinary secrets to circleci workflows * Fix unit tests * Update changelog * Add assets migration * Return UserBasicDto from POST /users (#1324) * Return UserBasicDto from POST /users * Update User DTO to not include resetToken and update frontend client * Update changelog * Fix user controller responses * Fix yarn.lock being out of sync with package.json (#1342) * removes gtm key for production, since it should be coming from netlify's settings Already deployed to alameda. * Removes GTM_KEY from netlify configuration - already deployed to alameda (#1347) * updates pull request template * removes BACKEND_API_BASE from netlify.toml * updates for partners translation locale overrides * resolve issue with out of sync lock and package files * removes package-lock * updates Layout path * removes gtm key for production, since it should be coming from netlify's settings Already deployed to alameda. * Remove unused package-lock.json (#1344) * refactor: seed data (#1312) * Update hero button styles #1314 (#1329) * feat: navbar custom widths and image only support (#1346) * Add noWelcomeEmail query param to POST /users (#1326) * Add noConfirmationEmail query param to POST /users * Add tests for noConfirmationEmail * Fix linter * Update changelog * Remove merge markers * Fix yarn.lock being out of sync with package.json (#1342) * Removes GTM_KEY from netlify configuration - already deployed to alameda (#1347) * updates pull request template * removes BACKEND_API_BASE from netlify.toml * updates for partners translation locale overrides * resolve issue with out of sync lock and package files * removes package-lock * updates Layout path * removes gtm key for production, since it should be coming from netlify's settings Already deployed to alameda. * Remove unused package-lock.json (#1344) * refactor: seed data (#1312) * Update hero button styles #1314 (#1329) * feat: navbar custom widths and image only support (#1346) * Add noConfirmationEmail query param to POST /users * Add tests for noConfirmationEmail * Fix linter * Update changelog * Remove merge markers * Remove duplicate tests from user e2e Co-authored-by: Sean Albert <smabert@gmail.com> Co-authored-by: Emily Jablonski <65367387+emilyjablonski@users.noreply.github.com> Co-authored-by: Andrea Egan <akegan@users.noreply.github.com> * Flagged Applications Table (#1132) * Add Application flagged sets listing and onInsert creation * Add resolve action * Add client code * Clean up DB after afs tests * Fix backend cross test dependencies * Created flags page * Added listing param * Created hook to fetch flagged applications * Added flags navigation * Added inner navigation * Initial work on the flags page * Added flags navigation * Updated flags cols * Added unique primary applicants qty * Updated columns * Updated columns and table style * Added link to the single flag set * Created new fag page * Basic columns definition * Added checkboxes to select applications * Updated secondary nav applications qty * Renamed and moved component * Added SHOW_DUPLICATES variable to temporary enable/disable navigation * Updated flags routes after next update * Updated tag size * Updated header title * Updated duplicates table * Created useMutation hook * Updated mutation hook * Updated duplicates table and data fetching hook * Created pagionation component to use with ag-grid * Applications page cleanup & implemented a new pagination component * Added page and limit params to the flags hook * Updated flags table and pagination * Cleanup * Updated changelog * Pagination improvements on mobile * Updated navigation tabs * Disable next button when there are no appliacations * Cleanup & updated Layout path * Cleanup * Move navigation component into partners dir Co-authored-by: Michal Plebanski <michalp@airnauts.com> Co-authored-by: dominikx96 <dominik@airnauts.com> * Add table image thumbnails and minimal flush styles (#1339) * Add table image thumbnails and minimal flush styles * Switch to using a TableThumbnail component, fix CSS * Update Changelog with PR #1339 * Update link in Changelog to PR #1339 * 1321/listings management, additional details section (#1338) * adds step to db:reseed that adds the uuid extension if it's not present (#1357) Co-authored-by: Will Lin <4317058+willrlin@users.noreply.github.com> Co-authored-by: dominikx96 <dominikx96@gmail.com> Co-authored-by: dominikx96 <dominik@airnauts.com> Co-authored-by: Michał Plebański <michalp@airnauts.com> Co-authored-by: Emily Jablonski <65367387+emilyjablonski@users.noreply.github.com> Co-authored-by: Andrea Egan <akegan@users.noreply.github.com> Co-authored-by: Jared White <jared@jaredwhite.com> Co-authored-by: Austin Valeske <avaleske@users.noreply.github.com> Co-authored-by: Will Lin <4317058+willrlin@users.noreply.github.com> * update dev branch with master (#1373) * addresses issues from review * updates filter implementation * completely changed filtering for listings * updates to handle multiple values for the same key * aside cleanup and log removal Co-authored-by: dominikx96 <dominikx96@gmail.com> Co-authored-by: dominikx96 <dominik@airnauts.com> Co-authored-by: Michał Plebański <michalp@airnauts.com> Co-authored-by: Emily Jablonski <65367387+emilyjablonski@users.noreply.github.com> Co-authored-by: Andrea Egan <akegan@users.noreply.github.com> Co-authored-by: Jared White <jared@jaredwhite.com> Co-authored-by: Austin Valeske <avaleske@users.noreply.github.com> Co-authored-by: Will Lin <4317058+willrlin@users.noreply.github.com> * 1318/additional fees, listings management (#1377) * Fix units availability display (#1398) * Fix units availability display * Add changelog for unit availability * 1388/date component update take 2 (#1392) * Adds uuid extension step to e2e tests, and update to .env.template (#19) (#1406) * adds step to create uuid extension to e2e test initialization * Add test database environment variable to .env.template and note to readme about it * Add reserved_community_type seed migration (#1411) * Add reserved_community_type seed migration * Update changelog * 1177/add image to listing (#1413) * Add image field to listing * Add image asset relation to listing model Co-authored-by: seanmalbert <smabert@gmail.com> * 1408/submission due date (#1409) * Add due date check to application submission endpoint * Add test checking if submission deadline works * Revert listing state after changes in one of the e2e tests * Add changelog.md udpates * 1418/cache and cleanup (#1422) * updates pull request template * removes BACKEND_API_BASE from netlify.toml * updates for partners translation locale overrides * resolve issue with out of sync lock and package files * removes package-lock * updates Layout path * removes gtm key for production, since it should be coming from netlify's settings Already deployed to alameda. * adds cache clearing, links for adding/editing and cleanup * updated changelog * updates application count logic * adds clearCacheKeys in cacheLib * Add assets endpoints for list and retrieve by id (#1412) * Add assets endpoints for list and retrieve by id * Add assets endpoints for list and retrieve by id Co-authored-by: seanmalbert <smabert@gmail.com> * 1317/listings management, building details & intro (#1420) * 1319/listings management, building features (#1421) * 1178 add result and waitlist related fields to Listing (#1434) * Add tests for updating listing.image relation through listing endpoint * Add resultLink, isWaitlistOpen and waitlistOpenSpots to Listing model * Remove eager relation to listing from user entity * Update client * 1383/listings management, ranking and results (#1433) * 1350 / Units (#1448) * updates pull request template * removes BACKEND_API_BASE from netlify.toml * updates for partners translation locale overrides * resolve issue with out of sync lock and package files * removes package-lock * updates Layout path * removes gtm key for production, since it should be coming from netlify's settings Already deployed to alameda. * adds units to listings form * cleanup around editing/saving units * unit details * updates for disableUnitAccourdion * check for amiChart and FieldGroup revert * fix new listing issue * fixes issues from feedback * moved code into formatFormData * 1381/listings management, application addresses (#1425) * 1381 wip * last toggleable fields * add office hours * translations * details * Add applicationPickUpAddressType and applicationDropOffAddressType columns to Listing model * new backend fields for dropoff address * details page * submit issues * show address types * remove unused application methods * cleanup * application submission notes * default values load in the form * default values for postmark date * typing issues w add page * use existing addresses on listing page * can really share addresses * Add additionalApplicationSubmissionNotes migration (#1441) * pr feedback * pr feedback pr 2 * changelog * type yes/no * combine types * fixup address fxn * update migration * office hours fix * test updated config yaml * testing circleci config update * updated circleci config test * Updated config.yml * Updated config.yml * update migration file Co-authored-by: Michal Plebanski <michalp@airnauts.com> Co-authored-by: Sean Albert <smabert@gmail.com> * 1382/listings management, application dates (#1432) * set fallback to true for getStaticPaths so new paths can be added (#1461) * Dev - adds cache revalidation to frontend app (#1462) * set fallback to true for getStaticPaths so new paths can be added * adds revalidate to staticProps * updates for cache revalidation on the frontend * removes listing controller update (#1464) * Application method/paperpickup (#1469) * adds PaperPickup back * Update listings.controller.ts * revert swagger changes * removes preview logic from ListingView (#1476) * 1153 Dropzone-style file upload component (#1437) * First pass at a dropzone Cloudinary uploader * Style the progress control and provide more complete flow * Tighten up Dropzone usability * Add id for accessibility * Update Changelog with #1437 * 1331/hide eligibility header if no sections present (#1457) * 1331/hide eligibility header if no sections present * changelog * Add Github action for running Prettier on PRs (#1440) * Run prettier automatically with Github Actions. Introduces an action to automatically run prettier and commit fixes to the PR. This ensures that the repo will always adhere to the style guide. * Fix code style issues with Prettier Co-authored-by: Lint Action <lint-action@samuelmeuli.com> * Fix code style issues with Prettier * Entries for unreleased and adds 1.0.4 * Fix code style issues with Prettier * 1444/optional fields (#1470) * Add optional indicator to fields that have IsOptional validator set with class-validator * moves changelog comment to unreleased * Fix code style issues with Prettier * updates optional fields from merge * Fix code style issues with Prettier * fixes tests and makes listing.name required * Fix code style issues with Prettier * householdsize fixes * Add optional indicator to fields that have IsOptional validator set with class-validator * moves changelog comment to unreleased * updates optional fields from merge * Fix code style issues with Prettier * fixes tests and makes listing.name required * Fix code style issues with Prettier * householdsize fixes * Fix code style issues with Prettier * Fix code style issues with Prettier * Fix code style issues with Prettier * Apply cleanup with now optional fields * Fix code style issues with Prettier * updates HouseholdSizeField so min is optional * Fix code style issues with Prettier Co-authored-by: seanmalbert <smabert@gmail.com> Co-authored-by: Lint Action <lint-action@samuelmeuli.com> * Fix code style issues with Prettier * 1454/listings management visual QA round (#1463) * Refactor/user module 2 (#1474) * Encapsulate User module within Auth module * Move business logic from User controller to user service * moves changelog message to unreleased section * Fix code style issues with Prettier * fixes unrelated ag_grid warnings * replaces use of backend client with swagger * Fix code style issues with Prettier Co-authored-by: seanmalbert <smabert@gmail.com> Co-authored-by: Lint Action <lint-action@samuelmeuli.com> * 1404/add action block (#1459) * Add ActionBlock component * Add changelog for ActionBlock * Style tweaks for ActionBlock * Add DAHLIA styles for ActionBlock and fix margin on smaller screen * Fix changelog placement for ActionBlock * Connect ag-grid sort with the API (#1492) * Connect ag-grid sort with the API * Fix code style issues with Prettier * Updated changelog * Fix code style issues with Prettier * Add empty values as last * Fix code style issues with Prettier * Add missing OrderBy enum definitions * Add migrating empty strings to nulls in applicant.last_name and applicant.first_name * Fix code style issues with Prettier * Fix 1625746856273-migrate-empty-strings-to-nulls-in-app SQL queries * Map firstName and lastName empty strings to nulls * Update sorting compare method * Add applicant firstName and lastName MinLength(1) validators * Fix e2e tests (missing lastName in test fixtures) * Update var name * Update order type * Update types Co-authored-by: Dominik Barcikowski <dominik@airnauts.com> Co-authored-by: Lint Action <lint-action@samuelmeuli.com> Co-authored-by: Michal Plebanski <michalp@airnauts.com> * Add commands to run Cypress tests in "headless" mode (#1505) This change adds yarn commands to run the Cypress tests in "headless" mode. It also removes two Cypress test outputs (which shouldn't have been committed but slipped past the gitignore) and updates the gitignore rules to ensure no more slip through. * 1503/fix out of sync swagger (#1504) * Update swagger * Fix code style issues with Prettier Fix broken test: fixtures update and Address type Change return element to null Fix code style issues with Prettier * fixes issues with partners build with updated backend swagger * fixes tests Co-authored-by: seanmalbert <smabert@gmail.com> * Add storybook a11y testing #142 (#1450) * Add storybook storyshots puppeteer addon * Get yarn:a11y test up and running locally * Fix alt text-related issues * Try running a11y tests on circleCI * Make sure static storybook build is gitignored * Actually add a11y tests to circleCI pipeline * Disable nested interactive rule for Tab-like Nav * Move storyshots-puppeteer and puppeteer into dev dependencies * Add unmet peer dependency of preact Follow-up ticket created in #1489 * Fix failing jest tests * Try node docker image with browsers * Use non-legacy docker image * Fix code style issues with Prettier * Fix a11y issue with dropzone story * Add changes to changelog * Fix code style issues with Prettier * adds description prop to ImageCard for alt text * updates ImageCard tests * Fix code style issues with Prettier Co-authored-by: Lint Action <lint-action@samuelmeuli.com> Co-authored-by: seanmalbert <smabert@gmail.com> * 1480/ Fix double submit (#1508) * set fallback to true for getStaticPaths so new paths can be added * adds revalidate to staticProps * updates for cache revalidation on the frontend * trigger cleanup * refactors listing submit * moves setAlert and setLoading calls * adds useCallback for onSubmit * adds an additional state and useEffect to handle submission * adds status dependency on useEffect * moves setLoading to trigger sooner * set setStatus prop for Aside to optional * Fix code style issues with Prettier * Remove unused inverse relations from entities (#1520) * Fixes bug with listing form (#1521) * set fallback to true for getStaticPaths so new paths can be added * adds revalidate to staticProps * updates for cache revalidation on the frontend * trigger cleanup * fixes listing bug issue * 1184/unit type rent (#1439) * Add unit_type table * Add unit_rent_type table * Add unit_accessibility_priority_type table * Update autogenerated frontend client * Fix missing imports in Unit and App modules * Snapshot * Update unit related migrations * Fix leftjoins in listings.service.ts Refactor seeds module * Update backend-swagger.ts * Change src/listings/PaperListingForm/index.tsx to align with unit_type related changes * Fix linter complaints * Fix code style issues with Prettier * adds priorityType.name to partners * Update changelog.md * Improve migration script to take into account existing values with SELECT DISTINCT query * adds unit type and priority options and cleans up how that's all handled Co-authored-by: Lint Action <lint-action@samuelmeuli.com> Co-authored-by: seanmalbert <smabert@gmail.com> * Adds additional checks for unit type and priority (#1525) * set fallback to true for getStaticPaths so new paths can be added * adds revalidate to staticProps * updates for cache revalidation on the frontend * trigger cleanup * fixes listing bug issue * adds additional checks for unit type and priority * Add preview (disabled) state for Listings Application button (#1502) * Add preview (disabled) state for Listings Application button * Also fix bug in the LinkButton component * Update changelog with #1502 * Update jest-backend ci/cd job environment variables sourced through .… (#1526) Update jest-backend ci/cd job environment variables sourced through .circleci/config.yaml * 1348/Add photo upload to the Listing form (#1491) * First pass at a dropzone Cloudinary uploader * Style the progress control and provide more complete flow * Tighten up Dropzone usability * Add id for accessibility * Update Changelog with #1437 * Adding photo upload to Listings MVP (WIP) * Fix image data issue for edits, add detail preview * Upload to Cloudinary using a signed preset * Revert previous double-submit issue * Remove stray console call * Fix undefined error on new listing page * fix lint error * Add #1491 to changelog * Use state only for Cloudinary upload data Co-authored-by: seanmalbert <smabert@gmail.com> * 1352/Add flagged and mark as duplicate to CSV export (#1500) * Initial changes for CSV flagged export * Fix typeorm join and flagged mapping * Fix flagged query + changelog * updates use of flagged for only csv Co-authored-by: seanmalbert <smabert@gmail.com> * Listings close & unpublish (#1498) * Added unpublish action * Update aside * Add button type attr * Add close and unpublish listings endpoints * Revert "Add close and unpublish listings endpoints" This reverts commit 39e854b. * Fix error when listing is in add mode (there is no listing.id property) * Update aside buttons * Prevent error when time field is emty & tag style update * Fix type * updates watch list for onSubmit callback * removes router reload * Remove button * Fix form save after close listing action Co-authored-by: Dominik Barcikowski <dominik@airnauts.com> Co-authored-by: Michal Plebanski <michalp@airnauts.com> Co-authored-by: seanmalbert <smabert@gmail.com> * Convert listing address jsonb columns to separate address tables (#1512) * Convert listing address jsonb columns to separate address tables * Update backend swagger interfaces Co-authored-by: seanmalbert <smabert@gmail.com> * Recreated foreign keys constraints (#1514) * Recreated foreign keys constraints for `application_flagged_set_applications_applications`, `listings_leasing_agents_user_accounts`, `property_group_properties_property` and add missing `NOT NULL` migration for listing name column * moved entry to unreleased section Co-authored-by: seanmalbert <smabert@gmail.com> * Add debug flags and instructions for debugging frontends (#1519) * Add debug flags and instructions for debugging frontends (#195) * add debug flags and instructions to frontend package.json files and readmes * update changelog * update changelog * 1445/move listing events to table (#1515) * Convert listing.events json column of ListingEvent[] to a separate listing_events table * Update changelog.md * Add a test for updating ListingEvent through Listing endpoint * Update backend-swagger interfaces * Add ListingEvent relation to assets (file_id column) * Update backend-swagger.ts * Fix validations in ListingEvent create and update DTO, (file IsOptional) * merges listing seed updates from upstream Co-authored-by: seanmalbert <smabert@gmail.com> * Fix code style issues with Prettier * re-add lint config * Fix code style issues with ESLint Co-authored-by: Emily Jablonski <65367387+emilyjablonski@users.noreply.github.com> Co-authored-by: Michał Plebański <michalp@airnauts.com> Co-authored-by: dominikx96 <dominik@airnauts.com> Co-authored-by: Sean Albert <smabert@gmail.com> Co-authored-by: Marcin Jędras <mjjedras@gmail.com> Co-authored-by: Austin Valeske <avaleske@users.noreply.github.com> Co-authored-by: dominikx96 <dominikx96@gmail.com> Co-authored-by: Andrea Egan <akegan@users.noreply.github.com> Co-authored-by: Jared White <jared@jaredwhite.com> Co-authored-by: Will Lin <4317058+willrlin@users.noreply.github.com> Co-authored-by: Lint Action <lint-action@samuelmeuli.com> Co-authored-by: Anders Schneider <anderseschneider@gmail.com>
* 1320/additional eligibility, listings management (#1374) * 1349/leasing agent section, listings management (#1376) * Issue 1328/move property to the listing model (#1361) * Working seeding and read/write * Refactor seeds types * Add tests for encapsulated property * Update frontend client * Update changelog * Update sites/partners and sites/public according to new Listing schema * Update Waitlist.test.tsx and listings-importer.ts * Fix url-helper.ts * Update ui-components tests after schema changes * Fix listingUrlSlug and corresponding tests * Fix types in cypress/support/helpers.ts * Updated broken tests Co-authored-by: dominikx96 <dominik@airnauts.com> * Align dev with master (#1399) * Issue 1362/total flagged bug (#1366) * Fix counting totalFlagged property in AFS module * Fix a race condition in AFS module * Update changelog * fix retry import * Throw 429 on application creation retry failure Co-authored-by: Sean Albert <smabert@gmail.com> * fix merge conflicts in master (#1375) * Replace UserContext with AuthContext (#1311) * Replace UserContext with AuthContext * Remove api_requests * Fix imports * Fix userService params * Fix ConfirmationModal * Add missing appUrl * Fixes after rebase and remove useRouter for ui-components * Fix language passed to axios * Adds debug instructions to backend/core readme (#15) (#1390) * Adds start command for backend in debug mode (#15) * Adds start command for backend in debug mode * add notes to readme on debugging the backend * remove package.json changes since there was already a debug command, and update readme (#16) * Add backend/proxy Dockerfile, README.md and nginx config file (#1380) * Add backend/proxy Dockerfile, README.md and nginx config file * Update changelog * Add /jurisdictions endpoint (#1391) * Add /jurisdictions endpoint * Update changelog * Update migration to create jurisdiction relation automatically for existing listings * Revert "Merge latest master (#1370)" (#1394) * Revert "Merge latest master (#1370)" This reverts commit 845f2e6. * Retain overrideTranslations related change from housingbayarea fork * Add reservedCommunityType endpoint (#1395) * Revert "Merge latest master (#1370)" This reverts commit 845f2e6. * Add reservedCommunityType endpoint * adds reservedCommunityType join and select to listing service qb adds reservedCommunityType join and select to listing service qb and reverts change to _app Co-authored-by: seanmalbert <smabert@gmail.com> * updates listing units reference * fixes cypress tests for application household Co-authored-by: Sean Albert <smabert@gmail.com> Co-authored-by: Emily Jablonski <65367387+emilyjablonski@users.noreply.github.com> Co-authored-by: Marcin Jędras <mjjedras@gmail.com> Co-authored-by: Austin Valeske <avaleske@users.noreply.github.com> * 1351 Preview (#1359) * updates pull request template * removes BACKEND_API_BASE from netlify.toml * updates for partners translation locale overrides * resolve issue with out of sync lock and package files * removes package-lock * updates Layout path * removes gtm key for production, since it should be coming from netlify's settings Already deployed to alameda. * adds simple filter capability to listings and implements * regenerated swagger * changelog entry * Brings dev up-to-date with master (#1360) * updates pull request template * removes BACKEND_API_BASE from netlify.toml * updates for partners translation locale overrides * resolve issue with out of sync lock and package files * removes package-lock * updates Layout path * Fixed paper app submission error if there are no preferences (#1340) * Fixed paper app submission error if there are no preferences * Updated changelog Co-authored-by: dominikx96 <dominik@airnauts.com> * Add assets module (#1307) * Add basic tests for assets module * Add eager to createpresignedurl dto and implement CloudinaryService * Move AppModule imports from module to dynamic resolver * Rework assets service to return timestamp and signature * Rework assets service to return timestamp and signature * Add missing ApiProperty decorator for FormMetadata properties * Add fake cloudinary environment variables to circleci config * Add fake cloudinary secrets to circleci workflows * Fix unit tests * Update changelog * Add assets migration * Return UserBasicDto from POST /users (#1324) * Return UserBasicDto from POST /users * Update User DTO to not include resetToken and update frontend client * Update changelog * Fix user controller responses * Fix yarn.lock being out of sync with package.json (#1342) * removes gtm key for production, since it should be coming from netlify's settings Already deployed to alameda. * Removes GTM_KEY from netlify configuration - already deployed to alameda (#1347) * updates pull request template * removes BACKEND_API_BASE from netlify.toml * updates for partners translation locale overrides * resolve issue with out of sync lock and package files * removes package-lock * updates Layout path * removes gtm key for production, since it should be coming from netlify's settings Already deployed to alameda. * Remove unused package-lock.json (#1344) * refactor: seed data (#1312) * Update hero button styles #1314 (#1329) * feat: navbar custom widths and image only support (#1346) * Add noWelcomeEmail query param to POST /users (#1326) * Add noConfirmationEmail query param to POST /users * Add tests for noConfirmationEmail * Fix linter * Update changelog * Remove merge markers * Fix yarn.lock being out of sync with package.json (#1342) * Removes GTM_KEY from netlify configuration - already deployed to alameda (#1347) * updates pull request template * removes BACKEND_API_BASE from netlify.toml * updates for partners translation locale overrides * resolve issue with out of sync lock and package files * removes package-lock * updates Layout path * removes gtm key for production, since it should be coming from netlify's settings Already deployed to alameda. * Remove unused package-lock.json (#1344) * refactor: seed data (#1312) * Update hero button styles #1314 (#1329) * feat: navbar custom widths and image only support (#1346) * Add noConfirmationEmail query param to POST /users * Add tests for noConfirmationEmail * Fix linter * Update changelog * Remove merge markers * Remove duplicate tests from user e2e Co-authored-by: Sean Albert <smabert@gmail.com> Co-authored-by: Emily Jablonski <65367387+emilyjablonski@users.noreply.github.com> Co-authored-by: Andrea Egan <akegan@users.noreply.github.com> * Flagged Applications Table (#1132) * Add Application flagged sets listing and onInsert creation * Add resolve action * Add client code * Clean up DB after afs tests * Fix backend cross test dependencies * Created flags page * Added listing param * Created hook to fetch flagged applications * Added flags navigation * Added inner navigation * Initial work on the flags page * Added flags navigation * Updated flags cols * Added unique primary applicants qty * Updated columns * Updated columns and table style * Added link to the single flag set * Created new fag page * Basic columns definition * Added checkboxes to select applications * Updated secondary nav applications qty * Renamed and moved component * Added SHOW_DUPLICATES variable to temporary enable/disable navigation * Updated flags routes after next update * Updated tag size * Updated header title * Updated duplicates table * Created useMutation hook * Updated mutation hook * Updated duplicates table and data fetching hook * Created pagionation component to use with ag-grid * Applications page cleanup & implemented a new pagination component * Added page and limit params to the flags hook * Updated flags table and pagination * Cleanup * Updated changelog * Pagination improvements on mobile * Updated navigation tabs * Disable next button when there are no appliacations * Cleanup & updated Layout path * Cleanup * Move navigation component into partners dir Co-authored-by: Michal Plebanski <michalp@airnauts.com> Co-authored-by: dominikx96 <dominik@airnauts.com> * Add table image thumbnails and minimal flush styles (#1339) * Add table image thumbnails and minimal flush styles * Switch to using a TableThumbnail component, fix CSS * Update Changelog with PR #1339 * Update link in Changelog to PR #1339 * 1321/listings management, additional details section (#1338) * adds step to db:reseed that adds the uuid extension if it's not present (#1357) Co-authored-by: Will Lin <4317058+willrlin@users.noreply.github.com> Co-authored-by: dominikx96 <dominikx96@gmail.com> Co-authored-by: dominikx96 <dominik@airnauts.com> Co-authored-by: Michał Plebański <michalp@airnauts.com> Co-authored-by: Emily Jablonski <65367387+emilyjablonski@users.noreply.github.com> Co-authored-by: Andrea Egan <akegan@users.noreply.github.com> Co-authored-by: Jared White <jared@jaredwhite.com> Co-authored-by: Austin Valeske <avaleske@users.noreply.github.com> Co-authored-by: Will Lin <4317058+willrlin@users.noreply.github.com> * update dev branch with master (#1373) * addresses issues from review * updates filter implementation * completely changed filtering for listings * updates to handle multiple values for the same key * aside cleanup and log removal Co-authored-by: dominikx96 <dominikx96@gmail.com> Co-authored-by: dominikx96 <dominik@airnauts.com> Co-authored-by: Michał Plebański <michalp@airnauts.com> Co-authored-by: Emily Jablonski <65367387+emilyjablonski@users.noreply.github.com> Co-authored-by: Andrea Egan <akegan@users.noreply.github.com> Co-authored-by: Jared White <jared@jaredwhite.com> Co-authored-by: Austin Valeske <avaleske@users.noreply.github.com> Co-authored-by: Will Lin <4317058+willrlin@users.noreply.github.com> * 1318/additional fees, listings management (#1377) * Fix units availability display (#1398) * Fix units availability display * Add changelog for unit availability * 1388/date component update take 2 (#1392) * Adds uuid extension step to e2e tests, and update to .env.template (#19) (#1406) * adds step to create uuid extension to e2e test initialization * Add test database environment variable to .env.template and note to readme about it * Add reserved_community_type seed migration (#1411) * Add reserved_community_type seed migration * Update changelog * 1177/add image to listing (#1413) * Add image field to listing * Add image asset relation to listing model Co-authored-by: seanmalbert <smabert@gmail.com> * 1408/submission due date (#1409) * Add due date check to application submission endpoint * Add test checking if submission deadline works * Revert listing state after changes in one of the e2e tests * Add changelog.md udpates * 1418/cache and cleanup (#1422) * updates pull request template * removes BACKEND_API_BASE from netlify.toml * updates for partners translation locale overrides * resolve issue with out of sync lock and package files * removes package-lock * updates Layout path * removes gtm key for production, since it should be coming from netlify's settings Already deployed to alameda. * adds cache clearing, links for adding/editing and cleanup * updated changelog * updates application count logic * adds clearCacheKeys in cacheLib * Add assets endpoints for list and retrieve by id (#1412) * Add assets endpoints for list and retrieve by id * Add assets endpoints for list and retrieve by id Co-authored-by: seanmalbert <smabert@gmail.com> * 1317/listings management, building details & intro (#1420) * 1319/listings management, building features (#1421) * 1178 add result and waitlist related fields to Listing (#1434) * Add tests for updating listing.image relation through listing endpoint * Add resultLink, isWaitlistOpen and waitlistOpenSpots to Listing model * Remove eager relation to listing from user entity * Update client * 1383/listings management, ranking and results (#1433) * 1350 / Units (#1448) * updates pull request template * removes BACKEND_API_BASE from netlify.toml * updates for partners translation locale overrides * resolve issue with out of sync lock and package files * removes package-lock * updates Layout path * removes gtm key for production, since it should be coming from netlify's settings Already deployed to alameda. * adds units to listings form * cleanup around editing/saving units * unit details * updates for disableUnitAccourdion * check for amiChart and FieldGroup revert * fix new listing issue * fixes issues from feedback * moved code into formatFormData * 1381/listings management, application addresses (#1425) * 1381 wip * last toggleable fields * add office hours * translations * details * Add applicationPickUpAddressType and applicationDropOffAddressType columns to Listing model * new backend fields for dropoff address * details page * submit issues * show address types * remove unused application methods * cleanup * application submission notes * default values load in the form * default values for postmark date * typing issues w add page * use existing addresses on listing page * can really share addresses * Add additionalApplicationSubmissionNotes migration (#1441) * pr feedback * pr feedback pr 2 * changelog * type yes/no * combine types * fixup address fxn * update migration * office hours fix * test updated config yaml * testing circleci config update * updated circleci config test * Updated config.yml * Updated config.yml * update migration file Co-authored-by: Michal Plebanski <michalp@airnauts.com> Co-authored-by: Sean Albert <smabert@gmail.com> * 1st attempt at frontend listing pagination * 1382/listings management, application dates (#1432) * set fallback to true for getStaticPaths so new paths can be added (#1461) * Dev - adds cache revalidation to frontend app (#1462) * set fallback to true for getStaticPaths so new paths can be added * adds revalidate to staticProps * updates for cache revalidation on the frontend * removes listing controller update (#1464) * Application method/paperpickup (#1469) * adds PaperPickup back * Update listings.controller.ts * revert swagger changes * Paginate public listings page * removes preview logic from ListingView (#1476) * 1153 Dropzone-style file upload component (#1437) * First pass at a dropzone Cloudinary uploader * Style the progress control and provide more complete flow * Tighten up Dropzone usability * Add id for accessibility * Update Changelog with #1437 * 1331/hide eligibility header if no sections present (#1457) * 1331/hide eligibility header if no sections present * changelog * Add Github action for running Prettier on PRs (#1440) * Run prettier automatically with Github Actions. Introduces an action to automatically run prettier and commit fixes to the PR. This ensures that the repo will always adhere to the style guide. * Fix code style issues with Prettier Co-authored-by: Lint Action <lint-action@samuelmeuli.com> * Fix code style issues with Prettier * Entries for unreleased and adds 1.0.4 * Fix code style issues with Prettier * initial style fixes * initial request for filtered state * 1444/optional fields (#1470) * Add optional indicator to fields that have IsOptional validator set with class-validator * moves changelog comment to unreleased * Fix code style issues with Prettier * updates optional fields from merge * Fix code style issues with Prettier * fixes tests and makes listing.name required * Fix code style issues with Prettier * householdsize fixes * Add optional indicator to fields that have IsOptional validator set with class-validator * moves changelog comment to unreleased * updates optional fields from merge * Fix code style issues with Prettier * fixes tests and makes listing.name required * Fix code style issues with Prettier * householdsize fixes * Fix code style issues with Prettier * Fix code style issues with Prettier * Fix code style issues with Prettier * Apply cleanup with now optional fields * Fix code style issues with Prettier * updates HouseholdSizeField so min is optional * Fix code style issues with Prettier Co-authored-by: seanmalbert <smabert@gmail.com> Co-authored-by: Lint Action <lint-action@samuelmeuli.com> * Fix code style issues with Prettier * remove prop type * 1454/listings management visual QA round (#1463) * Refactor/user module 2 (#1474) * Encapsulate User module within Auth module * Move business logic from User controller to user service * moves changelog message to unreleased section * Fix code style issues with Prettier * fixes unrelated ag_grid warnings * replaces use of backend client with swagger * Fix code style issues with Prettier Co-authored-by: seanmalbert <smabert@gmail.com> Co-authored-by: Lint Action <lint-action@samuelmeuli.com> * 1404/add action block (#1459) * Add ActionBlock component * Add changelog for ActionBlock * Style tweaks for ActionBlock * Add DAHLIA styles for ActionBlock and fix margin on smaller screen * Fix changelog placement for ActionBlock * Connect ag-grid sort with the API (#1492) * Connect ag-grid sort with the API * Fix code style issues with Prettier * Updated changelog * Fix code style issues with Prettier * Add empty values as last * Fix code style issues with Prettier * Add missing OrderBy enum definitions * Add migrating empty strings to nulls in applicant.last_name and applicant.first_name * Fix code style issues with Prettier * Fix 1625746856273-migrate-empty-strings-to-nulls-in-app SQL queries * Map firstName and lastName empty strings to nulls * Update sorting compare method * Add applicant firstName and lastName MinLength(1) validators * Fix e2e tests (missing lastName in test fixtures) * Update var name * Update order type * Update types Co-authored-by: Dominik Barcikowski <dominik@airnauts.com> Co-authored-by: Lint Action <lint-action@samuelmeuli.com> Co-authored-by: Michal Plebanski <michalp@airnauts.com> * Add commands to run Cypress tests in "headless" mode (#1505) This change adds yarn commands to run the Cypress tests in "headless" mode. It also removes two Cypress test outputs (which shouldn't have been committed but slipped past the gitignore) and updates the gitignore rules to ensure no more slip through. * 1503/fix out of sync swagger (#1504) * Update swagger * Fix code style issues with Prettier Fix broken test: fixtures update and Address type Change return element to null Fix code style issues with Prettier * fixes issues with partners build with updated backend swagger * fixes tests Co-authored-by: seanmalbert <smabert@gmail.com> * Add storybook a11y testing #142 (#1450) * Add storybook storyshots puppeteer addon * Get yarn:a11y test up and running locally * Fix alt text-related issues * Try running a11y tests on circleCI * Make sure static storybook build is gitignored * Actually add a11y tests to circleCI pipeline * Disable nested interactive rule for Tab-like Nav * Move storyshots-puppeteer and puppeteer into dev dependencies * Add unmet peer dependency of preact Follow-up ticket created in #1489 * Fix failing jest tests * Try node docker image with browsers * Use non-legacy docker image * Fix code style issues with Prettier * Fix a11y issue with dropzone story * Add changes to changelog * Fix code style issues with Prettier * adds description prop to ImageCard for alt text * updates ImageCard tests * Fix code style issues with Prettier Co-authored-by: Lint Action <lint-action@samuelmeuli.com> Co-authored-by: seanmalbert <smabert@gmail.com> * 1480/ Fix double submit (#1508) * set fallback to true for getStaticPaths so new paths can be added * adds revalidate to staticProps * updates for cache revalidation on the frontend * trigger cleanup * refactors listing submit * moves setAlert and setLoading calls * adds useCallback for onSubmit * adds an additional state and useEffect to handle submission * adds status dependency on useEffect * moves setLoading to trigger sooner * set setStatus prop for Aside to optional * Fix code style issues with Prettier * Remove unused inverse relations from entities (#1520) * just playing * Fixes bug with listing form (#1521) * set fallback to true for getStaticPaths so new paths can be added * adds revalidate to staticProps * updates for cache revalidation on the frontend * trigger cleanup * fixes listing bug issue * Final touches on filtering ui MVP * 1184/unit type rent (#1439) * Add unit_type table * Add unit_rent_type table * Add unit_accessibility_priority_type table * Update autogenerated frontend client * Fix missing imports in Unit and App modules * Snapshot * Update unit related migrations * Fix leftjoins in listings.service.ts Refactor seeds module * Update backend-swagger.ts * Change src/listings/PaperListingForm/index.tsx to align with unit_type related changes * Fix linter complaints * Fix code style issues with Prettier * adds priorityType.name to partners * Update changelog.md * Improve migration script to take into account existing values with SELECT DISTINCT query * adds unit type and priority options and cleans up how that's all handled Co-authored-by: Lint Action <lint-action@samuelmeuli.com> Co-authored-by: seanmalbert <smabert@gmail.com> * Adds additional checks for unit type and priority (#1525) * set fallback to true for getStaticPaths so new paths can be added * adds revalidate to staticProps * updates for cache revalidation on the frontend * trigger cleanup * fixes listing bug issue * adds additional checks for unit type and priority * Add preview (disabled) state for Listings Application button (#1502) * Add preview (disabled) state for Listings Application button * Also fix bug in the LinkButton component * Update changelog with #1502 * Update jest-backend ci/cd job environment variables sourced through .… (#1526) Update jest-backend ci/cd job environment variables sourced through .circleci/config.yaml * 1348/Add photo upload to the Listing form (#1491) * First pass at a dropzone Cloudinary uploader * Style the progress control and provide more complete flow * Tighten up Dropzone usability * Add id for accessibility * Update Changelog with #1437 * Adding photo upload to Listings MVP (WIP) * Fix image data issue for edits, add detail preview * Upload to Cloudinary using a signed preset * Revert previous double-submit issue * Remove stray console call * Fix undefined error on new listing page * fix lint error * Add #1491 to changelog * Use state only for Cloudinary upload data Co-authored-by: seanmalbert <smabert@gmail.com> * 1352/Add flagged and mark as duplicate to CSV export (#1500) * Initial changes for CSV flagged export * Fix typeorm join and flagged mapping * Fix flagged query + changelog * updates use of flagged for only csv Co-authored-by: seanmalbert <smabert@gmail.com> * Listings close & unpublish (#1498) * Added unpublish action * Update aside * Add button type attr * Add close and unpublish listings endpoints * Revert "Add close and unpublish listings endpoints" This reverts commit 39e854b. * Fix error when listing is in add mode (there is no listing.id property) * Update aside buttons * Prevent error when time field is emty & tag style update * Fix type * updates watch list for onSubmit callback * removes router reload * Remove button * Fix form save after close listing action Co-authored-by: Dominik Barcikowski <dominik@airnauts.com> Co-authored-by: Michal Plebanski <michalp@airnauts.com> Co-authored-by: seanmalbert <smabert@gmail.com> * Incorporate modal * Convert listing address jsonb columns to separate address tables (#1512) * Convert listing address jsonb columns to separate address tables * Update backend swagger interfaces Co-authored-by: seanmalbert <smabert@gmail.com> * Recreated foreign keys constraints (#1514) * Recreated foreign keys constraints for `application_flagged_set_applications_applications`, `listings_leasing_agents_user_accounts`, `property_group_properties_property` and add missing `NOT NULL` migration for listing name column * moved entry to unreleased section Co-authored-by: seanmalbert <smabert@gmail.com> * Add debug flags and instructions for debugging frontends (#1519) * Add debug flags and instructions for debugging frontends (#195) * add debug flags and instructions to frontend package.json files and readmes * update changelog * update changelog * 1445/move listing events to table (#1515) * Convert listing.events json column of ListingEvent[] to a separate listing_events table * Update changelog.md * Add a test for updating ListingEvent through Listing endpoint * Update backend-swagger interfaces * Add ListingEvent relation to assets (file_id column) * Update backend-swagger.ts * Fix validations in ListingEvent create and update DTO, (file IsOptional) * merges listing seed updates from upstream Co-authored-by: seanmalbert <smabert@gmail.com> * Fix code style issues with Prettier * re-add lint config * address review comments Co-authored-by: Emily Jablonski <65367387+emilyjablonski@users.noreply.github.com> Co-authored-by: Michał Plebański <michalp@airnauts.com> Co-authored-by: dominikx96 <dominik@airnauts.com> Co-authored-by: Sean Albert <smabert@gmail.com> Co-authored-by: Marcin Jędras <mjjedras@gmail.com> Co-authored-by: Austin Valeske <avaleske@users.noreply.github.com> Co-authored-by: dominikx96 <dominikx96@gmail.com> Co-authored-by: Andrea Egan <akegan@users.noreply.github.com> Co-authored-by: Jared White <jared@jaredwhite.com> Co-authored-by: Will Lin <4317058+willrlin@users.noreply.github.com> Co-authored-by: Lint Action <lint-action@samuelmeuli.com> Co-authored-by: Austin Valeske <avaleske@google.com> Co-authored-by: Anders Schneider <anderseschneider@gmail.com>
* 1320/additional eligibility, listings management (#1374) * 1349/leasing agent section, listings management (#1376) * Issue 1328/move property to the listing model (#1361) * Working seeding and read/write * Refactor seeds types * Add tests for encapsulated property * Update frontend client * Update changelog * Update sites/partners and sites/public according to new Listing schema * Update Waitlist.test.tsx and listings-importer.ts * Fix url-helper.ts * Update ui-components tests after schema changes * Fix listingUrlSlug and corresponding tests * Fix types in cypress/support/helpers.ts * Updated broken tests Co-authored-by: dominikx96 <dominik@airnauts.com> * Align dev with master (#1399) * Issue 1362/total flagged bug (#1366) * Fix counting totalFlagged property in AFS module * Fix a race condition in AFS module * Update changelog * fix retry import * Throw 429 on application creation retry failure Co-authored-by: Sean Albert <smabert@gmail.com> * fix merge conflicts in master (#1375) * Replace UserContext with AuthContext (#1311) * Replace UserContext with AuthContext * Remove api_requests * Fix imports * Fix userService params * Fix ConfirmationModal * Add missing appUrl * Fixes after rebase and remove useRouter for ui-components * Fix language passed to axios * Adds debug instructions to backend/core readme (#15) (#1390) * Adds start command for backend in debug mode (#15) * Adds start command for backend in debug mode * add notes to readme on debugging the backend * remove package.json changes since there was already a debug command, and update readme (#16) * Add backend/proxy Dockerfile, README.md and nginx config file (#1380) * Add backend/proxy Dockerfile, README.md and nginx config file * Update changelog * Add /jurisdictions endpoint (#1391) * Add /jurisdictions endpoint * Update changelog * Update migration to create jurisdiction relation automatically for existing listings * Revert "Merge latest master (#1370)" (#1394) * Revert "Merge latest master (#1370)" This reverts commit 43c84a2. * Retain overrideTranslations related change from housingbayarea fork * Add reservedCommunityType endpoint (#1395) * Revert "Merge latest master (#1370)" This reverts commit 43c84a2. * Add reservedCommunityType endpoint * adds reservedCommunityType join and select to listing service qb adds reservedCommunityType join and select to listing service qb and reverts change to _app Co-authored-by: seanmalbert <smabert@gmail.com> * updates listing units reference * fixes cypress tests for application household Co-authored-by: Sean Albert <smabert@gmail.com> Co-authored-by: Emily Jablonski <65367387+emilyjablonski@users.noreply.github.com> Co-authored-by: Marcin Jędras <mjjedras@gmail.com> Co-authored-by: Austin Valeske <avaleske@users.noreply.github.com> * 1351 Preview (#1359) * updates pull request template * removes BACKEND_API_BASE from netlify.toml * updates for partners translation locale overrides * resolve issue with out of sync lock and package files * removes package-lock * updates Layout path * removes gtm key for production, since it should be coming from netlify's settings Already deployed to alameda. * adds simple filter capability to listings and implements * regenerated swagger * changelog entry * Brings dev up-to-date with master (#1360) * updates pull request template * removes BACKEND_API_BASE from netlify.toml * updates for partners translation locale overrides * resolve issue with out of sync lock and package files * removes package-lock * updates Layout path * Fixed paper app submission error if there are no preferences (#1340) * Fixed paper app submission error if there are no preferences * Updated changelog Co-authored-by: dominikx96 <dominik@airnauts.com> * Add assets module (#1307) * Add basic tests for assets module * Add eager to createpresignedurl dto and implement CloudinaryService * Move AppModule imports from module to dynamic resolver * Rework assets service to return timestamp and signature * Rework assets service to return timestamp and signature * Add missing ApiProperty decorator for FormMetadata properties * Add fake cloudinary environment variables to circleci config * Add fake cloudinary secrets to circleci workflows * Fix unit tests * Update changelog * Add assets migration * Return UserBasicDto from POST /users (#1324) * Return UserBasicDto from POST /users * Update User DTO to not include resetToken and update frontend client * Update changelog * Fix user controller responses * Fix yarn.lock being out of sync with package.json (#1342) * removes gtm key for production, since it should be coming from netlify's settings Already deployed to alameda. * Removes GTM_KEY from netlify configuration - already deployed to alameda (#1347) * updates pull request template * removes BACKEND_API_BASE from netlify.toml * updates for partners translation locale overrides * resolve issue with out of sync lock and package files * removes package-lock * updates Layout path * removes gtm key for production, since it should be coming from netlify's settings Already deployed to alameda. * Remove unused package-lock.json (#1344) * refactor: seed data (#1312) * Update hero button styles #1314 (#1329) * feat: navbar custom widths and image only support (#1346) * Add noWelcomeEmail query param to POST /users (#1326) * Add noConfirmationEmail query param to POST /users * Add tests for noConfirmationEmail * Fix linter * Update changelog * Remove merge markers * Fix yarn.lock being out of sync with package.json (#1342) * Removes GTM_KEY from netlify configuration - already deployed to alameda (#1347) * updates pull request template * removes BACKEND_API_BASE from netlify.toml * updates for partners translation locale overrides * resolve issue with out of sync lock and package files * removes package-lock * updates Layout path * removes gtm key for production, since it should be coming from netlify's settings Already deployed to alameda. * Remove unused package-lock.json (#1344) * refactor: seed data (#1312) * Update hero button styles #1314 (#1329) * feat: navbar custom widths and image only support (#1346) * Add noConfirmationEmail query param to POST /users * Add tests for noConfirmationEmail * Fix linter * Update changelog * Remove merge markers * Remove duplicate tests from user e2e Co-authored-by: Sean Albert <smabert@gmail.com> Co-authored-by: Emily Jablonski <65367387+emilyjablonski@users.noreply.github.com> Co-authored-by: Andrea Egan <akegan@users.noreply.github.com> * Flagged Applications Table (#1132) * Add Application flagged sets listing and onInsert creation * Add resolve action * Add client code * Clean up DB after afs tests * Fix backend cross test dependencies * Created flags page * Added listing param * Created hook to fetch flagged applications * Added flags navigation * Added inner navigation * Initial work on the flags page * Added flags navigation * Updated flags cols * Added unique primary applicants qty * Updated columns * Updated columns and table style * Added link to the single flag set * Created new fag page * Basic columns definition * Added checkboxes to select applications * Updated secondary nav applications qty * Renamed and moved component * Added SHOW_DUPLICATES variable to temporary enable/disable navigation * Updated flags routes after next update * Updated tag size * Updated header title * Updated duplicates table * Created useMutation hook * Updated mutation hook * Updated duplicates table and data fetching hook * Created pagionation component to use with ag-grid * Applications page cleanup & implemented a new pagination component * Added page and limit params to the flags hook * Updated flags table and pagination * Cleanup * Updated changelog * Pagination improvements on mobile * Updated navigation tabs * Disable next button when there are no appliacations * Cleanup & updated Layout path * Cleanup * Move navigation component into partners dir Co-authored-by: Michal Plebanski <michalp@airnauts.com> Co-authored-by: dominikx96 <dominik@airnauts.com> * Add table image thumbnails and minimal flush styles (#1339) * Add table image thumbnails and minimal flush styles * Switch to using a TableThumbnail component, fix CSS * Update Changelog with PR #1339 * Update link in Changelog to PR #1339 * 1321/listings management, additional details section (#1338) * adds step to db:reseed that adds the uuid extension if it's not present (#1357) Co-authored-by: Will Lin <4317058+willrlin@users.noreply.github.com> Co-authored-by: dominikx96 <dominikx96@gmail.com> Co-authored-by: dominikx96 <dominik@airnauts.com> Co-authored-by: Michał Plebański <michalp@airnauts.com> Co-authored-by: Emily Jablonski <65367387+emilyjablonski@users.noreply.github.com> Co-authored-by: Andrea Egan <akegan@users.noreply.github.com> Co-authored-by: Jared White <jared@jaredwhite.com> Co-authored-by: Austin Valeske <avaleske@users.noreply.github.com> Co-authored-by: Will Lin <4317058+willrlin@users.noreply.github.com> * update dev branch with master (#1373) * addresses issues from review * updates filter implementation * completely changed filtering for listings * updates to handle multiple values for the same key * aside cleanup and log removal Co-authored-by: dominikx96 <dominikx96@gmail.com> Co-authored-by: dominikx96 <dominik@airnauts.com> Co-authored-by: Michał Plebański <michalp@airnauts.com> Co-authored-by: Emily Jablonski <65367387+emilyjablonski@users.noreply.github.com> Co-authored-by: Andrea Egan <akegan@users.noreply.github.com> Co-authored-by: Jared White <jared@jaredwhite.com> Co-authored-by: Austin Valeske <avaleske@users.noreply.github.com> Co-authored-by: Will Lin <4317058+willrlin@users.noreply.github.com> * 1318/additional fees, listings management (#1377) * Fix units availability display (#1398) * Fix units availability display * Add changelog for unit availability * 1388/date component update take 2 (#1392) * Adds uuid extension step to e2e tests, and update to .env.template (#19) (#1406) * adds step to create uuid extension to e2e test initialization * Add test database environment variable to .env.template and note to readme about it * Add reserved_community_type seed migration (#1411) * Add reserved_community_type seed migration * Update changelog * 1177/add image to listing (#1413) * Add image field to listing * Add image asset relation to listing model Co-authored-by: seanmalbert <smabert@gmail.com> * 1408/submission due date (#1409) * Add due date check to application submission endpoint * Add test checking if submission deadline works * Revert listing state after changes in one of the e2e tests * Add changelog.md udpates * 1418/cache and cleanup (#1422) * updates pull request template * removes BACKEND_API_BASE from netlify.toml * updates for partners translation locale overrides * resolve issue with out of sync lock and package files * removes package-lock * updates Layout path * removes gtm key for production, since it should be coming from netlify's settings Already deployed to alameda. * adds cache clearing, links for adding/editing and cleanup * updated changelog * updates application count logic * adds clearCacheKeys in cacheLib * Add assets endpoints for list and retrieve by id (#1412) * Add assets endpoints for list and retrieve by id * Add assets endpoints for list and retrieve by id Co-authored-by: seanmalbert <smabert@gmail.com> * 1317/listings management, building details & intro (#1420) * 1319/listings management, building features (#1421) * 1178 add result and waitlist related fields to Listing (#1434) * Add tests for updating listing.image relation through listing endpoint * Add resultLink, isWaitlistOpen and waitlistOpenSpots to Listing model * Remove eager relation to listing from user entity * Update client * 1383/listings management, ranking and results (#1433) * 1350 / Units (#1448) * updates pull request template * removes BACKEND_API_BASE from netlify.toml * updates for partners translation locale overrides * resolve issue with out of sync lock and package files * removes package-lock * updates Layout path * removes gtm key for production, since it should be coming from netlify's settings Already deployed to alameda. * adds units to listings form * cleanup around editing/saving units * unit details * updates for disableUnitAccourdion * check for amiChart and FieldGroup revert * fix new listing issue * fixes issues from feedback * moved code into formatFormData * 1381/listings management, application addresses (#1425) * 1381 wip * last toggleable fields * add office hours * translations * details * Add applicationPickUpAddressType and applicationDropOffAddressType columns to Listing model * new backend fields for dropoff address * details page * submit issues * show address types * remove unused application methods * cleanup * application submission notes * default values load in the form * default values for postmark date * typing issues w add page * use existing addresses on listing page * can really share addresses * Add additionalApplicationSubmissionNotes migration (#1441) * pr feedback * pr feedback pr 2 * changelog * type yes/no * combine types * fixup address fxn * update migration * office hours fix * test updated config yaml * testing circleci config update * updated circleci config test * Updated config.yml * Updated config.yml * update migration file Co-authored-by: Michal Plebanski <michalp@airnauts.com> Co-authored-by: Sean Albert <smabert@gmail.com> * 1382/listings management, application dates (#1432) * set fallback to true for getStaticPaths so new paths can be added (#1461) * Dev - adds cache revalidation to frontend app (#1462) * set fallback to true for getStaticPaths so new paths can be added * adds revalidate to staticProps * updates for cache revalidation on the frontend * removes listing controller update (#1464) * Application method/paperpickup (#1469) * adds PaperPickup back * Update listings.controller.ts * revert swagger changes * removes preview logic from ListingView (#1476) * 1153 Dropzone-style file upload component (#1437) * First pass at a dropzone Cloudinary uploader * Style the progress control and provide more complete flow * Tighten up Dropzone usability * Add id for accessibility * Update Changelog with #1437 * 1331/hide eligibility header if no sections present (#1457) * 1331/hide eligibility header if no sections present * changelog * Add Github action for running Prettier on PRs (#1440) * Run prettier automatically with Github Actions. Introduces an action to automatically run prettier and commit fixes to the PR. This ensures that the repo will always adhere to the style guide. * Fix code style issues with Prettier Co-authored-by: Lint Action <lint-action@samuelmeuli.com> * Fix code style issues with Prettier * Entries for unreleased and adds 1.0.4 * Fix code style issues with Prettier * 1444/optional fields (#1470) * Add optional indicator to fields that have IsOptional validator set with class-validator * moves changelog comment to unreleased * Fix code style issues with Prettier * updates optional fields from merge * Fix code style issues with Prettier * fixes tests and makes listing.name required * Fix code style issues with Prettier * householdsize fixes * Add optional indicator to fields that have IsOptional validator set with class-validator * moves changelog comment to unreleased * updates optional fields from merge * Fix code style issues with Prettier * fixes tests and makes listing.name required * Fix code style issues with Prettier * householdsize fixes * Fix code style issues with Prettier * Fix code style issues with Prettier * Fix code style issues with Prettier * Apply cleanup with now optional fields * Fix code style issues with Prettier * updates HouseholdSizeField so min is optional * Fix code style issues with Prettier Co-authored-by: seanmalbert <smabert@gmail.com> Co-authored-by: Lint Action <lint-action@samuelmeuli.com> * Fix code style issues with Prettier * 1454/listings management visual QA round (#1463) * Refactor/user module 2 (#1474) * Encapsulate User module within Auth module * Move business logic from User controller to user service * moves changelog message to unreleased section * Fix code style issues with Prettier * fixes unrelated ag_grid warnings * replaces use of backend client with swagger * Fix code style issues with Prettier Co-authored-by: seanmalbert <smabert@gmail.com> Co-authored-by: Lint Action <lint-action@samuelmeuli.com> * 1404/add action block (#1459) * Add ActionBlock component * Add changelog for ActionBlock * Style tweaks for ActionBlock * Add DAHLIA styles for ActionBlock and fix margin on smaller screen * Fix changelog placement for ActionBlock * Connect ag-grid sort with the API (#1492) * Connect ag-grid sort with the API * Fix code style issues with Prettier * Updated changelog * Fix code style issues with Prettier * Add empty values as last * Fix code style issues with Prettier * Add missing OrderBy enum definitions * Add migrating empty strings to nulls in applicant.last_name and applicant.first_name * Fix code style issues with Prettier * Fix 1625746856273-migrate-empty-strings-to-nulls-in-app SQL queries * Map firstName and lastName empty strings to nulls * Update sorting compare method * Add applicant firstName and lastName MinLength(1) validators * Fix e2e tests (missing lastName in test fixtures) * Update var name * Update order type * Update types Co-authored-by: Dominik Barcikowski <dominik@airnauts.com> Co-authored-by: Lint Action <lint-action@samuelmeuli.com> Co-authored-by: Michal Plebanski <michalp@airnauts.com> * Add commands to run Cypress tests in "headless" mode (#1505) This change adds yarn commands to run the Cypress tests in "headless" mode. It also removes two Cypress test outputs (which shouldn't have been committed but slipped past the gitignore) and updates the gitignore rules to ensure no more slip through. * 1503/fix out of sync swagger (#1504) * Update swagger * Fix code style issues with Prettier Fix broken test: fixtures update and Address type Change return element to null Fix code style issues with Prettier * fixes issues with partners build with updated backend swagger * fixes tests Co-authored-by: seanmalbert <smabert@gmail.com> * Add storybook a11y testing #142 (#1450) * Add storybook storyshots puppeteer addon * Get yarn:a11y test up and running locally * Fix alt text-related issues * Try running a11y tests on circleCI * Make sure static storybook build is gitignored * Actually add a11y tests to circleCI pipeline * Disable nested interactive rule for Tab-like Nav * Move storyshots-puppeteer and puppeteer into dev dependencies * Add unmet peer dependency of preact Follow-up ticket created in #1489 * Fix failing jest tests * Try node docker image with browsers * Use non-legacy docker image * Fix code style issues with Prettier * Fix a11y issue with dropzone story * Add changes to changelog * Fix code style issues with Prettier * adds description prop to ImageCard for alt text * updates ImageCard tests * Fix code style issues with Prettier Co-authored-by: Lint Action <lint-action@samuelmeuli.com> Co-authored-by: seanmalbert <smabert@gmail.com> * 1480/ Fix double submit (#1508) * set fallback to true for getStaticPaths so new paths can be added * adds revalidate to staticProps * updates for cache revalidation on the frontend * trigger cleanup * refactors listing submit * moves setAlert and setLoading calls * adds useCallback for onSubmit * adds an additional state and useEffect to handle submission * adds status dependency on useEffect * moves setLoading to trigger sooner * set setStatus prop for Aside to optional * Fix code style issues with Prettier * Remove unused inverse relations from entities (#1520) * Fixes bug with listing form (#1521) * set fallback to true for getStaticPaths so new paths can be added * adds revalidate to staticProps * updates for cache revalidation on the frontend * trigger cleanup * fixes listing bug issue * 1184/unit type rent (#1439) * Add unit_type table * Add unit_rent_type table * Add unit_accessibility_priority_type table * Update autogenerated frontend client * Fix missing imports in Unit and App modules * Snapshot * Update unit related migrations * Fix leftjoins in listings.service.ts Refactor seeds module * Update backend-swagger.ts * Change src/listings/PaperListingForm/index.tsx to align with unit_type related changes * Fix linter complaints * Fix code style issues with Prettier * adds priorityType.name to partners * Update changelog.md * Improve migration script to take into account existing values with SELECT DISTINCT query * adds unit type and priority options and cleans up how that's all handled Co-authored-by: Lint Action <lint-action@samuelmeuli.com> Co-authored-by: seanmalbert <smabert@gmail.com> * Adds additional checks for unit type and priority (#1525) * set fallback to true for getStaticPaths so new paths can be added * adds revalidate to staticProps * updates for cache revalidation on the frontend * trigger cleanup * fixes listing bug issue * adds additional checks for unit type and priority * Add preview (disabled) state for Listings Application button (#1502) * Add preview (disabled) state for Listings Application button * Also fix bug in the LinkButton component * Update changelog with #1502 * Update jest-backend ci/cd job environment variables sourced through .… (#1526) Update jest-backend ci/cd job environment variables sourced through .circleci/config.yaml * 1348/Add photo upload to the Listing form (#1491) * First pass at a dropzone Cloudinary uploader * Style the progress control and provide more complete flow * Tighten up Dropzone usability * Add id for accessibility * Update Changelog with #1437 * Adding photo upload to Listings MVP (WIP) * Fix image data issue for edits, add detail preview * Upload to Cloudinary using a signed preset * Revert previous double-submit issue * Remove stray console call * Fix undefined error on new listing page * fix lint error * Add #1491 to changelog * Use state only for Cloudinary upload data Co-authored-by: seanmalbert <smabert@gmail.com> * 1352/Add flagged and mark as duplicate to CSV export (#1500) * Initial changes for CSV flagged export * Fix typeorm join and flagged mapping * Fix flagged query + changelog * updates use of flagged for only csv Co-authored-by: seanmalbert <smabert@gmail.com> * Listings close & unpublish (#1498) * Added unpublish action * Update aside * Add button type attr * Add close and unpublish listings endpoints * Revert "Add close and unpublish listings endpoints" This reverts commit 3b3ae1802d96c1cf05fa124a19e72a970f95ea6b. * Fix error when listing is in add mode (there is no listing.id property) * Update aside buttons * Prevent error when time field is emty & tag style update * Fix type * updates watch list for onSubmit callback * removes router reload * Remove button * Fix form save after close listing action Co-authored-by: Dominik Barcikowski <dominik@airnauts.com> Co-authored-by: Michal Plebanski <michalp@airnauts.com> Co-authored-by: seanmalbert <smabert@gmail.com> * Convert listing address jsonb columns to separate address tables (#1512) * Convert listing address jsonb columns to separate address tables * Update backend swagger interfaces Co-authored-by: seanmalbert <smabert@gmail.com> * Recreated foreign keys constraints (#1514) * Recreated foreign keys constraints for `application_flagged_set_applications_applications`, `listings_leasing_agents_user_accounts`, `property_group_properties_property` and add missing `NOT NULL` migration for listing name column * moved entry to unreleased section Co-authored-by: seanmalbert <smabert@gmail.com> * Add debug flags and instructions for debugging frontends (#1519) * Add debug flags and instructions for debugging frontends (#195) * add debug flags and instructions to frontend package.json files and readmes * update changelog * update changelog * 1445/move listing events to table (#1515) * Convert listing.events json column of ListingEvent[] to a separate listing_events table * Update changelog.md * Add a test for updating ListingEvent through Listing endpoint * Update backend-swagger interfaces * Add ListingEvent relation to assets (file_id column) * Update backend-swagger.ts * Fix validations in ListingEvent create and update DTO, (file IsOptional) * merges listing seed updates from upstream Co-authored-by: seanmalbert <smabert@gmail.com> * Fix code style issues with Prettier * re-add lint config * Fix code style issues with ESLint Co-authored-by: Emily Jablonski <65367387+emilyjablonski@users.noreply.github.com> Co-authored-by: Michał Plebański <michalp@airnauts.com> Co-authored-by: dominikx96 <dominik@airnauts.com> Co-authored-by: Sean Albert <smabert@gmail.com> Co-authored-by: Marcin Jędras <mjjedras@gmail.com> Co-authored-by: Austin Valeske <avaleske@users.noreply.github.com> Co-authored-by: dominikx96 <dominikx96@gmail.com> Co-authored-by: Andrea Egan <akegan@users.noreply.github.com> Co-authored-by: Jared White <jared@jaredwhite.com> Co-authored-by: Will Lin <4317058+willrlin@users.noreply.github.com> Co-authored-by: Lint Action <lint-action@samuelmeuli.com> Co-authored-by: Anders Schneider <anderseschneider@gmail.com>
* 1320/additional eligibility, listings management (#1374) * 1349/leasing agent section, listings management (#1376) * Issue 1328/move property to the listing model (#1361) * Working seeding and read/write * Refactor seeds types * Add tests for encapsulated property * Update frontend client * Update changelog * Update sites/partners and sites/public according to new Listing schema * Update Waitlist.test.tsx and listings-importer.ts * Fix url-helper.ts * Update ui-components tests after schema changes * Fix listingUrlSlug and corresponding tests * Fix types in cypress/support/helpers.ts * Updated broken tests Co-authored-by: dominikx96 <dominik@airnauts.com> * Align dev with master (#1399) * Issue 1362/total flagged bug (#1366) * Fix counting totalFlagged property in AFS module * Fix a race condition in AFS module * Update changelog * fix retry import * Throw 429 on application creation retry failure Co-authored-by: Sean Albert <smabert@gmail.com> * fix merge conflicts in master (#1375) * Replace UserContext with AuthContext (#1311) * Replace UserContext with AuthContext * Remove api_requests * Fix imports * Fix userService params * Fix ConfirmationModal * Add missing appUrl * Fixes after rebase and remove useRouter for ui-components * Fix language passed to axios * Adds debug instructions to backend/core readme (#15) (#1390) * Adds start command for backend in debug mode (#15) * Adds start command for backend in debug mode * add notes to readme on debugging the backend * remove package.json changes since there was already a debug command, and update readme (#16) * Add backend/proxy Dockerfile, README.md and nginx config file (#1380) * Add backend/proxy Dockerfile, README.md and nginx config file * Update changelog * Add /jurisdictions endpoint (#1391) * Add /jurisdictions endpoint * Update changelog * Update migration to create jurisdiction relation automatically for existing listings * Revert "Merge latest master (#1370)" (#1394) * Revert "Merge latest master (#1370)" This reverts commit 43c84a2. * Retain overrideTranslations related change from housingbayarea fork * Add reservedCommunityType endpoint (#1395) * Revert "Merge latest master (#1370)" This reverts commit 43c84a2. * Add reservedCommunityType endpoint * adds reservedCommunityType join and select to listing service qb adds reservedCommunityType join and select to listing service qb and reverts change to _app Co-authored-by: seanmalbert <smabert@gmail.com> * updates listing units reference * fixes cypress tests for application household Co-authored-by: Sean Albert <smabert@gmail.com> Co-authored-by: Emily Jablonski <65367387+emilyjablonski@users.noreply.github.com> Co-authored-by: Marcin Jędras <mjjedras@gmail.com> Co-authored-by: Austin Valeske <avaleske@users.noreply.github.com> * 1351 Preview (#1359) * updates pull request template * removes BACKEND_API_BASE from netlify.toml * updates for partners translation locale overrides * resolve issue with out of sync lock and package files * removes package-lock * updates Layout path * removes gtm key for production, since it should be coming from netlify's settings Already deployed to alameda. * adds simple filter capability to listings and implements * regenerated swagger * changelog entry * Brings dev up-to-date with master (#1360) * updates pull request template * removes BACKEND_API_BASE from netlify.toml * updates for partners translation locale overrides * resolve issue with out of sync lock and package files * removes package-lock * updates Layout path * Fixed paper app submission error if there are no preferences (#1340) * Fixed paper app submission error if there are no preferences * Updated changelog Co-authored-by: dominikx96 <dominik@airnauts.com> * Add assets module (#1307) * Add basic tests for assets module * Add eager to createpresignedurl dto and implement CloudinaryService * Move AppModule imports from module to dynamic resolver * Rework assets service to return timestamp and signature * Rework assets service to return timestamp and signature * Add missing ApiProperty decorator for FormMetadata properties * Add fake cloudinary environment variables to circleci config * Add fake cloudinary secrets to circleci workflows * Fix unit tests * Update changelog * Add assets migration * Return UserBasicDto from POST /users (#1324) * Return UserBasicDto from POST /users * Update User DTO to not include resetToken and update frontend client * Update changelog * Fix user controller responses * Fix yarn.lock being out of sync with package.json (#1342) * removes gtm key for production, since it should be coming from netlify's settings Already deployed to alameda. * Removes GTM_KEY from netlify configuration - already deployed to alameda (#1347) * updates pull request template * removes BACKEND_API_BASE from netlify.toml * updates for partners translation locale overrides * resolve issue with out of sync lock and package files * removes package-lock * updates Layout path * removes gtm key for production, since it should be coming from netlify's settings Already deployed to alameda. * Remove unused package-lock.json (#1344) * refactor: seed data (#1312) * Update hero button styles #1314 (#1329) * feat: navbar custom widths and image only support (#1346) * Add noWelcomeEmail query param to POST /users (#1326) * Add noConfirmationEmail query param to POST /users * Add tests for noConfirmationEmail * Fix linter * Update changelog * Remove merge markers * Fix yarn.lock being out of sync with package.json (#1342) * Removes GTM_KEY from netlify configuration - already deployed to alameda (#1347) * updates pull request template * removes BACKEND_API_BASE from netlify.toml * updates for partners translation locale overrides * resolve issue with out of sync lock and package files * removes package-lock * updates Layout path * removes gtm key for production, since it should be coming from netlify's settings Already deployed to alameda. * Remove unused package-lock.json (#1344) * refactor: seed data (#1312) * Update hero button styles #1314 (#1329) * feat: navbar custom widths and image only support (#1346) * Add noConfirmationEmail query param to POST /users * Add tests for noConfirmationEmail * Fix linter * Update changelog * Remove merge markers * Remove duplicate tests from user e2e Co-authored-by: Sean Albert <smabert@gmail.com> Co-authored-by: Emily Jablonski <65367387+emilyjablonski@users.noreply.github.com> Co-authored-by: Andrea Egan <akegan@users.noreply.github.com> * Flagged Applications Table (#1132) * Add Application flagged sets listing and onInsert creation * Add resolve action * Add client code * Clean up DB after afs tests * Fix backend cross test dependencies * Created flags page * Added listing param * Created hook to fetch flagged applications * Added flags navigation * Added inner navigation * Initial work on the flags page * Added flags navigation * Updated flags cols * Added unique primary applicants qty * Updated columns * Updated columns and table style * Added link to the single flag set * Created new fag page * Basic columns definition * Added checkboxes to select applications * Updated secondary nav applications qty * Renamed and moved component * Added SHOW_DUPLICATES variable to temporary enable/disable navigation * Updated flags routes after next update * Updated tag size * Updated header title * Updated duplicates table * Created useMutation hook * Updated mutation hook * Updated duplicates table and data fetching hook * Created pagionation component to use with ag-grid * Applications page cleanup & implemented a new pagination component * Added page and limit params to the flags hook * Updated flags table and pagination * Cleanup * Updated changelog * Pagination improvements on mobile * Updated navigation tabs * Disable next button when there are no appliacations * Cleanup & updated Layout path * Cleanup * Move navigation component into partners dir Co-authored-by: Michal Plebanski <michalp@airnauts.com> Co-authored-by: dominikx96 <dominik@airnauts.com> * Add table image thumbnails and minimal flush styles (#1339) * Add table image thumbnails and minimal flush styles * Switch to using a TableThumbnail component, fix CSS * Update Changelog with PR #1339 * Update link in Changelog to PR #1339 * 1321/listings management, additional details section (#1338) * adds step to db:reseed that adds the uuid extension if it's not present (#1357) Co-authored-by: Will Lin <4317058+willrlin@users.noreply.github.com> Co-authored-by: dominikx96 <dominikx96@gmail.com> Co-authored-by: dominikx96 <dominik@airnauts.com> Co-authored-by: Michał Plebański <michalp@airnauts.com> Co-authored-by: Emily Jablonski <65367387+emilyjablonski@users.noreply.github.com> Co-authored-by: Andrea Egan <akegan@users.noreply.github.com> Co-authored-by: Jared White <jared@jaredwhite.com> Co-authored-by: Austin Valeske <avaleske@users.noreply.github.com> Co-authored-by: Will Lin <4317058+willrlin@users.noreply.github.com> * update dev branch with master (#1373) * addresses issues from review * updates filter implementation * completely changed filtering for listings * updates to handle multiple values for the same key * aside cleanup and log removal Co-authored-by: dominikx96 <dominikx96@gmail.com> Co-authored-by: dominikx96 <dominik@airnauts.com> Co-authored-by: Michał Plebański <michalp@airnauts.com> Co-authored-by: Emily Jablonski <65367387+emilyjablonski@users.noreply.github.com> Co-authored-by: Andrea Egan <akegan@users.noreply.github.com> Co-authored-by: Jared White <jared@jaredwhite.com> Co-authored-by: Austin Valeske <avaleske@users.noreply.github.com> Co-authored-by: Will Lin <4317058+willrlin@users.noreply.github.com> * 1318/additional fees, listings management (#1377) * Fix units availability display (#1398) * Fix units availability display * Add changelog for unit availability * 1388/date component update take 2 (#1392) * Adds uuid extension step to e2e tests, and update to .env.template (#19) (#1406) * adds step to create uuid extension to e2e test initialization * Add test database environment variable to .env.template and note to readme about it * Add reserved_community_type seed migration (#1411) * Add reserved_community_type seed migration * Update changelog * 1177/add image to listing (#1413) * Add image field to listing * Add image asset relation to listing model Co-authored-by: seanmalbert <smabert@gmail.com> * 1408/submission due date (#1409) * Add due date check to application submission endpoint * Add test checking if submission deadline works * Revert listing state after changes in one of the e2e tests * Add changelog.md udpates * 1418/cache and cleanup (#1422) * updates pull request template * removes BACKEND_API_BASE from netlify.toml * updates for partners translation locale overrides * resolve issue with out of sync lock and package files * removes package-lock * updates Layout path * removes gtm key for production, since it should be coming from netlify's settings Already deployed to alameda. * adds cache clearing, links for adding/editing and cleanup * updated changelog * updates application count logic * adds clearCacheKeys in cacheLib * Add assets endpoints for list and retrieve by id (#1412) * Add assets endpoints for list and retrieve by id * Add assets endpoints for list and retrieve by id Co-authored-by: seanmalbert <smabert@gmail.com> * 1317/listings management, building details & intro (#1420) * 1319/listings management, building features (#1421) * 1178 add result and waitlist related fields to Listing (#1434) * Add tests for updating listing.image relation through listing endpoint * Add resultLink, isWaitlistOpen and waitlistOpenSpots to Listing model * Remove eager relation to listing from user entity * Update client * 1383/listings management, ranking and results (#1433) * 1350 / Units (#1448) * updates pull request template * removes BACKEND_API_BASE from netlify.toml * updates for partners translation locale overrides * resolve issue with out of sync lock and package files * removes package-lock * updates Layout path * removes gtm key for production, since it should be coming from netlify's settings Already deployed to alameda. * adds units to listings form * cleanup around editing/saving units * unit details * updates for disableUnitAccourdion * check for amiChart and FieldGroup revert * fix new listing issue * fixes issues from feedback * moved code into formatFormData * 1381/listings management, application addresses (#1425) * 1381 wip * last toggleable fields * add office hours * translations * details * Add applicationPickUpAddressType and applicationDropOffAddressType columns to Listing model * new backend fields for dropoff address * details page * submit issues * show address types * remove unused application methods * cleanup * application submission notes * default values load in the form * default values for postmark date * typing issues w add page * use existing addresses on listing page * can really share addresses * Add additionalApplicationSubmissionNotes migration (#1441) * pr feedback * pr feedback pr 2 * changelog * type yes/no * combine types * fixup address fxn * update migration * office hours fix * test updated config yaml * testing circleci config update * updated circleci config test * Updated config.yml * Updated config.yml * update migration file Co-authored-by: Michal Plebanski <michalp@airnauts.com> Co-authored-by: Sean Albert <smabert@gmail.com> * 1st attempt at frontend listing pagination * 1382/listings management, application dates (#1432) * set fallback to true for getStaticPaths so new paths can be added (#1461) * Dev - adds cache revalidation to frontend app (#1462) * set fallback to true for getStaticPaths so new paths can be added * adds revalidate to staticProps * updates for cache revalidation on the frontend * removes listing controller update (#1464) * Application method/paperpickup (#1469) * adds PaperPickup back * Update listings.controller.ts * revert swagger changes * Paginate public listings page * removes preview logic from ListingView (#1476) * 1153 Dropzone-style file upload component (#1437) * First pass at a dropzone Cloudinary uploader * Style the progress control and provide more complete flow * Tighten up Dropzone usability * Add id for accessibility * Update Changelog with #1437 * 1331/hide eligibility header if no sections present (#1457) * 1331/hide eligibility header if no sections present * changelog * Add Github action for running Prettier on PRs (#1440) * Run prettier automatically with Github Actions. Introduces an action to automatically run prettier and commit fixes to the PR. This ensures that the repo will always adhere to the style guide. * Fix code style issues with Prettier Co-authored-by: Lint Action <lint-action@samuelmeuli.com> * Fix code style issues with Prettier * Entries for unreleased and adds 1.0.4 * Fix code style issues with Prettier * initial style fixes * initial request for filtered state * 1444/optional fields (#1470) * Add optional indicator to fields that have IsOptional validator set with class-validator * moves changelog comment to unreleased * Fix code style issues with Prettier * updates optional fields from merge * Fix code style issues with Prettier * fixes tests and makes listing.name required * Fix code style issues with Prettier * householdsize fixes * Add optional indicator to fields that have IsOptional validator set with class-validator * moves changelog comment to unreleased * updates optional fields from merge * Fix code style issues with Prettier * fixes tests and makes listing.name required * Fix code style issues with Prettier * householdsize fixes * Fix code style issues with Prettier * Fix code style issues with Prettier * Fix code style issues with Prettier * Apply cleanup with now optional fields * Fix code style issues with Prettier * updates HouseholdSizeField so min is optional * Fix code style issues with Prettier Co-authored-by: seanmalbert <smabert@gmail.com> Co-authored-by: Lint Action <lint-action@samuelmeuli.com> * Fix code style issues with Prettier * remove prop type * 1454/listings management visual QA round (#1463) * Refactor/user module 2 (#1474) * Encapsulate User module within Auth module * Move business logic from User controller to user service * moves changelog message to unreleased section * Fix code style issues with Prettier * fixes unrelated ag_grid warnings * replaces use of backend client with swagger * Fix code style issues with Prettier Co-authored-by: seanmalbert <smabert@gmail.com> Co-authored-by: Lint Action <lint-action@samuelmeuli.com> * 1404/add action block (#1459) * Add ActionBlock component * Add changelog for ActionBlock * Style tweaks for ActionBlock * Add DAHLIA styles for ActionBlock and fix margin on smaller screen * Fix changelog placement for ActionBlock * Connect ag-grid sort with the API (#1492) * Connect ag-grid sort with the API * Fix code style issues with Prettier * Updated changelog * Fix code style issues with Prettier * Add empty values as last * Fix code style issues with Prettier * Add missing OrderBy enum definitions * Add migrating empty strings to nulls in applicant.last_name and applicant.first_name * Fix code style issues with Prettier * Fix 1625746856273-migrate-empty-strings-to-nulls-in-app SQL queries * Map firstName and lastName empty strings to nulls * Update sorting compare method * Add applicant firstName and lastName MinLength(1) validators * Fix e2e tests (missing lastName in test fixtures) * Update var name * Update order type * Update types Co-authored-by: Dominik Barcikowski <dominik@airnauts.com> Co-authored-by: Lint Action <lint-action@samuelmeuli.com> Co-authored-by: Michal Plebanski <michalp@airnauts.com> * Add commands to run Cypress tests in "headless" mode (#1505) This change adds yarn commands to run the Cypress tests in "headless" mode. It also removes two Cypress test outputs (which shouldn't have been committed but slipped past the gitignore) and updates the gitignore rules to ensure no more slip through. * 1503/fix out of sync swagger (#1504) * Update swagger * Fix code style issues with Prettier Fix broken test: fixtures update and Address type Change return element to null Fix code style issues with Prettier * fixes issues with partners build with updated backend swagger * fixes tests Co-authored-by: seanmalbert <smabert@gmail.com> * Add storybook a11y testing #142 (#1450) * Add storybook storyshots puppeteer addon * Get yarn:a11y test up and running locally * Fix alt text-related issues * Try running a11y tests on circleCI * Make sure static storybook build is gitignored * Actually add a11y tests to circleCI pipeline * Disable nested interactive rule for Tab-like Nav * Move storyshots-puppeteer and puppeteer into dev dependencies * Add unmet peer dependency of preact Follow-up ticket created in #1489 * Fix failing jest tests * Try node docker image with browsers * Use non-legacy docker image * Fix code style issues with Prettier * Fix a11y issue with dropzone story * Add changes to changelog * Fix code style issues with Prettier * adds description prop to ImageCard for alt text * updates ImageCard tests * Fix code style issues with Prettier Co-authored-by: Lint Action <lint-action@samuelmeuli.com> Co-authored-by: seanmalbert <smabert@gmail.com> * 1480/ Fix double submit (#1508) * set fallback to true for getStaticPaths so new paths can be added * adds revalidate to staticProps * updates for cache revalidation on the frontend * trigger cleanup * refactors listing submit * moves setAlert and setLoading calls * adds useCallback for onSubmit * adds an additional state and useEffect to handle submission * adds status dependency on useEffect * moves setLoading to trigger sooner * set setStatus prop for Aside to optional * Fix code style issues with Prettier * Remove unused inverse relations from entities (#1520) * just playing * Fixes bug with listing form (#1521) * set fallback to true for getStaticPaths so new paths can be added * adds revalidate to staticProps * updates for cache revalidation on the frontend * trigger cleanup * fixes listing bug issue * Final touches on filtering ui MVP * 1184/unit type rent (#1439) * Add unit_type table * Add unit_rent_type table * Add unit_accessibility_priority_type table * Update autogenerated frontend client * Fix missing imports in Unit and App modules * Snapshot * Update unit related migrations * Fix leftjoins in listings.service.ts Refactor seeds module * Update backend-swagger.ts * Change src/listings/PaperListingForm/index.tsx to align with unit_type related changes * Fix linter complaints * Fix code style issues with Prettier * adds priorityType.name to partners * Update changelog.md * Improve migration script to take into account existing values with SELECT DISTINCT query * adds unit type and priority options and cleans up how that's all handled Co-authored-by: Lint Action <lint-action@samuelmeuli.com> Co-authored-by: seanmalbert <smabert@gmail.com> * Adds additional checks for unit type and priority (#1525) * set fallback to true for getStaticPaths so new paths can be added * adds revalidate to staticProps * updates for cache revalidation on the frontend * trigger cleanup * fixes listing bug issue * adds additional checks for unit type and priority * Add preview (disabled) state for Listings Application button (#1502) * Add preview (disabled) state for Listings Application button * Also fix bug in the LinkButton component * Update changelog with #1502 * Update jest-backend ci/cd job environment variables sourced through .… (#1526) Update jest-backend ci/cd job environment variables sourced through .circleci/config.yaml * 1348/Add photo upload to the Listing form (#1491) * First pass at a dropzone Cloudinary uploader * Style the progress control and provide more complete flow * Tighten up Dropzone usability * Add id for accessibility * Update Changelog with #1437 * Adding photo upload to Listings MVP (WIP) * Fix image data issue for edits, add detail preview * Upload to Cloudinary using a signed preset * Revert previous double-submit issue * Remove stray console call * Fix undefined error on new listing page * fix lint error * Add #1491 to changelog * Use state only for Cloudinary upload data Co-authored-by: seanmalbert <smabert@gmail.com> * 1352/Add flagged and mark as duplicate to CSV export (#1500) * Initial changes for CSV flagged export * Fix typeorm join and flagged mapping * Fix flagged query + changelog * updates use of flagged for only csv Co-authored-by: seanmalbert <smabert@gmail.com> * Listings close & unpublish (#1498) * Added unpublish action * Update aside * Add button type attr * Add close and unpublish listings endpoints * Revert "Add close and unpublish listings endpoints" This reverts commit 3b3ae1802d96c1cf05fa124a19e72a970f95ea6b. * Fix error when listing is in add mode (there is no listing.id property) * Update aside buttons * Prevent error when time field is emty & tag style update * Fix type * updates watch list for onSubmit callback * removes router reload * Remove button * Fix form save after close listing action Co-authored-by: Dominik Barcikowski <dominik@airnauts.com> Co-authored-by: Michal Plebanski <michalp@airnauts.com> Co-authored-by: seanmalbert <smabert@gmail.com> * Incorporate modal * Convert listing address jsonb columns to separate address tables (#1512) * Convert listing address jsonb columns to separate address tables * Update backend swagger interfaces Co-authored-by: seanmalbert <smabert@gmail.com> * Recreated foreign keys constraints (#1514) * Recreated foreign keys constraints for `application_flagged_set_applications_applications`, `listings_leasing_agents_user_accounts`, `property_group_properties_property` and add missing `NOT NULL` migration for listing name column * moved entry to unreleased section Co-authored-by: seanmalbert <smabert@gmail.com> * Add debug flags and instructions for debugging frontends (#1519) * Add debug flags and instructions for debugging frontends (#195) * add debug flags and instructions to frontend package.json files and readmes * update changelog * update changelog * 1445/move listing events to table (#1515) * Convert listing.events json column of ListingEvent[] to a separate listing_events table * Update changelog.md * Add a test for updating ListingEvent through Listing endpoint * Update backend-swagger interfaces * Add ListingEvent relation to assets (file_id column) * Update backend-swagger.ts * Fix validations in ListingEvent create and update DTO, (file IsOptional) * merges listing seed updates from upstream Co-authored-by: seanmalbert <smabert@gmail.com> * Fix code style issues with Prettier * re-add lint config * address review comments Co-authored-by: Emily Jablonski <65367387+emilyjablonski@users.noreply.github.com> Co-authored-by: Michał Plebański <michalp@airnauts.com> Co-authored-by: dominikx96 <dominik@airnauts.com> Co-authored-by: Sean Albert <smabert@gmail.com> Co-authored-by: Marcin Jędras <mjjedras@gmail.com> Co-authored-by: Austin Valeske <avaleske@users.noreply.github.com> Co-authored-by: dominikx96 <dominikx96@gmail.com> Co-authored-by: Andrea Egan <akegan@users.noreply.github.com> Co-authored-by: Jared White <jared@jaredwhite.com> Co-authored-by: Will Lin <4317058+willrlin@users.noreply.github.com> Co-authored-by: Lint Action <lint-action@samuelmeuli.com> Co-authored-by: Austin Valeske <avaleske@google.com> Co-authored-by: Anders Schneider <anderseschneider@gmail.com>
This is a WIP to show the proof of concept. Remaining steps:
Issue
Addresses #142
Description
This setups automated a11y testing, that raises errors when storybook finds a11y errors (rather than just showing them in the UI). The goal is to incorporate a11y checks early in the development process to catch issues before they're deployed to production. This won't catch all accessibility issues, but will reduce the need for manual testing.
The rules can be disabled on a component or story level as needed if we want to individually override them.
This is accomplished using the path suggested in this blog post, which involves bringing back the storyshots dependency, but does not require bringing back the storyshots snapshot files.
Type of change
How Can This Be Tested/Reviewed?
yarn test:a11y
in the ui-components dir locallyChecklist: