Storybook: рдХреЛрдгреАрдп 2 рд╕рдорд░реНрдерди

рдХреЛ рдирд┐рд░реНрдорд┐рдд 22 рдЬреВрди 2016  ┬╖  76рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ  ┬╖  рд╕реНрд░реЛрдд: storybookjs/storybook

рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдХреЛрдгреАрдп 2 рд╕рдорд░реНрдерди рд░реЛрдбрдореИрдк рдкрд░ рдерд╛, рдФрд░ рдореИрдВ рдЗрд╕рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмрд╣реБрдд рдЦреБрд╢ рд╣реВрдВред
рдореИрдВ рдЕрдкрдиреЗ рд╕рдВрдмрдВрдзрд┐рдд рдкреНрд░рдпрд╛рд╕ рдХреЛ рд░реЗрдкреЛ рдХреЛ рдЙрд╕ рдЫреЛрд░ рддрдХ рд╕рд╛рдЭрд╛ рдХрд░рдирд╛ рдЪрд╛рд╣рддрд╛ рдерд╛, рдФрд░ рдпрд╣рд╛рдВ рдПрдХ рдкреНрд░рд╛рд╕рдВрдЧрд┐рдХ рдзрд╛рдЧрд╛ рдЕрднреА рддрдХ рдирд╣реАрдВ рдорд┐рд▓рд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдореБрдЭреЗ рд▓рдЧрд╛ рдХрд┐ рдореИрдВ рднреА рдПрдХ рдмрдирд╛ рд╕рдХрддрд╛ рд╣реВрдВред
рдореИрдВ рдПрдХ рд╕рд╛рде рдЕрднреА рддрдХ рдПрдХ PoC рдбрд╛рд▓ рдХрд░рдиреЗ рдореЗрдВ рдХрд╛рдордпрд╛рдм рдирд╣реАрдВ рд╣реБрдЖ рдерд╛, рд▓реЗрдХрд┐рди рд╢рд╛рдпрдж рд╕реЗ рдХреЛрдгреАрдп рдмрд┐рдЯреНрд╕ рдореЗрд░реА рдкрд╣рд▓реА рдкреНрд░рддрд┐рдмрджреНрдз рдпрд╣рд╛рдБ рдХреБрдЫ рдкреНрд░реЗрд░рдгрд╛ рдкреНрд░рджрд╛рди рдХрд░рдиреЗ рдореЗрдВ рдорджрдж рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рдЗрд╕ рд░реЗрдкреЛ рдХрд╛ рдПрдХ рдкреБрд░рд╛рдирд╛ рд╕рдВрд╕реНрдХрд░рдг рднреА рд╣реИ, рд▓реЗрдХрд┐рди рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЕрд╡рдзрд╛рд░рдгрд╛рдУрдВ рдХреЛ рдЕрднреА рднреА рд▓рд╛рдЧреВ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред

angular feature request help wanted

рд╕рдмрд╕реЗ рдЙрдкрдпреЛрдЧреА рдЯрд┐рдкреНрдкрдгреА

рдЕрдм рдпрд╣ рд░реЛрдбрдореИрдк рдкрд░ рд╣реИ:
https://github.com/storybooks/storybook/blob/master/ROADMAP.md#angular

рд╕рднреА 76 рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

рд╣рдордиреЗ рдЕрдкрдирд╛ рдХреЛрд░ UI рдПрдХ рдЕрд▓рдЧ рдРрдк рдореЗрдВ рдмрдирд╛рдпрд╛ рд╣реИред рд╣рдо рдЗрд╕реЗ рд╕реАрдзреЗ рдПрдирдЬреА 2 рдХреЗ рд▓рд┐рдП рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреА рдпреЛрдЬрдирд╛ рдмрдирд╛ рд░рд╣реЗ рд╣реИрдВред рджреЗрдЦреЗрдВ: https://github.com/kadirahq/storybook-ui

рдардВрдбрд╛ред рдЗрд╕рдХреЗ рд▓рд┐рдП рдЖрдЧреЗ рджреЗрдЦ рд░рд╣реЗ рд╣реИрдВ! :)

рдЕрд░реЗ, @arunoda , рддреЛ рдХреНрдпрд╛ рдЗрд╕ рдХреЗ рд▓рд┐рдП рджреГрд╖реНрдЯрд┐рдХреЛрдг рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП?
рдХреНрдпрд╛ рд╣рдо ng2 рд╡рд┐рд╢рд┐рд╖реНрдЯ рд╕реНрдЯреЛрд░реАрдмреБрдХ UI рдмрдирд╛рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ? рдЖрдк рдХреНрдпрд╛ рдкреНрд░рд╛рдкреНрдд рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ рдФрд░ рдХреНрдпрд╛ рдореИрдВ рдорджрдж рдХрд░ рд╕рдХрддрд╛ рд╣реВрдВ рдпрд╣ рджреЗрдЦрдиреЗ рдХреЗ рд▓рд┐рдП рдЙрдЪреНрдЪ рд╕реНрддрд░ рдХрд╛ рд╡рд░реНрдгрди рдкрд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдЙрддреНрд╕реБрдХ рд╣реВрдВ

рдЖрд░рд╕реА 5 рдХреА рд░рд┐рд▓реАрдЬ рдХреЗ рд╕рд╛рде рдХреЛрдгреАрдп 2 рдПрдкреАрдЖрдИ рд╕реНрдерд┐рд░ рд╣реЛ рдЧрдП рд╣реИрдВред рдЕрдм рдХреЛрдИ рднреА рдкрд░рд┐рд╡рд░реНрддрди рдирд╣реАрдВ рд╣реЛрдЧрд╛ред рддреЛ рдЗрд╕рдХрд╛ рд╡рд┐рдХрд╛рд╕ рд╢реБрд░реВ рдХрд░рдиреЗ рдХрд╛ рдЕрдЪреНрдЫрд╛ рд╕рдордп рд╣реИред cc: @arunoda @mnmtanish

@ рд╡рд░реБрдгрджрд╛ : рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рд░реЛрдбрдореИрдк рдкрд░ рдХрдо рд╣реИ, рд▓реЗрдХрд┐рди рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдХреЛрдгреАрдп рдорд╛рдорд▓реЗ рдореЗрдВ, рдЗрд╕ рд╡рд┐рднрд╛рдЬрди рдореЗрдВ рдпрд╣ рд╡рд┐рдЪрд╛рд░ рдПрдХ рд╕реИрджреНрдзрд╛рдВрддрд┐рдХ ng2-storybook storybook-ui рдХреА рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдХреЗ рд▓рд┐рдП рдкреНрд░реЗрд░рд┐рдд рд╣реЛрдЧрд╛ред рдЗрдВрдЯрд░рдлрд╝реЗрд╕ рддреЛ рдХреЛрдгреАрдп рдШрдЯрдХреЛрдВ рдПрдореНрдмреЗрдб? рдХреНрдпрд╛ рдРрд╕рд╛ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ?

@ tycho01 рдЖрдк рд╕рд╣реА рд╣реИрдВред рдпрд╣ рд╣рдорд╛рд░реА рдкреНрд░рд╛рдердорд┐рдХрддрд╛ рдкрд░ рдХрдо рд╣реИред
рдореБрдЭреЗ рдЙрдореНрдореАрдж рд╣реИ рдХрд┐ рд╣рдо рдЖрдзрд╛рд░ рдХреЗ рд░реВрдк рдореЗрдВ рд╕реНрдЯреЛрд░реАрдмреБрдХ-рдпреВрдЖрдИ рд╕реЗ рд╢реБрд░реВ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдЗрд╕рд▓рд┐рдП, рдЬреНрдпрд╛рджрд╛рддрд░ рдПрдбрди рдЗрд╕рдХрд╛ рдЗрд╕реНрддреЗрдорд╛рд▓ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред
рдореИрдВ рдЙрд╕ рдкрд░ рдХрд╛рдо рд╢реБрд░реВ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐рд╕реА рдХреА рдорджрдж рд▓реЗ рд░рд╣рд╛ рд╣реВрдВред рдпрджрд┐ рд╣рд╛рдВ, рддреЛ рдореБрдЭреЗ рд╣рдорд╛рд░реЗ рд╕реНрд▓реИрдХ рдкрд░ рдкрд┐рдВрдЧ рдХрд░реЗрдВред рдФрд░ рдмрд╛рдд рдХрд░рддреЗ рд╣реИрдВред

@ tycho01 , @arunoda рдЖрдк рд▓реЛрдЧ рдореБрдЭреЗ рдмрддрд╛рдПрдВ рдХрд┐ рдХреНрдпрд╛ рдЖрдк рдЗрд╕ рдкрд░ рдХрд╛рдо рдХрд░рдирд╛ рд╢реБрд░реВ рдХрд░рддреЗ рд╣реИрдВред

@alterx : рдкреЙрдЗрдВрдЯрд░реНрд╕ I рдорд┐рд▓рд╛: storybook-react storybook-ui рд╕реЗ рдЕрд▓рдЧ рд╣реИ (рдПрдХ iframe рдХреЗ рдЕрдВрджрд░ рдЪрд▓рддрд╛ рд╣реИ); рдЕрдЧрд▓рд╛ рдХрджрдо рдпрд╣ рджреЗрдЦрдирд╛ рд╣реИ рдХрд┐ рдХреНрдпрд╛ рдЗрд╕реЗ рдХреЛрдгреАрдп рд╕рдВрд╕реНрдХрд░рдг рд╕реЗ рдмрджрд▓рд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рдореЗрд░реЗ рдЖрдЦрд┐рд░реА рдкреНрд░рдпрд╛рд╕ рдХреЗ рдмрд╛рдж рд╕реЗ рд╢реБрд░реВ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЧрдпрд╛ред

рдЗрд╕реЗ рдЪреЗрдХрдЖрдЙрдЯ рдХрд░реЗрдВ - https://twitter.com/amcdnl/status/804776546246520832

