Less.js: рд╕рд┐рдВрдХ рдФрд░ рдПрд╕рд┐рдВрдХ рдЖрдпрд╛рдд рдХреЛ рдХреИрд╕реЗ рдЯреНрд░рд┐рдЧрд░ рдХрд░реЗрдВ

рдХреЛ рдирд┐рд░реНрдорд┐рдд 7 рджрд┐рд╕ре░ 2014  ┬╖  26рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ  ┬╖  рд╕реНрд░реЛрдд: less/less.js

рдХрдо рд╡рд░реНрддрдорд╛рди fileManager loadFile рдпрд╛ loadFileSync рдкрд░ рдХреЙрд▓ рдХрд░рдиреЗ рдХрд╛ рдирд┐рд░реНрдгрдп рдХреИрд╕реЗ рд▓реЗрддрд╛ рд╣реИ? рдЗрд╕ рдХреЛрдб рдХреЗ рдЕрдиреБрд╕рд╛рд░ рдЗрд╕реЗ рд╕реЗрдЯ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП isSync -рдкреИрд░рд╛рдореАрдЯрд░ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИред рд▓реЗрдХрд┐рди getFileManager рдХреЙрд▓ рдХреА рдПрдХ рд╕рдВрдХреНрд╖рд┐рдкреНрдд рдЦреЛрдЬ рд╕реЗ рдкрддрд╛ рдЪрд▓рддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рд╡рд┐рдХрд▓реНрдк рдХреЗрд╡рд▓ lib/less/functions/data-uri.js рджреНрд╡рд╛рд░рд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред

рдХреНрдпрд╛ render() рдХреЙрд▓ рдХрд░рддреЗ рд╕рдордп рдЗрд╕ рд╡рд┐рдХрд▓реНрдк рдХреЛ рд╕реНрдкрд╖реНрдЯ рд░реВрдк рд╕реЗ рд╕реЗрдЯ рдХрд░рдирд╛ рд╕рдВрднрд╡ рд╣реИ?

feature request medium priority stale

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

рдХреНрдпрд╛ рдЕрднреА рддрдХ рдХреЛрдИ renderSync рд╣реИ? рдпрджрд┐ рдирд╣реАрдВ, рддреЛ рдХреНрдпрд╛ рд╕рдордХрд╛рд▓рд┐рдХ render рд▓рд┐рдП рдХреЛрдИ рд╕рдорд╛рдзрд╛рди рд╣реИ?

рд╕рдВрдкрд╛рджрд┐рдд рдХрд░реЗрдВ: рдПрдирд╡реАрдПрдоред рднрд╡рд┐рд╖реНрдп рдХреЗ рдХрд┐рд╕реА рднреА рд╡реНрдпрдХреНрддрд┐ рдХреЗ рд▓рд┐рдП рдЬреЛ рдЗрд╕ рдкрд░ рдареЛрдХрд░ рдЦрд╛рддрд╛ рд╣реИ, рдореИрдВрдиреЗ рдпрд╣реА рдХрд┐рдпрд╛ рд╣реИ:

less.renderSync = function (input, options) {
    if (!options || typeof options != "object") options = {};
    options.sync = true;
    var css;
    this.render(input, options, function (err, result) {
        if (err) throw err;
        css = result.css;
    });
    return css;
};

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

isSync рдХреЛ рд░реЗрдВрдбрд░ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╡рд┐рдХрд▓реНрдк рдСрдмреНрдЬреЗрдХреНрдЯ рдореЗрдВ рдкрд╛рд╕ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рдбреЗрдЯрд╛-рдпреВрд░реА рд╣рдореЗрд╢рд╛ рд╣реИ
рд╕рд┐рдВрдХ рдХрд░реЗрдВ рдХреНрдпреЛрдВрдХрд┐ рдлрд╝рдВрдХреНрд╢рди рдПрд╕рд┐рдВрдХреНрд╕ рдирд╣реАрдВ рд╣реЛ рд╕рдХрддреЗ рд╣реИрдВред

рд▓реЗрдХрд┐рди importManager getFileManager рд▓рд┐рдП рдХреЛрдИ рд╡рд┐рдХрд▓реНрдк рдкрд╛рд╕ рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИ ...

рдпрд╣ рдпрд╣рд╛рдБ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ

https://github.com/less/less.js/blob/32dbbee247f76af00eb7577053eccad2ee5f6110/lib/less-browser/file-manager.js#L61

