Skip to content

Latest commit

 

History

History
1080 lines (723 loc) · 87.1 KB

CHANGELOG.md

File metadata and controls

1080 lines (723 loc) · 87.1 KB

Changelog

All notable changes to this project will be documented in this file.

The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.

3.12.11 (2024-03-26)

Miscellaneous Chores

3.12.10 (2024-03-13)

Bug Fixes

  • Password reset is case sensitive for user emails (#3324) (ba64788)

3.12.9 (2024-03-12)

Miscellaneous Chores

  • Add Library and Archives Canada branding (#3317) (fb28674)

3.12.8 (2024-03-11)

Bug Fixes

3.12.7 (2024-02-29)

Bug Fixes

Miscellaneous Chores

  • Rename NEXTAUTH_URL as it is no longer required for Next-Auth (#3288) (6ea5064)

3.12.6 (2024-02-22)

Bug Fixes

  • retrieve internal user id instead and pass it to the UserSignIn audit log instead of using the Cognito sub id (#3266) (981336f)

Miscellaneous Chores

  • Add files Statistics Canada branding (#3269) (2c2985c)
  • added new migration script to make existing audit logs archivable (#3268) (9210ffd)
  • improve archivable audit logs migration script (#3276) (8f99098)
  • Set User type to have mandatory email (#3252) (a7e75a8)

3.12.5 (2024-02-12)

Bug Fixes

  • Delete forms with unprocessed submission is not warning user (#3244) (3988d75)
  • String ID showing up rather than text itself (#3247) (c2f8134)

Miscellaneous Chores

3.12.4 (2024-02-05)

Bug Fixes

  • conditional indicator question number output (#3229) (0a9b0c4)

Miscellaneous Chores

  • deps: update all non-major github action dependencies (#3014) (51d4ae4)
  • update branding settings to link to new form (#3212) (405ab3b)

3.12.3 (2024-01-31)

Bug Fixes

  • conditional indicator question number output (#3229) (0a9b0c4)

Miscellaneous Chores

  • deps: update all non-major github action dependencies (#3014) (51d4ae4)
  • update branding settings to link to new form (#3212) (405ab3b)

3.12.3 (2024-01-31)

Bug Fixes

  • request new 2FA code does not work if there is no active 2FA session (#3193) (a57b64e)
  • validation when conditional rules array is empty (#3205) (5ae78e0)

Miscellaneous Chores

  • synced file(s) with cds-snc/site-reliability-engineering (#3036) (97492ed)

3.12.2 (2024-01-30)

Bug Fixes

Miscellaneous Chores

3.12.1 (2024-01-25)

Bug Fixes

Miscellaneous Chores

3.12.0 (2024-01-23)

Features

  • Add Element Dialog Refresh (#3075) (c1f5bc4)
  • Adds ability to add rules / conditional logic for showing / hiding form elements, adds grouping logic (no UI yet) (a756af4)

Bug Fixes

  • 3135 Fix choice language (#3136) (932efe2)
  • Confirm Dialog allows badly formatter code to be submitted (#3072) (ca65398)
  • Don't append "copy" to title on duplicate richText elements (#3131) (4a039b6)
  • update template subscribe (#3121) (dd91934)

Miscellaneous Chores

3.11.0 (2023-12-28)

Features

Miscellaneous Chores

  • with the new infra update LOCAL_LAMBDA_ENDPOINT is now replaced by LOCAL_AWS_ENDPOINT (#3019) (47c2d24)

3.10.1 (2023-12-08)

Bug Fixes

  • check that subItem is an array before mapping (#3009) (71eb977)

3.10.0 (2023-12-07)

Features

  • Render Responses page navigation as tabs (#3002) (c052c9b)

Bug Fixes

  • Download ensure questions/answers are sorted according to form.layout (#3001) (5d50d5a)

3.9.1 (2023-12-05)

Bug Fixes

  • run promises synchronously when making requests to DynamoDB (7b58279)

Miscellaneous Chores

  • deps: update all non-major github action dependencies (#2995) (be02cee)

3.9.0 (2023-12-04)

Features

  • Download and confirmation flow. New download formats (.zip, .csv .json) (81fc8ab)
  • Log GA event when downloading to record selected format (#2993) (2dac2a2)

Bug Fixes

Miscellaneous Chores

3.8.3 (2023-11-28)

Bug Fixes

  • deps: update dependency next-auth to v4.24.5 [security] (#2878) (cbd5425)

Miscellaneous Chores

  • Add Health Canada branding (24c4f03)
  • created local '.github/workflows/backstage-catalog-helper.yml' from remote 'tools/sre_file_sync/backstage-catalog-helper.yml' (8b69a8c)
  • deps: lock file maintenance (#2573) (c32f569)
  • deps: pin dependencies (#2798) (14e6cd2)
  • deps: update all non-major github action dependencies (#2688) (9baf719)
  • deps: update all patch dependencies (#2571) (a02451a)
  • Remove demo request from contact us form (#2861) (549a9e8)
  • remove stories files (#2863) (83a5528)
  • remove unrequired env var (#2864) (7002111)
  • synced file(s) with cds-snc/site-reliability-engineering (#2805) (8b69a8c)
  • Update link URLs with CDS website update (#2897) (5851c39)

3.8.2 (2023-11-14)

Bug Fixes

  • docker file build and yarn (#2836) (011b5f7)
  • Pad angle brackets in user uploaded json or text input to avoid html exception (#2832) (8eff2ba)

Miscellaneous Chores

3.8.1 (2023-11-06)

Miscellaneous Chores

3.8.0 (2023-11-06)

Features

Bug Fixes

Miscellaneous Chores

3.7.0 (2023-11-01)

Features

  • Add SVG mime type on branding requests (f2fd5ab)

Miscellaneous Chores

3.6.0 (2023-10-18)

Features

Miscellaneous Chores

  • added Bing ownership verification meta tag for staging env (#2770) (d4a23a6)
  • deps: update all non-major docker images (#2687) (928458f)
  • fix acceptable use heading margin (#2774) (f865101)
  • synced file(s) with cds-snc/site-reliability-engineering (#2684) (67fdf3e)
  • Update privacy notice content (#2754) (32a77f5)
  • update save button to only show on edit page (#2769) (470025a)
  • Update/tweak content strings (#2775) (f72282f)

3.5.1 (2023-10-12)

Miscellaneous Chores

  • Add SSC branding (#2767) (e650a07)
  • add verification files instead of meta tags for Google and Bing search engines inspection tools (#2765) (0d1b4aa)

3.5.0 (2023-10-11)

Features

  • add noindex, nofollow instructions for search engine robots (#2746) (e396be1)

Bug Fixes

  • add noindex meta tag in Staging on all pages including root index (#2750) (4cfd5af)
  • all required message (#2764) (52c6b19)
  • Ensure no indexing all sites except production (#2757) (fbaa351)

Miscellaneous Chores

3.4.11 (2023-09-28)

Miscellaneous Chores

3.4.10 (2023-09-28)

Bug Fixes

  • Adjust title and FIP in Preview on Test page to more closely match frontend styles (#2718) (2c0b13a)

Miscellaneous Chores

Code Refactoring

3.4.9 (2023-09-26)

Bug Fixes

3.4.8 (2023-09-26)

Bug Fixes

Miscellaneous Chores

Code Refactoring

3.4.7 (2023-09-25)

Bug Fixes

Miscellaneous Chores

Code Refactoring

3.4.6 (2023-09-20)

Miscellaneous Chores

Code Refactoring

3.4.5 (2023-09-19)

Bug Fixes

  • switch to OIDC role for prod deploy workflow (#2667) (24b2ea8)

3.4.4 (2023-09-19)

Bug Fixes

  • Cypress test for Share Modal and refactor for helpers (#2643) (e1d280a)
  • Do not list all ID's when not required in audit logs (#2660) (d7f8f4a)

Miscellaneous Chores

Code Refactoring

3.4.3 (2023-09-11)

Bug Fixes

Miscellaneous Chores

  • synced file(s) with cds-snc/site-reliability-engineering (#2603) (66954ee)

3.4.2 (2023-09-07)

Bug Fixes

  • Remove sub element parsing as it causes problems with long forms (#2626) (8e7e9e5)

Miscellaneous Chores

3.4.1 (2023-08-24)

Bug Fixes

Miscellaneous Chores

3.4.0 (2023-08-21)

Features

Bug Fixes

  • Update account dropdown (b0886ed)

Miscellaneous Chores

3.3.0 (2023-08-16)

Features

  • added unit tests around password reset library (#2518) (ef1755b)
  • added user email to ownership and privilege audit logs (#2459) (5315839)
  • Alerts refactor - create new Alert component for admin/FormBuilder (#2446) (3122649)

Bug Fixes

Miscellaneous Chores

3.2.0 (2023-08-03)

Features

Bug Fixes

Documentation

Miscellaneous Chores

3.1.1 (2023-06-19)

Miscellaneous Chores

3.1.0 (2023-06-19)

Features

Bug Fixes

Code Refactoring

  • improve Prisma/Cognito user email migration code to handle failures gracefully (#2293) (984ff60)
  • review Cognito/2FA thrown errors (#2266) (88b0651)

Miscellaneous Chores

[v3.0.12] 2023-06-07

Fixed

  • ReCaptcha should not be loaded in form builder preview mode
  • Add branding for Canada Economic Development for Quebec Regions

[v3.0.11] 2023-06-05

Fixed

  • GC Notify callback API should only handle form submission type of email
  • Put back formTitle for Google Analytics and GTM

[v3.0.10] 2023-06-01

Fixed

  • User Registration validation flow #2197

[v3.0.9] 2023-05-31

Fixed

  • Password reset validation flow #2187

[v3.0.8] 2023-05-30

Fixed

  • Fix bug 2168, part 2. #2180

[v3.0.7] 2023-05-26

Fixed

  • Fixes ErrorPannel home link depending on auth status #2167
  • Fix/Bug 2168 #2170
  • fix(deps): update all patch dependencies #2146
  • Fix/dynamic rows and acceptable_use tests #2111

Changed

  • Consistent data removal length of time #2156
  • chore(deps): update all non-major github action dependencies #2144
  • Small content tweaks to Responses page #2163
  • Chore/Remove migrations #2148
  • Clarify description for Open a form file #2140
  • chore(deps): update all non-major docker images #2145
  • chore(deps): lock file maintenance #2147
  • Small tweaks for reset password screens #2126
  • Locale file updates - for password field #2124
  • feat: updated unsupported browser page to be a static HTML page #2108
  • Small tweak to terms of use #2119
  • use hasError #2122
  • Useauth hook refactor initial #2117
  • Remove transmitting browser logging #2118
  • Update account layout #2109

[3.0.6] 2023-05-16

Changed

  • Updated unauthenticated view on form builder tabs (publish and responses). 1869
  • Allow more symbols to be used in passwords. 2095
  • Unsupported browser page has been updated. It will now load when accessed within Internet Explorer. 2081

[3.0.5] 2023-05-10

Fixed

  • Download API will not override a response status that is different than New. 2052
  • Language Toggle
  • Button styling across the product
  • Error message when a user tries to login and the service is unavailable
  • Unsupported browser page / Java Script not enable page

[3.0.4] 2023-05-05

Fixed

  • Expanding question inputs in form builder
  • Language toggle not appearing on first page visit

[3.0.3] 2023-05-03

Fixed

  • Responses page is not available if form does not exist (deleted). 2023
  • Content Changes
  • Expanding title element in form builder

[3.0.2] 2023-04-28

Fixed

  • Form submission timestamp is not reflecting current user timezone.1860
  • Creating and sorting of form elements
  • Content changes for clarity

[3.0.1] 2023-04-25

Fixed

  • Branding options not appearing
  • Content changes
  • Performance optimizations

[3.0.0] 2023-04-17

Added

  • Form Response retrieval interface
  • Branding options for specific agencies and government entities
  • Support and Contact us pages
  • Audit Logs for user triggered events
  • HTML format Form Response file
  • Editable name for a form
  • Ability to share a form through email
  • Global application settings

Changed

  • Updated interface for Form Builder (form creation interface)
  • Updated Form Builder navigation

Removed

  • Retrieval API
  • Token and temporary token authentication

[2.0.0] 2022-12-28

Added

  • Form Builder form creation interface
  • User self registration
  • Validation of a JSON Config to check the IDs of elements #892
  • Added login page #867
  • Added login page for temporary token #900
  • [BREAKING]: Modified the Prisma schema for the "User" table; removing the admin column, and adding the role column. After migrating, at least one user role will need to manually be set to administrator in order to login the Admin portion of the site. #906
  • Added file attachments to retrieval API #909
  • New login lockout mechanism plugged on existing temporary token API #872
  • Logout Page [#847] (#870)
  • Admin feature to assign users to template #1203
  • New API path to request publishing permission #1226
  • Dynamic footer with SLA and Support links on admin and form builder related pages #1080

Changed

  • Updated Terms and conditions page + text link in the footer #863
  • Modified Role Based to Asset Based Access Control #1176
  • Form templates are now marked as archived and will stay in the database for 30 more days before being deleted by a Lambda function. #1166
  • The existing publishingStatus field from the form JSON configuration has been replaced by a isPublished data field in the database. It can be switch to true or false using the Template API. A migration process will automatically happen through the Prisma seeding process. #1181
  • Form builder can only load form if the user has the permission to access it #1228

Fixed

  • Fix stuck "Loading..." animation after uploading a new JSON config. #898
  • Fix ReCaptcha feature being broken because of missing API Key.
  • Last login time on acceptable use page was not formatted properly. #949
  • Fix logout session end date #945
  • Fix last login date format #950
  • Cleared email input field after successfully adding an email to Form Access #954
  • Returned only public properties for forms #1038
  • Can't enable/disable user permissions in admin panel

Removed

  • Option to preview form submission email to through Notify #1021

[1.3.0] 2022-07-15

Added

  • Make GC Branding in Footer configurable #847

Fixed

  • Added CSRF token requirement to api/log endpoint #835
  • Welcome page link to design system (storybook) #844
  • Fix retrieval API #845
  • Fix loading of csp scripts to happen after Dom is loaded #848
  • Fix remaining characters display issue

[No Release Version] 2022-06-14

[1.3.0] 2022-07-15

Added

  • Make GC Branding in Footer configurable #847

Fixed

  • Added CSRF token requirement to api/log endpoint #835
  • Welcome page link to design system (storybook) #844
  • Fix retrieval API #845
  • Fix loading of csp scripts to happen after Dom is loaded #848
  • Fix remaining characters display issue

[No Release Version] 2022-06-14

Added

  • Validation of a JSON Config to check the IDs of elements #892
  • Added login page #867
  • Added login page for temporary token #900
  • [BREAKING]: Modified the Prisma schema for the "User" table; removing the admin column, and adding the role column. After migrating, at least one user role will need to manually be set to administrator in order to login the Admin portion of the site. #906
  • Added file attachments to retrieval API #909
  • New login lockout mechanism plugged on existing temporary token API #872
  • Logout Page [#847] (#870)
  • Admin feature to assign users to template #1203
  • New API path to request publishing permission #1226
  • Dynamic footer with SLA and Support links on admin and form builder related pages #1080

Changed

  • Updated Terms and conditions page + text link in the footer #863
  • Modified Role Based to Asset Based Access Control #1176
  • Form templates are now marked as archived and will stay in the database for 30 more days before being deleted by a Lambda function. #1166
  • The existing publishingStatus field from the form JSON configuration has been replaced by a isPublished data field in the database. It can be switch to true or false using the Template API. A migration process will automatically happen through the Prisma seeding process. #1181
  • Form builder can only load form if the user has the permission to access it #1228

Fixed

  • Fix stuck "Loading..." animation after uploading a new JSON config. #898
  • Fix ReCaptcha feature being broken because of missing API Key.
  • Last login time on acceptable use page was not formatted properly. #949
  • Fix logout session end date #945
  • Fix last login date format #950
  • Cleared email input field after successfully adding an email to Form Access #954
  • Returned only public properties for forms #1038
  • Can't enable/disable user permissions in admin panel

Removed

  • Option to preview form submission email to through Notify #1021
  • displayAlphaBanner property in JSON form template is not supported anymore. #772

[1.3.0] 2022-07-15

Added

  • Make GC Branding in Footer configurable #847

Fixed

  • Added CSRF token requirement to api/log endpoint #835
  • Welcome page link to design system (storybook) #844
  • Fix retrieval API #845
  • Fix loading of csp scripts to happen after Dom is loaded #848
  • Fix remaining characters display issue

[No Release Version] 2022-06-14

Added

  • Logging admin activity in database #700
  • Add Cross-Site Request Forgery (CSRF) [#716] (#716)
  • Data classification attributes. #701

Fixed

  • Fixed retrieval API not returning all existing responses
  • Removed the security attribute from the viewport.
  • Added CSRF token requirement to api/log endpoint [#835]((#835)

Changed

  • Upgraded NextJS and other associated GCForms dependencies to next major version. #725
  • Redesigned file input button #713
  • Removed list of published forms from welcome page. #712
  • Upgraded Next-Auth to version 4 & modified backed to use Prisma #739
  • Changed ISOLATED_INSTANCE for APP_ENV #825

[1.2.0] 2022-04-19

Added

  • Add a character limit to text input and textarea #691
  • ReCAPTCHA V3 added on form submission
  • Implementation of the DELETE method to take a string array of SubmissionIDs and mark the relevant items as retrieved and return the same list as a response if its successful #694
  • Consolidated the Privacy and Terms and Conditions pages with updated content. #698
  • New /changelog page. #246
  • New maxNumberOfRows property in JSON template for DynamicRow component configuration #528
  • Create a second GC Notify service account. #698
  • Make configurable GC branding in the footer. #804

Fixed

  • Aligned HTTP methods on API requests to decommission request body method property.
  • Changed CSS on ordered and unordered lists to align with beginning of page text.
  • Open links from richText component in new Tab.
  • Improved/fixed accessibility for file input component
  • Fixed dropdown initial value not being displayed the same way across browsers
  • Only public form template properties are available to unauthenticated sessions
  • Set Retrieved value to 0 on initial push to vault table in the Reliability Queue #191

Changed

  • Moved the retrieval API to be under the path id/[form]/retrieval.This is to make the API experience more consistent by having the form ID passed in via the url parameter as opposed to a separate query argument #694
  • Usage of DynamoDocumentDBClient to deal with native JS types instead of DynamoDB serializations #694
  • Removed maxRecord query argument. This presented little value to the user. The retrieval API will now always return a maximum of up to 10 values at a time. #694
  • Design of DynamicRow component buttons #528
  • Logging strategy. Now sending info, warn and error log types to AWS #699
  • Upgraded NextJS and other associated GCForms dependencies to next major version. #725

[1.1.0] 2022-03-04

Added

  • Create secure API to deactivate a form owner associated with a form
  • Create secure API to associate emails to a specific form.
  • Send email through GC Notify when a new temporary token is generated
  • A UI with tabs on the Form Settings page. #486
  • A tab on the Form Settings page that allows the user to see and refresh the bearer token.
  • A tab on the Form Settings page that allows form access to be enabled / disabled for users.
  • Replace the retrieval Api lambda implementation by an App backEnd API. #481
  • Log error when we detect that an expired bearer token has been used (will be used to trigger an alarm in AWS CloudWatch)
  • Log error when we failed to generate a temporary token (will be used to trigger an alarm in AWS CloudWatch)
  • Log user access to retrieval API
  • Replace the asterisk on required fields with copy: "(required)"
  • Ensure display order of error list matches the display order of the form elements.
  • Implementation and accessibility testing of reCAPTCHA V3. #570
  • Prevent submission of form for a delayed period of time to help prevent spam submissions
  • New API path /api/notify-callback to plug GC Notify callback feature

Changed

  • Renamed organisation to organization which has an impact on the API access path
  • Modified the middleware functionality and separation of scopes between middlewares
  • A user now needs to have an enabled admin flag (user table) to access the Admin Pages
  • An admin user can now add and remove administrative privileges from other users.

Fixed

  • Google Tag manager iframe will no longer appear in other environment other then staging. #563
  • Form configuration upload now correctly displays the updated configuration instead of displaying old values. #579
  • Clicking a link clears the form. #498
  • AWS WAF blocking image uploads. #434
  • Form scrolling up on submit after fixing errors from first submit. #160

[1.0.4] 2021-12-3

Added

  • Add language of form submission to the Next JS submission API and lambda through the Content-Language HTTP header
  • Add error messages for all elements within dynamic rows. #520
  • POST method to /id/[form]/bearer that allows the refreshing of bearer tokens
  • <br> in long description string now create new lines #541
  • Added secure API to retrieve bearer token.
  • Create secure API to retrieve list of emails associated with a form.

Fixed

  • When Adding a new row in Dynamic Row the focus automatically moves, and scrolls, to the heading of the new row. #547
  • When deleting a row in Dynamic Row the focus and scroll moves to the heading of the previous row. #547
  • For local development fixed the Preview Notify email functionality that was previously broken #547
  • Validation on Dynamic row was preventing form submission when no validation errors were being found. #547
  • Google Tag manger requried 'connect-src' in the content security policy to correctly load #548

[1.0.3] 2021-11-25

Added

  • Story template v1.0 #433
  • Handle file input in dynamic row components #445
  • Form templates json validation #447
  • Delete Dynamic Rows #470
  • Add language of submission to submission data #519
  • Create secure API to retrieve bearer token for a specific form #525
  • Add bearer token to templates #526

Fixed

Changed

  • Removed the intl phone component #459
  • Refactor datalayer code #510

Fixed

  • Fix dynamic row highlighing #442
  • Make screen reader announce heading on confirmation page #444
  • Harmonized RichText and Checkbox/Radio label max width depending on screen ratio #460
  • Improve accessibility for top left corner logo #477
  • Enable users to navigate through checkboxes and radion buttons with context #478
  • Fixed mixed async/await and promise style in processFormData and callLambda #519
  • Fixed naming of submit.tsx to submit.ts #519

Security

  • Move POSTGRES_PASSWORD to .env file #446
  • Add security headers and Content Security Policy #452
  • Fix hashes repeated in Content Security Policy #457
  • Upgrade ioredis from 4.27.6 to 4.27.9 #461
  • Upgrade dotenv from 9.0.0 to 10.0.0 #462
  • Upgrade postgres-migrations from 5.1.1 to 5.3.0 #463
  • Upgrade swr from 0.5.6 to 1.0.1 #464
  • Upgrade next from 11.1.0 to 11.1.2 #465
  • Delete files after s3 upload #523

[1.0.2] 2021-09-21

Fixed

  • Phone number input component was not WCAG compliant.

[1.0.1] 2021-09-16

Added

  • Use a cache to fill frequent requests to the Template API to reduce overall load on Lambdas
  • Enable support for development using local Lambdas
  • Enable support for organizations and organization management through the admin panel
  • Added validation on FileInput component to ensure the type and size of the file is valid
  • Added displayAlphaBanner property to JSON form template. Defaulted to true for existing forms.
  • Added updated phone number input that includes an international code drop down.
  • Added a more accessible file upload component.

Changed

  • Remove unused debugging console.logs()
  • Remove info level logging from production builds
  • Dropdown component automatically adds a default empty option to the list of choices. It becomes the initial value so that we do not need to add it manually in the JSON file.

Fixed

  • When Feature 'Submit to Reliability Queue' is off do not treat the submission as an Error.
  • Checkbox and Radio groups were not being correctly identified by Screen Readers
  • Unpublished form cache not correctly set

Removed

  • Temporary routing for existing form Ids to newly assigned Ids.

[1.0.0] 2021-06-24

⚠️ This release includes a data migration

🚩 This release includes features hidden behind feature flags

Added

  • Form Configuration
    • API endpoint for CRUD operations
    • Settings page to modify/delete an existing configuration
    • Uploads page to upload a new form configuration
  • Submissions
    • Retrieval API endpoint
    • Submissions review page
  • Authentication
    • Login to the administration pages using your cds-snc GSuite account
  • Feature Flags
    • Enable/Disable various application functionality through the admin interface.
  • Temporary routing for existing form Ids to newly assigned Ids. This routing will be removed in the next patched version release.

Changed

  • Submissions
    • Form submissions no longer include the Form Configuration as part of the request.

Removed

  • JSON files defining the form configurations are no longer stored within the ./forms directory in the code repository.

[0.0.1] 2020-05-11 - Initial launch

Added

  • Forms:
    • CDS Intake Form