@ tycho01 , рдореИрдВрдиреЗ рд╕реНрд░реЛрдд рдХреА рдЬрд╛рдВрдЪ рдХреА рдФрд░ рдЙрдирдХреЗ рдкрд╛рд╕ рдПрдХ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдЕрд▓рдЧ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдШрдЯрдХ рд╣реИ рдЬреЛ рдореВрд▓ рд░реВрдк рд╕реЗ рдПрдХ рдЧреМрд░рд╡рд╢рд╛рд▓реА iframe (https://github.com/storybooks/react-storybook/blob/master/src/client/manager/preview.js) рд╣реИред рд╣рдо рдЙрд╕ рдкреВрд░реНрд╡рд╛рд╡рд▓реЛрдХрди iframe рдореЗрдВ ng2 рдХрд╣рд╛рдирд┐рдпреЛрдВ рдХреЛ рд▓реЛрдб рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред

react-storybook рдореВрд▓ рд░реВрдк рд╕реЗ Provider storybook-ui рдкреНрд░рджрд╛рди рдХрд░рддрд╛ рд╣реИ, рдЙрдкрд░реЛрдХреНрдд Preview рдХрд░рддрд╛ рд╣реИ рдФрд░ рдХрд╣рд╛рдиреА рдХреЛ рд╕рдВрднрд╛рд▓рддрд╛ рд╣реИред рдлрд┐рд░, рдЗрд╕ рдкреНрд░рджрд╛рддрд╛ рдХрд╛ рдПрдХ рдирдпрд╛ рдЙрджрд╛рд╣рд░рдг renderStorybookUI

import renderStorybookUI from '@kadira/storybook-ui';
import Provider from './provider';

const rootEl = document.getElementById('root');
renderStorybookUI(rootEl, new Provider());

рдЗрд╕рдХреЗ рдмрд╛рдж, storybook-ui рдирд┐рдпрдВрддреНрд░рдг рдореЗрдВ рд╣реИ, рдпрд╣ рд╕рдВрджрд░реНрдн рдмрдирд╛рддрд╛ рд╣реИ (рдЬрд┐рд╕рдореЗрдВ рдкреНрд░рджрд╛рддрд╛ рднреА рд╢рд╛рдорд┐рд▓ рд╣реИ) рдФрд░ рдРрдк рдмрдирд╛рддрд╛ рд╣реИ (рдордВрддреНрд░-рдХреЛрд░ рдХреЗ createApp рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ)ред рдкреНрд░рджрд╛рддрд╛ (рдЕрдиреНрдп рд╕рдВрджрд░реНрдн рдкреНрд░реЙрдкреНрд╕ рдХреЗ рд╕рд╛рде) рдХреЛ рддрдм ui рдореЙрдбреНрдпреВрд▓ (https://github.com/storybooks/storybook-ui/blob/master/src/modules/ui/youtes.js рдкрд░ рдЗрдВрдЬреЗрдХреНрдЯ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ) ) рдЬреЛ renderPreview рдкрджреНрдзрддрд┐ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдкреВрд░реНрд╡рд╛рд╡рд▓реЛрдХрди рдмрдирд╛рддрд╛ рд╣реИ рдЬрдм рд╣рдордиреЗ рдЗрд╕реЗ react-storybook

@ рд░реБрдиреЛрджрд╛ , рдХреГрдкрдпрд╛ рдореБрдЭреЗ рдмрддрд╛рдПрдВ рдХрд┐ рдХреНрдпрд╛ рдореБрдЭреЗ рдХреБрдЫ рдпрд╛рдж рдЖ рд░рд╣рд╛ рд╣реИ

@amcdnl , рдЬреЛ рдЖрд╢рд╛рдЬрдирдХ рд▓рдЧ рд░рд╣рд╛ рд╣реИред рдХреНрдпрд╛ рдЖрдк рдореБрдЭреЗ рдмрддрд╛рдПрдВрдЧреЗ рдХрд┐ рдпрд╣ рдХреИрд╕реЗ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ? (рдХреБрдЫ рднреА рдирд╣реАрдВ рдлреИрдВрд╕реА, рд╕рд┐рд░реНрдл рдмрдбрд╝реА рддрд╕реНрд╡реАрд░)

@amcdnl : рд▓рд┐рдВрдХ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рдж, рдЗрд╕рдХреА рдЬрд╛рдБрдЪ рдХрд░реЗрдЧрд╛ред
рд╕рдВрдкрд╛рджрд┐рдд рдХрд░реЗрдВ: рдХреНрдпрд╛ рдЖрдкрдХреЗ рдкрд╛рд╕ рд╢рд╛рдпрдж рдЗрд╕рдХрд╛ рдХреЛрдИ рдбреЗрдореЛ рд╣реЛрдЧрд╛? рдореБрдЭреЗ рджреМрдбрд╝рдиреЗ рдХреЗ рд▓рд┐рдП рдХреБрдЫ рднреА рддреИрдпрд╛рд░ рдХрд░рдиреЗ рдореЗрдВ рдкрд░реЗрд╢рд╛рдиреА рд╣реЛ рд░рд╣реА рд╣реИред

@ рдорд╛рдИрдХреНрд░реЗрди 52 ^ ^

@alterx рд╣рд╛рдВред рдЖрдк 100% рд╕рд╣реА рд╣реИрдВред
рдХрд╣рд╛рдирд┐рдпреЛрдВ рдХреЛ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рд╣рдореЗрдВ рд░рд┐рдПрдХреНрдЯ рд╕реНрдЯреЛрд░реАрдмреБрдХ рдХреЗ рд╕рдорд╛рди рдПрдХ рдПрдкреАрдЖрдИ рдХреЛ рднреА рдЙрдЬрд╛рдЧрд░ рдХрд░рдирд╛ рд╣реЛрдЧрд╛ред

рд╕рдВрднрд╡ angular-storybook рдпрд╛ рд╕рдорд╛рди рд╕реЗ рдЖрдпрд╛рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ред

@arunoda рдХреНрдпрд╛ рдЖрдкрдХреЗ рдкрд╛рд╕ рдЙрд▓реНрд▓рд┐рдЦрд┐рдд рдХреЛрдгреАрдп-рд╕реНрдЯреЛрд░реАрдмреБрдХ рдХреЗ рд▓рд┐рдП рдПрдХ url рд╣реИ, Google рд╕реВрдЦрд╛ рдЖ рд░рд╣рд╛ рд╣реИред

@bcowgill afaik рдпрд╣ рдЕрднреА рддрдХ рдореМрдЬреВрдж рдирд╣реАрдВ рд╣реИ, рдПрдХ рддрд░рдл @amcdnl рдХреЗ рдКрдкрд░ рдЙрд▓реНрд▓рд┐рдЦрд┐рдд рд╣реИ

рдЕрдм рдпрд╣ рднреА рд╣реИ - http://www.angularplayground.it/

рдЕрдм рдпрд╣ рд░реЛрдбрдореИрдк рдкрд░ рд╣реИ:
https://github.com/storybooks/storybook/blob/master/ROADMAP.md#angular

рддреЛ рдЬрд▓реНрдж рд╣реА So рдХреЗ рд▓рд┐рдП рд╕реНрдЯреЛрд░реАрдмреБрдХ рдЬрд╛рд░реА рд╣реЛрдиреЗ рд╡рд╛рд▓реА рд╣реИ

рдпрд╣ рдПрдХ рдмрд╣реБрдд рдЕрдЪреНрдЫрд╛ рдЙрджрд╛рд╣рд░рдг рдЬреЛрдбрд╝рддрд╛ рд╣реИ рдХрд┐ NG2 рдХреЗ рд▓рд┐рдП рдПрдХ рд╕рдВрд╕реНрдХрд░рдг рдХреИрд╕реЗ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред
рдХреНрдпрд╛ рдХреЛрдИ рдмрд╣рд╛рджреБрд░ рдЖрддреНрдорд╛ рдЗрд╕ рдзрд╛рдЧреЗ рдХреЛ рджреЗрдЦ рд░рд╣реА рд╣реИ рдЬреЛ рдПрдХ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рдФрд░ рдРрд╕рд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рддреИрдпрд╛рд░ рд╣реЛрдЧреА?

рдореИрдВ рджреЗрдЦ рд╕рдХрддрд╛ рдерд╛, рдХреНрдпрд╛ рдЖрдкрдХреЗ рдкрд╛рд╕ рд░реЗрдкреЛ url рд╣реИ, @ndelangen ?

рдЖрдк рдЗрд╕реЗ рджреЗрдЦ рд░рд╣реЗ рд╣реИрдВ ЁЯШД

рд╕реНрдЯреЛрд░реАрдмреБрдХ рдПрдХ рдореЛрдиреЛрд░реЗрдкреЛ рд╣реИ, рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдпрд╣рд╛рдВ рдкреИрдХреЗрдЬ рд╣реИрдВ, рдЕрд▓рдЧ рд╕реЗ рдПрдирдкреАрдПрдо рдХреЗ рд▓рд┐рдП рдкреНрд░рдХрд╛рд╢рд┐рдд рдХрд┐рдП рдЧрдП рд╣реИрдВред

рд╡рд░реНрддрдорд╛рди рдореЗрдВ vue рдРрдк рдЕрднреА рддрдХ рдорд╛рд╕реНрдЯрд░ рдореЗрдВ рдирд╣реАрдВ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдпрд╣рд╛рдВ рдЬрд╛рдиреЗ рдХреЗ рд▓рд┐рдП 3 рд▓рд┐рдВрдХ рджрд┐рдП рдЧрдП рд╣реИрдВ:
https://github.com/storybooks/storybook/tree/release/3.2/app/vue
https://github.com/storybooks/storybook/blob/release/3.2/app/vue/src/client/preview/render.js
https://github.com/storybooks/storybook/blob/release/3.2/app/vue/src/server/config/webpack.config.js#L40

рд░реЗрдВрдбрд░.рдЬреЗрдПрд╕ рд╡рд╣ рдЬрдЧрд╣ рд╣реИ рдЬрд╣рд╛рдБ рдЕрдзрд┐рдХрд╛рдВрд╢ рд╡рд┐рд╢рд┐рд╖реНрдЯ рдХреЛрдб рд╣реИ рдФрд░ рд╕рд░реНрд╡рд░ рднрд╛рдЧ рдкрд░ рдПрдХ рд╡реЗрдмрдкреИрдХ рдХреЙрдиреНрдлрд┐рдЧ рд╣реИ рдЬреЛ рдЕрд▓рдЧ рд╣реИред

рдкрд╣рд▓реА рдмрд╛рд░ рдореЗрдВ рдмрд╣реБрдд рд╕рд╛рд░реЗ рдХреЛрдб рдбреБрдкреНрд▓рд┐рдХреЗрдЯ рдХрд░рдирд╛ рдареАрдХ рд╣реИ! рд╣рдо рдмрд╛рдж рдореЗрдВ рд╕рдВрдмреЛрдзрд┐рдд рдХрд░реЗрдВрдЧреЗред рд╣рдо рдкрд╛рддреЗ рд╣реИрдВ рдХрд┐ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдХреНрдпрд╛ рдЖрдо рд╣реИ рдФрд░ рдХреНрдпрд╛ рдирд╣реАрдВ рд╣реИред

рдмрд╕ рд╢реБрд░реВ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдореИрдВ рдХрд╣реВрдВрдЧрд╛

  1. рдПрдкреНрд▓рд┐рдХреЗрд╢рди / рдХреЛрдгреАрдп / (рд╣рдо angular2 рдФрд░ рд╕рд╣реА рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмрд╛рдд рдХрд░ рд░рд╣реЗ рд╣реИрдВ?
  2. рд╡реЗрдмрдкреИрдХ рдХреЙрдиреНрдлрд┐рдЧрд░реЗрд╢рди рдХреЛ рдЯреНрд╡реАрдХ рдХрд░реЗрдВ, рдЗрд╕рд▓рд┐рдП рдпрд╣ рдХреБрдЫ рдХреЛрдгреАрдп рд╕рд╛рдорд╛рдиреЛрдВ рдХреЛ рд▓реЛрдб рдХрд░рддрд╛ рд╣реИ рдФрд░ рд╕рдВрдХрд▓рд┐рдд рдХрд░рддрд╛ рд╣реИред
  3. рдЬрдм рддрдХ рдХреБрдЫ рджрд┐рдЦрд╛рдИ рдирд╣реАрдВ рджреЗрддрд╛, рддрдм рддрдХ рд░реЗрдВрдбрд░ рдХрд░реЗрдВред рддрдм рддрдХ, рдЬрдм рдЖрдк рдЕрдкреЗрдХреНрд╖рд┐рдд рдШрдЯрдХ рдкрд╕рдВрдж рдХрд░рддреЗ рд╣реИрдВ
  4. рдХреБрдЫ рдирд╢реЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░реЛ
  5. рдмрдЧ рдХрд╛ рд╕рдорд╛рдзрд╛рди рдХрд░реЗрдВ
  6. рдЕрдм рдЬреЛ рд╕рдВрднрд╡ рд╣реИ, рдХреЛрд╢рд┐рд╢ рдХрд░реЛ
  7. рдкреНрд░рд▓реЗрдЦрди рд▓рд┐рдЦреЗрдВ, рд╕реВрдЪреА рдЬреЛрдбрд╝реЗрдВ рдХрд┐ рдХреНрдпрд╛ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ
  8. рдбреНрд░рд╛рдлреНрдЯ рдмреНрд▓реЙрдЧрдкреЛрд╕реНрдЯ (рдореИрдВ рдЗрд╕реЗ рдХрд░ рд╕рдХрддрд╛ рд╣реВрдВ, рдпрд╛ рд╣рдорд╛рд░реЗ рдорд╛рдзреНрдпрдо рдкреНрд░рдХрд╛рд╢рди рдореЗрдВ рдЕрдкрдирд╛ рдЦрд╛рддрд╛ рдЬреЛрдбрд╝ рд╕рдХрддрд╛ рд╣реВрдВ)
  9. рдпреЛрдЬрдирд╛ рдЬрд╛рд░реА
  10. рдЕрд▓реНрдлрд╝рд╛ рд░рд┐рд▓реАрдЬрд╝ рдХрд░реЛ
  11. рдмрдЧ рдХрд╛ рд╕рдорд╛рдзрд╛рди рдХрд░реЗрдВ
  12. рд╡рд╛рд╕реНрддрд╡рд┐рдХ рд░рд┐рд▓реАрдЬрд╝, рдмреНрд▓реЙрдЧрдкреЛрд╕реНрдЯ рдкреНрд░рдХрд╛рд╢рд┐рдд рдХрд░реЗрдВ, рдЯреНрд╡реАрдЯ рдХреА рдШреЛрд╖рдгрд╛
  13. рдЕрдзрд┐рдХ рдмрдЧреНрд╕ рдХреЛ рдареАрдХ рдХрд░реЗрдВ
  14. рдФрд░ рдЕрдзрд┐рдХ addons рдХреЗ рд▓рд┐рдП рд╕рдорд░реНрдерди рдЬреЛрдбрд╝рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░реЗрдВ

@ рд╢реАрд▓рдореИрди рд╣рдорд╛рд░реА рд░рд┐рд▓реАрдЬрд╝ рдорд╛рд╕реНрдЯрд░ рд╢реЗрдл рд╣реИ

рдЖрдк рдереЛрдбрд╛ рддреЗрдЬрд╝ рдЪреИрдЯ рдЕрдиреБрднрд╡ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕реБрд╕реНрдд рдкрд░ рд╣рдорд╕реЗ рдЬреБрдбрд╝ рд╕рдХрддреЗ рд╣реИрдВ, рдлрд┐рд░ рдЬреАрдердм sl

https://storybooks-slackin.herokuapp.com

рдмрд┐рд▓реНрдХреБрд▓ рд╕рд╣реА, @ndelangen!
рдореИрдВ рдХреЛрдб рджреЗрдЦреВрдВрдЧрд╛ рдФрд░ рд╕реНрд▓реИрдХ рдЪреИрдирд▓ рдореЗрдВ рд╢рд╛рдорд┐рд▓ рд╣реЛрдКрдВрдЧрд╛: D

@alterx рдХреНрдпрд╛ рдЕрдм рдЖрдк рдЗрд╕ рдкрд░ рдХрд╛рдо рдХрд░ рд░рд╣реЗ рд╣реИрдВ? рдЕрдм рдореИрдВ vue.js рд╕рдВрд╕реНрдХрд░рдг рдХрд╛ рдХреНрд▓реЛрдирд┐рдВрдЧ рдХрд░ рд░рд╣рд╛ рд╣реВрдВ

@ рдЬреЙрд░реНрдбрди-рд╣реЙрд▓, рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдПрдХ рдкреАрдЖрд░ рдореЗрдВ рдПрдХ рдмреБрдирд┐рдпрд╛рджреА рдРрдк рдХрд╛рдо рдХрд░ рд░рд╣рд╛ рд╣реИред
рдХреГрдкрдпрд╛ # 1474 рджреЗрдЦреЗрдВ
рдореИрдВ рд╡рд░реНрддрдорд╛рди рдореЗрдВ рдРрдб-рдСрди рджреЗрдЦ рд░рд╣рд╛ рд╣реВрдВ рдХрд┐ рдХреМрди рд╕реЗ рдмреЙрдХреНрд╕ рд╕реЗ рдмрд╛рд╣рд░ рдХрд╛рдо рдХрд░рдирд╛ рд╣реИред рдХреНрдпрд╛ рдЖрдк рд╕реБрд╕реНрдд рдЪреИрдирд▓ рд╕реЗ рдЬреБрдбрд╝рдиреЗ рдХрд╛ рдорди рдХрд░реЗрдВрдЧреЗ рддрд╛рдХрд┐ рд╣рдо рд╕рдордиреНрд╡рдп рдХрд░ рд╕рдХреЗрдВ?

@alterx рдЬрд╝рд░реВрд░ред рдЪреИрдирд▓ https://storybooks-slackin.herokuapp.com рдиреАрдЪреЗ рдХреНрдпрд╛ рдкреНрд░рддреАрдд рд╣реЛрддрд╛ рд╣реИ?

рд╡реВрдкреНрд╕, рдХрд┐ рдпрд╣ рдорд╛рдирд╛ рдЬрд╛рддрд╛ рд╣реИ to
рд╢рд╛рдпрдж @ndelangen рдЗрд╕рдореЗрдВ рдорджрдж рдХрд░ рд╕рдХрддрд╛ рд╣реИред
рдХреБрдЫ рд╕рдордп рдХреЗ рд▓рд┐рдП, рдореЗрд░рд╛ рдкреАрдЖрд░ рдмреБрдирд┐рдпрд╛рджреА рдХрд╛рдо (рдПрдХ рдШрдЯрдХ рдкреНрд░рджрд╛рди рдХрд░рдирд╛, рдЗрдирдкреБрдЯ рднреЗрдЬрдирд╛) рдХреЛ рдХрд╡рд░ рдХрд░рддрд╛ рд╣реИред рдпрд╣ рдЙрди рдЪреАрдЬрд╝реЛрдВ рд╕реЗ рдереЛрдбрд╝рд╛ рдЕрд▓рдЧ рд╣реИ рдЬреЛ рджреВрд╕рд░реЛрдВ рдиреЗ vue рдФрд░ react рд▓реЗрдХрд┐рди angular рд╕рд╛рдорд╛рди рдХрд░рдиреЗ рдХреЗ рддрд░реАрдХреЗ ( NgModules ) рдХреЛ рдХреБрдЫ рдкрд░рд┐рд╡рд░реНрддрдиреЛрдВ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдереАред

рд╣рдо 3.3 рд░рд┐рд▓реАрдЬ рдХреЗ рднрд╛рдЧ рдХреЗ рд░реВрдк рдореЗрдВ рдХреЛрдгреАрдп (2+) рд╕рдорд░реНрдерди рдХреЛ рд╢рд╛рдорд┐рд▓ рдХрд░рдиреЗ рдХрд╛ рд▓рдХреНрд╖реНрдп рдмрдирд╛ рд░рд╣реЗ рд╣реИрдВред

рд╣рд╛рдБ heroku рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреЛ рдмрдВрдж рдХрд░рдиреЗ рдХрд╛ рдлреИрд╕рд▓рд╛ рдХрд┐рдпрд╛ рд╣реИ, рддреЛ рдореИрдВ рд╕рд┐рд░реНрдл рдЕрдм рдХреЗ рд▓рд┐рдП рддреИрдирд╛рдд рд╣реИред
https://now-examples-slackin-nqnzoygycp.now.sh/

┬п\_(уГД)_/┬п

рдореБрдЭреЗ рдирд╣реАрдВ рд▓рдЧрддрд╛ рдХрд┐ рд▓реЛрдЧ рдЗрд╕ рддрд░рд╣ рдХреЗ рдкреНрд░реЛрдЬреЗрдХреНрдЯреНрд╕ рдХреЗ рд▓рд┐рдП рд╕рд┐рд░реНрдл рдЬреАрдбреАрдЖрд░ рдХрд╛ рдЗрд╕реНрддреЗрдорд╛рд▓ рдХреНрдпреЛрдВ рди рдХрд░реЗрдВ

рд╣реЗ рд▓реЛрдЧ рд╕рд┐рд░реНрдл рдпрд╣ рджреЗрдЦрдирд╛ рдЪрд╛рд╣рддреЗ рдереЗ рдХрд┐ рдХреНрдпрд╛ рдХреЛрдИ рдЕрднреА рднреА рд╕рдХреНрд░рд┐рдп рд░реВрдк рд╕реЗ рдЗрд╕ рдкрд░ рдХрд╛рдо рдХрд░ рд░рд╣рд╛ рд╣реИ?

рд╣рд╛рдВ, рдХрд╛рдо рдкреНрд░рдЧрддрд┐ рдкрд░ рд╣реИ:
https://github.com/storybooks/storybook/pull/1474

рд╣рд╛рдБ, рдореБрдЭреЗ рдЕрдкрдиреЗ рдХрдВрдкреНрдпреВрдЯрд░ рдореЗрдВ рдХреБрдЫ рдкрд░рд┐рд╡рд░реНрддрди рдкреНрд░рд╕реНрддреБрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЖрдЬ рдХреБрдЫ рд╕рдордп рдЦреЛрдЬрдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред рд╢рд╛рдпрдж рд▓рдВрдЪ lunch рдХреЗ рджреМрд░рд╛рди рдХрд░реЗрдВрдЧреЗ

рдорд░реНрдЬ рдкрд░ рдмрдзрд╛рдИ!
рдХреНрдпрд╛ рдореИрдВ npm i -g @storybook/[email protected] рд╕рдХреНрд╖рдо рд╣реВрдВ рдФрд░ рдЗрд╕реЗ рдЖрдЬрд╝рдорд╛рдКрдВрдЧрд╛ рдпрд╛ рдПрдХ рдФрд░ рдореИрдиреБрдЕрд▓ рд╕реЗрдЯрдЕрдк рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ рдЬреЛ рдПрдХ рдирд╛рдЯрдХ рд╣реИ?

рдЗрд╕ рдкрд░реАрдХреНрд╖рдг рдореЗрдВ рдорджрдж рдХрд░рдирд╛ рдФрд░ contribute рдпреЛрдЧрджрд╛рди рджреЗрдирд╛ рдкрд╕рдВрдж рдХрд░реЗрдВрдЧреЗ

@shilman @alterx рдореИрдВ рдЗрд╕ рдзрд╛рд░рдгрд╛ рдХреЗ рддрд╣рдд рдерд╛ рдХрд┐ рдХреЛрдгреАрдп рдРрдк рдХреЗ рд╕рд╛рде рдПрдХ рдЕрд▓реНрдлрд╛ рд░рд┐рд▓реАрдЬрд╝ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛?
рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЕрднреА рддрдХ рдорд╛рдорд▓рд╛ рдирд╣реАрдВ рд╣реИ?

рд╣рдо рдХрд┐рддрдиреА рдЬрд▓реНрджреА 1 рдХрд░ рд╕рдХрддреЗ рдереЗ? @tomatosource рдпрд╣рд╛рдВ рд╣рдорд╛рд░реЗ рд▓рд┐рдП рдХреБрдЫ рдкрд░реАрдХреНрд╖рдг рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рддреИрдпрд╛рд░ рд╣реИ

@ рд╢рд┐рд▓рдореИрди рдиреЗ рдЙрд▓реНрд▓реЗрдЦ рдХрд┐рдпрд╛ рдХрд┐ рд╡рд╣ рдЗрд╕реЗ "рдЕрдЧрд▓реЗ рдХреБрдЫ рджрд┐рдиреЛрдВ рдореЗрдВ" рдХреЛрдгреАрдп рд╕реБрд╕реНрдд рдЪреИрдирд▓ рдореЗрдВ рд░рд┐рд▓реАрдЬрд╝ рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ, рдЗрд╕рд▓рд┐рдП рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЗрд╕реЗ рдЕрднреА рдЬрд╛рд░реА рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ :)

рдХреЛрдИ рд╕реБрдзрд╛рд░? :-)

рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рд╣рд╛рдВ =) https://github.com/storybooks/storybook/releases/tag/v3.3.0-alph.3