рдРрд╕рд╛ рдЗрд╕рд▓рд┐рдП рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рдЙрд╕ рд╡рд┐рдХрд▓реНрдк рдХреЛ рдХрдо рдХреЛрд░ рджреНрд╡рд╛рд░рд╛ рдЕрдирджреЗрдЦрд╛ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ рдФрд░ рдпрд╣ рдХреЗрд╡рд▓ рдмреНрд░рд╛рдЙрдЬрд╝рд░ рдХреЗ рд▓рд┐рдП рд╡рд┐рд╢рд┐рд╖реНрдЯ рд╣реЛрддрд╛ рд╣реИред рдЗрд╕рд▓рд┐рдП рдмреНрд░рд╛рдЙрдЬрд╝рд░ рдХреЛ рд╣рдореЗрд╢рд╛ рдПрд╕рд┐рдВрдХреНрд╕ рдХрд╣рд╛ рдЬрд╛рддрд╛ рд╣реИ рдФрд░ рд╡рд┐рдХрд▓реНрдкреЛрдВ рдХреЗ рдЖрдзрд╛рд░ рдкрд░ рдлрд╝рд╛рдЗрд▓ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕рд┐рдВрдХ рдпрд╛ рдПрд╕рд┐рдВрдХ рдореИрдХреЗрдирд┐рдЬреНрдо рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддрд╛ рд╣реИред

рдореИрдВ рджреЗрдЦ рд╕рдХрддрд╛ рд╣реВрдВ рдХрд┐ рдпрд╣ рдХреИрд╕реЗ рднреНрд░рдорд┐рдд рдХрд░рдиреЗ рд╡рд╛рд▓рд╛ рд╣реИред рдХреНрдпрд╛ рдпрд╣ рд╕рдорд╕реНрдпрд╛ рдкреИрджрд╛ рдХрд░ рд░рд╣рд╛ рд╣реИ?

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

рдЦреИрд░, рд╢рд╛рдпрдж рдореБрдЭреЗ рдЕрдкрдиреЗ рдЙрдкрдпреЛрдЧ-рдорд╛рдорд▓реЗ рдХреА рд╡реНрдпрд╛рдЦреНрдпрд╛ рдХрд░рдиреА рд╣реЛрдЧреА:

рдореИрдВрдиреЗ рд╡реЗрдмрдкреИрдХ рдХреЗ рд▓рд┐рдП рдПрдХ рдХрдо рд▓реЛрдбрд░ рд▓рд┐рдЦрд╛ рд╣реИред рдЪреВрдВрдХрд┐ рд╡реЗрдмрдкреИрдХ рдХрд╛ рдЕрдкрдирд╛ рд╕рдорд╛рдзрд╛рди рддрдВрддреНрд░ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдореИрдВ рдПрдХ рдлрд╝рд╛рдЗрд▓ рдкреНрд░рдмрдВрдзрдХ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рд╣рд▓ рдХрд░рдиреЗ рд╡рд╛рд▓реА рдлрд╝рд╛рдЗрд▓ рдХреЛ рдХрдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдкреНрд▓рдЧрдЗрди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд░рд╣рд╛ рд╣реВрдВред

рд╡реЗрдмрдкреИрдХ рд╕рд┐рдВрдХ рдФрд░ рдПрд╕рд┐рдВрдХ рд▓реЛрдбрд░ рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рддрд╛ рд╣реИ рд▓реЗрдХрд┐рди рдореБрдЭреЗ рд╕рднреА рдлрд╛рдЗрд▓реЛрдВ рдХреЛ рд╕рд┐рдВрдХ рдпрд╛ рдПрд╕рд┐рдВрдХреНрд░реЛрдирд╕ рд░реВрдк рд╕реЗ рдкреНрд░рд╕реНрддреБрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрдо рдмрддрд╛рдиреЗ рдХрд╛ рдХреЛрдИ рддрд░реАрдХрд╛ рдирд╣реАрдВ рдорд┐рд▓рд╛ рд╣реИред рд╡рд░реНрддрдорд╛рди рдореЗрдВ рдпрд╣ рд╣рдореЗрд╢рд╛ loadFile рдХреЙрд▓ рдХрд░рддрд╛ рд╣реИред рдЗрд╕ рдкреНрд░рдХрд╛рд░ рдЬрдм рдПрдХ рд╕рд┐рдВрдХреНрд░реЛрдирд╕ рд╕рдВрдХрд▓рди рдХрд╛ рдЕрдиреБрд░реЛрдз рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ рддреЛ рдореИрдВрдиреЗ loadFileSync рдкрд░ рдХреЙрд▓ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдЧрдВрджреЗ рд╣реИрдХ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ред рд╕реМрднрд╛рдЧреНрдп рд╕реЗ рдХрдо рд╕рдордХрд╛рд▓рд┐рдХ рд░реВрдк рд╕реЗ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ рдЬрдм рдХреЙрд▓рдмреИрдХ рдХреЛ рд╕рд┐рдВрдХреНрд░реЛрдирд╕ рдХрд╣рд╛ рдЬрд╛рддрд╛ рд╣реИ (рдЬреЛ рдХрд┐ рд╕рд╛рдорд╛рдиреНрдп рдкрд░рд┐рд╕реНрдерд┐рддрд┐рдпреЛрдВ рдореЗрдВ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП)ред

