Skip to content
New issue

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

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

Already on GitHub? Sign in to your account

CNFT1-331: Create operator dropdown component #1965

Open
wants to merge 5 commits into
base: main
Choose a base branch
from

Conversation

joeaxcdw
Copy link
Collaborator

Description

Implement the base operator dropdown to use for first name, last name, and applicable address fields in patient search.

image

Tickets

Checklist before requesting a review

  • PR focuses on a single story
  • Code has been fully tested to meet acceptance criteria
  • PR is reasonably small and reviewable (Generally less than 10 files and 500 changed lines)
  • All new functions/classes/components reasonably small
  • Functions/classes/components focused on one responsibility
  • Code easy to understand and modify (clarity over concise/clever)
  • PRs containing TypeScript follow the Do's and Don'ts
  • PR does not contain hardcoded values (Uses constants)
  • All code is covered by unit or feature tests

@@ -0,0 +1,26 @@
import { Selectable, asSelectable, findByValue } from 'options';

const STARTS_WITH_OPERATOR = asSelectable('S', 'Starts with');
Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@stevegsa please let me know what the actual values will be for these operators so I can fix it here.

Copy link
Collaborator

@adamloup-enquizit adamloup-enquizit left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This component is more than a dropdown of operators, it's encapsulating a specific use case searching using text in a specific way. This is going to be a repeatable use case so the component should produce an object representing the intention of searching with this criteria.

At least something like

 {
 "value": "some value",
 "operator": { "name": "Starts with", "value" : "SW"}
}

Even better would be something way more expressive

{
 "startsWith" :  "some-value"
}

Since this is going to represent a common usage pattern it should be in the design-system folder.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants