рдкреЗрдЬрдХрд┐рдЯ - рд╕реНрд╡-рд╣реЛрд╕реНрдЯреЗрдб GrapesJS рд╕рд╛рдЗрдЯ рдмрд┐рд▓реНрдбрд░, рд╕реНрд░реЛрдд рдХреЗ рд░реВрдк рдореЗрдВ рдмреЗрдЪрд╛ рдЧрдпрд╛ред рдЬрд▓реНрджреА рдкрд╣реБрдВрдЪ рдкреНрд░рд╛рдкреНрдд рдХрд░реЗрдВ

рдЕрдВрдХ #2143ЁЯТм рдЙрддреНрддрд░ рджрд┐рдпрд╛рдЦреЛрд▓рд╛ рдЧрдпрд╛ 16 рдЬреБрд▓рд╛рдИ 2019рджреНрд╡рд╛рд░рд╛ chauhankiran0 рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛рдПрдВ

рдкреНрд░рд╢реНрди - рдореИрдВ рд▓рд┐рдВрдХ рдХреЗ рд░реВрдк рдореЗрдВ рдореМрдЬреВрджрд╛ рдЫрд╡рд┐ рдХреИрд╕реЗ рдмрдирд╛ рд╕рдХрддрд╛ рд╣реВрдВ

рддреНрд╡рд░рд┐рдд рдЙрддреНрддрд░рджреНрд╡рд╛рд░рд╛ miky9585