@Hypnosphi рдЖрдк рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ

@ARonksaunders рдХреНрдпрд╛ рдЖрдкрдХреЗ рдкрд╛рд╕ рдХреЛрдИ рдРрд╕рд╛ рд░реЗрдкреЛ рд╣реИ рдЬреЛ рдЖрдк рд╣рдорд╛рд░реЗ рд╕рд╛рде рд╕рд╛рдЭрд╛ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рддрд╛рдХрд┐ рд╕реАрдПрд▓рдЖрдИ рдХреЛ рдбрд┐рдмрдЧ рдХрд░рдиреЗ рдореЗрдВ рд╣рдорд╛рд░реА рдорджрдж рдХрд░ рд╕рдХреЗрдВ? рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛ рдЕрдЧрд░ рдЖрдк рдЗрд╕реЗ рд╣рд╛рде рд╕реЗ рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ, рддреЛ рдпрд╣рд╛рдВ рдПрдХ рдЙрджрд╛рд╣рд░рдг рдРрдк рд╣реИ, рдЬрд┐рд╕рдореЗрдВ рдПрдХ рдкреВрд░реНрдг рд╕реЗрдЯрдЕрдк рд╣реИ: https://github.com/storybooks/storybook/tree/release/3.3/examples/angular-cli

@alterx @tomatosource рдЬрд╛рд░реА рдХрд░рдиреЗ рдореЗрдВ рджреЗрд░реА рдХреЗ рд▓рд┐рдП рдХреНрд╖рдорд╛ рдХрд░реЗрдВ - рдпрд╣ рдЕрднреА рдмрд╛рд╣рд░ рд╣реИ рдФрд░ рдЖрдкрдХреА рд╕рд╣рд╛рдпрддрд╛ рдкрд░реАрдХреНрд╖рдг рдХреЛ рдкрд╕рдВрдж рдХрд░реЗрдЧрд╛!

