Overview -
...
1.4 Adding search filters on contribution and sourcing portal -
Search filters with the following fields can be added as part of the object-level configuration for QuestionSet and collection on both portals to allow users to search for questions through question tags.
The common, minimum
filters
can be added to the object-level configuration forcollection
primary category definition forQuestion Paper
as part of Phase 1 solution are -
Question Type
Status (Default)
Skills tested
Filters for Framework attributes (Topic, Learning outcome) can be added later on in Next Sprint.
Proposed user flows for contributor reviewer
...
Implementation Approach for Phase -1
Configurability
The common, minimum columns
and filters
can be added to the object-level configuration for questionSet
and collection
(This file for questionSet
)
...
To make it so that the headers and tags only appear for a certain primary category, we can add a headerConfiguration
to the primary category configuration inside the sourcingSettings
object, like so:
primaryCategoryCode Block language json "sourcingSettings": { "collection": { "objectType": "Collection", "primaryCategory": "Question Paper", "isRoot": true, "iconClass": "fa fa-book", "showAddCollaborator": false, "addFromLibraryEnabled": true, // Header configuration "headerConfiguration": [ { "label": "Question Type", "key": "
... ] ... contributionTableFilters: [questionCategories" },
Status{ "label": "
sourcingStatusSkills Tested", "key": "
bloomsLevel" } ] } }
The attributes that are framework-specific will be fetched from the
childMetadata
properties of thecategoryDefinition
Only properties that are
editable
and part of theframeworkCategories
are to be displayed in the UIThese properties will be shown as chips beneath the question name
Note: Maximum two tags are shown for that added the variablemaxNumberOfTags
in config.(Prerna Bhandari please add the mockup )
Feature-wise split
Ordering
Order basis the `createdOn`
createdOn
attribute of the metadata instead of the existing orderingDisplay a serial number basis purely a frontend iteration through the `leaf`
leaf
array of the `collection`collection
in the `recursiverecursive-
tree`tree
Restart the index based on each
unit
Tags
Use the metadata attributes to add to the header in the
recursive-tree
Handle cases when text is too long through CSS
“Add Filter” modal
List of statuses possible is present in the
recursive-tree
componentGenerate the
formFieldProperties
basis the object configuration and category definitionCheck whether the
code
is present insideframeworkCategories
and haseditable: true
If so, add it to the
formFieldProperties
Pass
formFieldProperties
Add the form configuration to the list of
forms
in the primary category definition, titledfilterConfiguration
Pass the
properties
inside thefilterConfiguration
to thesb-dynamic-form
component