Configuration

TreatmentConsultant takes a single optional config prop — a deep-partial version of TreatmentConsultantConfig . Anything you don't provide falls back to sensible defaults, so most integrations only need to override a handful of fields.

vue
<TreatmentConsultant
  :config="{
    behaviour: { currency: `GBP` },
    text: { cta: { bookHref: `/book-appointment` } },
  }"
/>

Merge behaviour

The three top-level shapes in TreatmentConsultantConfig merge differently:

KeyMerge strategy
hairTypes , naturalColours , desiredColours , treatments , applicationTypes , cutsReplaced wholesale — provide the full array if you override any of these
textDeep-merged — override only the keys you need
behaviourShallow-merged

behaviour

KeyTypeDescription
autoAdvancebooleanAutomatically move to the next step once a selection is made
allowMultipleTreatmentsbooleanLet clients select more than one add-on treatment
currencystringCurrency code used when formatting treatment/recommendation prices
showCutStepbooleanShow or hide the Cut step entirely
showTreatmentsStepbooleanShow or hide the Style & Treatments step entirely

Wizard steps

The wizard has 7 internal step indices. Application Type is auto-skipped when the client picks "none" for dream colour; Cut and Treatments can each be turned off entirely via behaviour above.

StepNotes
Hair Type
Natural Colour
Dream Colour
Application TypeAuto-skipped when dream colour is "none"
Cut Skippable via behaviour.showCutStep
Treatments Skippable via behaviour.showTreatmentsStep
Results

text

Every user-facing string in the widget lives under text — step headings, navigation labels, the results screen, the summary sidebar, and the final call-to-action. Override just the keys you need; anything else falls back to the English defaults. See the TextConfig reference for the full shape.

Option arrays

hairTypes , naturalColours , desiredColours , treatments , applicationTypes and cuts define the selectable options at each step. These replace the defaults entirely when provided, so a partial override isn't possible — supply the complete list. See the option type reference for each shape.

Events

EventPayloadFires when
changeConsultationSelectionsAny selection changes
completeConsultationSelectionsThe client reaches the Results step