рдХреЛрдгреАрдп рдХреЗ рдХрд┐рд╕ рд╕рдВрд╕реНрдХрд░рдг рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рддрд╛ рд╣реИ?

@ToniaDemchuk рд╕рдВрдмрдВрдзрд┐рдд:
https://github.com/storybooks/storybook/pull/1474#issuecomment -329659825
https://github.com/storybooks/storybook/pull/1474#issuecomment -335527228

@Insayt @ LTiger14 @MTariqAziz @MathieuFouillet @Quramy @RemiAWE @VadimDez @aitboudad @bermanboris @cheapsteak @ рдИрд╕рд╛рдИ-bromann @diagramatics @dlcardozo @ Elad-morphisec @jbueza @johannesjo @jshthornton @ justinlee0777 @mixn @ npatta01 @qrrock @realappie @ruedap @ рдЫреЛрдЯреЗ-рдирд░реНрддрдХ @ tycho01 @ priley86

Angular2 + рд╕рдорд░реНрдерди рдЕрд▓реНрдлрд╛ рдореЗрдВ рд╣реИ ( 3.3.0-alpha.4 рд╕рдЯреАрдХ рд╣реЛрдирд╛) рдЗрд╕реЗ рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП @alterx рдХреЗ рдПрдХ

рдпрд╣рд╛рдВ рдмрддрд╛рдпрд╛ рдЧрдпрд╛ рд╣реИ рдХрд┐ рдмрд╕ рдПрдХ рдорд┐рдирдЯ рдореЗрдВ рдХреИрд╕реЗ рд╢реБрд░реВ рдХрд┐рдпрд╛ рдЬрд╛рдП:

cd my-angular-project
yarn add @storybook/cli<strong i="33">@alpha</strong>
yarn getstorybook
yarn storybook
open http://localhost:6006

рдпрд╣рд╛рдБ рд╣рдорд╛рд░реЗ рд░реЗрдкреЛ рд╕реЗ examples/angular-cli рд╕реНрдЯреЛрд░реАрдмреБрдХ рдХреА рддрд░рд╣ рджрд┐рдЦрддрд╛ рд╣реИ, рдФрд░ рдЖрдкрдХреЛ рдЕрдкрдиреЗ рд╕рдВрд╕реНрдХрд░рдг рдореЗрдВ рдПрдХ рдкрдЯреНрдЯреА рд╡рд╛рд▓рд╛ рд╕рдВрд╕реНрдХрд░рдг рджреЗрдЦрдирд╛ рдЪрд╛рд╣рд┐рдП:

storybook

рдХреГрдкрдпрд╛ рдЗрд╕реЗ рд╕реНрдкрд┐рди рджреЗрдВ рдФрд░ рдпрджрд┐ рдХреЛрдИ рд╕рдорд╕реНрдпрд╛ рд╣реЛ рддреЛ рд╣рдореЗрдВ рдпрд╣рд╛рдВ рдмрддрд╛рдПрдВред рд░рд┐рдпрд▓ рдЯрд╛рдЗрдо рдорджрдж рдХреЗ рд▓рд┐рдП рдЖрдк рд╣рдореЗрдВ

рдЖрдкрдХреА рдорджрдж рдХреЗ рд▓рд┐рдП рдмрд╣реБрдд рдзрдиреНрдпрд╡рд╛рдж!

@ рд╢рд┐рд▓реНрдореИрди yarn getstorybook рдЪрд▓ рд░рд╣рд╛ рд╣реИ, рдирд┐рдореНрди рддреНрд░реБрдЯрд┐ рдлреЗрдВрдХ:

