UNPKG

@redocly/theme

Version:

Shared UI components lib

30 lines 1.44 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.useCodeWalkthrough = useCodeWalkthrough; const use_code_walkthrough_controls_1 = require("./use-code-walkthrough-controls"); const use_code_walkthrough_steps_1 = require("./use-code-walkthrough-steps"); function useCodeWalkthrough({ steps, attributes, root }) { const { filters, filesets, inputs, toggles, __idx } = attributes; /* We only enable deep linking for the first CodeWalkthrough, because we don't expect more than one on the same page. Any subsequent walkthroughs have it disabled to avoid collisions/conflicts in the URL. */ const enableDeepLink = __idx === 1; const stepsState = (0, use_code_walkthrough_steps_1.useCodeWalkthroughSteps)({ steps, enableDeepLink, root }); const controlsState = (0, use_code_walkthrough_controls_1.useCodeWalkthroughControls)(filters, inputs, toggles, enableDeepLink); const files = filesets .filter((fileset) => controlsState.areConditionsMet(fileset)) .flatMap((fileset) => fileset.files || []); const downloadAssociatedFiles = filesets .filter((fileset) => controlsState.areConditionsMet(fileset)) .flatMap((fileset) => fileset.downloadAssociatedFiles || []); return { stepsState, controlsState, downloadAssociatedFiles, files, }; } //# sourceMappingURL=use-code-walkthrough.js.map