рдореИрдВрдиреЗ рдЗрд╕ рддрд░рд╣ рд╕реЗ рд╣рд▓ рдХрд┐рдпрд╛ рд╣реИ: рдмреИрдХрдПрдВрдб рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдкрд░: var originalImage = editor.DomComponents.getType('image'); editor.DomComponents.addType('image', { рдореЙрдбрд▓: originalImage.model.extend({ рдбрд┐рдлрд╝реЙрд▓реНрдЯ: Object.assign({}, originalImage.model.prototype.defaults, { рд▓рдХреНрд╖рдг:[{ рдкреНрд░рдХрд╛рд░: "рдкрд╛рда", рд▓реЗрдмрд▓: "рдЖрдИрдбреА", рдирд╛рдо: "рдЖрдИрдбреА" }, { рдкреНрд░рдХрд╛рд░: "рдкрд╛...

рдиреАрдЪреЗ рдкреВрд░рд╛ рдЙрддреНрддрд░ рдкрдврд╝реЗрдВ тЖУ

рдкреНрд░рд╢реНрди

рдореЗрд░реЗ рдкрд╛рд╕ рдПрдХ рдореМрдЬреВрджрд╛ рдЯреЗрдореНрдкрд▓реЗрдЯ рд╣реИ рдЬреЛ рд╡рд░реНрддрдорд╛рди рдореЗрдВ рдкреГрд╖реНрда рдХреЗ рдордзреНрдп рдореЗрдВ рдЫрд╡рд┐ рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░ рд░рд╣рд╛ рд╣реИред рдЕрдм, рдореИрдВ рдЗрд╕реЗ рд▓рд┐рдВрдХ рдпрд╛ рдХреНрд▓рд┐рдХ рдХрд░рдиреЗ рдпреЛрдЧреНрдп рдмрдирд╛рдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВ рддрд╛рдХрд┐ рдпрджрд┐ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдЫрд╡рд┐ рдкрд░ рдХреНрд▓рд┐рдХ рдХрд░рддрд╛ рд╣реИ рддреЛ рдЗрд╕реЗ href рдореЗрдВ рджрд┐рдпрд╛ рдЧрдпрд╛ рдЦреБрд▓рдирд╛ рдЪрд╛рд╣рд┐рдПред рдпрд╣ рдХреИрд╕реЗ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ? рд╡рд░реНрддрдорд╛рди рдореЗрдВ, рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рд▓рд┐рдВрдХ рдмреНрд▓реЙрдХ рд╣реИ рдФрд░ рдЗрд╕рдХреЗ рдЕрдВрджрд░, рд╣рдо рдПрдХ рдЫрд╡рд┐ рд░рдЦ рд╕рдХрддреЗ рд╣реИрдВред рд▓реЗрдХрд┐рди, рдореИрдВ рд▓рд┐рдВрдХ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд░рд┐рд╡рд░реНрд╕ - рдореМрдЬреВрджрд╛ рдЫрд╡рд┐ рдХреЗ рд▓рд┐рдП рдХрд╣ рд░рд╣рд╛ рд╣реВрдВред

рдЬрд╡рд╛рдм (3)

miky9585тАв 24 рдЬреБрд▓рд╛рдИ 2019

рдореИрдВрдиреЗ рдЗрд╕ рддрд░рд╣ рд╕реЗ рд╣рд▓ рдХрд┐рдпрд╛ рд╣реИ: рдмреИрдХрдПрдВрдб рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдкрд░: var originalImage = editor.DomComponents.getType('image'); editor.DomComponents.addType('image', { рдореЙрдбрд▓: originalImage.model.extend({ рдбрд┐рдлрд╝реЙрд▓реНрдЯ: Object.assign({}, originalImage.model.prototype.defaults, { рд▓рдХреНрд╖рдг:[{ рдкреНрд░рдХрд╛рд░: "рдкрд╛рда", рд▓реЗрдмрд▓: "рдЖрдИрдбреА", рдирд╛рдо: "рдЖрдИ...

miky9585тАв 24 рдЬреБрд▓рд╛рдИ 2019

рдПрд╕рдИрдУ рдлреНрд░реЗрдВрдбрд▓реА рдмреИрдХрдПрдВрдб (Alt attr рдЬреЛрдбрд╝рд╛ рдЧрдпрд╛) var originalImage = editor.DomComponents.getType('image'); editor.DomComponents.addType('image', { рдореЙрдбрд▓: originalImage.model.extend({ рдбрд┐рдлрд╝реЙрд▓реНрдЯ: Object.assign({}, originalImage.model.prototype.defaults, { рд▓рдХреНрд╖рдг:[{ рдкреНрд░рдХрд╛рд░: "рдкрд╛рда", рд▓реЗрдмрд▓: "рдЖрдИрдбреА", рдирд╛рдо: "рдЖрдИрдбреА" },...

artfтАв 31 рдЬреБрд▓рд╛рдИ 2019

@chauhankiran рд╕рд╣реА рдХрджрдо рдПрдХ рдХрд╕реНрдЯрдо рдШрдЯрдХ рдмрдирд╛рдирд╛ рд╣реЛрдЧрд╛, рдЬрд┐рд╕ рддрд░рд╣ рдХрд╛ link-image image рдХреЛ рдмрджрд▓ рджреЗрдЧрд╛ред рдЗрд╕ рдШрдЯрдХ рдХреА рдЬрдбрд╝ <a> рддрддреНрд╡ рд╣реЛрдЧреА рдФрд░ рдЖрдВрддрд░рд┐рдХ рдПрдХ рдЫрд╡рд┐ рд╣реЛрдЧреАред

рд╕рдВрдмрдВрдзрд┐рдд рдкреНрд░рд╢реНрди рдФрд░ рдЙрддреНрддрд░

рдЗрд╕реА рддрд░рд╣ рдХреА рдореБрджреНрджреЛрдВ рдкрд░ рдЪрд░реНрдЪрд╛рдУрдВ рдХреЗ рд╕рд╛рде рд╢реЛрдз рдЬрд╛рд░реА рд░рдЦреЗрдВред

рдЕрдВрдХ #6263

рдбреБрдкреНрд▓рд┐рдХреЗрдЯ рдХрд┐рдП рдЧрдП рд▓рд┐рдВрдХ рдЖрд░рдЯреАрдИ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдЬреЛрдбрд╝реЗ рдЬрд╛рддреЗ рд╣реИрдВ

GrapesJS рд╕рдВрд╕реНрдХрд░рдг[X] рдореИрдВ GrapesJS рдХреЗ рдирд╡реАрдирддрдо рд╕рдВрд╕реНрдХрд░рдг рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреА рдкреБрд╖реНрдЯрд┐ рдХрд░рддрд╛ рд╣реВрдВ рдЖрдк рдХрд┐рд╕ рдмреНрд░рд╛рдЙрдЬрд╝рд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд░рд╣реЗ рд╣реИрдВ? рдХреНрд░реЛрдорд┐рдпрдордкреНрд░рддрд┐рд▓рд┐рдкрд┐...

4 рдЙрддреНрддрд░рдЕрдкрдбреЗрдЯ рдХрд┐рдпрд╛ рдЧрдпрд╛ 5 рдорд╛рд░реНрдЪ 2025

рдЕрдВрдХ #6096

рдШрдЯрдХ рдкреБрдирд░реНрдЪрдпрди рдкрд░ рдЖрдХрд╛рд░ рдмрджрд▓рдиреЗ рдпреЛрдЧреНрдп рдмреЙрдХреНрд╕ рдЧрд╛рдпрдм рд╣реЛ рдЬрд╛рддрд╛ рд╣реИ

GrapesJS рд╕рдВрд╕реНрдХрд░рдг [X] рдореИрдВ GrapesJS рдХреЗ рдирд╡реАрдирддрдо рд╕рдВрд╕реНрдХрд░рдг рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреА рдкреБрд╖реНрдЯрд┐ рдХрд░рддрд╛ рд╣реВрдВ рдЖрдк рдХрд┐рд╕ рдмреНрд░рд╛рдЙрдЬрд╝рд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд░рд╣реЗ рд╣реИрдВ? рдХреНрд░реЛрдорд┐рдпрдо рдкреНрд░рддрд┐рд▓рд┐рдк...

4 рдЙрддреНрддрд░рдЕрдкрдбреЗрдЯ рдХрд┐рдпрд╛ рдЧрдпрд╛ 6 рд╕рд┐рддрдореНрдмрд░ 2024

рдЕрдВрдХ #4929

рдЕрдВрджрд░ рдХрд╛ рдПрдХ рдЯреИрдЧ рдмрдЯрди рд╣рдЯрд╛ рджрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ

GrapesJS рд╕рдВрд╕реНрдХрд░рдг[X] рдореИрдВ GrapesJS рдХреЗ рдирд╡реАрдирддрдо рд╕рдВрд╕реНрдХрд░рдг рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреА рдкреБрд╖реНрдЯрд┐ рдХрд░рддрд╛ рд╣реВрдВ рдЖрдк рдХрд┐рд╕ рдмреНрд░рд╛рдЙрдЬрд╝рд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд░рд╣реЗ рд╣реИрдВ? Chrome рдирд╡реАрдирддрдордкреНрд░рддрд┐...

4 рдЙрддреНрддрд░рдЕрдкрдбреЗрдЯ рдХрд┐рдпрд╛ рдЧрдпрд╛ 23 рдлрд╝рд░рд╡рд░реА 2023

рдЕрдВрдХ #4411

XSS рдЬрдм рдЪрдпрдирдХрд░реНрддрд╛ рдкреНрд░рдмрдВрдзрдХ рдХреЗ рд▓рд┐рдП рд╡рд░реНрдЧ рдХрд╛ рдирд╛рдо рдЬреЛрдбрд╝реЗрдВ

GrapesJS рд╕рдВрд╕реНрдХрд░рдг [X] рдореИрдВ GrapesJS рдХреЗ рдирд╡реАрдирддрдо рд╕рдВрд╕реНрдХрд░рдг рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреА рдкреБрд╖реНрдЯрд┐ рдХрд░рддрд╛ рд╣реВрдВ рдЖрдк рдХрд┐рд╕ рдмреНрд░рд╛рдЙрдЬрд╝рд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд░рд╣реЗ рд╣реИрдВ? рдХреНрд░реЛрдо v102 рдкреНрд░рддрд┐рд▓...

4 рдЙрддреНрддрд░рдЕрдкрдбреЗрдЯ рдХрд┐рдпрд╛ рдЧрдпрд╛ 27 рдЬреВрди 2022

рд╕рд╢реБрд▓реНрдХ рдкреНрд▓рдЧрдЗрдиреНрд╕ рдЬреЛ рдЗрд╕ рд╕рдорд╕реНрдпрд╛ рд╕реЗ рдореЗрд▓ рдЦрд╛рддреЗ рд╣реИрдВ

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

рд╕рднреА рдкреНрд▓рдЧрдЗрдиреНрд╕ рджреЗрдЦреЗрдВ

рд╕рд╢реБрд▓реНрдХ рдкреНрд▓рдЧрдЗрди рдЕрдиреБрд╢рдВрд╕рд╛рдПрдБ рд▓реЛрдб рд╣реЛ рд░рд╣реА рд╣реИрдВ ...

рдирд┐рдГрд╢реБрд▓реНрдХ рд╡рд┐рдХрд▓реНрдк

рдУрдкрди-рд╕реЛрд░реНрд╕ GrapesJS рдкреНрд▓рдЧрдЗрдиреНрд╕ рдХреА рдЬрд╛рдБрдЪ рдХрд░реЗрдВ GitHub рдпрд╛ рд╣рдорд╛рд░реЗ рдореБрдлреНрдд рдХреИрдЯрд▓реЙрдЧ рдореЗрдВ рдПрдХ рддреНрд╡рд░рд┐рдд рдЦреЛрдЬ рдЪрд▓рд╛рдПрдВред

рдореБрдлреНрдд рдкреНрд▓рдЧрдЗрдиреНрд╕ рдмреНрд░рд╛рдЙрдЬрд╝ рдХрд░реЗрдВ тЖТ
рдкреНрд░реАрдорд┐рдпрдо рд╡рд┐рдХрд▓реНрдк

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

рдкреНрд░реАрдорд┐рдпрдо рдкреНрд▓рдЧрдЗрдиреНрд╕ рдмреНрд░рд╛рдЙрдЬрд╝ рдХрд░реЗрдВ тЖТ

рдмреНрд░рд╛рдЙрдЬрд╝ рдкреНрд▓рдЧрдЗрди рд╢реНрд░реЗрдгрд┐рдпрд╛рдБ

рд╕реАрдзреЗ рдмрд╛рдЬрд╝рд╛рд░ рдкрд░ рдкреНрд▓рдЧрдЗрди рд╢реНрд░реЗрдгреА рдХреЗ рдкреГрд╖реНрдареЛрдВ рдкрд░ рдЬрд╛рдПрдБред