Skip to main content
userTourKit
@tour-kit/surveysHooks

useSurveys

Access the full SurveysContextValue — all survey states, the active survey, the queue, and every action available in the context

domidex01Published Updated

useSurveys returns the raw SurveysContextValue from context. Use it when you need to operate across multiple surveys or when useSurvey would require multiple hook calls.

Import

import { useSurveys } from '@tour-kit/surveys';

Usage

import { useSurveys } from '@tour-kit/surveys';

function SurveyDebugPanel() {
  const ctx = useSurveys();

  return (
    <div>
      <p>Active survey: {ctx.activeSurvey ?? 'none'}</p>
      <p>Queue length: {ctx.queue.length}</p>

      <ul>
        {Array.from(ctx.surveys.entries()).map(([id, state]) => (
          <li key={id}>
            {id} — visible: {String(state.isVisible)}, completed: {String(state.isCompleted)}
            <button onClick={() => ctx.resetAll()}>Reset all</button>
          </li>
        ))}
      </ul>
    </div>
  );
}

Returns

useSurveys returns SurveysContextValue directly. The full shape:

Prop

Type

When to use useSurveys vs useSurvey

SituationUse
Control a specific surveyuseSurvey(id)
Inspect all surveys or the queueuseSurveys()
Reset all surveys on logoutuseSurveys() + resetAll()
Build a survey admin/debug UIuseSurveys()