рд╕рдордЭрд╛...

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

рдардВрдбрд╛!

рдХреЗрд╡рд▓ рдПрдХ рд╕рдорд╕реНрдпрд╛ рд╣реИ: callback рд╕реНрд╡реАрдХрд╛рд░ рдХрд░рддреЗ рд╕рдордп рд╕рдордХрд╛рд▓рд┐рдХ рд░реВрдк рд╕реЗ рдХреБрдЫ рдХрд░рдирд╛ рдмрд╣реБрдд рд╣реА рдЕрд╕рд╛рдорд╛рдиреНрдп рд╣реИ (рдЬреИрд╕рд╛ рдХрд┐ render -function рдХрд░рддрд╛ рд╣реИ)ред рдЖрдк рдЗрд╕ рддрд░рд╣ sync -рд╡рд┐рдХрд▓реНрдк рдХрд╛ рд╕реБрдЭрд╛рд╡ рджреЗ рд░рд╣реЗ рд╣реИрдВ:

less.render(
    input,
    { ... sync: true ... },
    function (err, result) {
    }
);

?

рдЗрдореНрд╣реЛ рдХреЙрд▓рдмреИрдХ рдХреЛ рд╕рдордХрд╛рд▓рд┐рдХ рд░реВрдк рд╕реЗ рдмреБрд▓рд╛рдпрд╛ рдЬрд╛рдирд╛ рдЕрдЬреАрдм рд╣реИред рдореИрдВ рдЗрд╕ рддрд░рд╣ рдПрдХ рдПрдкреАрдЖрдИ рдХреА рдЙрдореНрдореАрдж рдХрд░рддрд╛ рд╣реВрдВ:

// async
less.render(input, option, callback);

// sync
var result = less.renderSync(input, option);

рд╣рд╛рдБ рддреБрдо рд╕рд╣реА рд╣реЛ, рдпрд╣ рдмреЗрд╣рддрд░ рд╣реИред

+1
рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдХреЗрд╡рд▓ рдХреЙрд▓рдмреИрдХ рдореЗрдВ рдХреЛрдб рдирд┐рд╖реНрдкрд╛рджрди рдХреЛ рдкреНрд░рддрд┐рдмрдВрдзрд┐рдд рдирд╣реАрдВ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП renderSync рдХреЛ рд▓рд╛рдЧреВ рдХрд░рдиреЗ рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд░рдирд╛ рднреА рдмрд╣реБрдд рдЙрдкрдпреЛрдЧреА рд╣реИред рдХреЙрд▓рдмреИрдХ рд╕реНрдХреЛрдк рдореЗрдВ рдХрдИ рддрд░реАрдХреЗ рдЬреИрд╕реЗ console.err рдпрд╛ throw new Error() рдпрд╛ рдЬрд╛рдирдмреВрдЭрдХрд░ рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рддреНрд░реБрдЯрд┐ рдХрдВрд╕реЛрд▓ рдкрд░ рдХреБрдЫ рднреА рдкреНрд░рд┐рдВрдЯ рдирд╣реАрдВ рдХрд░реЗрдЧреА, рдХреЗрд╡рд▓ рдХреЛрдб рдирд┐рд╖реНрдкрд╛рджрди рдХреЛ рд░реЛрдХ рджреЗрдЧреА, рд╕рдВрднрд╛рд╡рд┐рдд рд░реВрдк рд╕реЗ рдмрдЧреНрд╕ рдХрд╛ рдкрддрд╛ рдирд╣реАрдВ рд▓рдЧрд╛рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рд╡реНрдпрд╡рд╣рд╛рд░ рдирд╣реАрдВ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред

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

(рдЗрд╕ рдореБрджреНрджреЗ рдХреЛ рдЦреБрдж рд╕реЗ рдХрдо рдирд╣реАрдВ рдХрд░рдирд╛, рдмрд▓реНрдХрд┐ рдпрд╣ рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐ рдпрд╣ рдЗрд╕рд╕реЗ рднреА рдЬреНрдпрд╛рджрд╛ рдЕрдЬреАрдм рдирд╣реАрдВ рд╣реЛрдЧрд╛):

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

рдпрд╣ рдПрдХ рдЕрддрд┐рд╢рдпреЛрдХреНрддрд┐ рд╣реИ ... рдХреЛрдб рдХреА рдЗрд╕ рдкрдВрдХреНрддрд┐ рдореЗрдВ рдЖрдк рдпрд╣ рдирд╣реАрдВ рдорд╛рди рд░рд╣реЗ рд╣реИрдВ рдХрд┐ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдПрд╕рд┐рдВрдХреНрд░реЛрдирд╕ рд░реВрдк рд╕реЗ рд╕реЗрдЯ рд╣реИ, рд╣реИ рдирд╛?
рдХреЙрд▓рдмреИрдХ рд╕рд┐рд░реНрдл рдХреЙрд▓рдмреИрдХ рд╣реИрдВ, рдЕрдкрдиреЗ рдЖрдк рдореЗрдВ рдЙрдирдХрд╛ рд╕рд┐рдВрдХ/рдПрд╕рд┐рдВрдХ рд╕рд╛рдорд╛рди рд╕реЗ рдХреЛрдИ рд▓реЗрдирд╛-рджреЗрдирд╛ рдирд╣реАрдВ рд╣реИред

