Skip to content

Commit

Permalink
dev -> staging (#379)
Browse files Browse the repository at this point in the history
* Trigger build (#199)

* Hide Posted date on projected vacancies (#200)

* Add Markdown editor to About page

## uses fake permissions and requests

* Differentiate between full bidding that will eventually be handled by TalentMAP, versus what will be available in FSBid; set this in a feature flag

* Add ability to edit home page banner content

## WIP - Uses fake API requests and wrong permissions

* Use older version of react-loading-skeleton that is compatible with node v6

* Update snapshot

* Add loading state to search filters

* Add Administrator page, ability to download log file

* WIP - Log page

* Test coverage

* Editable Content Areas section

* Update link for Featured Positions

* Full page for notifications

* Implement bulk actions

* Update search placeholder

* Integrate banner with new endpoint

* UI for Admin Data Sync Management

# Not connected to API

* Add cancel token and dispatch handling

* Connect to sync jobs listing

* Update profile menu link order, notifications icon link, style tweak

* Make search input label consistent across home page and results page

* Wrap PV network requests in feature flag

* Ability to run all syncs

* Update config_dev.json

* Use fake endpoint to mock functionality for demo purposes

* Increase button margin

* Update button text, update link to to Notifications page

* Fix glossary search button margin

* Use date_created to display notification time (#227)

* Expands the skill accordion when the user selects the parent checkbox

* Remove the "Are you sure" prompt from the Clear Filters button

* Display OBC URLs on search results cards (#230)

* Update search query to use latest keyword value when a filter is selected

* Replace all uses of "Post" with "Location" (#232)

* Remove Post tag from pills (#243)

* Update and test About page endpoint and component to use real API (#233)

* Homepage banner (#236)

* Feature/homepage banner redesign (#237)

* Homepage banner

* Update design to header, footer and homepage banner

* Remove snapshot since the component uses generated keys

* Fix double render when position is 0

* Remove unnecessary border, increase min-height

* Remove gov banner (#240)

* Homepage banner

* Update design to header, footer and homepage banner

* Remove snapshot since the component uses generated keys

* Fix double render when position is 0

* Remove gov banner, move gold banner below main header

* Update snapshot

* Remove unnecessary border, increase min-height

* Removes the third row of cards on the Home page (#245)

* Simplify the saved search process (#242)

* Simplify the saved search process

* Remove unused

* Feature/glossary redesign (#239)

* Homepage banner

* Update design to header, footer and homepage banner

* Redesign Glossary, group terms by first letter

* Remove snapshot since the component uses generated keys

* Fix double render when position is 0

* Remove unnecessary border, increase min-height

* Move glossary close button z-index to variable

* Additional test coverage (#244)

* Additional test coverage

* More tests, consolidate some component test props

* Resolve a bad merge that deleted the logic to grab the latest keyword search value

* Hide Clear Filters link if no filters are selected (#247)

* Ability to clear search term and re-run query (#248)

* Ability to saved save search for projected vacancy

* Featured Ribbon (#251)

* Add Ribbon for featured positions

* Add styles and configure Featured component so that additional ribbons can be added to cards and details in the future

* Catch profile-related network failures (#252)

* Use q.allSettled when fetching account info so that one bad request doesn't break everything

* Change defaults from empty array to empty object

* Display message if results query has errored

* Bidder Portfolio -> Client Profiles

* Update background gradient so that the image is visible on State Department monitors

* Align "select" all button with notification check boxes

* Make condensed card header clickable (#259)

* Increase test coverage to >98% (#253)

* [WIP] staging/1.1 fixes -> dev (#249)

* sprint-10 -> staging (#201)

* fix: use correct button design

* fix: use lodash get so that non-existent nested property doesn't throw error  (#45)

* Use lodash get so that non-existent nested property doesn't throw error

* Check for details.id so that components don't render with an empty object

* Align bid count with data points in ResultsCondensedCard

* Show "Available" filter to all users, not just CDOs (#46)

* Update dashboard styles and content based on QA

* Fix style for bid list container

* Move Bid Count in-line with data points on ResultsCard

* View More -> View more

* Add disabled state for BidListButton based on proposed API updates

* Use real properties from API PR, combine strings

* Use white for button text color

* feature: add remove bid to the bid tracker for draft and submitted bids

* add additional status to the canDeleteBid function

* Add react-toastify and use with bid list additions/removals (#51)

* Add react-toastify and use with bid list additions/removals

* More tests for toast-related functionality

* Check if bid can be deleted and apply disabled status accordingly; update and optimize utility function

* feature: use the can_delete property from the bid rather than calculate client side

* Add loading spinner to Bid List button (#52)

* Compress us-flag.jpg (#53)

* Use react-linkify to automatically hyperlink URLs and email addresses in position capsule descriptions

* Authorization -> Authentication (#54)

* Authorization -> Authentication

* Rename import

* Update pagination and page size defaults in alignment with designs

* Display link, if available, in the glossary

* Add ability to edit links from Glossary editor; update styling for glossary links

* Reduce code complexity, fix long link styles

* Update snapshot

* Add bundlesize (#69)

* Add bundlsize and command

* Refine glob

* Refine maxSize target

* Chore/linter (#67)

* chore: fix linter is scss file

* fix: linter issue

* End of basic auth (#63)

* Delete login form

* Update actions

* Clean up sagas

* Remove isSAML checks

* Refactor sagas, CodeClimate fixes

* CodeClimate linting

* Upate login screen

* Simplify index

* Change to force external login

* get new custom auth working

* remove rest of the basic auth refs from server

* use env vars for env specific paths

* Bidder role - TM-371 (#68)

* Create permissions wrapper and conditionally render content based on bidder role

* remove default fallback prop

* Fix/mock auth (#70)

* fix: override some routes for the webpack dev server so auth works for local development

* fix: fix the conf so we can use the login.html when running the server in prod mode

* Default to true if can_delete property is not found

* Update snapshots

* fix: remove the auth redirect loop and clean up reamining references to the LOGIN_MODE

* TM-410 - display favorites list as 4 across above the large break point (#66)

* fix: display favorites list as 4 across above the large break point

* fix: display favorites list as 4 across above the large break point

* fix: remove the auth redirect loop (#73)

* fix: remove the auth redirect loop and clean up reamining references to the LOGIN_MODE

* no conditional about url

* dev -> staging (#56) (#75)

* chore: remove unnecessary css file from the build output

* chore: update docs regarding apache compression config

* Update bid list due date to match site-wide format

* Use position id instead of position_number to query for position details

* chore: remove unused props from components

* chore: fix err due to incorrect favicon size in manifest

* chore: remove unused props from the Home container

* chore: remove unused props from the HomePagePositionsContainer component

* fix: update profile page based on qa

* Update styles and content in Position Details page based on QA feedback

* fix: add logo to saved search title

* fix: search page updates from qa

* chore: linter fix

* chore: fix linter issue

* fix: search page updates from qa

* chore: linter fix

* Remove feedback button site-wide

* Use object in state instead of array

* Minor edits to Homepage based on QA

* fix: make the pagination link clickable area larger

* fix: use the correct button style

* fix: better accessibility for active pagination tab selection

* fix: use correct button design

* fix: use lodash get so that non-existent nested property doesn't throw error  (#45)

* Use lodash get so that non-existent nested property doesn't throw error

* Check for details.id so that components don't render with an empty object

* Align bid count with data points in ResultsCondensedCard

* Show "Available" filter to all users, not just CDOs (#46)

* Update dashboard styles and content based on QA

* Fix style for bid list container

* Move Bid Count in-line with data points on ResultsCard

* View More -> View more

* Add disabled state for BidListButton based on proposed API updates

* Use real properties from API PR, combine strings

* Use white for button text color

* feature: add remove bid to the bid tracker for draft and submitted bids

* add additional status to the canDeleteBid function

* Add react-toastify and use with bid list additions/removals (#51)

* Add react-toastify and use with bid list additions/removals

* More tests for toast-related functionality

* Check if bid can be deleted and apply disabled status accordingly; update and optimize utility function

* feature: use the can_delete property from the bid rather than calculate client side

* Add loading spinner to Bid List button (#52)

* Compress us-flag.jpg (#53)

* Remove use of skill cone/code to skill (#76)

* Add Public Profile page - links from CDO portfolio, profile/public/:id route, add Assignments section to public profile, re-use of Profile Dashboard (#71)

## Relies on https://github.com/MetaPhase-Consulting/State-TalentMAP-API/pull/24

* Sort bid cycles alphabetically by name (#78)

* feature: download search results in csv format. Resolves TM-439

* chore: use default variable for sort

* chore: reformat the date before file creation

* Simplified search bar v2 (#81)

*  Make use of the existing simple search bar throughout site

* Offsets for homepage

* Redesign compare page (#82)

* Redesign compare page

* Remove old table styles; handle zero comparisons with route to catch it

* feature: move the download button and use the secondary style. resolves TM-511

* fix: set a width on the cards for the favorite positions profile screen (#80)

* fix: set a width on the cards for the favorite positions profile screen. resolves TM-410

* fix: no responsiveness for bid count and favorite buttons on position card displays

* feature: fixed width for all position cards (homepage, favorites, similar positions). Resolves TM-510

* fix: remove unnecessary class and fix padding on grid for correct wrapping

* chore: fixing the wrapping for the larger width

* Fix search styles from breaking on the bidder portfolio

* Reverting the changes to the glossary card due to the new term dialog breaking

* Add link-container class back in

* Update snapshots

* Trigger circleci build

* Code smells (#86)

* Update CodeClimate exclusions for local dev

* Reduce complexity

* Comparison drawer component, add event listeners where needed, remove old comparison UI from results page

* Track old compare choices to maintain sorting during an update

* Add test coverage, use cancel tokens

* Change dropdown menu link name from "Profile" to "Dashboard"

* Remove How to Bid section from position details (#89)

* Homepage QA (#90)

* Remove Inbox icon

* Fetch notifications from any screen, since we no longer use a /login route

* Remove the BetaHeader

* Conditional rendering of Bid Count on Bid Tracker cards, update Results cards data order and style

* Break out compare elements into their own rows, add Bid List button to comparisons, use Set() for bidListToggleIsLoading

* Remove eslint-disable

* feature: include org info for domestic positions (#92)

* Remove bidListToggleIsLoading since that is handled in BidListButton container

* Display the service needs filter as a pill on the results page (#95)

* Add error handling for position details screen (#93)

* Add error handling for position details screen

* Update call to action

* Update based on design feedback

* feature: add bid list button to the favorites cards. TM-512

* dev -> staging

* Make icons consistent throughout profile pages (#102)

* Service Needs -> Featured (#100)

* Add hover to dropdown (#103)

* Update empty saved search list text (#101)

* Add custom filter for including null language positions (#104)

* Remove Status component throughout app (#105)

* fix: change label. TM-632 (#107)

* Adjust elements to grow

* fix: allow export on edge to run

* Styles, add post to top

* Update ordering for data points on Compare page (#110)

* Remove post, add grade to bottom section

* Updates to Bid Tracker (#115)

* Add opacity to on-hold bids

* "priority" -> "pending"

* Prop to hide the delete button for standby bids

* Track favoriting loading state of individual IDs (#108)

* Track favoriting loading state of individual IDs

* Fix proptypes

* Handshake ribbon (#113)

* Re-usable Ribbon component, use Ribbon component to display if handshake has been offered on position

* Display handshake in condensed card, tests and snapshots

* Test coverage (#117)

* Test coverage for AccountDropdown, CompareDrawer, Compare

* Add tests for SetType

* Add toast notifications for favoriting actions (#114)

* Create BoxShadow component and use with various cards (#106)

* dev -> staging (#98) (#119)

* chore: remove unnecessary css file from the build output

* chore: update docs regarding apache compression config

* Update bid list due date to match site-wide format

* Use position id instead of position_number to query for position details

* chore: remove unused props from components

* chore: fix err due to incorrect favicon size in manifest

* chore: remove unused props from the Home container

* chore: remove unused props from the HomePagePositionsContainer component

* fix: update profile page based on qa

* Update styles and content in Position Details page based on QA feedback

* fix: add logo to saved search title

* fix: search page updates from qa

* chore: linter fix

* chore: fix linter issue

* fix: search page updates from qa

* chore: linter fix

* Remove feedback button site-wide

* Use object in state instead of array

* Minor edits to Homepage based on QA

* fix: make the pagination link clickable area larger

* fix: use the correct button style

* fix: better accessibility for active pagination tab selection

* fix: use correct button design

* fix: use lodash get so that non-existent nested property doesn't throw error  (#45)

* Use lodash get so that non-existent nested property doesn't throw error

* Check for details.id so that components don't render with an empty object

* Align bid count with data points in ResultsCondensedCard

* Show "Available" filter to all users, not just CDOs (#46)

* Update dashboard styles and content based on QA

* Fix style for bid list container

* Move Bid Count in-line with data points on ResultsCard

* View More -> View more

* Add disabled state for BidListButton based on proposed API updates

* Use real properties from API PR, combine strings

* Use white for button text color

* feature: add remove bid to the bid tracker for draft and submitted bids

* add additional status to the canDeleteBid function

* Add react-toastify and use with bid list additions/removals (#51)

* Add react-toastify and use with bid list additions/removals

* More tests for toast-related functionality

* Check if bid can be deleted and apply disabled status accordingly; update and optimize utility function

* feature: use the can_delete property from the bid rather than calculate client side

* Add loading spinner to Bid List button (#52)

* Compress us-flag.jpg (#53)

* Use react-linkify to automatically hyperlink URLs and email addresses in position capsule descriptions

* Authorization -> Authentication (#54)

* Authorization -> Authentication

* Rename import

* Update pagination and page size defaults in alignment with designs

* Display link, if available, in the glossary

* Add ability to edit links from Glossary editor; update styling for glossary links

* Reduce code complexity, fix long link styles

* Update snapshot

* Add bundlesize (#69)

* Add bundlsize and command

* Refine glob

* Refine maxSize target

* Chore/linter (#67)

* chore: fix linter is scss file

* fix: linter issue

* End of basic auth (#63)

* Delete login form

* Update actions

* Clean up sagas

* Remove isSAML checks

* Refactor sagas, CodeClimate fixes

* CodeClimate linting

* Upate login screen

* Simplify index

* Change to force external login

* get new custom auth working

* remove rest of the basic auth refs from server

* use env vars for env specific paths

* Bidder role - TM-371 (#68)

* Create permissions wrapper and conditionally render content based on bidder role

* remove default fallback prop

* Fix/mock auth (#70)

* fix: override some routes for the webpack dev server so auth works for local development

* fix: fix the conf so we can use the login.html when running the server in prod mode

* Default to true if can_delete property is not found

* Update snapshots

* fix: remove the auth redirect loop and clean up reamining references to the LOGIN_MODE

* TM-410 - display favorites list as 4 across above the large break point (#66)

* fix: display favorites list as 4 across above the large break point

* fix: display favorites list as 4 across above the large break point

* fix: remove the auth redirect loop (#73)

* fix: remove the auth redirect loop and clean up reamining references to the LOGIN_MODE

* no conditional about url

* dev -> staging (#56) (#75)

* chore: remove unnecessary css file from the build output

* chore: update docs regarding apache compression config

* Update bid list due date to match site-wide format

* Use position id instead of position_number to query for position details

* chore: remove unused props from components

* chore: fix err due to incorrect favicon size in manifest

* chore: remove unused props from the Home container

* chore: remove unused props from the HomePagePositionsContainer component

* fix: update profile page based on qa

* Update styles and content in Position Details page based on QA feedback

* fix: add logo to saved search title

* fix: search page updates from qa

* chore: linter fix

* chore: fix linter issue

* fix: search page updates from qa

* chore: linter fix

* Remove feedback button site-wide

* Use object in state instead of array

* Minor edits to Homepage based on QA

* fix: make the pagination link clickable area larger

* fix: use the correct button style

* fix: better accessibility for active pagination tab selection

* fix: use correct button design

* fix: use lodash get so that non-existent nested property doesn't throw error  (#45)

* Use lodash get so that non-existent nested property doesn't throw error

* Check for details.id so that components don't render with an empty object

* Align bid count with data points in ResultsCondensedCard

* Show "Available" filter to all users, not just CDOs (#46)

* Update dashboard styles and content based on QA

* Fix style for bid list container

* Move Bid Count in-line with data points on ResultsCard

* View More -> View more

* Add disabled state for BidListButton based on proposed API updates

* Use real properties from API PR, combine strings

* Use white for button text color

* feature: add remove bid to the bid tracker for draft and submitted bids

* add additional status to the canDeleteBid function

* Add react-toastify and use with bid list additions/removals (#51)

* Add react-toastify and use with bid list additions/removals

* More tests for toast-related functionality

* Check if bid can be deleted and apply disabled status accordingly; update and optimize utility function

* feature: use the can_delete property from the bid rather than calculate client side

* Add loading spinner to Bid List button (#52)

* Compress us-flag.jpg (#53)

* Remove use of skill cone/code to skill (#76)

* Add Public Profile page - links from CDO portfolio, profile/public/:id route, add Assignments section to public profile, re-use of Profile Dashboard (#71)

## Relies on https://github.com/MetaPhase-Consulting/State-TalentMAP-API/pull/24

* Sort bid cycles alphabetically by name (#78)

* feature: download search results in csv format. Resolves TM-439

* chore: use default variable for sort

* chore: reformat the date before file creation

* Simplified search bar v2 (#81)

*  Make use of the existing simple search bar throughout site

* Offsets for homepage

* Redesign compare page (#82)

* Redesign compare page

* Remove old table styles; handle zero comparisons with route to catch it

* feature: move the download button and use the secondary style. resolves TM-511

* fix: set a width on the cards for the favorite positions profile screen (#80)

* fix: set a width on the cards for the favorite positions profile screen. resolves TM-410

* fix: no responsiveness for bid count and favorite buttons on position card displays

* feature: fixed width for all position cards (homepage, favorites, similar positions). Resolves TM-510

* fix: remove unnecessary class and fix padding on grid for correct wrapping

* chore: fixing the wrapping for the larger width

* Fix search styles from breaking on the bidder portfolio

* Reverting the changes to the glossary card due to the new term dialog breaking

* Add link-container class back in

* Update snapshots

* Trigger circleci build

* Code smells (#86)

* Update CodeClimate exclusions for local dev

* Reduce complexity

* Comparison drawer component, add event listeners where needed, remove old comparison UI from results page

* Track old compare choices to maintain sorting during an update

* Add test coverage, use cancel tokens

* Change dropdown menu link name from "Profile" to "Dashboard"

* Remove How to Bid section from position details (#89)

* Homepage QA (#90)

* Remove Inbox icon

* Fetch notifications from any screen, since we no longer use a /login route

* Remove the BetaHeader

* Conditional rendering of Bid Count on Bid Tracker cards, update Results cards data order and style

* Break out compare elements into their own rows, add Bid List button to comparisons, use Set() for bidListToggleIsLoading

* Remove eslint-disable

* feature: include org info for domestic positions (#92)

* Remove bidListToggleIsLoading since that is handled in BidListButton container

* Display the service needs filter as a pill on the results page (#95)

* Add error handling for position details screen (#93)

* Add error handling for position details screen

* Update call to action

* Update based on design feedback

* dev -> staging

* Make icons consistent throughout profile pages (#102)

* Service Needs -> Featured (#100)

* Add hover to dropdown (#103)

* Sprint 6 merge conflicts (#120)

* dev -> staging (#98)

* chore: remove unnecessary css file from the build output

* chore: update docs regarding apache compression config

* Update bid list due date to match site-wide format

* Use position id instead of position_number to query for position details

* chore: remove unused props from components

* chore: fix err due to incorrect favicon size in manifest

* chore: remove unused props from the Home container

* chore: remove unused props from the HomePagePositionsContainer component

* fix: update profile page based on qa

* Update styles and content in Position Details page based on QA feedback

* fix: add logo to saved search title

* fix: search page updates from qa

* chore: linter fix

* chore: fix linter issue

* fix: search page updates from qa

* chore: linter fix

* Remove feedback button site-wide

* Use object in state instead of array

* Minor edits to Homepage based on QA

* fix: make the pagination link clickable area larger

* fix: use the correct button style

* fix: better accessibility for active pagination tab selection

* fix: use correct button design

* fix: use lodash get so that non-existent nested property doesn't throw error  (#45)

* Use lodash get so that non-existent nested property doesn't throw error

* Check for details.id so that components don't render with an empty object

* Align bid count with data points in ResultsCondensedCard

* Show "Available" filter to all users, not just CDOs (#46)

* Update dashboard styles and content based on QA

* Fix style for bid list container

* Move Bid Count in-line with data points on ResultsCard

* View More -> View more

* Add disabled state for BidListButton based on proposed API updates

* Use real properties from API PR, combine strings

* Use white for button text color

* feature: add remove bid to the bid tracker for draft and submitted bids

* add additional status to the canDeleteBid function

* Add react-toastify and use with bid list additions/removals (#51)

* Add react-toastify and use with bid list additions/removals

* More tests for toast-related functionality

* Check if bid can be deleted and apply disabled status accordingly; update and optimize utility function

* feature: use the can_delete property from the bid rather than calculate client side

* Add loading spinner to Bid List button (#52)

* Compress us-flag.jpg (#53)

* Use react-linkify to automatically hyperlink URLs and email addresses in position capsule descriptions

* Authorization -> Authentication (#54)

* Authorization -> Authentication

* Rename import

* Update pagination and page size defaults in alignment with designs

* Display link, if available, in the glossary

* Add ability to edit links from Glossary editor; update styling for glossary links

* Reduce code complexity, fix long link styles

* Update snapshot

* Add bundlesize (#69)

* Add bundlsize and command

* Refine glob

* Refine maxSize target

* Chore/linter (#67)

* chore: fix linter is scss file

* fix: linter issue

* End of basic auth (#63)

* Delete login form

* Update actions

* Clean up sagas

* Remove isSAML checks

* Refactor sagas, CodeClimate fixes

* CodeClimate linting

* Upate login screen

* Simplify index

* Change to force external login

* get new custom auth working

* remove rest of the basic auth refs from server

* use env vars for env specific paths

* Bidder role - TM-371 (#68)

* Create permissions wrapper and conditionally render content based on bidder role

* remove default fallback prop

* Fix/mock auth (#70)

* fix: override some routes for the webpack dev server so auth works for local development

* fix: fix the conf so we can use the login.html when running the server in prod mode

* Default to true if can_delete property is not found

* Update snapshots

* fix: remove the auth redirect loop and clean up reamining references to the LOGIN_MODE

* TM-410 - display favorites list as 4 across above the large break point (#66)

* fix: display favorites list as 4 across above the large break point

* fix: display favorites list as 4 across above the large break point

* fix: remove the auth redirect loop (#73)

* fix: remove the auth redirect loop and clean up reamining references to the LOGIN_MODE

* no conditional about url

* dev -> staging (#56) (#75)

* chore: remove unnecessary css file from the build output

* chore: update docs regarding apache compression config

* Update bid list due date to match site-wide format

* Use position id instead of position_number to query for position details

* chore: remove unused props from components

* chore: fix err due to incorrect favicon size in manifest

* chore: remove unused props from the Home container

* chore: remove unused props from the HomePagePositionsContainer component

* fix: update profile page based on qa

* Update styles and content in Position Details page based on QA feedback

* fix: add logo to saved search title

* fix: search page updates from qa

* chore: linter fix

* chore: fix linter issue

* fix: search page updates from qa

* chore: linter fix

* Remove feedback button site-wide

* Use object in state instead of array

* Minor edits to Homepage based on QA

* fix: make the pagination link clickable area larger

* fix: use the correct button style

* fix: better accessibility for active pagination tab selection

* fix: use correct button design

* fix: use lodash get so that non-existent nested property doesn't throw error  (#45)

* Use lodash get so that non-existent nested property doesn't throw error

* Check for details.id so that components don't render with an empty object

* Align bid count with data points in ResultsCondensedCard

* Show "Available" filter to all users, not just CDOs (#46)

* Update dashboard styles and content based on QA

* Fix style for bid list container

* Move Bid Count in-line with data points on ResultsCard

* View More -> View more

* Add disabled state for BidListButton based on proposed API updates

* Use real properties from API PR, combine strings

* Use white for button text color

* feature: add remove bid to the bid tracker for draft and submitted bids

* add additional status to the canDeleteBid function

* Add react-toastify and use with bid list additions/removals (#51)

* Add react-toastify and use with bid list additions/removals

* More tests for toast-related functionality

* Check if bid can be deleted and apply disabled status accordingly; update and optimize utility function

* feature: use the can_delete property from the bid rather than calculate client side

* Add loading spinner to Bid List button (#52)

* Compress us-flag.jpg (#53)

* Remove use of skill cone/code to skill (#76)

* Add Public Profile page - links from CDO portfolio, profile/public/:id route, add Assignments section to public profile, re-use of Profile Dashboard (#71)

## Relies on https://github.com/MetaPhase-Consulting/State-TalentMAP-API/pull/24

* Sort bid cycles alphabetically by name (#78)

* feature: download search results in csv format. Resolves TM-439

* chore: use default variable for sort

* chore: reformat the date before file creation

* Simplified search bar v2 (#81)

*  Make use of the existing simple search bar throughout site

* Offsets for homepage

* Redesign compare page (#82)

* Redesign compare page

* Remove old table styles; handle zero comparisons with route to catch it

* feature: move the download button and use the secondary style. resolves TM-511

* fix: set a width on the cards for the favorite positions profile screen (#80)

* fix: set a width on the cards for the favorite positions profile screen. resolves TM-410

* fix: no responsiveness for bid count and favorite buttons on position card displays

* feature: fixed width for all position cards (homepage, favorites, similar positions). Resolves TM-510

* fix: remove unnecessary class and fix padding on grid for correct wrapping

* chore: fixing the wrapping for the larger width

* Fix search styles from breaking on the bidder portfolio

* Reverting the changes to the glossary card due to the new term dialog breaking

* Add link-container class back in

* Update snapshots

* Trigger circleci build

* Code smells (#86)

* Update CodeClimate exclusions for local dev

* Reduce complexity

* Comparison drawer component, add event listeners where needed, remove old comparison UI from results page

* Track old compare choices to maintain sorting during an update

* Add test coverage, use cancel tokens

* Change dropdown menu link name from "Profile" to "Dashboard"

* Remove How to Bid section from position details (#89)

* Homepage QA (#90)

* Remove Inbox icon

* Fetch notifications from any screen, since we no longer use a /login route

* Remove the BetaHeader

* Conditional rendering of Bid Count on Bid Tracker cards, update Results cards data order and style

* Break out compare elements into their own rows, add Bid List button to comparisons, use Set() for bidListToggleIsLoading

* Remove eslint-disable

* feature: include org info for domestic positions (#92)

* Remove bidListToggleIsLoading since that is handled in BidListButton container

* Display the service needs filter as a pill on the results page (#95)

* Add error handling for position details screen (#93)

* Add error handling for position details screen

* Update call to action

* Update based on design feedback

* dev -> staging

* Make icons consistent throughout profile pages (#102)

* Service Needs -> Featured (#100)

* Add hover to dropdown (#103)

* Remove duplicates

* Add toggle component, use static toggle filter in search results (#121)

* Add condensed card layouts for projected vacancy and recently available (#122)

* dev -> staging (#98) (#127)

* chore: remove unnecessary css file from the build output

* chore: update docs regarding apache compression config

* Update bid list due date to match site-wide format

* Use position id instead of position_number to query for position details

* chore: remove unused props from components

* chore: fix err due to incorrect favicon size in manifest

* chore: remove unused props from the Home container

* chore: remove unused props from the HomePagePositionsContainer component

* fix: update profile page based on qa

* Update styles and content in Position Details page based on QA feedback

* fix: add logo to saved search title

* fix: search page updates from qa

* chore: linter fix

* chore: fix linter issue

* fix: search page updates from qa

* chore: linter fix

* Remove feedback button site-wide

* Use object in state instead of array

* Minor edits to Homepage based on QA

* fix: make the pagination link clickable area larger

* fix: use the correct button style

* fix: better accessibility for active pagination tab selection

* fix: use correct button design

* fix: use lodash get so that non-existent nested property doesn't throw error  (#45)

* Use lodash get so that non-existent nested property doesn't throw error

* Check for details.id so that components don't render with an empty object

* Align bid count with data points in ResultsCondensedCard

* Show "Available" filter to all users, not just CDOs (#46)

* Update dashboard styles and content based on QA

* Fix style for bid list container

* Move Bid Count in-line with data points on ResultsCard

* View More -> View more

* Add disabled state for BidListButton based on proposed API updates

* Use real properties from API PR, combine strings

* Use white for button text color

* feature: add remove bid to the bid tracker for draft and submitted bids

* add additional status to the canDeleteBid function

* Add react-toastify and use with bid list additions/removals (#51)

* Add react-toastify and use with bid list additions/removals

* More tests for toast-related functionality

* Check if bid can be deleted and apply disabled status accordingly; update and optimize utility function

* feature: use the can_delete property from the bid rather than calculate client side

* Add loading spinner to Bid List button (#52)

* Compress us-flag.jpg (#53)

* Use react-linkify to automatically hyperlink URLs and email addresses in position capsule descriptions

* Authorization -> Authentication (#54)

* Authorization -> Authentication

* Rename import

* Update pagination and page size defaults in alignment with designs

* Display link, if available, in the glossary

* Add ability to edit links from Glossary editor; update styling for glossary links

* Reduce code complexity, fix long link styles

* Update snapshot

* Add bundlesize (#69)

* Add bundlsize and command

* Refine glob

* Refine maxSize target

* Chore/linter (#67)

* chore: fix linter is scss file

* fix: linter issue

* End of basic auth (#63)

* Delete login form

* Update actions

* Clean up sagas

* Remove isSAML checks

* Refactor sagas, CodeClimate fixes

* CodeClimate linting

* Upate login screen

* Simplify index

* Change to force external login

* get new custom auth working

* remove rest of the basic auth refs from server

* use env vars for env specific paths

* Bidder role - TM-371 (#68)

* Create permissions wrapper and conditionally render content based on bidder role

* remove default fallback prop

* Fix/mock auth (#70)

* fix: override some routes for the webpack dev server so auth works for local development

* fix: fix the conf so we can use the login.html when running the server in prod mode

* Default to true if can_delete property is not found

* Update snapshots

* fix: remove the auth redirect loop and clean up reamining references to the LOGIN_MODE

* TM-410 - display favorites list as 4 across above the large break point (#66)

* fix: display favorites list as 4 across above the large break point

* fix: display favorites list as 4 across above the large break point

* fix: remove the auth redirect loop (#73)

* fix: remove the auth redirect loop and clean up reamining references to the LOGIN_MODE

* no conditional about url

* dev -> staging (#56) (#75)

* chore: remove unnecessary css file from the build output

* chore: update docs regarding apache compression config

* Update bid list due date to match site-wide format

* Use position id instead of position_number to query for position details

* chore: remove unused props from components

* chore: fix err due to incorrect favicon size in manifest

* chore: remove unused props from the Home container

* chore: remove unused props from the HomePagePositionsContainer component

* fix: update profile page based on qa

* Update styles and content in Position Details page based on QA feedback

* fix: add logo to saved search title

* fix: search page updates from qa

* chore: linter fix

* chore: fix linter issue

* fix: search page updates from qa

* chore: linter fix

* Remove feedback button site-wide

* Use object in state instead of array

* Minor edits to Homepage based on QA

* fix: make the pagination link clickable area larger

* fix: use the correct button style

* fix: better accessibility for active pagination tab selection

* fix: use correct button design

* fix: use lodash get so that non-existent nested property doesn't throw error  (#45)

* Use lodash get so that non-existent nested property doesn't throw error

* Check for details.id so that components don't render with an empty object

* Align bid count with data points in ResultsCondensedCard

* Show "Available" filter to all users, not just CDOs (#46)

* Update dashboard styles and content based on QA

* Fix style for bid list container

* Move Bid Count in-line with data points on ResultsCard

* View More -> View more

* Add disabled state for BidListButton based on proposed API updates

* Use real properties from API PR, combine strings

* Use white for button text color

* feature: add remove bid to the bid tracker for draft and submitted bids

* add additional status to the canDeleteBid function

* Add react-toastify and use with bid list additions/removals (#51)

* Add react-toastify and use with bid list additions/removals

* More tests for toast-related functionality

* Check if bid can be deleted and apply disabled status accordingly; update and optimize utility function

* feature: use the can_delete property from the bid rather than calculate client side

* Add loading spinner to Bid List button (#52)

* Compress us-flag.jpg (#53)

* Remove use of skill cone/code to skill (#76)

* Add Public Profile page - links from CDO portfolio, profile/public/:id route, add Assignments section to public profile, re-use of Profile Dashboard (#71)

## Relies on https://github.com/MetaPhase-Consulting/State-TalentMAP-API/pull/24

* Sort bid cycles alphabetically by name (#78)

* feature: download search results in csv format. Resolves TM-439

* chore: use default variable for sort

* chore: reformat the date before file creation

* Simplified search bar v2 (#81)

*  Make use of the existing simple search bar throughout site

* Offsets for homepage

* Redesign compare page (#82)

* Redesign compare page

* Remove old table styles; handle zero comparisons with route to catch it

* feature: move the download button and use the secondary style. resolves TM-511

* fix: set a width on the cards for the favorite positions profile screen (#80)

* fix: set a width on the cards for the favorite positions profile screen. resolves TM-410

* fix: no responsiveness for bid count and favorite buttons on position card displays

* feature: fixed width for all position cards (homepage, favorites, similar positions). Resolves TM-510

* fix: remove unnecessary class and fix padding on grid for correct wrapping

* chore: fixing the wrapping for the larger width

* Fix search styles from breaking on the bidder portfolio

* Reverting the changes to the glossary card due to the new term dialog breaking

* Add link-container class back in

* Update snapshots

* Trigger circleci build

* Code smells (#86)

* Update CodeClimate exclusions for local dev

* Reduce complexity

* Comparison drawer component, add event listeners where needed, remove old comparison UI from results page

* Track old compare choices to maintain sorting during an update

* Add test coverage, use cancel tokens

* Change dropdown menu link name from "Profile" to "Dashboard"

* Remove How to Bid section from position details (#89)

* Homepage QA (#90)

* Remove Inbox icon

* Fetch notifications from any screen, since we no longer use a /login route

* Remove the BetaHeader

* Conditional rendering of Bid Count on Bid Tracker cards, update Results cards data order and style

* Break out compare elements into their own rows, add Bid List button to comparisons, use Set() for bidListToggleIsLoading

* Remove eslint-disable

* feature: include org info for domestic positions (#92)

* Remove bidListToggleIsLoading since that is handled in BidListButton container

* Display the service needs filter as a pill on the results page (#95)

* Add error handling for position details screen (#93)

* Add error handling for position details screen

* Update call to action

* Update based on design feedback

* dev -> staging

* Make icons consistent throughout profile pages (#102)

* Service Needs -> Featured (#100)

* Add hover to dropdown (#103)

* Move "No Language" filter to top of list (#129)

* Projected Vacancy - Saved Search + Results cards (#123)

* Projected vacancy in Saved Searches

* PV in results cards

* Fix typo, increase font size

* Increase filter container width, increase toggle font-size

* Refactor section headers in profile, static UI for projected vacancy notifications for favorites and bid list (#126)

* Pull css-box-shadow repo into app to force es6 to compile

* Chore/autodeploy config (#132)

* chore: update deploy config

* chore: update deploy config

* chore: update deploy config

* chore: update deploy config

* chore: update deploy config

* chore: update deploy config

* chore: use dev branch

* fix: update deploy script

* Compare from Favorites (#124)

* Add condensed card layouts for projected vacancy and recently available

* Add comparison buttons and comparison drawer to Favorites page

* Condensed Bid Tracker (#128)

* Alternate styles for condensed bid tracker, check for condensedView with Context API

* Additional styles/conditional rendering, scroll to bid on Bid Tracker with route id, snapshots

* Show Closed alert, style tweaks

* Style tweak to hide overlay alert for prepanel state

* Feature flags (#130)

* Feature flag implementation

* Feature flags for API

* fix: check for and remove if present the backup dir (#136)

* Remove jQuery and replace with XHR (#137)

* Different text and colors for Approved bids (#139)

* Hide Featured Positions section if positions length is zero (#138)

* Hide Featured Positions section if positions length is zero

* Update snapshot

* Set config.json to preferred defaults in dev environment

* Update index.html to reference API URL from config

* Update deploy.sh to use alternate config

* fix: include the bid count in the sections toggled by the bidding flag

* Add the Beta banner back in

* Use defaultSort prop instead of entire object; refresh state value on componentWillReceiveProps() (#148)

* New card design for Bidder Portfolio (#140)

* New card design for Bidder Portfolio, including badges (static for now)

* Fallback for no grade

* Update name format

* Make disabled badge color accessible

* Use aria-label to describe the meaning of the icon (#149)

* New row design for Bidder Portfolio (#141)

* New card design for Bidder Portfolio, including badges (static for now)

* Fallback for no grade

* New UI for Bidder Portfolio row view

* Update name format

* Add Export button to Bidder Portfolio (#142)

* Add auto-complete dropdown to display CDO list in Bidder Portfolio (#150)

* Increase test coverage (#151)

* Remove ABOUT_URL (#152)

* Update Jest (#153)

* Update Jest

* Update coverageReporters

* Bidder Portfolio Edit View (#144)

* New card design for Bidder Portfolio, including badges (static for now)

* Fallback for no grade

* New UI for Bidder Portfolio row view

* Update name format

* Add Export button to Bidder Portfolio

* Add Edit view for Bidder Portfolio rows

* UI For Bid Portfolio Edit View

* Public Profile "Updates" and Edit UI (#147)

* New card design for Bidder Portfolio, including badges (static for now)

* Fallback for no grade

* New UI for Bidder Portfolio row view

* Update name format

* Add Export button to Bidder Portfolio

* Add Edit view for Bidder Portfolio rows

* UI For Bid Portfolio Edit View

* Add "Updates" section, static edit UI to Public Profile

* Use react-picky to create a multi-select checkbox dropdown to use as a static UI Bid Cycle filter

* Improved test coverage

* Additional tests for SearchResultsExportLink and utilities

* More test coverage (#156)

* More test coverage

* Add test coverage to ListItem

* Add active filter (#158)

* staging -> sprint-8 (#160)

* Set min-width on compare drawer cards in IE11 (#161)

* Redirect standard error, for when file does not exist in CI (#162)

* Use common Export Button component for re-use (#163)

* Handle for when current_assignment is null (#165)

* "Service need" -> "Featured positions" sort name (#167)

* dev -> staging (#166) (#168)

* chore: remove unused props from the Home container

* chore: remove unused props from the HomePagePositionsContainer component

* fix: update profile page based on qa

* Update styles and content in Position Details page based on QA feedback

* fix: add logo to saved search title

* fix: search page updates from qa

* chore: linter fix

* chore: fix linter issue

* fix: search page updates from qa

* chore: linter fix

* Remove feedback button site-wide

* Use object in state instead of array

* Minor edits to Homepage based on QA

* fix: make the pagination link clickable area larger

* fix: use the correct button style

* fix: better accessibility for active pagination tab selection

* fix: use correct button design

* fix: use lodash get so that non-existent nested property doesn't throw error  (#45)

* Use lodash get so that non-existent nested property doesn't throw error

* Check for details.id so that components don't render with an empty object

* Align bid count with data points in ResultsCondensedCard

* Show "Available" filter to all users, not just CDOs (#46)

* Update dashboard styles and content based on QA

* Fix style for bid list container

* Move Bid Count in-line with data points on ResultsCard

* View More -> View more

* Add disabled state for BidListButton based on proposed API updates

* Use real properties from API PR, combine strings

* Use white for button text color

* feature: add remove bid to the bid tracker for draft and submitted bids

* add additional status to the canDeleteBid function

* Add react-toastify and use with bid list additions/removals (#51)

* Add react-toastify and use with bid list additions/removals

* More tests for toast-related functionality

* Check if bid can be deleted and apply disabled status accordingly; update and optimize utility function

* feature: use the can_delete property from the bid rather than calculate client side

* Add loading spinner to Bid List button (#52)

* Compress us-flag.jpg (#53)

* Use react-linkify to automatically hyperlink URLs and email addresses in position capsule descriptions

* Authorization -> Authentication (#54)

* Authorization -> Authentication

* Rename import

* Update pagination and page size defaults in alignment with designs

* Display link, if available, in the glossary

* Add ability to edit links from Glossary editor; update styling for glossary links

* Reduce code complexity, fix long link styles

* Update snapshot

* Add bundlesize (#69)

* Add bundlsize and command

* Refine glob

* Refine maxSize target

* Chore/linter (#67)

* chore: fix linter is scss file

* fix: linter issue

* End of basic auth (#63)

* Delete login form

* Update actions

* Clean up sagas

* Remove isSAML checks

* Refactor sagas, CodeClimate fixes

* CodeClimate linting

* Upate login screen

* Simplify index

* Change to force external login

* get new custom auth working

* remove rest of the basic auth refs from server

* use env vars for env specific paths

* Bidder role - TM-371 (#68)

* Create permissions wrapper and conditionally render content based on bidder role

* remove default fallback prop

* Fix/mock auth (#70)

* fix: override some routes for the webpack dev server so auth works for local development

* fix: fix the conf so we can use the login.html when running the server in prod mode

* Default to true if can_delete property is not found

* Update snapshots

* fix: remove the auth redirect loop and clean up reamining references to the LOGIN_MODE

* TM-410 - display favorites list as 4 across above the large break point (#66)

* fix: display favorites list as 4 across above the large break point

* fix: display favorites list as 4 across above the large break point

* fix: remove the auth redirect loop (#73)

* fix: remove the auth redirect loop and clean up reamining references to the LOGIN_MODE

* no conditional about url

* dev -> staging (#56) (#75)

* chore: remove unnecessary css file from the build output

* chore: update docs regarding apache compression config

* Update bid list due date to match site-wide format

* Use position id instead of position_number to query for position details

* chore: remove unused props from components

* chore: fix err due to incorrect favicon size in manifest

* chore: remove unused props from the Home container

* chore: remove unused props from the HomePagePositionsContainer component

* fix: update profile page based on qa

* Update styles and content in Position Details page based on QA feedback

* fix: add logo to saved search title

* fix: search page updates from qa

* chore: linter fix

* chore: fix linter issue

* fix: search page updates from qa

* chore: linter fix

* Remove feedback button site-wide

* Use object in state instead of array

* Minor edits to Homepage based on QA

* fix: make the pagination link clickable area larger

* fix: use the correct button style

* fix: better accessibility for active pagination tab selection

* fix: use correct button design

* fix: use lodash get so that non-existent nested property doesn't throw error  (#45)

* Use lodash get so that non-existent nested property doesn't throw error

* Check for details.id so that components don't render with an empty object

* Align bid count with data points in ResultsCondensedCard

* Show "Available" filter to all users, not just CDOs (#46)

* Update dashboard styles and content based on QA

* Fix style for bid list container

* Move Bid Count in-line with data points on ResultsCard

* View More -> View more

* Add disabled state for BidListButton based on proposed API updates

* Use real properties from API PR, combine strings

* Use white for button text color

* feature: add remove bid to the bid tracker for draft and submitted bids

* add additional status to the canDeleteBid function

* Add react-toastify and use with bid list additions/removals (#51)

* Add react-toastify and use with bid list additions/removals

* More tests for toast-related functionality

* Check if bid can be deleted and apply disabled status accordingly; update and optimize utility function

* feature: use the can_delete property from the bid rather than calculate client side

* Add loading spinner to Bid List button (#52)

* Compress us-flag.jpg (#53)

* Remove use of skill cone/code to skill (#76)

* Add Public Profile page - links from CDO portfolio, profile/public/:id route, add Assignments section to public profile, re-use of Profile Dashboard (#71)

## Relies on https://github.com/MetaPhase-Consulting/State-TalentMAP-API/pull/24

* Sort bid cycles alphabetically by name (#78)

* feature: download search results in csv format. Resolves TM-439

* chore: use default variable for sort

* chore: reformat the date before file creation

* Simplified search bar v2 (#81)

*  Make use of the existing simple search bar throughout site

* Offsets for homepage

* Redesign compare page (#82)

* Redesign compare page

* Remove old table styles; handle zero comparisons with route to catch it

* feature: move the download button and use the secondary style. resolves TM-511

* fix: set a width on the cards for the favorite positions profile screen (#80)

* fix: set a width on the cards for the favorite positions profile screen. resolves TM-410

* fix: no responsiveness for bid count and favorite buttons on position card displays

* feature: fixed width for all position cards (homepage, favorites, similar positions). Resolves TM-510

* fix: remove unnecessary class and fix padding on grid for correct wrapping

* chore: fixing the wrapping for the larger width

* Fix search styles from breaking on the bidder portfolio

* Reverting the changes to the glossary card due to the new term dialog breaking

* Add link-container class back in

* Update snapshots

* Trigger circleci build

* Code smells (#86)

* Update CodeClimate exclusions for local dev

* Reduce complexity

* Comparison drawer component, add event listeners where needed, remove old comparison UI from results page

* Track old compare choices to maintain sorting during an update

* Add test coverage, use cancel tokens

* Change dropdown menu link name from "Profile" to "Dashboard"

* Remove How to Bid section from position details (#89)

* Homepage QA (#90)

* Remove Inbox icon

* Fetch notifications from any screen, since we no longer use a /login route

* Remove the BetaHeader

* Conditional rendering of Bid Count on Bid Tracker cards, update Results cards data order and style

* Break out compare elements into their own rows, add Bid List button to comparisons, use Set() for bidListToggleIsLoading

* Remove eslint-disable

* feature: include org info for domestic positions (#92)

* Remove bidListToggleIsLoading since that is handled in BidListButton container

* Display the service needs filter as a pill on the results page (#95)

* Add error handling for position details screen (#93)

* Add error handling for position details screen

* Update call to action

* Update based on design feedback

* feature: add bid list button to the favorites cards. TM-512

* dev -> staging

* Make icons consistent throughout profile pages (#102)

* Service Needs -> Featured (#100)

* Add hover to dropdown (#103)

* Update empty saved search list text (#101)

* Add custom filter for including null language positions (#104)

* Remove Status component throughout app (#105)

* fix: change label. TM-632 (#107)

* Adjust elements to grow

* fix: allow export on edge to run

* Styles, add post to top

* Update ordering for data points on Compare page (#110)

* Remove post, add grade to bottom section

* Updates to Bid Tracker (#115)

* Add opacity to on-hold bids

* "priority" -> "pending"

* Prop to hide the delete button for standby bids

* Track favoriting loading state of individual IDs (#108)

* Track favoriting loading state of individual IDs

* Fix proptypes

* Handshake ribbon (#113)

* Re-usable Ribbon component, use Ribbon component to display if handshake has been offered on position

* Display handshake in condensed card, tests and snapshots

* Test coverage (#117)

* Test coverage for AccountDropdown, CompareDrawer, Compare

* Add tests for SetType

* Add toast notifications for favoriting actions (#114)

* Create BoxShadow component and use with various cards (#106)

* dev -> staging (#98) (#119)

* chore: remove unnecessary css file from the build output

* chore: update docs regarding apache compression config

* Update bid list due date to match site-wide format

* Use position id instead of position_number to query for position details

* chore: remove unused props from components

* chore: fix err due to incorrect favicon size in manifest

* chore: remove unused props from the Home container

* chore: remove unused props from the HomePagePositionsContainer component

* fix: update profile page based on qa

* Update styles and content in Position Details page based on QA feedback

* fix: add logo to saved search title

* fix: search page updates from qa

* chore: linter fix

* chore: fix linter issue

* fix: search page updates from qa

* chore: linter fix

* Remove feedback button site-wide

* Use object in state instead of array

* Minor edits to Homepage based on QA

* fix: make the pagination link clickable area larger

* fix: use the correct button style

* fix: better accessibility for active pagination tab selection

* fix: use correct button design

* fix: use lodash get so that non-existent nested property doesn't throw error  (#45)

* Use lodash get so that non-existent nested property doesn't throw error

* Check for details.id so that components don't render with an empty object

* Align bid count with data points in ResultsCondensedCard

* Show "Available" filter to all users, not just CDOs (#46)

* Update dashboard styles and content based on QA

* Fix style for bid list container

* Move Bid Count in-line with data points on ResultsCard

* View More -> View more

* Add disabled state for BidListButton based on proposed API updates

* Use real properties from API PR, combine strings

* Use white for button text color

* feature: add remove bid to the bid tracker for draft and submitted bids

* add additional status to the canDeleteBid function

* Add react-toastify and use with bid list additions/removals (#51)

* Add react-toastify and use with bid list additions/removals

* More tests for toast-related functionality

* Check if bid can be deleted and apply disabled status accordingly; update and optimize utility function

* feature: use the can_delete property from the bid rather than calculate client side

* Add loading spinner to Bid List button (#52)

* Compress us-flag.jpg (#53)

* Use react-linkify to automatically hyperlink URLs and email addresses in position capsule descriptions

* Authorization -> Authentication (#54)

* Authorization -> Authentication

* Rename import

* Update pagination and page size defaults in alignment with designs

* Display link, if available, in the glossary

* Add ability to edit links from Glossary editor; update styling for glossary links

* Reduce code complexity, fix long link styles

* Update snapshot

* Add bundlesize (#69)

* Add bundlsize and command

* Refine glob

* Refine maxSize target

* Chore/linter (#67)

* chore: fix linter is scss file

* fix: linter issue

* End of basic auth (#63)

* Delete login form

* Update actions

* Clean up sagas

* Remove isSAML checks

* Refactor sagas, CodeClimate fixes

* CodeClimate linting

* Upate login screen

* Simplify index

* Change to force external login

* get new custom auth working

* remove rest of the basic auth refs from server

* use env vars for env specific paths

* Bidder role - TM-371 (#68)

* Create permissions wrapper and conditionally render content based on bidder role

* remove default fallback prop

* Fix/mock auth (#70)

* fix: override some routes for the webpack dev server so auth works for local development

* fix: fix the conf so we can use the login.html when running the server in prod mode

* Default to true if can_delete property is not found

* Update snapshots

* fix: remove the auth redirect loop and clean up reamining references to the LOGIN_MODE

* TM-410 - display favorites list as 4 across above the large break point (#66)

* fix: display favorites list as 4 across above the large break point

* fix: display favorites list as 4 across above the large break point

* fix: remove the auth redirect loop (#73)

* fix: remove the auth redirect loop and clean up reamining references to the LOGIN_MODE

* no conditional about url

* dev -> staging (#56) (#75)

* chore: remove unnecessary css file from the build output

* chore: update docs regarding apache compression config

* Update bid list due date to match site-wide format

* Use position id instead of position_number to query for position details

* chore: remove unused props from components

* chore: fix err due to incorrect favicon size in manifest

* chore: remove unused props from the Home container

* chore: remove unused props from the HomePagePositionsContainer component

* fix: update profile page based on qa

* Update styles and content in Position Details page based on QA feedback

* fix: add logo to saved search title

* fix: search page updates from qa

* chore: linter fix

* chore: fix linter issue

* fix: search page updates from qa

* chore: linter fix

* Remove feedback button site-wide

* Use object in state instead of array

* Minor edits to Homepage based on QA

* fix: make the pagination link clickable area larger

* fix: use the correct button style

* fix: better accessibility for active pagination tab selection

* fix: use correct button design

* fix: use lodash get so that non-existent nested property doesn't throw error  (#45)

* Use lodash get so that non-existent nested property doesn't throw error

* Check for details.id so that components don't render with an empty object

* Align bid count with data points in ResultsCondensedCard

* Show "Available" filter to all users, not just CDOs (#46)

* Update dashboard styles and content based on QA

* Fix style for bid list container

* Move Bid Count in-line with data points on ResultsCard

* View More -> View more

* Add disabled state for BidListButton based on proposed API updates

* Use real properties from API …
  • Loading branch information
mjoyce91 authored and burgwyn committed Aug 25, 2019
1 parent 051f5c0 commit 7e7812d
Show file tree
Hide file tree
Showing 109 changed files with 1,464 additions and 973 deletions.
2 changes: 1 addition & 1 deletion .circleci/config.yml
Original file line number Diff line number Diff line change
Expand Up @@ -233,4 +233,4 @@ workflows:
only:
- dev
- staging
- master
- master
5 changes: 0 additions & 5 deletions EXAMPLE_setup_environment.sh
Original file line number Diff line number Diff line change
Expand Up @@ -23,11 +23,6 @@ export API_URL=http://localhost:8000/api/v1
# Default - 3000
export PORT=3000

# Protocol, hostname and port of OBC,
# which provides post and country details
# Default - local test value http://localhost:4000/
export OBC_URL=http://localhost:4000/

# External link to the About page
# Default - local test value https://github.com/18F/State-TalentMAP
export ABOUT_PAGE=https://github.com/18F/State-TalentMAP
Expand Down
9 changes: 6 additions & 3 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,8 +1,11 @@
# United States Department of State TalentMAP

[![Build Status](https://circleci.com/gh/USStateDept/State-TalentMAP.svg?style=shield)](https://circleci.com/gh/USStateDept/State-TalentMAP/)
[![Test Coverage](https://codeclimate.com/github/USStateDept/State-TalentMAP/badges/coverage.svg)](https://codeclimate.com/github/USStateDept/State-TalentMAP/coverage)
[![Code Climate](https://codeclimate.com/github/USStateDept/State-TalentMAP/badges/gpa.svg)](https://codeclimate.com/github/USStateDept/State-TalentMAP)
<a href="https://circleci.com/gh/MetaPhase-Consulting/State-TalentMAP/" alt="Build Status">
<img src="https://circleci.com/gh/MetaPhase-Consulting/State-TalentMAP.svg?style=shield" /></a>
<a href="https://codeclimate.com/github/MetaPhase-Consulting/State-TalentMAP/coverage" alt="Test Coverage">
<img src="https://codeclimate.com/github/MetaPhase-Consulting/State-TalentMAP/badges/coverage.svg" /></a>
<a href="https://codeclimate.com/github/MetaPhase-Consulting/State-TalentMAP" alt="Code Climate">
<img src="https://codeclimate.com/github/MetaPhase-Consulting/State-TalentMAP/badges/gpa.svg" /></a>

A comprehensive research, bidding, and matching system to match Foreign Service employees with the right skills to available posts and positions.

Expand Down
1 change: 0 additions & 1 deletion circleci-docker-compose.yml
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,6 @@ services:
- PUBLIC_URL=/talentmap/
- STATIC_PATH=/app/build/
- API_ROOT=http://app:8000/
- OBC_URL=http://obc:4000/
container_name: web
volumes_from:
- data
Expand Down
2 changes: 1 addition & 1 deletion config/webpack.config.prod.js
Original file line number Diff line number Diff line change
Expand Up @@ -351,6 +351,6 @@ module.exports = {
tls: 'empty',
},
performance: {
hints: "warning",
hints: false,
},
};
1 change: 0 additions & 1 deletion docker-compose.yml
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,6 @@ services:
- PUBLIC_URL=/talentmap/
- STATIC_PATH=/app/build/
- API_ROOT=http://api:8000/
- OBC_URL=http://obc:4000/
volumes:
- .:/app:delegated
- node-modules:/app/node_modules/
Expand Down
48 changes: 25 additions & 23 deletions package.json
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@
"dependencies": {
"@cmsgov/design-system-core": "^1.18.0",
"axios": "^0.18.1",
"babel-plugin-lodash": "^3.3.2",
"babel-plugin-lodash": "^3.3.4",
"babel-polyfill": "^6.26.0",
"body-parser": "^1.18.2",
"bunyan": "^1.8.12",
Expand All @@ -22,7 +22,7 @@
"immutable": "^3.8.2",
"lodash": "^4.17.13",
"lodash-webpack-plugin": "^0.11.5",
"memoize-one": "^5.0.2",
"memoize-one": "^5.0.5",
"numeral": "^2.0.6",
"prop-types": "^15.6.0",
"q": "^1.5.1",
Expand All @@ -31,7 +31,7 @@
"react": "^15.6.2",
"react-autosuggest": "^9.3.2",
"react-countup": "3.0.3",
"react-day-picker": "^7.3.0",
"react-day-picker": "^7.3.2",
"react-dom": "^15.6.2",
"react-fontawesome": "^1.6.1",
"react-helmet": "^5.2.0",
Expand All @@ -48,30 +48,30 @@
"react-router-dom": "^4.2.2",
"react-router-redux": "^5.0.0-alpha.9",
"react-router-scroll-4": "^1.0.0-beta.1",
"react-scroll": "^1.7.5",
"react-scroll": "^1.7.13",
"react-scroll-up-button": "^1.6.4",
"react-scrollbar": "^0.5.4",
"react-scrollbar": "^0.5.6",
"react-select": "^1.1.0",
"react-simple-dropdown": "^3.2.0",
"react-simple-dropdown": "^3.2.3",
"react-spring": "4.0.0",
"react-tippy": "^1.2.2",
"react-toastify": "^4.5.1",
"react-tippy": "^1.2.3",
"react-toastify": "^5.3.2",
"redux": "^3.7.1",
"redux-form": "^7.2.0",
"redux-persist": "^5.10.0",
"redux-saga": "^0.15.6",
"redux-saga": "^0.16.2",
"redux-thunk": "^2.2.0",
"saml2-js": "2.0.2",
"shortid": "^2.2.8",
"shortid": "^2.2.14",
"time-input": "^1.6.1",
"typeface-merriweather": "^0.0.54",
"typeface-roboto": "^0.0.50",
"typeface-merriweather": "^0.0.72",
"typeface-roboto": "^0.0.75",
"uswds": "~1.6.0"
},
"devDependencies": {
"@epegzz/sass-vars-loader": "^3.2.0",
"autoprefixer": "7.2.5",
"axios-mock-adapter": "^1.10.0",
"axios-mock-adapter": "^1.17.0",
"babel-core": "6.26.3",
"babel-eslint": "7.2.3",
"babel-jest": "23.6.0",
Expand All @@ -82,7 +82,7 @@
"babel-runtime": "6.26.0",
"bundlesize": "^0.17.1",
"case-sensitive-paths-webpack-plugin": "2.1.1",
"chalk": "2.3.0",
"chalk": "2.4.2",
"css-loader": "0.28.8",
"dotenv": "4.0.0",
"enzyme": "^2.9.1",
Expand All @@ -98,29 +98,30 @@
"extract-text-webpack-plugin": "^2.1.2",
"file-loader": "0.11.2",
"fs-extra": "3.0.1",
"html-webpack-plugin": "2.30.1",
"html-webpack-plugin": "3.2.0",
"jest": "24.7.1",
"jest-localstorage-mock": "^1.2.0",
"mock-local-storage": "^1.0.5",
"node-mocks-http": "^1.7.6",
"node-sass": "^4.7.2",
"object-assign": "4.1.1",
"pa11y-ci": "^1.3.1",
"postcss-flexbugs-fixes": "3.2.0",
"postcss-loader": "2.0.10",
"postcss-flexbugs-fixes": "4.1.0",
"postcss-loader": "3.0.0",
"promise": "7.3.1",
"react-dev-utils": "^3.1.2",
"react-error-overlay": "^1.0.10",
"react-router-test-context": "^0.1.0",
"react-test-renderer": "^15.6.1",
"redux-mock-store": "^1.4.0",
"redux-mock-store": "^1.5.3",
"redux-saga-test-plan": "^3.2.0",
"redux-testkit": "^1.0.6",
"sass-lint": "^1.12.1",
"sass-lint": "^1.13.1",
"sass-loader": "^6.0.6",
"sinon": "^2.4.1",
"style-loader": "0.19.1",
"supertest": "^3.0.0",
"sw-precache-webpack-plugin": "0.11.4",
"style-loader": "0.23.1",
"supertest": "^4.0.2",
"sw-precache-webpack-plugin": "0.11.5",
"url-loader": "0.6.2",
"webpack": "^2.7.0",
"webpack-dev-server": "2.10.1",
Expand Down Expand Up @@ -148,7 +149,8 @@
"!src/Components/StaticDevContent/*",
"!src/actions/showStaticContent.js",
"!src/reducers/showStaticContent.js",
"!src/Components/CSV/**/*.{js,jsx}"
"!src/Components/CSV/**/*.{js,jsx}",
"!src/polyfills/**/*.{js,jsx}"
],
"coverageReporters": [
"text-summary",
Expand Down
1 change: 1 addition & 0 deletions public/config/config.json
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@
"api_config": {
"baseURL": "http://localhost:8000/api/v1"
},
"hrAuthUrl": "http://localhost:3333/Authorize?sAppCircuitID=32",
"flags": {
"bidding": true,
"projected_vacancy": true,
Expand Down
1 change: 1 addition & 0 deletions public/config/config_dev.json
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@
"api_config": {
"baseURL": "https://dev.talentmap.api.metaphasedev.com/api/v1"
},
"hrAuthUrl": "http://dev.talentmap.fsbid.metaphasedev.com/Authorize?sAppCircuitID=32",
"flags": {
"bidding": true,
"projected_vacancy": true,
Expand Down
1 change: 1 addition & 0 deletions public/jwt.test.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
"eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiaWF0IjoxNTE2MjM5MDIyfQ.SflKxwRJSMeKKF2QT4fwpMeJf36POk6yJV_adQssw5c"
3 changes: 0 additions & 3 deletions service/talentmap.service
Original file line number Diff line number Diff line change
Expand Up @@ -31,9 +31,6 @@ Environment=STATIC_PATH=/var/www/html/talentmap/
Environment=API_ROOT=http://localhost:8000/
Environment=API_URL=http://localhost:8000/api/v1

# Protocol, hostname and port of OBC,
Environment=OBC_URL=http://localhost:4000/

# External link to the About page
Environment=ABOUT_PAGE=https://github.com/18F/State-TalentMAP

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -64,4 +64,18 @@ describe('DataSync', () => {
wrapper.instance().updateVal({ target: { value: 'a' } }, 'fieldA');
expect(wrapper.instance().state.formValues.fieldA).toBe('a');
});

it('updates state with setJob()', () => {
const wrapper = shallow(<DataSync {...props} />);
wrapper.instance().setJob(props.syncJobs[0]);
expect(wrapper.instance().state.formValues.id).toBeDefined();
});

it('submits a job with submitSync()', () => {
const job = {};
const wrapper = shallow(<DataSync {...props} patchSyncJob={(e) => { job.value = e; }} />);
wrapper.instance().setJob(props.syncJobs[0]);
wrapper.instance().submitSync();
expect(job.value).toBeDefined();
});
});
5 changes: 3 additions & 2 deletions src/Components/BidTracker/BidTrackerCard/BidTrackerCard.jsx
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,7 @@ import {
HAND_SHAKE_ACCEPTED_PROP,
PRE_PANEL_PROP,
IN_PANEL_PROP,
BID_EXPLANATION_TEXT,
} from '../../../Constants/BidData';
import { formatDate, formatIdSpacing, getTimeDistanceInWords } from '../../../utilities';

Expand Down Expand Up @@ -42,7 +43,7 @@ class BidTrackerCard extends Component {
priorityExists ? 'bid-tracker--priority-exists' : '',
].join(' ');
const showBidCount$ = showBidCount && !priorityExists;
const showQuestion = bid.status !== APPROVED_PROP;
const questionText = get(BID_EXPLANATION_TEXT, `[${bid.status}]`);
return (
<BoxShadow className={containerClass} id={`bid-${bid.id}`}>
<div className="bid-tracker-inner-container">
Expand All @@ -51,7 +52,7 @@ class BidTrackerCard extends Component {
deleteBid={deleteBid}
showBidCount={showBidCount$}
hideDelete={priorityExists}
showQuestion={showQuestion}
questionText={questionText}
/>
<div className={`usa-grid-full padded-container-inner bid-tracker-bid-steps-container ${statusClass}`}>
<BidSteps bid={bid} />
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@ exports[`BidTrackerCardComponent matches snapshot 1`] = `
<div
className="bid-tracker-inner-container"
>
<BidTrackerCardTop
<Connect(BidTrackerCardTop)
bid={
Object {
"approved_date": "2017-12-20",
Expand Down Expand Up @@ -74,7 +74,6 @@ exports[`BidTrackerCardComponent matches snapshot 1`] = `
deleteBid={[Function]}
hideDelete={false}
showBidCount={true}
showQuestion={true}
/>
<div
className="usa-grid-full padded-container-inner bid-tracker-bid-steps-container bid-tracker-bid-steps-container--draft"
Expand Down
50 changes: 46 additions & 4 deletions src/Components/BidTracker/BidTrackerCardTop/BidTrackerCardTop.jsx
Original file line number Diff line number Diff line change
@@ -1,15 +1,21 @@
import React, { Component } from 'react';
import PropTypes from 'prop-types';
import { connect } from 'react-redux';
import FontAwesome from 'react-fontawesome';
import { get } from 'lodash';
import { Tooltip } from 'react-tippy';
import { BID_OBJECT } from '../../../Constants/PropTypes';
import BidTrackerCardTitle from '../BidTrackerCardTitle';
import ConfirmLink from '../../ConfirmLink';
import InteractiveElement from '../../InteractiveElement';
import { toggleGlossary } from '../../../actions/showGlossary';
import { scrollToGlossaryTerm } from '../../../utilities';

class BidTrackerCardTop extends Component {
constructor(props) {
super(props);
this.onDeleteBid = this.onDeleteBid.bind(this);
this.onClickLink = this.onClickLink.bind(this);
this.state = {
confirm: false,
};
Expand All @@ -20,11 +26,27 @@ class BidTrackerCardTop extends Component {
deleteBid(bid.position.id);
}

onClickLink() {
const { toggle, questionText: { term } } = this.props;
toggle();
scrollToGlossaryTerm(term);
}

render() {
const { bid, hideDelete, showBidCount, showQuestion } = this.props;
const { bid, hideDelete, showBidCount, questionText } = this.props;
const { position } = bid.position;
const bidStatistics = get(position, 'bid_statistics[0]', {});
const post = get(position, 'post', {});
const showQuestion = !!(questionText && questionText.text);

const getQuestionElement = () => (
<span>
<span>{questionText.text} </span>
<InteractiveElement className="tooltip-link" type="span" onClick={this.onClickLink}>
{questionText.link}
</InteractiveElement>
</span>
);
return (
<div className="usa-grid-full padded-container-inner bid-tracker-title-container">
<div className="bid-tracker-title-content-container">
Expand All @@ -42,7 +64,17 @@ class BidTrackerCardTop extends Component {
{
showQuestion &&
<div className="bid-tracker-question-text-container">
<FontAwesome name="question-circle" /> Why is it taking so long?
<Tooltip
html={getQuestionElement()}
arrow
tabIndex="0"
interactive
interactiveBorder={5}
>
<span>
<FontAwesome name="question-circle" /> Why is it taking so long?
</span>
</Tooltip>
</div>
}
<div className="bid-tracker-actions-container">
Expand All @@ -64,16 +96,26 @@ class BidTrackerCardTop extends Component {

BidTrackerCardTop.propTypes = {
bid: BID_OBJECT.isRequired,
showQuestion: PropTypes.bool, // Determine whether or not to show the question text
questionText: PropTypes.shape({
text: PropTypes.string,
link: PropTypes.string,
term: PropTypes.string,
}),
deleteBid: PropTypes.func.isRequired,
showBidCount: PropTypes.bool,
hideDelete: PropTypes.bool,
toggle: PropTypes.func.isRequired,
};

BidTrackerCardTop.defaultProps = {
questionText: {},
showQuestion: true,
showBidCount: true,
hideDelete: false,
};

export default BidTrackerCardTop;
export const mapDispatchToProps = dispatch => ({
toggle: () => dispatch(toggleGlossary(true)),
});

export default connect(null, mapDispatchToProps)(BidTrackerCardTop);
Loading

0 comments on commit 7e7812d

Please sign in to comment.