Returns the value to persist, which is the saved place as JSON for every kind of key.
A timezone field reaches the watch as "offset,label". The pkjs side builds that from the saved zone on the way out, which is what keeps the offset right across a daylight saving switch, so the zone has to survive being persisted here.
Restores a saved selection: shows the place label and keeps the raw stored value.
A timezone field also gets told when what it restored carries no zone, since that is the one thing the user has to act on and the picker is where they would act.
The component type name, matched by a Clay config item's own type: 'locationsearch'.
The CSS this component needs, scoped to its own class names.
The markup this component renders for its config row.
Wires up the live autocomplete: a debounced geocoder query, a results dropdown, and persisting the chosen place's coordinates (plus offset).
A timezone field also matches time zones and plain offsets, which needs no network, so those rows are on screen before the geocoder has been asked anything.