рдареАрдХ рд╣реИ, рд╣рдореЗрдВ callback рд╢рдмреНрдж рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмрд╛рдд рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ: рдкрд▓рдХ:ред

рдореБрдЭреЗ рдкрддрд╛ рд╣реИ, рдХреБрдЫ do рдХреЙрд▓ рдлрд╝рдВрдХреНрд╢рди forEach a callback (рдЬреИрд╕реЗ MDN ) рдореЗрдВ рдкрд╛рд╕ рд╣реЛ рдЬрд╛рддреЗ рд╣реИрдВред рдореИрдВ рдЗрд╕реЗ рдРрд╕рд╛ рдирд╣реАрдВ рдХрд╣реВрдВрдЧрд╛, рдХреНрдпреЛрдВрдХрд┐ рдореЗрд░реЗ рд▓рд┐рдП рдХреЙрд▓рдмреИрдХ рдХреБрдЫ рдРрд╕рд╛ рд╣реИ рдЬрд┐рд╕реЗ рдХрд╛рд░реНрдп рд╕рдорд╛рдкреНрдд рд╣реЛрдиреЗ рдкрд░ рдХрд╣рд╛ рдЬрд╛рддрд╛ рд╣реИред

рдФрд░ рдпрджрд┐ рдХреЙрд▓рдмреИрдХ рдкрд╣рд▓реЗ рддрд░реНрдХ рдХреЗ рд╕рд╛рде рдиреЛрдб рдХреЗ рддреНрд░реБрдЯрд┐ рд╕рдореНрдореЗрд▓рди рдХрд╛ рдЕрдиреБрд╕рд░рдг рдХрд░рддрд╛ рд╣реИ null рдпрд╛ рдПрдХ рддреНрд░реБрдЯрд┐, рддреЛ _always_ рдЗрд╕реЗ рдЕрддреБрд▓реНрдпрдХрд╛рд▓рд┐рдХ рд░реВрдк рд╕реЗ рдХреЙрд▓ рдХрд░рдиреЗ рдХреЗ рдЕрдЪреНрдЫреЗ рдХрд╛рд░рдг рд╣реИрдВред