(function (exports, require, module, __filename, __dirname) { import updateNotifier from 'update-notifier';
                                                              ^^^^^^
SyntaxError: Unexpected token import
    at createScript (vm.js:80:10)
    at Object.runInThisContext (vm.js:139:10)

рдлрд╝рд╛рдЗрд▓ node_modules/@storybook/cli/bin/index.js:1 рдмрджрд▓рдиреЗ рд╕реЗ рд╕рдорд╕реНрдпрд╛ рд╣рд▓ рд╣реЛ рдЬрд╛рдПрдЧреА:

require("babel-register")({
  ignore: /node_modules\/(?!@storybook)/
});

рдЕрдЬреАрдм, рд╣рдо рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ cli@alpha рдореЗрдВ babel-register рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВ

@aitboudad рдЖрдк рдХрд┐рд╕ рдиреЛрдб рд╕рдВрд╕реНрдХрд░рдг рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВ?

рдЖрдк рдХрд┐рд╕ рдиреЛрдб рд╕рдВрд╕реНрдХрд░рдг рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВ?

v8.9.0, рдпрд╣ рдиреЛрдб рд╕рдВрд╕реНрдХрд░рдг рд╕реЗ рд╕рдВрдмрдВрдзрд┐рдд рдирд╣реАрдВ рд╣реИ, рд▓реЗрдХрд┐рди рдпрд╣ рдмрд╛рдмреЗрд▓ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╣реИ рдЬреЛ node_modules рдореЗрдВ рд╕реНрдерд┐рдд рд╕рднреА рдлрд╛рдЗрд▓реЛрдВ рдХреЛ рдЯреНрд░рд╛рдВрд╕рдкреНрд▓рд╛рдВрдЯ рдХрд░рдиреЗ рдХреА рдЙрдкреЗрдХреНрд╖рд╛ рдХрд░рддрд╛ рд╣реИред

@ рд╢реАрд▓рдорд╛рди рдХреЛ рдЬреЛ рджреВрд╕рд░рд╛ рдореБрджреНрджрд╛ рдорд┐рд▓рд╛ рд╣реИ, рд╡рд╣ рд╣реИ

odule build failed: Error: Typescript emitted no output for node_modules/@storybook/angular/dist/client/preview/angular/app.token.ts.

/node_modules/@storybook/angular/dist/server/config/webpack.config.js рдореЗрдВ рдЯреНрд░рд╛рдВрд╕рдкрд╛рдЗрд▓рдСрдирд▓реА рдХреЛ рд╕рд╣реА рдкрд░ рд╕реЗрдЯ рдХрд░рдХреЗ рд╣рд▓ рдХрд┐рдпрд╛ рдЧрдпрд╛

{
  test: /\.ts?$/,
  use: [
    {
      loader: 'ts-loader',
      options: {
        transpileOnly: true
      }
    },
    { loader: 'angular2-template-loader' }
  ]
}

рдЧреБрдо рд╕реБрд╡рд┐рдзрд╛:

рдПрдХ рдХрд╕реНрдЯрдо NgModule :
рдЕрднреА рдПрдХ рдХрд╕реНрдЯрдо NgModule рдкрд╛рд╕ рдХрд░рдиреЗ рдХрд╛ рдХреЛрдИ рддрд░реАрдХрд╛ рдирд╣реАрдВ рд╣реИ рдЬреЛ рд╡рд░реНрддрдорд╛рди рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдХреЛ рдмрд╣реБрдд рд╕реАрдорд┐рдд рдХрд░ рджреЗрддрд╛ рд╣реИред

рдпрд╣ рдмрд╛рдмреЗрд▓ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╣реИ рдЬреЛ node_modules рдореЗрдВ рд╕реНрдерд┐рдд рд╕рднреА рдлрд╛рдЗрд▓реЛрдВ рдХреЗ рдЯреНрд░рд╛рдВрд╕рдкреНрд▓рд╛рдиреНрдЯрд┐рдВрдЧ рдХреЛ рдЕрдирджреЗрдЦрд╛ рдХрд░рддрд╛ рд╣реИ

рдУрд╣ рдореИрдВ рджреЗрдЦрддрд╛ рд╣реВрдБ, рдареАрдХ рдХрд░ рджреВрдБрдЧрд╛ред рдореБрдЭреЗ рдЖрд╢реНрдЪрд░реНрдп рд╣реИ рдХрд┐ рдпрд╣ рдкрд╣рд▓реЗ рдХреИрд╕реЗ рдХрд╛рдо рдХрд░рддрд╛ рдерд╛

@aitboudad рдЗрд╕ рдбрд┐рдмрдЧрд┐рдВрдЧ рдХреЗ рд▓рд┐рдП рдмрд╣реБрдд рдмрд╣реБрдд рдзрдиреНрдпрд╡рд╛рдж! @Hypnosphi рдиреЗ CLI рдореБрджреНрджрд╛ рддрдп рдХрд┐рдпрд╛ рдФрд░ рдореИрдВрдиреЗ рдЗрд╕реЗ рдЬрд╛рд░реА рдХрд┐рдпрд╛ред рдХреЛрдгреАрдп рд╕реБрдзрд╛рд░реЛрдВ рдХреЛ рдЬрд▓реНрдж рдирд┐рдХрд╛рд▓рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░реЗрдВрдЧреЗ!

https://github.com/storybooks/storybook/releases/tag/v3.3.0-alpha.4

@aitboudad , рд╣рдо рдЙрд╕ рдЧреБрдо рд╕реБрд╡рд┐рдзрд╛ рд╕реЗ рдЕрд╡рдЧрдд рд╣реИрдВ рдФрд░ рд╣рдо рдЗрд╕рдХреЗ рд▓рд┐рдП рдкреНрд░рдпрд╛рд╕ рдХрд░ рд░рд╣реЗ рд╣реИрдВред рдХрд╕реНрдЯрдо NgModules рдХреЗ рд╕рд╛рде рдореБрджреНрджрд╛ рдпрд╣ рд╣реИ рдХрд┐, рд╣рдорд╛рд░реЗ рд╡рд░реНрддрдорд╛рди рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдХреЗ рд╕рд╛рде, рд╣рдо рдЕрдкрдиреЗ рдореЙрдбреНрдпреВрд▓ рдХреЛ рдкреНрд░реЛрдЧреНрд░рд╛рдореЗрдЯрд┐рдХ рд░реВрдк рд╕реЗ рдмрдирд╛рддреЗ рд╣реИрдВ рдФрд░ рдЙрдиреНрд╣реЗрдВ рдкреНрд░рджрд╛рди рдХрд░рддреЗ рд╣реИрдВред рдкрд╛рд╕рд┐рдВрдЧ рдкреНрд░реЛрд╡рд╛рдЗрдбрд░ рдФрд░ рд╕реНрдХреАрдорд╛ рдХреЛ рдЕрдиреБрдорддрд┐ рджреЗрдиреЗ рдХреЗ рд▓рд┐рдП рдореЗрд░реЗ рд╕реНрдерд╛рдиреАрдп рдореЗрдВ рдХреБрдЫ рдмрджрд▓рд╛рд╡ рд╣реИрдВ рд▓реЗрдХрд┐рди рдЕрднреА рд╣рдо рдХрд╕реНрдЯрдо рдореЙрдбреНрдпреВрд▓ рдХреЛ рдкрд╛рд░рд┐рдд рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рдирд╣реАрдВ рджреЗ рд╕рдХрддреЗ рдХреНрдпреЛрдВрдХрд┐ рдПрдХ рдореЙрдбреНрдпреВрд▓ рд╕рдВрднрд╛рд╡рд┐рдд рд░реВрдк рд╕реЗ рдХрдИ рдШрдЯрдХреЛрдВ рдХреЛ рджреЗ рд╕рдХрддрд╛ рд╣реИред

рдЖрдкрдХрд╛ рд╕рдЯреАрдХ рдЙрдкрдпреЛрдЧ рдорд╛рдорд▓рд╛ рдХреНрдпрд╛ рд╣реИ? рд╢рд╛рдпрдж рд╣рдо рдХреБрдЫ рд╕рдордЭ рд╕рдХрддреЗ рд╣реИрдВред

рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдХреЗрд╡рд▓ рдЯреНрд░рд╛рдВрд╕рдкрд╛рдЗрд▓ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдЖрдкрдХреЛ рдмрд┐рдирд╛ рдЬрд╛рдБрдЪ рдХреЗ рдЫреЛрдбрд╝ рджреЗрдЧрд╛ред рд╣рдореЗрдВ рдпрд╣ рдмрджрд▓рд╛рд╡ рдХрд░рдиреЗ рд╕реЗ рдкрд╣рд▓реЗ рдЗрд╕ рдкрд░ рдЧреМрд░ рдХрд░рдиреЗ рдХреА рдЬрд░реВрд░рдд рд╣реИред

@alterx рдЖрдкрдХрд╛ рд╕рдЯреАрдХ рдЙрдкрдпреЛрдЧ рдорд╛рдорд▓рд╛ рдХреНрдпрд╛ рд╣реИ?

рдХреНрдпрд╛ рд╣реЛрдЧрд╛ рдпрджрд┐ рдореЗрд░реЗ рдШрдЯрдХ рдХреЛ рд╕рд╛рдордЧреНрд░реА рдЬреИрд╕реЗ рдХреБрдЫ рдмрд╛рд╣рд░реА рдореЙрдбреНрдпреВрд▓ рдпрд╛ рдХрд╛рдо рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ, рд╣рдо рдЗрд╕реЗ рд╡рд░реНрддрдорд╛рди рджреГрд╖реНрдЯрд┐рдХреЛрдг рдХреЗ рд╕рд╛рде рдХреИрд╕реЗ рд╕рдВрднрд╛рд▓ рд╕рдХрддреЗ рд╣реИрдВ?

рдЙрд╕ рд╕реНрдерд┐рддрд┐ рдореЗрдВ рдпрд╣ рдкреНрд░рджрд╛рддрд╛рдУрдВ, рдЖрдпрд╛рддреЛрдВ рдФрд░ рд╕реНрдХреАрдорд╛рдУрдВ (рдпрджрд┐ рдЖрдкрдХреЛ рдЬрд░реВрд░рдд рд╣реИ, рдЖрдИрдбреА, рдХрд╕реНрдЯрдо рддрддреНрд╡) рдХреЗ рд╕рд╛рде рдкрд░реНрдпрд╛рдкреНрдд рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред рдХрд╕реНрдЯрдо рдореЙрдбреНрдпреВрд▓ рдХреЛ рджреЗрдиреЗ рдХреЗ рд╕рд╛рде рд╕рдорд╕реНрдпрд╛ рдпрд╣ рд╣реИ рдХрд┐ рд╣рдо рдЙрди рдШрдЯрдХреЛрдВ рдХреА рдорд╛рддреНрд░рд╛ рдХреЛ рдирд┐рдпрдВрддреНрд░рд┐рдд рдирд╣реАрдВ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдЬреЛ рдПрдХ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рд╕рдмрдорд┐рдЯ рдХрд░ рд╕рдХрддрд╛ рд╣реИ рдФрд░ рдпрд╣ рд╕рдВрднрд╛рд╡рд┐рдд рд░реВрдк рд╕реЗ рдЯреВрдЯ рд╕рдХрддрд╛ рд╣реИред рд╕реНрдЯреЛрд░реАрдмреБрдХ рдкреГрдердХ рдЗрдХрд╛рдЗрдпреЛрдВ рдХреЗ рд░реВрдк рдореЗрдВ рд╡рд┐рдХрд╛рд╕рд╢реАрд▓ рдФрд░ рдкрд░реАрдХреНрд╖рдг рдШрдЯрдХ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╣реИред рдпрд╣ рд░рд┐рдПрдХреНрдЯ рдФрд░ рд╡реАрдпреВ рдореЗрдВ рдереЛрдбрд╝рд╛ рдЕрд▓рдЧ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ рд▓реЗрдХрд┐рди рдХреЛрдгреАрдп рдХреЗ рд▓рд┐рдП рд╣рдореЗрдВ рдХреБрдЫ рдзрд╛рд░рдгрд╛рдПрдВ рдмрдирд╛рдиреЗ рдФрд░ рджрд╛рдпрд░реЗ рдХреЛ рд╕реАрдорд┐рдд рдХрд░рдиреЗ рдХреА рдЬрд░реВрд░рдд рд╣реИред

рдореИрдВ рдХреБрдЫ рдРрд╕реЗ рдХрд╛рдо рдХрд░ рд░рд╣рд╛ рд╣реВрдВ рдЬреЛ рдЖрдкрдХреЛ рдЖрдпрд╛рдд рдФрд░ рдШреЛрд╖рдгрд╛рдУрдВ рдХреЗ рд╕рд╛рде рдкреНрд░рджрд╛рддрд╛рдУрдВ рдФрд░ рд╕реНрдХреАрдорд╛рдУрдВ рдХреЛ рдкрд╛рд░рд┐рдд рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрдиреА рдЪрд╛рд╣рд┐рдП, рдпрд╣ рдереЛрдбрд╝рд╛ рдЕрдзрд┐рдХ рдЬрдЯрд┐рд▓ рд╣реИред рдЗрд╕ рддрд░рд╣ рдХреА рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдПрдХрджрдо рд╕рд╣реА рд╣реИ, рд╣рдо рдЪрд╛рд╣рддреЗ рдереЗ рдХрд┐ рдХреБрдЫ рдРрд╕рд╛ рдирд┐рдХрд╛рд▓рд╛ рдЬрд╛рдП рдЬрд┐рд╕реЗ рдЬрд╛рдВрдЪрд╛ рдЬрд╛ рд╕рдХреЗ рдФрд░ рджреЗрдЦреЗрдВ рдХрд┐ рд▓реЛрдЧреЛрдВ рдХреЛ рдХреНрдпрд╛ рдЪрд╛рд╣рд┐рдПред

@aitboudad рдореИрдВрдиреЗ рдЖрдкрдХреЗ рдореБрджреНрджреЗ рдХреЛ рдирдП рд╕рд┐рд░реЗ рд╕реЗ рдмрдирд╛рдИ рдЧрдИ @angular/cli рдРрдк рдФрд░ getstorybook рд╕рд╛рде рджреЛрд╣рд░рд╛рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХреА рд▓реЗрдХрд┐рди рд╕рдм рдХреБрдЫ рдЙрдореНрдореАрдж рдХреЗ рдореБрддрд╛рдмрд┐рдХ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИред рдХреНрдпрд╛ рдЖрдк рдЕрдкрдиреЗ рд╕реЗрдЯрдЕрдк рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдХреБрдЫ рдФрд░ рдЬрд╛рдирдХрд╛рд░реА рджреЗ рд╕рдХрддреЗ рд╣реИрдВ? рдХреЛрдгреАрдп рд╕рдВрд╕реНрдХрд░рдг? рдЯрд╛рдЗрдкрд╕реНрдХреНрд░рд┐рдкреНрдЯ рд╕рдВрд╕реНрдХрд░рдг?
рдореИрдВ рдЗрд╕реЗ рдЕрднреА, рдереЛрдбрд╝реЗ рдкрд░реАрдХреНрд╖рдг рдирд╣реАрдВ рдХрд░ рдкрд╛рдКрдВрдЧрд╛ред
screen shot 2017-11-22 at 10 27 33 am

@alterx рдиреЗ рдлрд┐рд░ рд╕реЗ рдХреЛрд╢рд┐рд╢ рдХреА рдФрд░ рдпрд╣ рдирдП рдЕрд▓реНрдлрд╛ рд╕рдВрд╕реНрдХрд░рдг рдХреЗ рд╕рд╛рде рдареАрдХ рдХрд╛рдо рдХрд░ рд░рд╣рд╛ рд╣реИ, рдзрдиреНрдпрд╡рд╛рдж!

рдУрд╣, рдмрд┐рд▓реНрдХреБрд▓ рд╕рд╣реА!
рдФрд░ рдмрд╛рдХреА рдХрд╛ рдЖрд╢реНрд╡рд╛рд╕рди рджрд┐рдпрд╛ рд╣реИ, рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдореЙрдбреНрдпреВрд▓ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдЖрдпрд╛рдд, рдкреНрд░рджрд╛рддрд╛рдУрдВ рдФрд░ рдЗрддрдиреЗ рдкрд░ рдкреНрд░рджрд╛рди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐рд╕реА рддрд░рд╣ рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рдиреЗ рдХреА рдпреЛрдЬрдирд╛ рд╣реИред рд╣рдореЗрдВ рд╕рд┐рд░реНрдл рдЗрд╕рдХрд╛ рдкрддрд╛ рд▓рдЧрд╛рдиреЗ рдХреА рдЬрд░реВрд░рдд рд╣реИ :)

рдмрд╕ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдкреИрдХреЗрдЬ рд╕рдВрд╕реНрдХрд░рдгреЛрдВ рдХреЗ рд╕рд╛рде рд╕реНрдЯреЛрд░реАрдмреБрдХ / рдЙрджрд╛рд╣рд░рдг / рдХреЛрдгреАрдп-рдХреНрд▓реА рдЪрд▓рд╛рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХреА рдЧрдИ рд╣реИ:

  "dependencies": {
    "@angular/animations": "4.3.5",
    "@angular/common": "4.3.5",
    "@angular/compiler": "4.3.5",
    "@angular/core": "4.3.5",
    "@angular/forms": "4.3.5",
    "@angular/http": "4.3.5",
    "@angular/platform-browser": "4.3.5",
    "@angular/platform-browser-dynamic": "4.3.5",
    "@angular/router": "4.3.5",
    "core-js": "2.4.1",
    "rxjs": "5.4.3",
    "zone.js": "0.8.14"
  },
  "devDependencies": {
    "@angular/cli": "1.3.2",
    "@angular/compiler-cli": "4.3.5",
    "@angular/language-service": "4.3.5",
    "@storybook/addon-actions": "3.3.0-alpha.4",
    "@storybook/addon-links": "3.3.0-alpha.4",
    "@storybook/addon-notes": "3.3.0-alpha.4",
    "@storybook/addon-knobs": "3.3.0-alpha.4",
    "@storybook/addons": "3.3.0-alpha.4",
    "@storybook/angular": "3.3.0-alpha.4",
    "@types/jasmine": "2.5.53",
    "@types/node": "6.0.87",
    "codelyzer": "3.1.2",
    "jasmine-core": "2.5.2",
    "jasmine-spec-reporter": "3.2.0",
    "karma": "1.4.1",
    "karma-chrome-launcher": "2.0.0",
    "karma-cli": "1.0.1",
    "karma-coverage-istanbul-reporter": "0.2.3",
    "karma-jasmine": "1.1.0",
    "karma-jasmine-html-reporter": "0.2.2",
    "karma-trx-reporter": "0.2.9",
    "protractor": "5.2.0",
    "ts-node": "3.2.0",
    "tslint": "5.6.0",
    "typescript": "2.4.0"
  }

рдпрд╣ component.__annotations__[0] рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░рддреЗ рд╕рдордп рддреНрд░реБрдЯрд┐ рдХреЗ рд╕рд╛рде _Addon Knobs_ рдШрдЯрдХреЛрдВ рдкрд░ рдиреЗрд╡рд┐рдЧреЗрдЯ рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж рдмреНрд░рд╛рдЙрдЬрд╝рд░ рдХрдВрд╕реЛрд▓ рдореЗрдВ рдХреНрд░реИрд╢ рд╣реЛ рдЬрд╛рддрд╛ рд╣реИ:

helpers.js:32 Uncaught TypeError: Cannot read property '0' of undefined
    at getComponentMetadata (helpers.js:32)
    at prepareComponent (helpers.js:140)
    at index.js:33
    at withKnobs (index.js:48)
    at client_api.js:109
    at initModule (helpers.ts:87)
    at helpers.ts:167
    at later (helpers.ts:27)
    at ZoneDelegate.invokeTask (zone.js:424)
    at Zone.runTask (zone.js:191)

@ToniaDemchuk рдЗрд╕реЗ рдмрд╛рд╣рд░ рдкрд░реАрдХреНрд╖рдг рдХреЗ рд▓рд┐рдП рдмрд╣реБрдд рдмрд╣реБрдд рдзрдиреНрдпрд╡рд╛рджред рдЖрдкрдиреЗ рдЗрд╕реЗ рдЕрдкрдиреА рдорд╢реАрди рдкрд░ рдХреИрд╕реЗ рд╕реЗрдЯ рдХрд┐рдпрд╛? рдХреНрдпрд╛ рдЖрдк рдПрдХ рд░реЗрдкреЛ рд╕рд╛рдЭрд╛ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ? рдмрд╣реБрдд рдзрдиреНрдпрд╡рд╛рдж!

рдЕрд░реЗ рджреЛрд╕реНрддреЛрдВ, рд╕реБрдкрд░ рдкрдВрдк рдХрд┐рддрдирд╛ рдЖрд╕рд╛рди рд╣реИ рдпрд╣ рдЬреЛрдбрд╝рдирд╛ рдерд╛ред рдХреБрдЫ рдореБрджреНрджреЗред

рдореБрдЭреЗ "@storybook/addon-notes": "3.3.0-alpha.4", рдХреЛ рдкреИрдХреЗрдЬ рдХреЗ рд░реВрдк рдореЗрдВ рдЬреЛрдбрд╝рдирд╛ рдерд╛ред рд╕рд╛рде рд╣реА рд╕рд╛рдеред

рдХреНрдпрд╛ рдореЗрд░реЗ рд╕реНрдерд╛рдиреАрдп рдЯрд╛рдЗрдкрд╕реНрдХреНрд░рд┐рдкреНрдЯ рд░рд╛рд╕реНрддреЛрдВ рдХрд╛ рд╕рдореНрдорд╛рди рдХрд░рдиреЗ рдХрд╛ рдХреЛрдИ рддрд░реАрдХрд╛ рд╣реИ? рд╡реЗ tsconfig рдореЗрдВ рдкрд░рд┐рднрд╛рд╖рд┐рдд рд╣реИрдВред
рд░реЗрдкреЛ: https://github.com/scttcper/ngx-color
рдореБрдЭреЗ Cannot find module 'ngx-color/helpers'. рдХреНрдпреЛрдВрдХрд┐ рдЗрд╕рдХреЗ рд▓рд┐рдП рдЙрдиреНрд╣реЗрдВ рдирд╣реАрдВ рдЙрдард╛рдирд╛ рдкрдбрд╝рддрд╛ рд╣реИред

@ рд▓рдХреНрд╖реНрдордг рдХрд╛ рдЙрджрд╛рд╣рд░рдг рдЖрдк рдпрд╣рд╛рдВ рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВ https://github.com/ToniaDemchuk/storybook/tree/angular-4.3.5-sample
рд╕реЗрдЯрдЕрдк рдЖрджреЗрд╢:

npm i
npm i -g @storybook/cli
npm run storybook

рдмреНрд░рд╛рдЙрдЬрд╝рд░ рдореЗрдВ localhost:9009 рдЦреЛрд▓реЗрдВ рдФрд░ рдореЗрдиреВ рдореЗрдВ _Addon Knobs> Simple_ рдкрд░ рдиреЗрд╡рд┐рдЧреЗрдЯ рдХрд░реЗрдВ

рдпрд╣ рдХрд╛рдо рдХрд┐рдпрд╛:
image

рдпрд╣ рдирд╣реАрдВ рдХрд┐рдпрд╛:
image

рдХрдВрд╕реЛрд▓ рдореЗрдВ рддреНрд░реБрдЯрд┐:
image

@neo , рдореИрдВрдиреЗ рдкреБрди: рдкреЗрд╢ рдХрд░рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХреА рд╣реИ, рд▓реЗрдХрд┐рди рдореЗрд░реЗ рд▓рд┐рдП рд╕рдм рдХреБрдЫ рдареАрдХ рдХрд╛рдо рдХрд░ рд░рд╣рд╛ рд╣реИред рдХреНрдпрд╛ рдЖрдк рдЕрдзрд┐рдХ рд╕рдВрджрд░реНрдн рд╕рд╛рдЭрд╛ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ? рд╢рд╛рдпрдж рдЖрдкрдХреЗ рдкрд╛рд╕ рд░реЗрдкреЛ рд╣реИ?

@shilman , @alterx , рдХреЛрдгреАрдп v4.3.5 ( @ToniaDemchuk ) рдХреЗ рд╕рд╛рде рд╕рдорд╕реНрдпрд╛ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ, рдореИрдВрдиреЗ рдЗрд╕ рдореБрджреНрджреЗ рдкрд░ рд╢реЛрдз рдХрд┐рдпрд╛ рд╣реИ (рдореИрдВ рдХреЛрдгреАрдп рд╕реЗ рдмрд╣реБрдд рдкрд░рд┐рдЪрд┐рдд рдирд╣реАрдВ рд╣реВрдВ, рдЗрд╕рд▓рд┐рдП ...) рдиреЙрдмреНрд╕ рдПрдбрдСрди рдореЗрдВ, рдХреЛрдб рд╣реИ рдЬреЛ рдЙрд╕ рдкрд░ рдирд┐рд░реНрднрд░ рдХрд░рддрд╛ рд╣реИред рддрдереНрдп рдпрд╣ рд╣реИ рдХрд┐ рдПрдХ рдШрдЯрдХ рд╡рд╕реНрддреБ рдХрд╛ рдЙрд╕ рдкрд░ annotations рд╕рд░рдгреА рд╣реИред рдЗрд╕ рд╕рд░рдгреА рдХреЛ рдирдП рд╕рдВрд╕реНрдХрд░рдг рдореЗрдВ angular/core рдкреИрдХреЗрдЬ рджреНрд╡рд╛рд░рд╛ рд╕реЗрдЯ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред рд▓реЗрдХрд┐рди рдкрд┐рдЫрд▓реЗ рд╕рдВрд╕реНрдХрд░рдг (рдЗрд╕ рдорд╛рдорд▓реЗ v4.3.5 рдореЗрдВ) рдореЗрдВ рд╡реЗ рдПрдХ рдкреНрд░рдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ reflect-metadata рдкреИрдХреЗрдЬ (рдпрд╣рд╛рдБ рд╣реИ diff рдЬрд╣рд╛рдВ рдЗрд╕реЗ рд╣рдЯрд╛ рджрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛)ред рдореИрдВ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдирд╣реАрдВ рдЬрд╛рдирддрд╛ рдХрд┐ рдЗрд╕рдХреЗ рд╕рд╛рде рдХреНрдпрд╛ рдХрд░рдирд╛ рд╣реИред

рд╣рд╛рдБ, рдЗрд╕ рдмрджрд▓рд╛рд╡ рдХрд╛ рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ рдкреНрд░рднрд╛рд╡ рдкрдбрд╝рддрд╛ рд╣реИ рдХрд┐ рд╣рдо рдореЗрдЯрд╛рдбреЗрдЯрд╛ рдХреИрд╕реЗ рдкреНрд░рд╛рдкреНрдд рдХрд░рддреЗ рд╣реИрдВред рдорд░реНрдЬреА
рдПрдХ рдмрд╛рд░ рдореЗрд░реЗ рдкрд╛рд╕ рдЦрд╛рд▓реА рд╕рдордп рджреЗрдЦрд┐рдПред рд╢рд╛рдпрдж рдЕрдЧрд▓реЗ рдХреБрдЫ рд╕рдордп рдореЗрдВ
рд╕рдкреНрддрд╛рд╣

Sat рдкрд░, 9 рджрд┐рд╕рдВрдмрд░, 2017, 11:41 AM рдЗрдЧреЛрд░ рдиреЛрдЯрд┐рдлрд┐рдХреЗрд╢рди @ithub.com рдиреЗ рд▓рд┐рдЦрд╛:

@ рд╢реАрд▓рдореИрди https://github.com/shilman , @alterx
https://github.com/alterx , рдХреЛрдгреАрдп v4.3.5 рдХреЗ рд╕рд╛рде рд╕рдорд╕реНрдпрд╛ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ (
@ToniaDemchuk https://github.com/toniademchuk ), рдореИрдВрдиреЗ рд╢реЛрдз рдХрд┐рдпрд╛ рд╣реИ
рдореБрджреНрджрд╛ (рдореИрдВ рдХреЛрдгреАрдп рд╕реЗ рдмрд╣реБрдд рдкрд░рд┐рдЪрд┐рдд рдирд╣реАрдВ рд╣реВрдВ, рдЗрд╕рд▓рд┐рдП ...) рдиреЙрдмреНрд╕ рдПрдбрдСрди рдореЗрдВ,
рд╡рд╣рд╛рдБ рдХреЛрдб рд╣реИ рдЬреЛ рдЗрд╕ рддрдереНрдп рдкрд░ рдирд┐рд░реНрднрд░ рдХрд░рддрд╛ рд╣реИ рдХрд┐ рдПрдХ рдШрдЯрдХ рд╡рд╕реНрддреБ рдПрдХ рд╣реИ
рдПрдиреЛрдЯреЗрд╢рди рдЗрд╕ рдкрд░ рд╕рд░рдгреАред рдпрд╣ рд╕рд░рдгреА рдХреЛрдгреАрдп / рдХреЛрд░ рдкреИрдХреЗрдЬ рджреНрд╡рд╛рд░рд╛ рд╕реЗрдЯ рдХреА рдЧрдИ рд╣реИ
рдирдпрд╛ рд╕рдВрд╕реНрдХрд░рдгред рд▓реЗрдХрд┐рди рдкрд┐рдЫрд▓реЗ рд╕рдВрд╕реНрдХрд░рдг рдореЗрдВ (рдЗрд╕ рдорд╛рдорд▓реЗ рдореЗрдВ v4.3.5) рдЙрдиреНрд╣реЛрдВрдиреЗ рдПрдХ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛
рдкреНрд░рддрд┐рдмрд┐рдВрдмрд┐рдд-рдореЗрдЯрд╛рдбреЗрдЯрд╛ рдкреИрдХреЗрдЬ (рдпрд╣рд╛рдВ рдЕрдВрддрд░ рд╣реИ
https://github.com/angular/angular/commit/cac130eff9b9cb608f2308ae40c42c9cd1850c4d#diff-635fe23be5795132e3385c8f4899dc3aR58
рдЬрд╣рд╛рдВ рдЗрд╕реЗ рд╣рдЯрд╛ рджрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛)ред рдореИрдВ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдирд╣реАрдВ рдЬрд╛рдирддрд╛ рдХрд┐ рдЗрд╕рдХреЗ рд╕рд╛рде рдХреНрдпрд╛ рдХрд░рдирд╛ рд╣реИред

-
рдЖрдк рдЗрд╕реЗ рдкреНрд░рд╛рдкреНрдд рдХрд░ рд░рд╣реЗ рд╣реИрдВ рдХреНрдпреЛрдВрдХрд┐ рдЖрдкрдХрд╛ рдЙрд▓реНрд▓реЗрдЦ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ред
рдЗрд╕ рдИрдореЗрд▓ рдХрд╛ рдЙрддреНрддрд░ рд╕реАрдзреЗ рджреЗрдВ, рдЗрд╕реЗ GitHub рдкрд░ рджреЗрдЦреЗрдВ
https://github.com/storybooks/storybook/issues/269#issuecomment-350492916 ,
рдпрд╛ рдзрд╛рдЧрд╛ рдореНрдпреВрдЯ рдХрд░реЗрдВ
https://github.com/notifications/unsubscribe-auth/ABhRmCjzdKQq2NNVYU7UTc-NVmvd8a9Tks5s-sZEgaJpZM4I70nl
ред

@aitboudad , рдпрд╣рд╛рдБ рдХрд╕реНрдЯрдо рдореЙрдбреНрдпреВрд▓ рдореЗрдЯрд╛рдбреЗрдЯрд╛ рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдкреАрдЖрд░ рд╣реИред
рдЕрдм рддрдХ рдореИрдВрдиреЗ рдкрд╛рдЗрдкреНрд╕ рдФрд░ рд╕рд░реНрд╡рд┐рд╕реЗрдЬ рдХреЗ рд▓рд┐рдП рдЙрджрд╛рд╣рд░рдг рдЬреЛрдбрд╝реЗ рд╣реИрдВред рдореБрдЭреЗ рдирд┐рд░реНрджреЗрд╢, рд╕реНрдХреАрдорд╛ рдЖрджрд┐ рдХрд╛ рдкрд░реАрдХреНрд╖рдг рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдЙрдиреНрд╣реЗрдВ рднреА рдХрд╛рдо рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП ред

рдЖрдк рдХреНрдпрд╛ рд╕реЛрдЪрддреЗ рд╣реИрдВ рдореБрдЭреЗ рдмрддрд╛рдУ

@ToniaDemchuk , рдХреНрдпрд╛ рдЖрдк рдирдП рдкрд░рд┐рд╡рд░реНрддрдиреЛрдВ рдХреЗ рд╕рд╛рде рдлрд┐рд░ рд╕реЗ рдЬрд╛рдБрдЪ рдХрд░реЗрдВрдЧреЗ?

рдореИрдВрдиреЗ рдЕрднреА-рдЕрднреА 3.3.0-рдЕрд▓реНрдлрд╛ .6 рдЬрд╛рд░реА рдХрд┐рдпрд╛ рд╣реИ рдЬрд┐рд╕рдореЗрдВ @alterx @ igor-DV @ralzinov рд╕реЗ рдХреЛрдгреАрдп рдкрд░рд┐рд╡рд░реНрддрди рдХрд╛ рдПрдХ рдЧреБрдЪреНрдЫрд╛ рд╣реИ

https://github.com/storybooks/storybook/releases/tag/v3.3.0-alpha.6

рдкреНрд░рд╛рд╕рдВрдЧрд┐рдХ рдХреЛрдгреАрдп рдкрд░рд┐рд╡рд░реНрддрдиреЛрдВ рдореЗрдВ рд╢рд╛рдорд┐рд▓ рд╣реИрдВ:

  • рд╕рд╣рд╛рдпрдХреЛрдВ рдХреЗ рд▓рд┐рдП рдЬреЛрдбрд╝рд╛ рдЧрдпрд╛ рдПрдиреЛрдЯреЗрд╢рди, рдПрдирдЬреА рдХреЗ рд▓рд┐рдП ts рдШреЛрд╖рдгрд╛ рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЛ рдЬреЛрдбрд╝рд╛ ... # 2459
  • рдореЙрдбреНрдпреВрд▓ / рдШрдЯрдХреЛрдВ рдХреЗ рд▓рд┐рдП рдЕрддрд┐рд░рд┐рдХреНрдд рдореЗрдЯрд╛рдбреЗрдЯрд╛ рдЬреЛрдбрд╝рдирд╛ # 2526
  • рдПрдирдЬреА рдХрдВрдкреЛрдиреЗрдВрдЯ рдкреНрд░реЛрдк рдЖрдЙрдЯрдкреБрдЯ рдХреЛ рдУрд╡рд░рд░рд╛рдЗрдб рдХрд░реЗрдВ # 2456
  • [WIP] рдХреЛрдгреАрдп рд╕рдВрд╕реНрдХрд░рдг # реирекремular рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рддреЗ рд╣реИрдВ
  • рдХреЛрдгреАрдп рдЬреЛрдбрд╝реЗрдВ рдХрд╕реНрдЯрдо рдкрд╛рдЗрдк # 2518 рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рддреЗ рд╣реИрдВ

рдХреГрдкрдпрд╛ рдЕрдкрдиреА рдкрд░рд┐рдпреЛрдЬрдирд╛рдУрдВ рдореЗрдВ рдЗрд╕ рд╕рдВрд╕реНрдХрд░рдг рдХреЛ рдЕрдкрдЧреНрд░реЗрдб рдХрд░рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░реЗрдВ, рдФрд░ рд╣рдореЗрдВ рдмрддрд╛рдПрдВ рдХрд┐ рдХреНрдпрд╛ рдЖрдк рдХрд┐рд╕реА рднреА рдореБрджреНрджреЗ рдкрд░ рдЪрд▓рддреЗ рд╣реИрдВред рдореИрдВ рдЙрдореНрдореАрдж рдХрд░ рд░рд╣рд╛ рд╣реВрдБ рдХрд┐ рдпрд╣ рдЖрдЦрд┐рд░реА RC рд░рд┐рд▓реАрдЬрд╝ рд╣реЛрдЧреА, рдФрд░ рд╣рдо рдХрд▓ рддрдХ рдПрдХ рдЙрдЪрд┐рдд 3.3 рд░рд┐рд▓реАрдЬрд╝ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ!

@alterx рдХрд┐ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдореИрдВ рдХреНрдпрд╛ рджреЗрдЦ рд░рд╣рд╛ рд╣реВрдБ, рдзрдиреНрдпрд╡рд╛рдж!

рдпрд╣ рдЕрдЪреНрдЫрд╛ рд╣реЛрдЧрд╛ рдпрджрд┐ рд╣рдо рдШрдЯрдХ рдХреЗ рдмрдЬрд╛рдп рдЯреЗрдореНрдкрд▓реЗрдЯ рд╕рд╛рдордЧреНрд░реА рдкреНрд░рджрд╛рди рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ:

storiesOf('Welcome', module).add('to Storybook', () => ({
  moduleMetadata: { imports: [FormModule] },
  template: '<dynamic-forms [form]="form"></dynamic-forms>',
  props: {
    form: [{ key: name }]
  },
}));

@ рд╢реАрд▓рдореИрди 3.3.0-alpha.6 рдореБрдЭреЗ рдЕрдЪреНрдЫрд╛ рд▓рдЧ рд░рд╣рд╛ рд╣реИ, рдПрдХрдорд╛рддреНрд░ рдореБрджреНрджрд╛ рдореИрдВрдиреЗ рджреЗрдЦрд╛ рд╣реИ рдХрд┐ рдкреИрдХреЗрдЬ рдореЗрдВ @storybook/angular рдЬреИрд╕реЗ рдкреИрдХреЗрдЬ рд╢рд╛рдорд┐рд▓ рдирд╣реАрдВ рд╣реИрдВ, рджреНрд╡рд╛рд░рд╛ рд╣рд▓ рдХрд┐рдпрд╛ рдЧрдпрд╛

yarn add @storybook/addon-actions<strong i="14">@alpha</strong> @storybook/addon-links<strong i="15">@alpha</strong> @storybook/addon-notes<strong i="16">@alpha</strong>

@ igor-DV, рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рджред рдЕрдм рдпрд╣ рдареАрдХ рдХрд╛рдо рдХрд░ рд░рд╣рд╛ рд╣реИред

@ рд╢реАрд▓рдореИрди , рдХреБрдЫ рдмрджрд▓рд╛рд╡реЛрдВ рдиреЗ рдХреЛрдгреАрдп-рдХреНрд▓реА рдЙрджрд╛рд╣рд░рдг рдХреЛ рддреЛрдбрд╝ рджрд┐рдпрд╛, рдЕрдм NameComponent рдФрд░ ServiceComponent рдЯрд╛рдЗрдкрд┐рдВрдЧ рдХреЗ рдХрд╛рд░рдг рд╕рдВрдХрд▓рди рдирд╣реАрдВ рдХрд░ рд░рд╣реЗ рд╣реИрдВ:

ERROR in ./src/stories/index.ts
(200,19): error TS2345: Argument of type '() => { component: typeof NameComponent; props: { field: string; }; moduleMetadata: { imports: an...' is not assignable to parameter of type 'IGetStory'.
  Type '{ component: typeof NameComponent; props: { field: string; }; moduleMetadata: { imports: any[]; s...' is not assignable to type '{ props?: { [p: string]: any; }; moduleMetadata?: { [p: string]: NgModuleMetadata; }; component: ...'.
    Types of property 'moduleMetadata' are incompatible.
      Type '{ imports: any[]; schemas: any[]; declarations: (typeof CustomPipePipe)[]; providers: any[]; }' is not assignable to type '{ [p: string]: NgModuleMetadata; }'.
        Property 'imports' is incompatible with index signature.
          Type 'any[]' is not assignable to type 'NgModuleMetadata'.

рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ moduleMetadata?: { [p: string]: NgModuleMetadata; } IGetStory moduleMetadata?: NgModuleMetadata рд░реВрдк рдореЗрдВ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред рдореЙрдбреНрдпреВрд▓ рдореЗрдЯрд╛рдбреЗрдЯрд╛ рдХреЛ any рдЙрджрд╛рд╣рд░рдг рдореЗрдВ рд░рдЦрдиреЗ рдХреЗ рдмрд╛рдж рд╕рдм рдХреБрдЫ рдЕрдкреЗрдХреНрд╖рд┐рдд рд░реВрдк рд╕реЗ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИред

рдореИрдВрдиреЗ рдКрдкрд░ рд╡рд░реНрдгрд┐рдд рд╕рдорд╕реНрдпрд╛ @neo рдХреЗ рд╕рдорд╛рди рдХреЛрдгреАрдп рдХреЗ рд▓рд┐рдП
рдореИрдВрдиреЗ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рд╡реЗрдмрдкреИрдХ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдирд┐рдпрдо рдХреЗ рд╕рд╛рде рд╕рдорд╕реНрдпрд╛ рд╣рд▓ рдХреА рд╣реИ:

    storybookBaseConfig.module.rules.push({
      test: /\.scss$/,
      loaders: ["to-string-loader", "css-loader", "sass-loader"],
      include: path.resolve(__dirname, '../')
    });

рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдХреЛрдгреАрдп style-loader рд╕рд╛рде рдХрд╛рдо рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИ рдФрд░ рдЖрдкрдХреЛ рдЗрд╕рдХреЗ рдмрдЬрд╛рдп to-string-loader рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред
рдкреНрд░рд▓реЗрдЦрди рдФрд░ (рдпрд╛) рдЙрджрд╛рд╣рд░рдг рджреЗрдиреЗ рдХреЗ рд▓рд┐рдП рдЕрдЪреНрдЫрд╛ рд╣реЛрдЧрд╛ рдХрд┐ рдХреИрд╕реЗ рдПрд╕рд╕реАрдПрд╕ рд╕реНрдЯрд╛рдЗрд▓рд╢реАрдЯ рдХреЗ рд╕рд╛рде рдШрдЯрдХреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рдПред

@ToniaDemchuk рд╣рд╛рдБ рдЖрдк moduleMetadata?: { [p: string]: NgModuleMetadata; } рд╕рд╛рде рд╕рд╣реА рдореБрджреНрджрд╛ рд╣реИред рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдореИрдВрдиреЗ рддрдп рдХрд┐рдпрд╛ рд╣реИ рдХрд┐ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдпрд╣рд╛рдБ moduleMetadata?: Partial<NgModuleMetadata>;

рдореИрдВрдиреЗ 3.3.0-rc.0 рдкрд░ @ralzinov рдХрд╛ рдкрд░рд┐рд╡рд░реНрддрди рдкреНрд░рдХрд╛рд╢рд┐рдд рдХрд┐рдпрд╛, рдЬреЛ рдХрд┐ NPM рдЯреИрдЧ rc рдмрдЬрд╛рдп alpha ред

@ToniaDemchuk рдХреГрдкрдпрд╛ рдЗрд╕реЗ рдЖрдЬрд╝рдорд╛рдПрдВ рдФрд░ рд╣рдореЗрдВ рдмрддрд╛рдПрдВ рдХрд┐ рдХреНрдпрд╛ рдпрд╣ рдЖрдкрдХреЗ рд▓рд┐рдП рдареАрдХ рдХрд░рддрд╛ рд╣реИред

рдЖрдкрдХреЗ рдзреИрд░реНрдп рдФрд░ рдХрдбрд╝реА рдореЗрд╣рдирдд рдХреЗ рд▓рд┐рдП рд╣рд░ рдХрд┐рд╕реА рдХрд╛ рдзрдиреНрдпрд╡рд╛рдж рдЬреЛ рд╣рдореЗрдВ рдЗрд╕реЗ рдмрд╛рд╣рд░ рдирд┐рдХрд╛рд▓рдиреЗ рдореЗрдВ рдорджрдж рдХрд░рддрд╛ рд╣реИ!

рдЕрднреА рднреА @ рднрд╛рд░рдХ рдХреЗ рдкрд░рд┐рд╡рд░реНрддрди рдХреЗ рд╕рд╛рде рддреНрд░реБрдЯрд┐ рд╣реИ:

рдиреЛрдб_рдореЙрдбреНрдпреВрд▓реНрд╕ / @ рд╕реНрдЯреЛрд░реАрдмреБрдХ /: grep -r "рдореЙрдбреНрдпреВрд▓рдореИрдбреЗрдЯрд╛рдЯрд╛ ?: рдЖрдВрд╢рд┐рдХ"
angular/index.d.ts: moduleMetadata?: Partial<NgModuleMetadata>;

npm рд░рди рд╕реНрдЯреЛрд░реАрдмреБрдХ
https://gist.github.com/karlos1337/18e4538b37128818ec3e4b507b3b3a3c

рдзрдиреНрдпрд╡рд╛рджред

@ karlos1337 , рдЗрд╕ рдореБрджреНрджреЗ рдкрд░ рдПрдХ рдирдЬрд╝рд░ рдбрд╛рд▓реЗрдВ - # 2616

3.3 рдореЗрдВ рдЬрд╛рд░реА! ЁЯОЙ

рдЗрд╕ рд╕рдорд╕реНрдпрд╛ рдХреЛ рдмрдВрдж рдХрд░рдирд╛, рдФрд░ рдпрджрд┐ рдЖрдкрдХреЛ рдХреЛрдгреАрдп рдХреЗ рд▓рд┐рдП рд╕реНрдЯреЛрд░реАрдмреБрдХ рдХреЗ рд╕рд╛рде рд╕рдорд╕реНрдпрд╛ рд╣реЛ рд░рд╣реА рд╣реИ, рддреЛ рдХреГрдкрдпрд╛ рдПрдХ рдЕрд▓рдЧ рд╕рдорд╕реНрдпрд╛ рджрд░реНрдЬ рдХрд░реЗрдВред рдзрдиреНрдпрд╡рд╛рдж!

рдХреНрдпрд╛ рдпрд╣ рдкреГрд╖реНрда рдЙрдкрдпреЛрдЧреА рдерд╛?
0 / 5 - 0 рд░реЗрдЯрд┐рдВрдЧреНрд╕

рд╕рдВрдмрдВрдзрд┐рдд рдореБрджреНрджреЛрдВ

sakulstra picture sakulstra  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

levithomason picture levithomason  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

tirli picture tirli  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

shilman picture shilman  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

shilman picture shilman  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