* add UI to Routes * add attributeIdForWeights to route json * fixes and clean up * clean up onChangeAttributeIdForWeights * fix type errors * fix attribute weights in getLuckyUser * adjust tests * fixes for attribute rule changes * fix type error * Keep weighted attributes logic outside Route (#18974) Co-authored-by: Hariom Balhara <hariombalhara@gmgmail.com> * use findUnique * fix test --------- Co-authored-by: CarinaWolli <wollencarina@gmail.com> Co-authored-by: Udit Takkar <53316345+Udit-takkar@users.noreply.github.com> Co-authored-by: Hariom Balhara <hariombalhara@gmail.com> Co-authored-by: Hariom Balhara <hariombalhara@gmgmail.com>
Routing Forms App
Vocabulary
- RaqbField refers to the field in the context of React Awesome Query Builder(RAQB)
- See
getQueryBuilderConfig
- See
- Field refers to the field in the Routing Form
Understanding the structure of queryValue(type JsonTree)
AttributeQueryValue
- { id: "Some-id-generated-and-used-internally-by-raqb" type: "group", children1: { "Some-other-id-generated-and-used-internally-by-raqb": { type: "rule", properties: { field: "ATTRIBUTE.id", operator: "multiselect_equals", // One of many operators possible value: ["AttributeOption.id"], // This is the type of the attribute and the operator corresponds to it. The data provided to jsonLogic on which the logic(generated from RAQB config and this queryValue) is applied must also be as per the requirement of the operator. valueType: ["multiselect"] } } }
}
How to run Tests
yarn e2e:app-store runs all Apps' tests. You can use describe.only() to run Routing Forms tests only.
Make sure that the app is running already with NEXT_PUBLIC_IS_E2E=1 so that the app is installable