Add comment directives that will enable transforming the story source code
into the code snippet for the story.
Relies on storysource addon
Notable issues:
if a story is all object syntax, then it won't have
a storySource at all. That's likely a limitation of source-loader.
If a story name is very long, story-loader's handling can get weird
TODO: some notable naive approaches here. Could parse AST to get
the default export, to automatically include assignments to stories, or
to better parse story objects.
TODO: Some of this might be suitable contribution to storysource, but
the goals there often different, e.g. to show how to use a component
whereas here we're showing how to build stories.
@end: end the previous story's code block. Note, this is works across
stories such that any story which does not specify its end which begins
before this use will end at this point. Use named end's if you need specificity
@include-start: include from the top of the file through to the default code export.
Can occur in an @end line or on the line following a natural or designated end.
Add comment directives that will enable transforming the story source code into the code snippet for the story.
Relies on storysource addon
Notable issues:
TODO: some notable naive approaches here. Could parse AST to get the default export, to automatically include assignments to stories, or to better parse story objects.
TODO: Some of this might be suitable contribution to storysource, but the goals there often different, e.g. to show how to use a component whereas here we're showing how to build stories.
TODO: ideas include-render, include-template, include-region
All comments start with
// story-code
or with/*
or/**
style single line comments. So// story-code @end SomeComponent @include-default
for example.Available commands:
@end
: end the previous story's code block. Note, this is works across stories such that any story which does not specify its end which begins before this use will end at this point. Use named end's if you need specificity@end SomeComponent
: same as above, but only mark the end for the given component@include-default
: include the default code export. Can occur in an@end
line or on the line following a natural or designated end.@include-start
: include from the top of the file through to the default code export. Can occur in an@end
line or on the line following a natural or designated end.@skip
: Skip the current line@skip-next
: Skip the next line@skip-start
and@skip-end
: Skip a block of text, e.g. There's nothing enforcing that you have to have a @skip-end if you have a @skip-start