рдореБрдЭреЗ рдкрддрд╛ рд╣реИ, рдХреБрдЫ рдХреЙрд▓ рдлрд╝рдВрдХреНрд╢рди forEach рдХреЛ рдХреЙрд▓рдмреИрдХ рдореЗрдВ рдкрд╛рд╕ рдХрд░ рджреЗрддреЗ рд╣реИрдВ`

рдХреЛрдИ рдмрд╣реБрдд рдЕрдзрд┐рдХ node рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд░рд╣рд╛ рд╣реИ;) рд╣рд░ рдХреЛрдИ рдЗрд╕ рдЪреАрдЬрд╝ рдХреЛ "рдХреЙрд▓рдмреИрдХ" рдирд╛рдо рджреЗрддрд╛ рд╣реИред рддреЛ рдпрджрд┐ рдХреЛрдИ "рдПрдХ рдХреЙрд▓рдмреИрдХ рдлрд╝рдВрдХреНрд╢рди рдЬрд┐рд╕реЗ рдХрд╛рд░реНрдп рд╕рдорд╛рдкреНрдд рд╣реЛрдиреЗ рдкрд░ рдмреБрд▓рд╛рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ" рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╣реИ рддреЛ рдпрд╣ "рдПрд╕рд┐рдВрдХреНрд░реЛрдирд╕ рдХреЙрд▓рдмреИрдХ" рд╕реЗ рдХрдо рдирд╣реАрдВ рд╣реИред

рд▓реЗрдХрд┐рди рдХреЛрдИ рдмрд╛рдд рдирд╣реАрдВ, рдХреНрд╖рдорд╛ рдХрд░реЗрдВ, рдореЗрд░рд╛ рдорддрд▓рдм рд╕реАрдУ рдХреА рддрд░рд╣ рдЖрд╡рд╛рдЬ рдХрд░рдирд╛ рдФрд░ рдпрд╣ рд╡рд┐рд╢реБрджреНрдз рд░реВрдк рд╕реЗ рднрд╛рд╖рд╛рдИ рдмрд╣рд╕ рд╢реБрд░реВ рдХрд░рдирд╛ рдирд╣реАрдВ рдерд╛ (рдмрд╕ рдпрд╣ рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░рдирд╛ рдЪрд╛рд╣рддрд╛ рдерд╛ рдХрд┐ рд╣рдо рдПрдХ рд╣реА рднрд╛рд╖рд╛ рдмреЛрд▓рддреЗ рд╣реИрдВ рдФрд░ рдбреЙрдХреНрд╕ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ less.render рдХрд╛ рдЙрд▓реНрд▓реЗрдЦ рд╕рдордХрд╛рд▓рд┐рдХ рд╣реИ)ред

рдкреАрдПрд╕ рдмрд╕ рдФрд░ рдЕрдзрд┐рдХ рд╕реНрдкрд╖реНрдЯ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП:

@kwketh

рдпрд╣ less.render рдлрд╝реЙрд░реНрдо рд╡рд░реНрд╖реЛрдВ рд╕реЗ рдерд╛, рдЖрдк рдХреЗрд╡рд▓ рдЬрд╝рд┐рд▓рд┐рдпрди рд╕реНрдирд┐рдкреЗрдЯреНрд╕ рдХреЛ рддреЛрдбрд╝рдиреЗ рдХреЗ рд▓рд┐рдП рдЗрд╕реЗ рдХреБрдЫ рднреА рдирд╣реАрдВ рд▓реЗ рдФрд░ рдмрджрд▓ рд╕рдХрддреЗ рд╣реИрдВред

@ рд╕рд╛рдд-рдЪрд░рдг-рдЕрдзрд┐рдХрддрдо

рдЖрдкрдХреЗ рдЙрддреНрддрд░реЛрдВ рдХреЗ рд▓рд┐рдП рдмрд╣реБрдд рдзрдиреНрдпрд╡рд╛рдж, рд╡реЗ рд╕рднреА рд╕рд╣рд╛рдпрдХ рд╣реИрдВред рдореИрдВ рдХреЙрд▓рдмреИрдХ рдХреЗ рд╕рдВрдмрдВрдз рдореЗрдВ рдЖрдкрдХреЗ рд╕рднреА рдмрд┐рдВрджреБрдУрдВ рд╕реЗ рд╕рд╣рдордд рд╣реВрдВред рдореИрдВрдиреЗ .render рдХреЛрдб рдкрд░ рдмрд╣реБрдд рд╕рдВрдХреНрд╖рд┐рдкреНрдд рдирдЬрд╝рд░ рдбрд╛рд▓реА рдФрд░ рдЖрдк рд╕рд╣реА рд╣реИрдВ, рдЬрд┐рд╕ рд░реВрдк рдореЗрдВ рдпрд╣ рд▓рд┐рдЦрд╛ рдЧрдпрд╛ рд╣реИ, рдпрд╣ рд╕рдм рдХреЙрд▓рдмреИрдХ рдХреЗ рдЗрд░реНрдж-рдЧрд┐рд░реНрдж рдШреВрдорддрд╛ рд╣реИ рдФрд░ renderSync рдЖрд╕рд╛рди рдпрд╛ рдЙрдЪрд┐рдд рдирд╣реАрдВ рд▓рдЧрддрд╛ рд╣реИред

рдореЗрд░реА рд╕рдорд╕реНрдпрд╛ рдХрд┐рд╕реА рддрд░рд╣ рдЕрд▓рдЧ рд╣реИ рд▓реЗрдХрд┐рди рд╕рдВрдмрдВрдзрд┐рдд рд╣реИ (https://github.com/less/less.js/issues/2546)ред renderSync рд╕реБрд╡рд┐рдзрд╛ рдХреЛ рд▓рд╛рдЧреВ рдХрд░рдиреЗ рд╕реЗ рдореЗрд░реА рд╕рдорд╕реНрдпрд╛ рдХрд╛ рд╕рдорд╛рдзрд╛рди рд╣реЛ рдЬрд╛рдПрдЧрд╛ рд▓реЗрдХрд┐рди рдпрд╣ рдЕрдВрддрд┐рдо рд╕рдорд╛рдзрд╛рди рдирд╣реАрдВ рд╣реЛрдЧрд╛ред

рдХреНрдпрд╛ рдЖрдкрдХреЛ рдПрдХ рддреНрд╡рд░рд┐рдд рдирдЬрд╝рд░ рд░рдЦрдиреЗ рдореЗрдВ рдХреЛрдИ рдЖрдкрддреНрддрд┐ рд╣реИ? рдореБрдЭреЗ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдЗрд╕рдХреА рдкреНрд░рд╢рдВрд╕рд╛ рдХрд░рдиреА рд╣реЛрдЧреАред

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

рдХреЛрдИ рдЕрднреА рдмрд╣реБрдд рдЕрдзрд┐рдХ рдиреЛрдб рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд░рд╣рд╛ рд╣реИ

рдЦреИрд░, рдпрд╣ рд╕рдЪ рд╣реИ: рдореБрд╕реНрдХрд░рд╛рд╣рдЯ:

рд▓реЗрдХрд┐рди рдиреЛрдб рдХрд╛ рдХреЙрд▓рдмреИрдХ рдХрдиреНрд╡реЗрдВрд╢рди рдЕрдЪреНрдЫреА рддрд░рд╣ рд╕реЗ рд╕реНрдерд╛рдкрд┐рдд рд╣реИред рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЗрд╕ рдорд╛рдорд▓реЗ рдореЗрдВ рдХреЙрд▓рдмреИрдХ рдХреЛ рд╣рдореЗрд╢рд╛ рдЕрд╕реАрдорд┐рдд рд░реВрдк рд╕реЗ рдмреБрд▓рд╛рдпрд╛ рдЬрд╛рдПрдЧрд╛ред

рдЗрд╕рдХреЗ рдЕрддрд┐рд░рд┐рдХреНрдд: рддреНрд░реБрдЯрд┐ рд╣реЛрдиреЗ рдкрд░ рддреНрд░реБрдЯрд┐рдпреЛрдВ рдХреЛ рдХреИрд╕реЗ рдирд┐рдпрдВрддреНрд░рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ? рдХреНрдпрд╛ рдЗрд╕реЗ рдлреЗрдВрдХ рджрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ (рдЕрдзрд┐рдХрд╛рдВрд╢ рд╕рд┐рдВрдХ рдПрдкреАрдЖрдИ рдХреА рддрд░рд╣) рдпрд╛ рдХреЙрд▓рдмреИрдХ рдХреЗ рддрд░реНрдХ рдХреЗ рд░реВрдк рдореЗрдВ рдкрд╛рд░рд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ?

рдпрд╣ рд╕рд┐рд░реНрдл рдЗрддрдирд╛ рд╣реИ рдХрд┐ рд╡рд░реНрддрдорд╛рди рдПрдкреАрдЖрдИ рдЕрд╕реНрдкрд╖реНрдЯ рд╣реИ (рдХрдо рд╕реЗ рдХрдо рдЗрдореНрд╣реЛ)

рдХреНрдпрд╛ рдЕрднреА рддрдХ рдХреЛрдИ renderSync рд╣реИ? рдпрджрд┐ рдирд╣реАрдВ, рддреЛ рдХреНрдпрд╛ рд╕рдордХрд╛рд▓рд┐рдХ render рд▓рд┐рдП рдХреЛрдИ рд╕рдорд╛рдзрд╛рди рд╣реИ?

рд╕рдВрдкрд╛рджрд┐рдд рдХрд░реЗрдВ: рдПрдирд╡реАрдПрдоред рднрд╡рд┐рд╖реНрдп рдХреЗ рдХрд┐рд╕реА рднреА рд╡реНрдпрдХреНрддрд┐ рдХреЗ рд▓рд┐рдП рдЬреЛ рдЗрд╕ рдкрд░ рдареЛрдХрд░ рдЦрд╛рддрд╛ рд╣реИ, рдореИрдВрдиреЗ рдпрд╣реА рдХрд┐рдпрд╛ рд╣реИ:

less.renderSync = function (input, options) {
    if (!options || typeof options != "object") options = {};
    options.sync = true;
    var css;
    this.render(input, options, function (err, result) {
        if (err) throw err;
        css = result.css;
    });
    return css;
};

рдХреНрдпрд╛ рдпрд╣ рд╕реБрд╡рд┐рдзрд╛ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рд▓рд╛рдЧреВ рдХреА рдЧрдИ рд╣реИ? рдХреНрдпрд╛ рдХреЛрдИ рджрд╕реНрддрд╛рд╡реЗрдЬ рд╣реИ? рдореБрдЭреЗ рдХреЗрд╡рд▓ async -рд╡рд┐рдХрд▓реНрдк рдорд┐рд▓ рд╕рдХрддрд╛ рд╣реИред

Idk рдЕрдЧрд░ рдпрд╣ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рд╕рдорд░реНрдерд┐рдд рд╣реИ, рд▓реЗрдХрд┐рди рдореБрдЭреЗ рдкрддрд╛ рд╣реИ рдХрд┐ рдореИрдВрдиреЗ рдЬреЛ рдХрд┐рдпрд╛ рд╡рд╣ рдореЗрд░реЗ рд▓рд┐рдП рд╡рд░реНрддрдорд╛рди рдореЗрдВ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП .... shrug

@Aarilight рдмрд╣реБрдд рдмрд╣реБрдд рдзрдиреНрдпрд╡рд╛рдж, рдЖрдкрдХреЗ рдХреЛрдб рдиреЗ рдмрд╣реБрдд рдорджрдж рдХреА

рдпрд╣ рддреБрд▓реНрдпрдХрд╛рд▓рд┐рдХ рдХреЙрд▓рдмреИрдХ рд╡реНрдпрд╡рд╣рд╛рд░ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдкреНрд░рддрд┐-рд╕рд╣рдЬ рд╣реИ: рднреНрд░рдорд┐рдд:

@Aarilight рдпрд╣ рдореЗрд░реЗ рд▓рд┐рдП рдХрд╛рдо рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИ = (
рдореИрдВрдиреЗ рдХреЛрд╢рд┐рд╢ рдХреА

less.render(css, {sync : true}, (e, result) =>{
        if(e) {
         console.error(e)
    }

        output = result;
        return result
    });

рдФрд░ рд▓реЙрдЧ рдЗрди рдХрд┐рдпрд╛ https://github.com/less/less.js/blob/master/lib/less/render.js

            console.log('1')
            this.parse(input, options, function(err, root, imports, options) {
                console.log('2')
                if (err) { return callback(err); }

                var result;
                console.log('3')
                try {
                    console.log('4')
                    var parseTree = new ParseTree(root, imports);
                    console.log('5')
                    result = parseTree.toCSS(options);
                }
                catch (err) { 
                    console.log('6')
                    return callback(err); 
                }

                console.log('7')
                callback(null, result);
            });
            console.log('8')

рдФрд░ рдореИрдВ рдХреБрдЫ рдлрд╛рдЗрд▓реЛрдВ рдХреЗ рд▓рд┐рдП 1, 8 рдФрд░ рдлрд┐рд░ 2,3,4,5,6,7 рджреЗрдЦрддрд╛ рд╣реВрдВ

-1 render рдФрд░ renderSync рдореЗрдВ рд░реЗрдВрдбрд░ рдХреЛ рд╡рд┐рднрд╛рдЬрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдПред рдпрд╣ рдПрдХ Node.js рд╕рдореНрдореЗрд▓рди рд╣реИ рдЬреЛ рдЕрдЬреАрдм рд╣реИред рдФрд░ рдпрд╣ рдШреБрд░рдШреБрд░рд╛рдирд╛ / рдШреВрдВрдЯ / рд╕рдордЭреМрддреЗ рдпрд╛ рдХрдо рдореЗрдВ рдПрдХреАрдХреГрдд рдЕрдиреНрдп рд╡рд░реНрдХрдлрд╝реНрд▓реЛрдЬрд╝ рдХреЛ рдПрдХ рд╕рд┐рдВрдХ рд╡рд┐рдХрд▓реНрдк рднреЗрдЬрдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рдирд╣реАрдВ рджреЗрддрд╛ рд╣реИ рдЬреЛ рдХрд┐рд╕реА рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдлрд╝рдВрдХреНрд╢рди рдХреЗ рд▓рд┐рдП JS рдСрдмреНрдЬреЗрдХреНрдЯ рдореЗрдВ рдкрд╛рд╕ рд╣реЛрддрд╛ рд╣реИред рдЖрдИрдПрдордУ рдПрд╕рд┐рдВрдХ рд╡рд┐рдХрд▓реНрдк рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╕рдордп рд╡реИрдХрд▓реНрдкрд┐рдХ рдХреЙрд▓рдмреИрдХ рдореЗрдВ рдкрд╛рд╕ рдХрд░рдирд╛ рдареАрдХ рд╣реИред

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

рдФрд░ рдмреАрдЯреАрдбрдмреНрд▓реНрдпреВред:

{sync: true}

рдРрд╕рд╛ рдХреЛрдИ рд╡рд┐рдХрд▓реНрдк

-1 рд░реЗрдВрдбрд░ рдФрд░ рд░реЗрдВрдбрд░рд╕рд┐рдВрдХ рдореЗрдВ рд░реЗрдВрдбрд░ рдХреЛ рд╡рд┐рднрд╛рдЬрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдПред рдпрд╣ рдПрдХ Node.js рд╕рдореНрдореЗрд▓рди рд╣реИ рдЬреЛ рдЕрдЬреАрдм рд╣реИред

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

рдХреНрдпрд╛ рдпрд╣ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рд╡реНрдпрдХреНрддрд┐рдкрд░рдХ рджреГрд╖реНрдЯрд┐рдХреЛрдг рдирд╣реАрдВ рд╣реИ?

рд╣рд╛рдВред

рднрд▓реЗ рд╣реА, рдореЗрд░рд╛ рджреВрд╕рд░рд╛ рдмрд┐рдВрджреБ рд╡реНрдпрдХреНрддрд┐рдкрд░рдХ рдирд╣реАрдВ рд╣реИред рдпрд╣реА рд╣реИ, рдирд┐рд░реНрдорд╛рдг рдкреНрд░рдХреНрд░рд┐рдпрд╛рдУрдВ рдореЗрдВ рдХрдо рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ рдЬрд┐рд╕реЗ рдлрд╝рдВрдХреНрд╢рди рд╡рд┐рднрд╛рдЬрд┐рдд рд╣реЛрдиреЗ рдкрд░ рдЕрджреНрдпрддрди рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛ рд╕рдХрддреА рд╣реИред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП: рдПрдХреЙрд░реНрдб (https://github.com/jenius/accord), рдЬрд┐рд╕реЗ рдореИрдВ рд╡рд░реНрддрдорд╛рди рдореЗрдВ рдПрдХ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХреЗ рд▓рд┐рдП рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реВрдВ, рдПрдХ рд╣реА рдПрдкреАрдЖрдИ рдореЗрдВ рдЕрд▓рдЧ-рдЕрд▓рдЧ рдХрдВрдкрд╛рдЗрд▓рд░реНрд╕ рдХреЛ рдЕрд▓рдЧ рдХрд░рддрд╛ рд╣реИ, рдФрд░ рдЖрдо рддреМрд░ рдкрд░ рдХрд┐рд╕реА рдСрдмреНрдЬреЗрдХреНрдЯ рдореЗрдВ рдЙрд╕ рдЗрдВрдЬрди рдХреЛ рдЬреЛ рднреА рдлрд╝рдВрдХреНрд╢рди рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИ рдЙрд╕реЗ рдкрд╛рд╕ рдХрд░рддрд╛ рд╣реИред рдЗрд╕рд▓рд┐рдП, рдбреЗрд╡рд▓рдкрд░ рджреНрд╡рд╛рд░рд╛ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрдо рд╡рд┐рдХрд▓реНрдкреЛрдВ рдХреЗ рдЖрдзрд╛рд░ рдкрд░ рдХреМрди рд╕реЗ рдлрд╝рдВрдХреНрд╢рди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдпрд╣ рд╕реНрд╡рд┐рдЪ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╢рд╛рдпрдж рдпрд╣ рдПрдХ рдмрдбрд╝рд╛ рд╕реМрджрд╛ рдирд╣реАрдВ рд╣реИ, рд▓реЗрдХрд┐рди рдореБрдЭреЗ рдпрдХреАрди рдирд╣реАрдВ рд╣реИ рдХрд┐ рдХрд┐рддрдиреЗ рдкреБрд╕реНрддрдХрд╛рд▓рдп рдкреНрд░рднрд╛рд╡рд┐рдд рд╣реЛрдВрдЧреЗред рдпрд╣ рд╕рд┐рд░реНрдл рдЬрд╛рдЧрд░реВрдХ рд╣реЛрдиреЗ рдХреА рдмрд╛рдд рд╣реИред

рдЕрднреА рддрдХ, рдореЗрд░реЗ рд╡рд┐рдХрд▓реНрдкреЛрдВ рдореЗрдВ syncImport: true рдЬреЛрдбрд╝рдиреЗ рд╕реЗ рдпрд╣ рдореЗрд░реЗ рд▓рд┐рдП рддрдп рд╣реЛ рдЧрдпрд╛ рд╣реИред

(рдпрд╣ рджрд╕реНрддрд╛рд╡реЗрдЬрд╝реАрдХрд░рдг рдореЗрдВ рдирд╣реАрдВ рд╣реИ... рдореИрдВ рдмрд╕ рдЗрддрдирд╛ рднрд╛рдЧреНрдпрд╢рд╛рд▓реА рдерд╛ рдХрд┐ рд╕реНрд░реЛрдд рдХреЛрдб рдореЗрдВ рдЗрд╕ рдкрд░ рдареЛрдХрд░ рдЦрд╛рдИ)

рдЗрд╕ рд╕рдорд╕реНрдпрд╛ рдХреЛ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд░реВрдк рд╕реЗ рдкреБрд░рд╛рдиреЗ рдХреЗ рд░реВрдк рдореЗрдВ рдЪрд┐рд╣реНрдирд┐рдд рдХрд░ рджрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рдЗрд╕рдореЗрдВ рд╣рд╛рд▓ рдХреА рдЧрддрд┐рд╡рд┐рдзрд┐ рдирд╣реАрдВ рд╣реИред рдЖрдЧреЗ рдХреЛрдИ рдЧрддрд┐рд╡рд┐рдзрд┐ рдирд╣реАрдВ рд╣реЛрдиреЗ рдкрд░ рдЗрд╕реЗ рдмрдВрдж рдХрд░ рджрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ред рдЖрдкрдХреЗ рдпреЛрдЧрджрд╛рдиреЛрдВ рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рджред

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

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

Oskariok picture Oskariok  ┬╖  6рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

papandreou picture papandreou  ┬╖  7рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

matthew-dean picture matthew-dean  ┬╖  6рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

joe223 picture joe223  ┬╖  4рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

BrianMulhall picture BrianMulhall  ┬╖  4рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