Browse Source

deploy docs

gh-pages
Artur Arseniev 7 years ago
parent
commit
8de3b3acca
  1. 18
      docs/404.html
  2. 390
      docs/Home.html
  3. 96
      docs/api/assets.html
  4. 88
      docs/api/block_manager.html
  5. 86
      docs/api/canvas.html
  6. 76
      docs/api/commands.html
  7. 158
      docs/api/component.html
  8. 108
      docs/api/components.html
  9. 94
      docs/api/css_composer.html
  10. 70
      docs/api/device_manager.html
  11. 146
      docs/api/editor.html
  12. 92
      docs/api/i18n.html
  13. 45
      docs/api/index.html
  14. 74
      docs/api/keymaps.html
  15. 68
      docs/api/modal_dialog.html
  16. 110
      docs/api/panels.html
  17. 114
      docs/api/rich_text_editor.html
  18. 75
      docs/api/selector_manager.html
  19. 70
      docs/api/storage_manager.html
  20. 128
      docs/api/style_manager.html
  21. 84
      docs/api/undo_manager.html
  22. 1
      docs/assets/css/0.styles.d44f2c14.css
  23. 1
      docs/assets/css/1.styles.b40e6662.css
  24. 1
      docs/assets/css/2.styles.896e948d.css
  25. 1
      docs/assets/css/3.styles.46968bd4.css
  26. 1
      docs/assets/css/4.styles.79691bb5.css
  27. 1
      docs/assets/css/5.styles.6013373a.css
  28. 1
      docs/assets/css/6.styles.467c19a2.css
  29. 1
      docs/assets/css/7.styles.ce9d181d.css
  30. 1
      docs/assets/css/8.styles.aae17ac6.css
  31. 1
      docs/assets/css/9.styles.e0170b17.css
  32. 1
      docs/assets/css/styles.e1f2d947.css
  33. 1
      docs/assets/js/10.6a518be5.js
  34. 1
      docs/assets/js/10.e7cd7c26.js
  35. 1
      docs/assets/js/11.3f87b9b8.js
  36. 1
      docs/assets/js/11.b2ac4984.js
  37. 1
      docs/assets/js/12.269b5586.js
  38. 1
      docs/assets/js/12.bf8ecce1.js
  39. 1
      docs/assets/js/13.d807997f.js
  40. 1
      docs/assets/js/13.e52ea678.js
  41. 1
      docs/assets/js/14.0606827a.js
  42. 1
      docs/assets/js/14.0ba8a778.js
  43. 1
      docs/assets/js/15.52ce2afa.js
  44. 1
      docs/assets/js/15.aa7f42f8.js
  45. 1
      docs/assets/js/16.47266d46.js
  46. 1
      docs/assets/js/16.959c0bd7.js
  47. 1
      docs/assets/js/17.9b7a7fa4.js
  48. 1
      docs/assets/js/17.bfba947e.js
  49. 1
      docs/assets/js/18.66b0785d.js
  50. 1
      docs/assets/js/18.7f401ffb.js
  51. 1
      docs/assets/js/19.2f9692d0.js
  52. 1
      docs/assets/js/19.3e0ce3c8.js
  53. 1
      docs/assets/js/2.a342f4be.js
  54. 1
      docs/assets/js/20.ab1e767c.js
  55. 1
      docs/assets/js/20.f4502040.js
  56. 1
      docs/assets/js/21.2babea6a.js
  57. 1
      docs/assets/js/21.66fe8957.js
  58. 1
      docs/assets/js/22.26e5d9ed.js
  59. 1
      docs/assets/js/22.cb6c233f.js
  60. 1
      docs/assets/js/23.a2c9ec17.js
  61. 1
      docs/assets/js/23.dc99d7c7.js
  62. 1
      docs/assets/js/24.245fff8a.js
  63. 1
      docs/assets/js/24.f9675b16.js
  64. 1
      docs/assets/js/25.b52924ae.js
  65. 1
      docs/assets/js/25.d8c7e0b5.js
  66. 1
      docs/assets/js/26.81c00685.js
  67. 1
      docs/assets/js/26.ad7fc796.js
  68. 1
      docs/assets/js/27.169cfbf6.js
  69. 1
      docs/assets/js/27.7372785c.js
  70. 1
      docs/assets/js/28.df5c22ed.js
  71. 1
      docs/assets/js/28.f086d486.js
  72. 1
      docs/assets/js/29.5e2a7327.js
  73. 1
      docs/assets/js/29.b167a894.js
  74. 2
      docs/assets/js/3.7e642bff.js
  75. 1
      docs/assets/js/30.3a998b30.js
  76. 1
      docs/assets/js/30.d165faf7.js
  77. 1
      docs/assets/js/31.334d7953.js
  78. 1
      docs/assets/js/31.5286fade.js
  79. 1
      docs/assets/js/32.0a0e4ae7.js
  80. 1
      docs/assets/js/32.f9daa2c8.js
  81. 1
      docs/assets/js/33.0ba298a5.js
  82. 1
      docs/assets/js/33.93f49bfa.js
  83. 1
      docs/assets/js/34.07640632.js
  84. 1
      docs/assets/js/34.4865e6c3.js
  85. 1
      docs/assets/js/35.061f6dd5.js
  86. 1
      docs/assets/js/35.9d089775.js
  87. 1
      docs/assets/js/36.63462982.js
  88. 1
      docs/assets/js/36.67cb8d1f.js
  89. 1
      docs/assets/js/37.708a94ac.js
  90. 1
      docs/assets/js/37.e2d50838.js
  91. 1
      docs/assets/js/38.0f8df29b.js
  92. 1
      docs/assets/js/38.1230aa70.js
  93. 1
      docs/assets/js/39.074f3faf.js
  94. 1
      docs/assets/js/39.c8373102.js
  95. 2
      docs/assets/js/4.32ffd5a1.js
  96. 1
      docs/assets/js/40.0600f064.js
  97. 1
      docs/assets/js/40.cef45f06.js
  98. 1
      docs/assets/js/41.9bbfe266.js
  99. 1
      docs/assets/js/41.c734b929.js
  100. 1
      docs/assets/js/42.1078a060.js

18
docs/404.html

@ -4,16 +4,18 @@
<meta charset="utf-8">
<meta name="viewport" content="width=device-width,initial-scale=1">
<title>GrapesJS</title>
<meta name="description" content="GrapesJS documentation">
<meta name="generator" content="VuePress 1.4.1">
<link rel="icon" href="/docs/logo-icon.png">
<link rel="stylesheet" href="../stylesheets/grapes.min.css?v0.16.12">
<script src="../js/grapes.min.js?v0.16.12"></script>
<link rel="preload" href="/docs/assets/css/styles.e1f2d947.css" as="style"><link rel="preload" href="/docs/assets/js/app.e1f2d947.js" as="script"><link rel="prefetch" href="/docs/assets/css/1.styles.b40e6662.css"><link rel="prefetch" href="/docs/assets/css/2.styles.896e948d.css"><link rel="prefetch" href="/docs/assets/css/3.styles.46968bd4.css"><link rel="prefetch" href="/docs/assets/css/4.styles.79691bb5.css"><link rel="prefetch" href="/docs/assets/css/5.styles.6013373a.css"><link rel="prefetch" href="/docs/assets/css/6.styles.467c19a2.css"><link rel="prefetch" href="/docs/assets/css/7.styles.ce9d181d.css"><link rel="prefetch" href="/docs/assets/css/8.styles.aae17ac6.css"><link rel="prefetch" href="/docs/assets/css/9.styles.e0170b17.css"><link rel="prefetch" href="/docs/assets/js/1.b40e6662.js"><link rel="prefetch" href="/docs/assets/js/10.e7cd7c26.js"><link rel="prefetch" href="/docs/assets/js/11.3f87b9b8.js"><link rel="prefetch" href="/docs/assets/js/12.269b5586.js"><link rel="prefetch" href="/docs/assets/js/13.e52ea678.js"><link rel="prefetch" href="/docs/assets/js/14.0606827a.js"><link rel="prefetch" href="/docs/assets/js/15.aa7f42f8.js"><link rel="prefetch" href="/docs/assets/js/16.959c0bd7.js"><link rel="prefetch" href="/docs/assets/js/17.bfba947e.js"><link rel="prefetch" href="/docs/assets/js/18.7f401ffb.js"><link rel="prefetch" href="/docs/assets/js/19.3e0ce3c8.js"><link rel="prefetch" href="/docs/assets/js/2.896e948d.js"><link rel="prefetch" href="/docs/assets/js/20.f4502040.js"><link rel="prefetch" href="/docs/assets/js/21.2babea6a.js"><link rel="prefetch" href="/docs/assets/js/22.26e5d9ed.js"><link rel="prefetch" href="/docs/assets/js/23.a2c9ec17.js"><link rel="prefetch" href="/docs/assets/js/24.f9675b16.js"><link rel="prefetch" href="/docs/assets/js/25.b52924ae.js"><link rel="prefetch" href="/docs/assets/js/26.81c00685.js"><link rel="prefetch" href="/docs/assets/js/27.7372785c.js"><link rel="prefetch" href="/docs/assets/js/28.df5c22ed.js"><link rel="prefetch" href="/docs/assets/js/29.b167a894.js"><link rel="prefetch" href="/docs/assets/js/3.46968bd4.js"><link rel="prefetch" href="/docs/assets/js/30.d165faf7.js"><link rel="prefetch" href="/docs/assets/js/31.334d7953.js"><link rel="prefetch" href="/docs/assets/js/32.f9daa2c8.js"><link rel="prefetch" href="/docs/assets/js/33.93f49bfa.js"><link rel="prefetch" href="/docs/assets/js/34.4865e6c3.js"><link rel="prefetch" href="/docs/assets/js/35.9d089775.js"><link rel="prefetch" href="/docs/assets/js/36.67cb8d1f.js"><link rel="prefetch" href="/docs/assets/js/37.708a94ac.js"><link rel="prefetch" href="/docs/assets/js/38.0f8df29b.js"><link rel="prefetch" href="/docs/assets/js/39.074f3faf.js"><link rel="prefetch" href="/docs/assets/js/4.79691bb5.js"><link rel="prefetch" href="/docs/assets/js/40.cef45f06.js"><link rel="prefetch" href="/docs/assets/js/41.c734b929.js"><link rel="prefetch" href="/docs/assets/js/42.1078a060.js"><link rel="prefetch" href="/docs/assets/js/43.7188da01.js"><link rel="prefetch" href="/docs/assets/js/44.1fd52e91.js"><link rel="prefetch" href="/docs/assets/js/45.69c67864.js"><link rel="prefetch" href="/docs/assets/js/5.6013373a.js"><link rel="prefetch" href="/docs/assets/js/6.467c19a2.js"><link rel="prefetch" href="/docs/assets/js/7.ce9d181d.js"><link rel="prefetch" href="/docs/assets/js/8.aae17ac6.js"><link rel="prefetch" href="/docs/assets/js/9.e0170b17.js">
<link rel="stylesheet" href="/docs/assets/css/styles.e1f2d947.css">
<link rel="stylesheet" href="../stylesheets/grapes.min.css?v0.16.12">
<script src="../js/grapes.min.js?v0.16.12"></script>
<meta name="description" content="GrapesJS documentation">
<link rel="preload" href="/docs/assets/css/0.styles.d44f2c14.css" as="style"><link rel="preload" href="/docs/assets/js/app.4dd41b9b.js" as="script"><link rel="preload" href="/docs/assets/js/16.47266d46.js" as="script"><link rel="prefetch" href="/docs/assets/js/10.6a518be5.js"><link rel="prefetch" href="/docs/assets/js/11.b2ac4984.js"><link rel="prefetch" href="/docs/assets/js/12.bf8ecce1.js"><link rel="prefetch" href="/docs/assets/js/13.d807997f.js"><link rel="prefetch" href="/docs/assets/js/14.0ba8a778.js"><link rel="prefetch" href="/docs/assets/js/15.52ce2afa.js"><link rel="prefetch" href="/docs/assets/js/17.9b7a7fa4.js"><link rel="prefetch" href="/docs/assets/js/18.66b0785d.js"><link rel="prefetch" href="/docs/assets/js/19.2f9692d0.js"><link rel="prefetch" href="/docs/assets/js/2.a342f4be.js"><link rel="prefetch" href="/docs/assets/js/20.ab1e767c.js"><link rel="prefetch" href="/docs/assets/js/21.66fe8957.js"><link rel="prefetch" href="/docs/assets/js/22.cb6c233f.js"><link rel="prefetch" href="/docs/assets/js/23.dc99d7c7.js"><link rel="prefetch" href="/docs/assets/js/24.245fff8a.js"><link rel="prefetch" href="/docs/assets/js/25.d8c7e0b5.js"><link rel="prefetch" href="/docs/assets/js/26.ad7fc796.js"><link rel="prefetch" href="/docs/assets/js/27.169cfbf6.js"><link rel="prefetch" href="/docs/assets/js/28.f086d486.js"><link rel="prefetch" href="/docs/assets/js/29.5e2a7327.js"><link rel="prefetch" href="/docs/assets/js/3.7e642bff.js"><link rel="prefetch" href="/docs/assets/js/30.3a998b30.js"><link rel="prefetch" href="/docs/assets/js/31.5286fade.js"><link rel="prefetch" href="/docs/assets/js/32.0a0e4ae7.js"><link rel="prefetch" href="/docs/assets/js/33.0ba298a5.js"><link rel="prefetch" href="/docs/assets/js/34.07640632.js"><link rel="prefetch" href="/docs/assets/js/35.061f6dd5.js"><link rel="prefetch" href="/docs/assets/js/36.63462982.js"><link rel="prefetch" href="/docs/assets/js/37.e2d50838.js"><link rel="prefetch" href="/docs/assets/js/38.1230aa70.js"><link rel="prefetch" href="/docs/assets/js/39.c8373102.js"><link rel="prefetch" href="/docs/assets/js/4.32ffd5a1.js"><link rel="prefetch" href="/docs/assets/js/40.0600f064.js"><link rel="prefetch" href="/docs/assets/js/41.9bbfe266.js"><link rel="prefetch" href="/docs/assets/js/42.63c51d25.js"><link rel="prefetch" href="/docs/assets/js/43.d69d8e57.js"><link rel="prefetch" href="/docs/assets/js/44.a981446c.js"><link rel="prefetch" href="/docs/assets/js/45.415ecb59.js"><link rel="prefetch" href="/docs/assets/js/46.75d7a27f.js"><link rel="prefetch" href="/docs/assets/js/47.a4983875.js"><link rel="prefetch" href="/docs/assets/js/48.0dd7e7e0.js"><link rel="prefetch" href="/docs/assets/js/49.166bd1fa.js"><link rel="prefetch" href="/docs/assets/js/5.a0a5a0aa.js"><link rel="prefetch" href="/docs/assets/js/50.4e76f723.js"><link rel="prefetch" href="/docs/assets/js/51.21d145d2.js"><link rel="prefetch" href="/docs/assets/js/52.43234198.js"><link rel="prefetch" href="/docs/assets/js/6.9461537e.js"><link rel="prefetch" href="/docs/assets/js/7.3158bea4.js"><link rel="prefetch" href="/docs/assets/js/8.625d63ee.js"><link rel="prefetch" href="/docs/assets/js/9.e856c4d3.js">
<link rel="stylesheet" href="/docs/assets/css/0.styles.d44f2c14.css">
</head>
<body>
<div id="app" data-server-rendered="true"><div class="theme-container"><div class="content"><h1>404</h1><blockquote>Looks like we've got some broken links.</blockquote><a href="/docs/" class="router-link-active">Take me home.</a></div></div></div>
<script src="/docs/assets/js/app.e1f2d947.js" defer></script>
<div id="app" data-server-rendered="true"><div class="theme-container"><div class="theme-default-content"><h1>404</h1> <blockquote>How did we get here?</blockquote> <a href="/docs/" class="router-link-active">
Take me home.
</a></div></div><div class="global-ui"></div></div>
<script src="/docs/assets/js/app.4dd41b9b.js" defer></script><script src="/docs/assets/js/16.47266d46.js" defer></script>
</body>
</html>

390
docs/Home.html

@ -4,264 +4,270 @@
<meta charset="utf-8">
<meta name="viewport" content="width=device-width,initial-scale=1">
<title>Getting started | GrapesJS</title>
<meta name="description" content="GrapesJS documentation">
<meta name="generator" content="VuePress 1.4.1">
<link rel="icon" href="/docs/logo-icon.png">
<link rel="stylesheet" href="../stylesheets/grapes.min.css?v0.16.12">
<script src="../js/grapes.min.js?v0.16.12"></script>
<link rel="preload" href="/docs/assets/css/styles.e1f2d947.css" as="style"><link rel="preload" href="/docs/assets/js/app.e1f2d947.js" as="script"><link rel="preload" href="/docs/assets/js/11.3f87b9b8.js" as="script"><link rel="prefetch" href="/docs/assets/css/1.styles.b40e6662.css"><link rel="prefetch" href="/docs/assets/css/2.styles.896e948d.css"><link rel="prefetch" href="/docs/assets/css/3.styles.46968bd4.css"><link rel="prefetch" href="/docs/assets/css/4.styles.79691bb5.css"><link rel="prefetch" href="/docs/assets/css/5.styles.6013373a.css"><link rel="prefetch" href="/docs/assets/css/6.styles.467c19a2.css"><link rel="prefetch" href="/docs/assets/css/7.styles.ce9d181d.css"><link rel="prefetch" href="/docs/assets/css/8.styles.aae17ac6.css"><link rel="prefetch" href="/docs/assets/css/9.styles.e0170b17.css"><link rel="prefetch" href="/docs/assets/js/1.b40e6662.js"><link rel="prefetch" href="/docs/assets/js/10.e7cd7c26.js"><link rel="prefetch" href="/docs/assets/js/12.269b5586.js"><link rel="prefetch" href="/docs/assets/js/13.e52ea678.js"><link rel="prefetch" href="/docs/assets/js/14.0606827a.js"><link rel="prefetch" href="/docs/assets/js/15.aa7f42f8.js"><link rel="prefetch" href="/docs/assets/js/16.959c0bd7.js"><link rel="prefetch" href="/docs/assets/js/17.bfba947e.js"><link rel="prefetch" href="/docs/assets/js/18.7f401ffb.js"><link rel="prefetch" href="/docs/assets/js/19.3e0ce3c8.js"><link rel="prefetch" href="/docs/assets/js/2.896e948d.js"><link rel="prefetch" href="/docs/assets/js/20.f4502040.js"><link rel="prefetch" href="/docs/assets/js/21.2babea6a.js"><link rel="prefetch" href="/docs/assets/js/22.26e5d9ed.js"><link rel="prefetch" href="/docs/assets/js/23.a2c9ec17.js"><link rel="prefetch" href="/docs/assets/js/24.f9675b16.js"><link rel="prefetch" href="/docs/assets/js/25.b52924ae.js"><link rel="prefetch" href="/docs/assets/js/26.81c00685.js"><link rel="prefetch" href="/docs/assets/js/27.7372785c.js"><link rel="prefetch" href="/docs/assets/js/28.df5c22ed.js"><link rel="prefetch" href="/docs/assets/js/29.b167a894.js"><link rel="prefetch" href="/docs/assets/js/3.46968bd4.js"><link rel="prefetch" href="/docs/assets/js/30.d165faf7.js"><link rel="prefetch" href="/docs/assets/js/31.334d7953.js"><link rel="prefetch" href="/docs/assets/js/32.f9daa2c8.js"><link rel="prefetch" href="/docs/assets/js/33.93f49bfa.js"><link rel="prefetch" href="/docs/assets/js/34.4865e6c3.js"><link rel="prefetch" href="/docs/assets/js/35.9d089775.js"><link rel="prefetch" href="/docs/assets/js/36.67cb8d1f.js"><link rel="prefetch" href="/docs/assets/js/37.708a94ac.js"><link rel="prefetch" href="/docs/assets/js/38.0f8df29b.js"><link rel="prefetch" href="/docs/assets/js/39.074f3faf.js"><link rel="prefetch" href="/docs/assets/js/4.79691bb5.js"><link rel="prefetch" href="/docs/assets/js/40.cef45f06.js"><link rel="prefetch" href="/docs/assets/js/41.c734b929.js"><link rel="prefetch" href="/docs/assets/js/42.1078a060.js"><link rel="prefetch" href="/docs/assets/js/43.7188da01.js"><link rel="prefetch" href="/docs/assets/js/44.1fd52e91.js"><link rel="prefetch" href="/docs/assets/js/45.69c67864.js"><link rel="prefetch" href="/docs/assets/js/5.6013373a.js"><link rel="prefetch" href="/docs/assets/js/6.467c19a2.js"><link rel="prefetch" href="/docs/assets/js/7.ce9d181d.js"><link rel="prefetch" href="/docs/assets/js/8.aae17ac6.js"><link rel="prefetch" href="/docs/assets/js/9.e0170b17.js">
<link rel="stylesheet" href="/docs/assets/css/styles.e1f2d947.css">
<link rel="stylesheet" href="../stylesheets/grapes.min.css?v0.16.12">
<script src="../js/grapes.min.js?v0.16.12"></script>
<meta name="description" content="GrapesJS documentation">
<link rel="preload" href="/docs/assets/css/0.styles.d44f2c14.css" as="style"><link rel="preload" href="/docs/assets/js/app.4dd41b9b.js" as="script"><link rel="preload" href="/docs/assets/js/11.b2ac4984.js" as="script"><link rel="preload" href="/docs/assets/js/2.a342f4be.js" as="script"><link rel="preload" href="/docs/assets/js/17.9b7a7fa4.js" as="script"><link rel="prefetch" href="/docs/assets/js/10.6a518be5.js"><link rel="prefetch" href="/docs/assets/js/12.bf8ecce1.js"><link rel="prefetch" href="/docs/assets/js/13.d807997f.js"><link rel="prefetch" href="/docs/assets/js/14.0ba8a778.js"><link rel="prefetch" href="/docs/assets/js/15.52ce2afa.js"><link rel="prefetch" href="/docs/assets/js/16.47266d46.js"><link rel="prefetch" href="/docs/assets/js/18.66b0785d.js"><link rel="prefetch" href="/docs/assets/js/19.2f9692d0.js"><link rel="prefetch" href="/docs/assets/js/20.ab1e767c.js"><link rel="prefetch" href="/docs/assets/js/21.66fe8957.js"><link rel="prefetch" href="/docs/assets/js/22.cb6c233f.js"><link rel="prefetch" href="/docs/assets/js/23.dc99d7c7.js"><link rel="prefetch" href="/docs/assets/js/24.245fff8a.js"><link rel="prefetch" href="/docs/assets/js/25.d8c7e0b5.js"><link rel="prefetch" href="/docs/assets/js/26.ad7fc796.js"><link rel="prefetch" href="/docs/assets/js/27.169cfbf6.js"><link rel="prefetch" href="/docs/assets/js/28.f086d486.js"><link rel="prefetch" href="/docs/assets/js/29.5e2a7327.js"><link rel="prefetch" href="/docs/assets/js/3.7e642bff.js"><link rel="prefetch" href="/docs/assets/js/30.3a998b30.js"><link rel="prefetch" href="/docs/assets/js/31.5286fade.js"><link rel="prefetch" href="/docs/assets/js/32.0a0e4ae7.js"><link rel="prefetch" href="/docs/assets/js/33.0ba298a5.js"><link rel="prefetch" href="/docs/assets/js/34.07640632.js"><link rel="prefetch" href="/docs/assets/js/35.061f6dd5.js"><link rel="prefetch" href="/docs/assets/js/36.63462982.js"><link rel="prefetch" href="/docs/assets/js/37.e2d50838.js"><link rel="prefetch" href="/docs/assets/js/38.1230aa70.js"><link rel="prefetch" href="/docs/assets/js/39.c8373102.js"><link rel="prefetch" href="/docs/assets/js/4.32ffd5a1.js"><link rel="prefetch" href="/docs/assets/js/40.0600f064.js"><link rel="prefetch" href="/docs/assets/js/41.9bbfe266.js"><link rel="prefetch" href="/docs/assets/js/42.63c51d25.js"><link rel="prefetch" href="/docs/assets/js/43.d69d8e57.js"><link rel="prefetch" href="/docs/assets/js/44.a981446c.js"><link rel="prefetch" href="/docs/assets/js/45.415ecb59.js"><link rel="prefetch" href="/docs/assets/js/46.75d7a27f.js"><link rel="prefetch" href="/docs/assets/js/47.a4983875.js"><link rel="prefetch" href="/docs/assets/js/48.0dd7e7e0.js"><link rel="prefetch" href="/docs/assets/js/49.166bd1fa.js"><link rel="prefetch" href="/docs/assets/js/5.a0a5a0aa.js"><link rel="prefetch" href="/docs/assets/js/50.4e76f723.js"><link rel="prefetch" href="/docs/assets/js/51.21d145d2.js"><link rel="prefetch" href="/docs/assets/js/52.43234198.js"><link rel="prefetch" href="/docs/assets/js/6.9461537e.js"><link rel="prefetch" href="/docs/assets/js/7.3158bea4.js"><link rel="prefetch" href="/docs/assets/js/8.625d63ee.js"><link rel="prefetch" href="/docs/assets/js/9.e856c4d3.js">
<link rel="stylesheet" href="/docs/assets/css/0.styles.d44f2c14.css">
</head>
<body>
<div id="app" data-server-rendered="true"><div class="theme-container"><header class="navbar"><div class="sidebar-button"><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" role="img" viewBox="0 0 448 512" class="icon"><path fill="currentColor" d="M436 124H12c-6.627 0-12-5.373-12-12V80c0-6.627 5.373-12 12-12h424c6.627 0 12 5.373 12 12v32c0 6.627-5.373 12-12 12zm0 160H12c-6.627 0-12-5.373-12-12v-32c0-6.627 5.373-12 12-12h424c6.627 0 12 5.373 12 12v32c0 6.627-5.373 12-12 12zm0 160H12c-6.627 0-12-5.373-12-12v-32c0-6.627 5.373-12 12-12h424c6.627 0 12 5.373 12 12v32c0 6.627-5.373 12-12 12z"></path></svg></div><a href="/docs/" class="home-link router-link-active"><img src="/docs/logo.png" class="logo"><span class="site-name can-hide">
GrapesJS
</span></a><div class="links"><div class="search-box"><input aria-label="Search" autocomplete="off" spellcheck="false" value=""><!----></div><nav class="nav-links can-hide"><div class="nav-item"><a href="/docs/" class="nav-link">Docs</a></div><div class="nav-item"><a href="/docs/api/" class="nav-link">API Reference</a></div><div class="nav-item"><a href="https://opencollective.com/grapesjs" target="_blank" rel="noopener noreferrer" class="nav-link external">
<div id="app" data-server-rendered="true"><div class="theme-container"><header class="navbar"><div class="sidebar-button"><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" role="img" viewBox="0 0 448 512" class="icon"><path fill="currentColor" d="M436 124H12c-6.627 0-12-5.373-12-12V80c0-6.627 5.373-12 12-12h424c6.627 0 12 5.373 12 12v32c0 6.627-5.373 12-12 12zm0 160H12c-6.627 0-12-5.373-12-12v-32c0-6.627 5.373-12 12-12h424c6.627 0 12 5.373 12 12v32c0 6.627-5.373 12-12 12zm0 160H12c-6.627 0-12-5.373-12-12v-32c0-6.627 5.373-12 12-12h424c6.627 0 12 5.373 12 12v32c0 6.627-5.373 12-12 12z"></path></svg></div> <a href="/docs/" class="home-link router-link-active"><img src="/docs/logo.png" alt="GrapesJS" class="logo"> <span class="site-name can-hide">GrapesJS</span></a> <div class="links"><div class="search-box"><input aria-label="Search" autocomplete="off" spellcheck="false" value=""> <!----></div> <nav class="nav-links can-hide"><div class="nav-item"><a href="/docs/" class="nav-link">
Docs
</a></div><div class="nav-item"><a href="/docs/api/" class="nav-link">
API Reference
</a></div><div class="nav-item"><a href="https://opencollective.com/grapesjs" target="_blank" rel="noopener noreferrer" class="nav-link external">
Support Us
<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path><polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></div><div class="nav-item"><a href="https://twitter.com/grapesjs" target="_blank" rel="noopener noreferrer" class="nav-link external">
<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></div><div class="nav-item"><a href="https://twitter.com/grapesjs" target="_blank" rel="noopener noreferrer" class="nav-link external">
Twitter
<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path><polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></div><a href="https://github.com/artf/grapesjs" target="_blank" rel="noopener noreferrer" class="repo-link">
<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></div> <a href="https://github.com/artf/grapesjs" target="_blank" rel="noopener noreferrer" class="repo-link">
GitHub
<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path><polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></nav></div></header><div class="sidebar-mask"></div><div class="sidebar"><nav class="nav-links"><div class="nav-item"><a href="/docs/" class="nav-link">Docs</a></div><div class="nav-item"><a href="/docs/api/" class="nav-link">API Reference</a></div><div class="nav-item"><a href="https://opencollective.com/grapesjs" target="_blank" rel="noopener noreferrer" class="nav-link external">
<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></nav></div></header> <div class="sidebar-mask"></div> <aside class="sidebar"><nav class="nav-links"><div class="nav-item"><a href="/docs/" class="nav-link">
Docs
</a></div><div class="nav-item"><a href="/docs/api/" class="nav-link">
API Reference
</a></div><div class="nav-item"><a href="https://opencollective.com/grapesjs" target="_blank" rel="noopener noreferrer" class="nav-link external">
Support Us
<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path><polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></div><div class="nav-item"><a href="https://twitter.com/grapesjs" target="_blank" rel="noopener noreferrer" class="nav-link external">
<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></div><div class="nav-item"><a href="https://twitter.com/grapesjs" target="_blank" rel="noopener noreferrer" class="nav-link external">
Twitter
<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path><polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></div><a href="https://github.com/artf/grapesjs" target="_blank" rel="noopener noreferrer" class="repo-link">
<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></div> <a href="https://github.com/artf/grapesjs" target="_blank" rel="noopener noreferrer" class="repo-link">
GitHub
<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path><polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></nav><div id="native-carbon" class="carbon-ads"></div><ul class="sidebar-links"><li><a href="/docs/" class="sidebar-link">Introduction</a></li><li><a href="/docs/getting-started.html" class="sidebar-link">Getting Started</a></li><li><div class="sidebar-group"><p class="sidebar-heading"><span>Modules</span><!----></p><ul class="sidebar-group-items"><li><a href="/docs/modules/Assets.html" class="sidebar-link">Assets</a></li><li><a href="/docs/modules/Blocks.html" class="sidebar-link">Blocks</a></li><li><a href="/docs/modules/Commands.html" class="sidebar-link">Commands</a></li><li><a href="/docs/modules/Components.html" class="sidebar-link">Components</a></li><li><a href="/docs/modules/Components-js.html" class="sidebar-link">Components &amp; JS</a></li><li><a href="/docs/modules/I18n.html" class="sidebar-link">I18n</a></li><li><a href="/docs/modules/Traits.html" class="sidebar-link">Traits</a></li><li><a href="/docs/modules/Style-manager.html" class="sidebar-link">Style Manager</a></li><li><a href="/docs/modules/Storage.html" class="sidebar-link">Storage Manager</a></li><li><a href="/docs/modules/Plugins.html" class="sidebar-link">Plugins</a></li></ul></div></li><li><div class="sidebar-group"><p class="sidebar-heading"><span>Guides</span><!----></p><ul class="sidebar-group-items"><li><a href="/docs/guides/Replace-Rich-Text-Editor.html" class="sidebar-link">Replace Rich Text Editor</a></li><li><a href="/docs/guides/Custom-CSS-parser.html" class="sidebar-link">Use Custom CSS Parser</a></li></ul></div></li></ul></div><div class="page"><div class="content"><h1 id="getting-started"><a href="#getting-started" aria-hidden="true" class="header-anchor">#</a> Getting started</h1><p>This page will introduce you to the main options of GrapesJS and how it works, in the way to be able to create your custom editor.</p><p>The pretty minimalistic way to instantiate the editor could be like this:</p><div class="language-html extra-class"><pre class="language-html"><code><span class="token tag"><span class="token tag"><span class="token punctuation">&lt;</span>link</span> <span class="token attr-name">rel</span><span class="token attr-value"><span class="token punctuation">=</span><span class="token punctuation">&quot;</span>stylesheet<span class="token punctuation">&quot;</span></span> <span class="token attr-name">href</span><span class="token attr-value"><span class="token punctuation">=</span><span class="token punctuation">&quot;</span>path/to/grapes.min.css<span class="token punctuation">&quot;</span></span><span class="token punctuation">&gt;</span></span>
<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></nav> <div id="native-carbon" class="carbon-ads"></div> <ul class="sidebar-links"><li><a href="/docs/" class="sidebar-link">Introduction</a></li><li><a href="/docs/getting-started.html" class="sidebar-link">Getting Started</a></li><li><section class="sidebar-group depth-0"><p class="sidebar-heading"><span>Modules</span> <!----></p> <ul class="sidebar-links sidebar-group-items"><li><a href="/docs/modules/Assets.html" class="sidebar-link">Assets</a></li><li><a href="/docs/modules/Blocks.html" class="sidebar-link">Blocks</a></li><li><a href="/docs/modules/Commands.html" class="sidebar-link">Commands</a></li><li><a href="/docs/modules/Components.html" class="sidebar-link">Components</a></li><li><a href="/docs/modules/Components-js.html" class="sidebar-link">Components &amp; JS</a></li><li><a href="/docs/modules/I18n.html" class="sidebar-link">I18n</a></li><li><a href="/docs/modules/Traits.html" class="sidebar-link">Traits</a></li><li><a href="/docs/modules/Style-manager.html" class="sidebar-link">Style Manager</a></li><li><a href="/docs/modules/Storage.html" class="sidebar-link">Storage Manager</a></li><li><a href="/docs/modules/Plugins.html" class="sidebar-link">Plugins</a></li></ul></section></li><li><section class="sidebar-group depth-0"><p class="sidebar-heading"><span>Guides</span> <!----></p> <ul class="sidebar-links sidebar-group-items"><li><a href="/docs/guides/Replace-Rich-Text-Editor.html" class="sidebar-link">Replace Rich Text Editor</a></li><li><a href="/docs/guides/Custom-CSS-parser.html" class="sidebar-link">Use Custom CSS Parser</a></li></ul></section></li></ul> </aside> <main class="page"> <div class="theme-default-content content__default"><h1 id="getting-started"><a href="#getting-started" class="header-anchor">#</a> Getting started</h1> <p>This page will introduce you to the main options of GrapesJS and how it works, in the way to be able to create your custom editor.</p> <p>The pretty minimalistic way to instantiate the editor could be like this:</p> <div class="language-html extra-class"><pre class="language-html"><code><span class="token tag"><span class="token tag"><span class="token punctuation">&lt;</span>link</span> <span class="token attr-name">rel</span><span class="token attr-value"><span class="token punctuation">=</span><span class="token punctuation">&quot;</span>stylesheet<span class="token punctuation">&quot;</span></span> <span class="token attr-name">href</span><span class="token attr-value"><span class="token punctuation">=</span><span class="token punctuation">&quot;</span>path/to/grapes.min.css<span class="token punctuation">&quot;</span></span><span class="token punctuation">&gt;</span></span>
<span class="token tag"><span class="token tag"><span class="token punctuation">&lt;</span>script</span> <span class="token attr-name">src</span><span class="token attr-value"><span class="token punctuation">=</span><span class="token punctuation">&quot;</span>path/to/grapes.min.js<span class="token punctuation">&quot;</span></span><span class="token punctuation">&gt;</span></span><span class="token script"></span><span class="token tag"><span class="token tag"><span class="token punctuation">&lt;/</span>script</span><span class="token punctuation">&gt;</span></span>
<span class="token tag"><span class="token tag"><span class="token punctuation">&lt;</span>div</span> <span class="token attr-name">id</span><span class="token attr-value"><span class="token punctuation">=</span><span class="token punctuation">&quot;</span>gjs<span class="token punctuation">&quot;</span></span><span class="token punctuation">&gt;</span></span><span class="token tag"><span class="token tag"><span class="token punctuation">&lt;/</span>div</span><span class="token punctuation">&gt;</span></span>
<span class="token tag"><span class="token tag"><span class="token punctuation">&lt;</span>script</span> <span class="token attr-name">type</span><span class="token attr-value"><span class="token punctuation">=</span><span class="token punctuation">&quot;</span>text/javascript<span class="token punctuation">&quot;</span></span><span class="token punctuation">&gt;</span></span><span class="token script"><span class="token language-javascript">
<span class="token keyword">var</span> editor <span class="token operator">=</span> grapesjs<span class="token punctuation">.</span><span class="token function">init</span><span class="token punctuation">(</span><span class="token punctuation">{</span>
container <span class="token punctuation">:</span> <span class="token string">'#gjs'</span><span class="token punctuation">,</span>
components<span class="token punctuation">:</span> <span class="token string">'&lt;div class=&quot;txt-red&quot;&gt;Hello world!&lt;/div&gt;'</span><span class="token punctuation">,</span>
style<span class="token punctuation">:</span> <span class="token string">'.txt-red{color: red}'</span><span class="token punctuation">,</span>
container <span class="token operator">:</span> <span class="token string">'#gjs'</span><span class="token punctuation">,</span>
components<span class="token operator">:</span> <span class="token string">'&lt;div class=&quot;txt-red&quot;&gt;Hello world!&lt;/div&gt;'</span><span class="token punctuation">,</span>
style<span class="token operator">:</span> <span class="token string">'.txt-red{color: red}'</span><span class="token punctuation">,</span>
<span class="token punctuation">}</span><span class="token punctuation">)</span><span class="token punctuation">;</span>
</span></span><span class="token tag"><span class="token tag"><span class="token punctuation">&lt;/</span>script</span><span class="token punctuation">&gt;</span></span>
</code></pre></div><p>In just few lines, with the default configurations, you're already able to see something with which play around.</p><p>[[img/default-gjs.jpg]]</p><p>You'll see components commands on top left position that come handy to create and manage your blocks, below there are options which need to highlight and export them. When you select components ('mouse pointer' icon), on the right side, you should see pop up Class Manager and Style Manager options which allow to customize the style of the components. There is also a Layer Manager/Navigator ('hamburger' icon) which helps to manage easily the structure.</p><p>Of course all those stuff (panels, buttons, commands, etc.) are set just as default so you can overwrite them and add more other. Before you start to create things you should know that GrapesJS UI is composed basically by a canvas (where you will 'draw') and panels (which will contain buttons)</p><p>[[img/canvas-panels.jpg]]</p><p>If you'd like to extend the already instantiated editor you have to check <a href="API-Reference">API Reference</a>. Check also <a href="./Creating-plugins">how to create plugins</a> using the same API.
In this guide we'll focus on how to initialize the editor with all custom UI from scratch.</p><p>Let's start the editor with some basic toolbar panel</p><div class="language-js extra-class"><pre class="language-js"><code><span class="token operator">...</span>
</code></pre></div><p>In just few lines, with the default configurations, you're already able to see something with which play around.</p> <p>[[img/default-gjs.jpg]]</p> <p>You'll see components commands on top left position that come handy to create and manage your blocks, below there are options which need to highlight and export them. When you select components ('mouse pointer' icon), on the right side, you should see pop up Class Manager and Style Manager options which allow to customize the style of the components. There is also a Layer Manager/Navigator ('hamburger' icon) which helps to manage easily the structure.</p> <p>Of course all those stuff (panels, buttons, commands, etc.) are set just as default so you can overwrite them and add more other. Before you start to create things you should know that GrapesJS UI is composed basically by a canvas (where you will 'draw') and panels (which will contain buttons)</p> <p>[[img/canvas-panels.jpg]]</p> <p>If you'd like to extend the already instantiated editor you have to check <a href="API-Reference">API Reference</a>. Check also <a href="./Creating-plugins">how to create plugins</a> using the same API.
In this guide we'll focus on how to initialize the editor with all custom UI from scratch.</p> <p>Let's start the editor with some basic toolbar panel</p> <div class="language-js extra-class"><pre class="language-js"><code><span class="token operator">...</span>
<span class="token keyword">var</span> editor <span class="token operator">=</span> grapesjs<span class="token punctuation">.</span><span class="token function">init</span><span class="token punctuation">(</span><span class="token punctuation">{</span>
container <span class="token punctuation">:</span> <span class="token string">'#gjs'</span><span class="token punctuation">,</span>
height<span class="token punctuation">:</span> <span class="token string">'100%'</span><span class="token punctuation">,</span>
container <span class="token operator">:</span> <span class="token string">'#gjs'</span><span class="token punctuation">,</span>
height<span class="token operator">:</span> <span class="token string">'100%'</span><span class="token punctuation">,</span>
panels<span class="token punctuation">:</span> <span class="token punctuation">{</span>
defaults<span class="token punctuation">:</span> <span class="token punctuation">[</span><span class="token punctuation">{</span>
id<span class="token punctuation">:</span> <span class="token string">'commands'</span><span class="token punctuation">,</span>
panels<span class="token operator">:</span> <span class="token punctuation">{</span>
defaults<span class="token operator">:</span> <span class="token punctuation">[</span><span class="token punctuation">{</span>
id<span class="token operator">:</span> <span class="token string">'commands'</span><span class="token punctuation">,</span>
<span class="token punctuation">}</span><span class="token punctuation">]</span><span class="token punctuation">,</span>
<span class="token punctuation">}</span>
<span class="token punctuation">}</span><span class="token punctuation">)</span><span class="token punctuation">;</span>
<span class="token operator">...</span>
</code></pre></div><p>In this example we set a panel with 'commands' as an id and after the render we'll see nothing more than an empty div added to our panels. The new panel is already styled as the id 'commands' is one of the default but you can use whatever you like and place it wherever you want with CSS. With refresh we might see something like shown in the image below, with the new panel on the left:</p><p>[[img/new-panel.png]]</p><blockquote><p>Check <a href="API-Editor">Editor API Reference</a> for more details about editor configurations</p></blockquote><p>Now let's put some button inside</p><div class="language-js extra-class"><pre class="language-js"><code><span class="token operator">...</span>
panels<span class="token punctuation">:</span> <span class="token punctuation">{</span>
defaults <span class="token punctuation">:</span> <span class="token punctuation">[</span><span class="token punctuation">{</span>
id <span class="token punctuation">:</span> <span class="token string">'commands'</span><span class="token punctuation">,</span>
buttons <span class="token punctuation">:</span> <span class="token punctuation">[</span><span class="token punctuation">{</span>
id <span class="token punctuation">:</span> <span class="token string">'smile'</span><span class="token punctuation">,</span>
className <span class="token punctuation">:</span> <span class="token string">'fa fa-smile-o'</span><span class="token punctuation">,</span>
attributes <span class="token punctuation">:</span> <span class="token punctuation">{</span> title<span class="token punctuation">:</span> <span class="token string">'Smile'</span> <span class="token punctuation">}</span>
</code></pre></div><p>In this example we set a panel with 'commands' as an id and after the render we'll see nothing more than an empty div added to our panels. The new panel is already styled as the id 'commands' is one of the default but you can use whatever you like and place it wherever you want with CSS. With refresh we might see something like shown in the image below, with the new panel on the left:</p> <p>[[img/new-panel.png]]</p> <blockquote><p>Check <a href="API-Editor">Editor API Reference</a> for more details about editor configurations</p></blockquote> <p>Now let's put some button inside</p> <div class="language-js extra-class"><pre class="language-js"><code><span class="token operator">...</span>
panels<span class="token operator">:</span> <span class="token punctuation">{</span>
defaults <span class="token operator">:</span> <span class="token punctuation">[</span><span class="token punctuation">{</span>
id <span class="token operator">:</span> <span class="token string">'commands'</span><span class="token punctuation">,</span>
buttons <span class="token operator">:</span> <span class="token punctuation">[</span><span class="token punctuation">{</span>
id <span class="token operator">:</span> <span class="token string">'smile'</span><span class="token punctuation">,</span>
className <span class="token operator">:</span> <span class="token string">'fa fa-smile-o'</span><span class="token punctuation">,</span>
attributes <span class="token operator">:</span> <span class="token punctuation">{</span> title<span class="token operator">:</span> <span class="token string">'Smile'</span> <span class="token punctuation">}</span>
<span class="token punctuation">}</span><span class="token punctuation">]</span><span class="token punctuation">,</span>
<span class="token punctuation">}</span><span class="token punctuation">]</span><span class="token punctuation">,</span>
<span class="token punctuation">}</span>
<span class="token operator">...</span>
</code></pre></div><p>On refresh the page might present some changes ('fa fa-smile-o' are from FontAwesome set, so be sure to have placed correctly the font directory)</p><p>[[img/new-btn.png]]</p><p>Yeah, the button is pretty nice and happy, but useless without any command assigned, if you click on it nothing gonna happen.</p><blockquote><p>Check <a href="API-Panels">Panels API Reference</a> for more details about Panels and Buttons</p></blockquote><p>Assigning commands is pretty easy, but before you should define one or use one of defaults (<a href="./Built-in-commands">Built-in commands</a>). So in this case we gonna create a new one.</p><div class="language-js extra-class"><pre class="language-js"><code><span class="token operator">...</span>
panels<span class="token punctuation">:</span> <span class="token punctuation">{</span>
defaults <span class="token punctuation">:</span> <span class="token punctuation">[</span><span class="token punctuation">{</span>
id <span class="token punctuation">:</span> <span class="token string">'commands'</span><span class="token punctuation">,</span>
buttons <span class="token punctuation">:</span> <span class="token punctuation">[</span><span class="token punctuation">{</span>
id <span class="token punctuation">:</span> <span class="token string">'smile'</span><span class="token punctuation">,</span>
className <span class="token punctuation">:</span> <span class="token string">'fa fa-smile-o'</span><span class="token punctuation">,</span>
attributes <span class="token punctuation">:</span> <span class="token punctuation">{</span> title<span class="token punctuation">:</span> <span class="token string">'Smile'</span> <span class="token punctuation">}</span><span class="token punctuation">,</span>
command <span class="token punctuation">:</span> <span class="token string">'helloWorld'</span><span class="token punctuation">,</span>
</code></pre></div><p>On refresh the page might present some changes ('fa fa-smile-o' are from FontAwesome set, so be sure to have placed correctly the font directory)</p> <p>[[img/new-btn.png]]</p> <p>Yeah, the button is pretty nice and happy, but useless without any command assigned, if you click on it nothing gonna happen.</p> <blockquote><p>Check <a href="API-Panels">Panels API Reference</a> for more details about Panels and Buttons</p></blockquote> <p>Assigning commands is pretty easy, but before you should define one or use one of defaults (<a href="./Built-in-commands">Built-in commands</a>). So in this case we gonna create a new one.</p> <div class="language-js extra-class"><pre class="language-js"><code><span class="token operator">...</span>
panels<span class="token operator">:</span> <span class="token punctuation">{</span>
defaults <span class="token operator">:</span> <span class="token punctuation">[</span><span class="token punctuation">{</span>
id <span class="token operator">:</span> <span class="token string">'commands'</span><span class="token punctuation">,</span>
buttons <span class="token operator">:</span> <span class="token punctuation">[</span><span class="token punctuation">{</span>
id <span class="token operator">:</span> <span class="token string">'smile'</span><span class="token punctuation">,</span>
className <span class="token operator">:</span> <span class="token string">'fa fa-smile-o'</span><span class="token punctuation">,</span>
attributes <span class="token operator">:</span> <span class="token punctuation">{</span> title<span class="token operator">:</span> <span class="token string">'Smile'</span> <span class="token punctuation">}</span><span class="token punctuation">,</span>
command <span class="token operator">:</span> <span class="token string">'helloWorld'</span><span class="token punctuation">,</span>
<span class="token punctuation">}</span><span class="token punctuation">]</span><span class="token punctuation">,</span>
<span class="token punctuation">}</span><span class="token punctuation">]</span><span class="token punctuation">,</span>
<span class="token punctuation">}</span><span class="token punctuation">,</span>
commands<span class="token punctuation">:</span> <span class="token punctuation">{</span>
defaults<span class="token punctuation">:</span> <span class="token punctuation">[</span><span class="token punctuation">{</span>
id<span class="token punctuation">:</span> <span class="token string">'helloWorld'</span><span class="token punctuation">,</span>
commands<span class="token operator">:</span> <span class="token punctuation">{</span>
defaults<span class="token operator">:</span> <span class="token punctuation">[</span><span class="token punctuation">{</span>
id<span class="token operator">:</span> <span class="token string">'helloWorld'</span><span class="token punctuation">,</span>
<span class="token function-variable function">run</span><span class="token punctuation">:</span> <span class="token keyword">function</span><span class="token punctuation">(</span><span class="token parameter">editor<span class="token punctuation">,</span> senderBtn</span><span class="token punctuation">)</span><span class="token punctuation">{</span>
<span class="token function-variable function">run</span><span class="token operator">:</span> <span class="token keyword">function</span><span class="token punctuation">(</span><span class="token parameter">editor<span class="token punctuation">,</span> senderBtn</span><span class="token punctuation">)</span><span class="token punctuation">{</span>
<span class="token function">alert</span><span class="token punctuation">(</span><span class="token string">'Hello world!'</span><span class="token punctuation">)</span><span class="token punctuation">;</span>
<span class="token comment">// Deactivate button</span>
senderBtn<span class="token punctuation">.</span><span class="token function">set</span><span class="token punctuation">(</span><span class="token string">'active'</span><span class="token punctuation">,</span> <span class="token boolean">false</span><span class="token punctuation">)</span><span class="token punctuation">;</span>
<span class="token punctuation">}</span><span class="token punctuation">,</span>
<span class="token function-variable function">stop</span><span class="token punctuation">:</span> <span class="token keyword">function</span><span class="token punctuation">(</span><span class="token parameter">editor<span class="token punctuation">,</span> senderBtn</span><span class="token punctuation">)</span><span class="token punctuation">{</span>
<span class="token function-variable function">stop</span><span class="token operator">:</span> <span class="token keyword">function</span><span class="token punctuation">(</span><span class="token parameter">editor<span class="token punctuation">,</span> senderBtn</span><span class="token punctuation">)</span><span class="token punctuation">{</span>
<span class="token punctuation">}</span><span class="token punctuation">,</span>
<span class="token punctuation">}</span><span class="token punctuation">]</span>
<span class="token punctuation">}</span>
<span class="token operator">...</span>
</code></pre></div><p>As you see we added a new command <code>helloWorld</code> and used its <code>id</code> as an identifier inside <code>button.command</code>. In addition to this we've also implemented two required methods, <code>run</code> and <code>stop</code>, to make button execute commands.</p><p>[[img/btn-clicked.png]]</p><blockquote><p>Check <a href="API-Commands">Commands API Reference</a></p></blockquote><p>Check the <a href="http://grapesjs.com/demo.html" target="_blank" rel="noopener noreferrer">demo<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path><polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a> for more complete usage of panels, buttons and built-in commands.</p><h2 id="components"><a href="#components" aria-hidden="true" class="header-anchor">#</a> Components</h2><p>Components are elements inside the canvas, which can be drawn by commands or injected directly via configurations. In simple terms components represent the structure of our HTML document. You can init the editor with passing components as an HTML string</p><div class="language-js extra-class"><pre class="language-js"><code><span class="token operator">...</span>
</code></pre></div><p>As you see we added a new command <code>helloWorld</code> and used its <code>id</code> as an identifier inside <code>button.command</code>. In addition to this we've also implemented two required methods, <code>run</code> and <code>stop</code>, to make button execute commands.</p> <p>[[img/btn-clicked.png]]</p> <blockquote><p>Check <a href="API-Commands">Commands API Reference</a></p></blockquote> <p>Check the <a href="http://grapesjs.com/demo.html" target="_blank" rel="noopener noreferrer">demo<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a> for more complete usage of panels, buttons and built-in commands.</p> <h2 id="components"><a href="#components" class="header-anchor">#</a> Components</h2> <p>Components are elements inside the canvas, which can be drawn by commands or injected directly via configurations. In simple terms components represent the structure of our HTML document. You can init the editor with passing components as an HTML string</p> <div class="language-js extra-class"><pre class="language-js"><code><span class="token operator">...</span>
<span class="token comment">// Disable default local storage in case you've already used GrapesJS</span>
storageManager<span class="token punctuation">:</span> <span class="token punctuation">{</span>type<span class="token punctuation">:</span> <span class="token string">'none'</span><span class="token punctuation">}</span><span class="token punctuation">,</span>
storageManager<span class="token operator">:</span> <span class="token punctuation">{</span>type<span class="token operator">:</span> <span class="token string">'none'</span><span class="token punctuation">}</span><span class="token punctuation">,</span>
components<span class="token punctuation">:</span> <span class="token string">'&lt;div style=&quot;width:300px; min-height:100px; margin: 0 auto&quot;&gt;&lt;/div&gt;'</span> <span class="token operator">+</span>
components<span class="token operator">:</span> <span class="token string">'&lt;div style=&quot;width:300px; min-height:100px; margin: 0 auto&quot;&gt;&lt;/div&gt;'</span> <span class="token operator">+</span>
<span class="token string">'&lt;div style=&quot;width:400px; min-height:100px; margin: 0 auto&quot;&gt;&lt;/div&gt;'</span> <span class="token operator">+</span>
<span class="token string">'&lt;div style=&quot;width:500px; min-height:100px; margin: 0 auto&quot;&gt;&lt;/div&gt;'</span><span class="token punctuation">,</span>
<span class="token operator">...</span>
</code></pre></div><p>We added 3 simple components with some basic style. If you refresh probably you'll see the same empty page but are actually there, you only need to highlight them.
For this purpose already exists a command, so add it to your panel in this way</p><div class="language-js extra-class"><pre class="language-js"><code><span class="token operator">...</span>
panels<span class="token punctuation">:</span> <span class="token punctuation">{</span>
defaults <span class="token punctuation">:</span> <span class="token punctuation">[</span><span class="token punctuation">{</span>
id <span class="token punctuation">:</span> <span class="token string">'commands'</span><span class="token punctuation">,</span>
buttons <span class="token punctuation">:</span> <span class="token punctuation">[</span>
For this purpose already exists a command, so add it to your panel in this way</p> <div class="language-js extra-class"><pre class="language-js"><code><span class="token operator">...</span>
panels<span class="token operator">:</span> <span class="token punctuation">{</span>
defaults <span class="token operator">:</span> <span class="token punctuation">[</span><span class="token punctuation">{</span>
id <span class="token operator">:</span> <span class="token string">'commands'</span><span class="token punctuation">,</span>
buttons <span class="token operator">:</span> <span class="token punctuation">[</span>
<span class="token punctuation">{</span>
id<span class="token punctuation">:</span> <span class="token string">'smile'</span><span class="token punctuation">,</span>
id<span class="token operator">:</span> <span class="token string">'smile'</span><span class="token punctuation">,</span>
<span class="token operator">...</span>
<span class="token punctuation">}</span><span class="token punctuation">,</span>
<span class="token punctuation">{</span>
id <span class="token punctuation">:</span> <span class="token string">'vis'</span><span class="token punctuation">,</span>
className <span class="token punctuation">:</span> <span class="token string">'fa fa-eye'</span><span class="token punctuation">,</span>
command <span class="token punctuation">:</span> <span class="token string">'sw-visibility'</span><span class="token punctuation">,</span>
context <span class="token punctuation">:</span> <span class="token string">'some-random-context'</span><span class="token punctuation">,</span> <span class="token comment">// For grouping context of buttons in the same panel</span>
active <span class="token punctuation">:</span> <span class="token boolean">true</span><span class="token punctuation">,</span>
id <span class="token operator">:</span> <span class="token string">'vis'</span><span class="token punctuation">,</span>
className <span class="token operator">:</span> <span class="token string">'fa fa-eye'</span><span class="token punctuation">,</span>
command <span class="token operator">:</span> <span class="token string">'sw-visibility'</span><span class="token punctuation">,</span>
context <span class="token operator">:</span> <span class="token string">'some-random-context'</span><span class="token punctuation">,</span> <span class="token comment">// For grouping context of buttons in the same panel</span>
active <span class="token operator">:</span> <span class="token boolean">true</span><span class="token punctuation">,</span>
<span class="token punctuation">}</span><span class="token punctuation">,</span>
<span class="token punctuation">]</span><span class="token punctuation">,</span>
<span class="token punctuation">}</span><span class="token punctuation">]</span><span class="token punctuation">,</span>
<span class="token punctuation">}</span><span class="token punctuation">,</span>
<span class="token operator">...</span>
</code></pre></div><p>Worth noting the use of <code>context</code> option (try to click 'smile' command without it) and <code>active</code> to enable it after the render.
Now you should be able to see blocks inside canvas.</p><p>[[img/blocks3.jpg]]</p><p>You could add other commands to enable interactions with blocks. Check <a href="./Built-in-commands">Built-in commands</a> to get more information</p><blockquote><p>Check <a href="API-Components">Components API Reference</a></p></blockquote><h2 id="style-manager"><a href="#style-manager" aria-hidden="true" class="header-anchor">#</a> Style Manager</h2><p>Any HTML structure requires, at some point, a proper style, so to meet this need the Style Manager was added as a built-in feature in GrapesJS. Style manager is composed by sectors, which group inside different types of CSS properties. So you can add, for instance, a <code>Dimension</code> sector for <code>width</code> and <code>height</code>, and another one as <code>Typography</code> for <code>font-size</code> and <code>color</code>. So it's up to you decide how organize sectors.</p><p>To enable this module we rely on a built-in command <code>open-sm</code>, which shows up the Style Manager, which we gonna bind to another button in a separate panel</p><div class="language-js extra-class"><pre class="language-js"><code><span class="token operator">...</span>
panels<span class="token punctuation">:</span> <span class="token punctuation">{</span>
defaults <span class="token punctuation">:</span> <span class="token punctuation">[</span>
Now you should be able to see blocks inside canvas.</p> <p>[[img/blocks3.jpg]]</p> <p>You could add other commands to enable interactions with blocks. Check <a href="./Built-in-commands">Built-in commands</a> to get more information</p> <blockquote><p>Check <a href="API-Components">Components API Reference</a></p></blockquote> <h2 id="style-manager"><a href="#style-manager" class="header-anchor">#</a> Style Manager</h2> <p>Any HTML structure requires, at some point, a proper style, so to meet this need the Style Manager was added as a built-in feature in GrapesJS. Style manager is composed by sectors, which group inside different types of CSS properties. So you can add, for instance, a <code>Dimension</code> sector for <code>width</code> and <code>height</code>, and another one as <code>Typography</code> for <code>font-size</code> and <code>color</code>. So it's up to you decide how organize sectors.</p> <p>To enable this module we rely on a built-in command <code>open-sm</code>, which shows up the Style Manager, which we gonna bind to another button in a separate panel</p> <div class="language-js extra-class"><pre class="language-js"><code><span class="token operator">...</span>
panels<span class="token operator">:</span> <span class="token punctuation">{</span>
defaults <span class="token operator">:</span> <span class="token punctuation">[</span>
<span class="token punctuation">{</span>
id <span class="token punctuation">:</span> <span class="token string">'commands'</span><span class="token punctuation">,</span>
id <span class="token operator">:</span> <span class="token string">'commands'</span><span class="token punctuation">,</span>
<span class="token operator">...</span>
<span class="token punctuation">}</span><span class="token punctuation">,</span><span class="token punctuation">{</span>
<span class="token comment">// If you use this id the default CSS will place this panel on top right corner for you</span>
id <span class="token punctuation">:</span> <span class="token string">'views'</span><span class="token punctuation">,</span>
buttons <span class="token punctuation">:</span> <span class="token punctuation">[</span><span class="token punctuation">{</span>
id <span class="token punctuation">:</span> <span class="token string">'open-style-manager'</span><span class="token punctuation">,</span>
className <span class="token punctuation">:</span> <span class="token string">'fa fa-paint-brush'</span><span class="token punctuation">,</span>
command <span class="token punctuation">:</span> <span class="token string">'open-sm'</span><span class="token punctuation">,</span>
active <span class="token punctuation">:</span> <span class="token boolean">true</span><span class="token punctuation">,</span>
id <span class="token operator">:</span> <span class="token string">'views'</span><span class="token punctuation">,</span>
buttons <span class="token operator">:</span> <span class="token punctuation">[</span><span class="token punctuation">{</span>
id <span class="token operator">:</span> <span class="token string">'open-style-manager'</span><span class="token punctuation">,</span>
className <span class="token operator">:</span> <span class="token string">'fa fa-paint-brush'</span><span class="token punctuation">,</span>
command <span class="token operator">:</span> <span class="token string">'open-sm'</span><span class="token punctuation">,</span>
active <span class="token operator">:</span> <span class="token boolean">true</span><span class="token punctuation">,</span>
<span class="token punctuation">}</span><span class="token punctuation">]</span>
<span class="token punctuation">}</span>
<span class="token punctuation">]</span><span class="token punctuation">,</span>
<span class="token punctuation">}</span><span class="token punctuation">,</span>
<span class="token operator">...</span>
</code></pre></div><p>After this you'll be able to see something like in the image below</p><p>[[img/enabled-sm.jpg]]</p><p>As you can see Style Manager is enabled but before using it you have to select an element in the canvas, for this purpose we can add another button with a built-in command <code>select-comp</code> in this way</p><div class="language-js extra-class"><pre class="language-js"><code><span class="token operator">...</span>
panels<span class="token punctuation">:</span> <span class="token punctuation">{</span>
defaults <span class="token punctuation">:</span> <span class="token punctuation">[</span><span class="token punctuation">{</span>
id <span class="token punctuation">:</span> <span class="token string">'commands'</span><span class="token punctuation">,</span>
buttons <span class="token punctuation">:</span> <span class="token punctuation">[</span>
</code></pre></div><p>After this you'll be able to see something like in the image below</p> <p>[[img/enabled-sm.jpg]]</p> <p>As you can see Style Manager is enabled but before using it you have to select an element in the canvas, for this purpose we can add another button with a built-in command <code>select-comp</code> in this way</p> <div class="language-js extra-class"><pre class="language-js"><code><span class="token operator">...</span>
panels<span class="token operator">:</span> <span class="token punctuation">{</span>
defaults <span class="token operator">:</span> <span class="token punctuation">[</span><span class="token punctuation">{</span>
id <span class="token operator">:</span> <span class="token string">'commands'</span><span class="token punctuation">,</span>
buttons <span class="token operator">:</span> <span class="token punctuation">[</span>
<span class="token punctuation">{</span>
id<span class="token punctuation">:</span> <span class="token string">'smile'</span><span class="token punctuation">,</span>
id<span class="token operator">:</span> <span class="token string">'smile'</span><span class="token punctuation">,</span>
<span class="token operator">...</span>
<span class="token punctuation">}</span><span class="token punctuation">,</span><span class="token punctuation">{</span>
id <span class="token punctuation">:</span> <span class="token string">'select'</span><span class="token punctuation">,</span>
className <span class="token punctuation">:</span> <span class="token string">'fa fa-mouse-pointer'</span><span class="token punctuation">,</span>
command <span class="token punctuation">:</span> <span class="token string">'select-comp'</span><span class="token punctuation">,</span>
id <span class="token operator">:</span> <span class="token string">'select'</span><span class="token punctuation">,</span>
className <span class="token operator">:</span> <span class="token string">'fa fa-mouse-pointer'</span><span class="token punctuation">,</span>
command <span class="token operator">:</span> <span class="token string">'select-comp'</span><span class="token punctuation">,</span>
<span class="token punctuation">}</span>
<span class="token punctuation">]</span><span class="token punctuation">,</span>
<span class="token punctuation">}</span><span class="token punctuation">]</span><span class="token punctuation">,</span>
<span class="token punctuation">}</span><span class="token punctuation">,</span>
<span class="token operator">...</span>
</code></pre></div><p>Selecting one of the component will show up the Style Manager with default sectors, properties and an input where you can manage classes. The default class you see (cXX) was generated by extracting style from the component</p><p>[[img/default-sm.jpg]]</p><p>As we exploring different configurations inside GrapesJS we gonna overwrite all the default sectors to create some custom one</p><p>Let's put a few sectors with use of <code>buildProps</code> which helps us building common properties</p><div class="language-js extra-class"><pre class="language-js"><code><span class="token operator">...</span>
styleManager <span class="token punctuation">:</span> <span class="token punctuation">{</span>
sectors<span class="token punctuation">:</span> <span class="token punctuation">[</span><span class="token punctuation">{</span>
name<span class="token punctuation">:</span> <span class="token string">'Dimension'</span><span class="token punctuation">,</span>
buildProps<span class="token punctuation">:</span> <span class="token punctuation">[</span><span class="token string">'width'</span><span class="token punctuation">,</span> <span class="token string">'min-height'</span><span class="token punctuation">]</span>
</code></pre></div><p>Selecting one of the component will show up the Style Manager with default sectors, properties and an input where you can manage classes. The default class you see (cXX) was generated by extracting style from the component</p> <p>[[img/default-sm.jpg]]</p> <p>As we exploring different configurations inside GrapesJS we gonna overwrite all the default sectors to create some custom one</p> <p>Let's put a few sectors with use of <code>buildProps</code> which helps us building common properties</p> <div class="language-js extra-class"><pre class="language-js"><code><span class="token operator">...</span>
styleManager <span class="token operator">:</span> <span class="token punctuation">{</span>
sectors<span class="token operator">:</span> <span class="token punctuation">[</span><span class="token punctuation">{</span>
name<span class="token operator">:</span> <span class="token string">'Dimension'</span><span class="token punctuation">,</span>
buildProps<span class="token operator">:</span> <span class="token punctuation">[</span><span class="token string">'width'</span><span class="token punctuation">,</span> <span class="token string">'min-height'</span><span class="token punctuation">]</span>
<span class="token punctuation">}</span><span class="token punctuation">,</span><span class="token punctuation">{</span>
name<span class="token punctuation">:</span> <span class="token string">'Extra'</span><span class="token punctuation">,</span>
buildProps<span class="token punctuation">:</span> <span class="token punctuation">[</span><span class="token string">'background-color'</span><span class="token punctuation">,</span> <span class="token string">'box-shadow'</span><span class="token punctuation">]</span>
name<span class="token operator">:</span> <span class="token string">'Extra'</span><span class="token punctuation">,</span>
buildProps<span class="token operator">:</span> <span class="token punctuation">[</span><span class="token string">'background-color'</span><span class="token punctuation">,</span> <span class="token string">'box-shadow'</span><span class="token punctuation">]</span>
<span class="token punctuation">}</span><span class="token punctuation">]</span>
<span class="token punctuation">}</span>
<span class="token operator">...</span>
</code></pre></div><p>Now you should be able to style components</p><p>[[img/style-comp.jpg]]</p><p>You can check the list of usable properties inside <code>buildProps</code> here: <a href="./Built-in-properties">Built-in properties</a>
otherwise is possible to build them on your own, let's see how we'd have done the previous configuration without the <code>buildProps</code> helper</p><div class="language-js extra-class"><pre class="language-js"><code><span class="token operator">...</span>
styleManager <span class="token punctuation">:</span> <span class="token punctuation">{</span>
sectors<span class="token punctuation">:</span> <span class="token punctuation">[</span>
</code></pre></div><p>Now you should be able to style components</p> <p>[[img/style-comp.jpg]]</p> <p>You can check the list of usable properties inside <code>buildProps</code> here: <a href="./Built-in-properties">Built-in properties</a>
otherwise is possible to build them on your own, let's see how we'd have done the previous configuration without the <code>buildProps</code> helper</p> <div class="language-js extra-class"><pre class="language-js"><code><span class="token operator">...</span>
styleManager <span class="token operator">:</span> <span class="token punctuation">{</span>
sectors<span class="token operator">:</span> <span class="token punctuation">[</span>
<span class="token punctuation">{</span>
name<span class="token punctuation">:</span> <span class="token string">'Dimension'</span><span class="token punctuation">,</span>
properties<span class="token punctuation">:</span><span class="token punctuation">[</span>
name<span class="token operator">:</span> <span class="token string">'Dimension'</span><span class="token punctuation">,</span>
properties<span class="token operator">:</span><span class="token punctuation">[</span>
<span class="token punctuation">{</span>
<span class="token comment">// Just the name</span>
name <span class="token punctuation">:</span> <span class="token string">'Width'</span><span class="token punctuation">,</span>
name <span class="token operator">:</span> <span class="token string">'Width'</span><span class="token punctuation">,</span>
<span class="token comment">// CSS property</span>
property <span class="token punctuation">:</span> <span class="token string">'width'</span><span class="token punctuation">,</span>
property <span class="token operator">:</span> <span class="token string">'width'</span><span class="token punctuation">,</span>
<span class="token comment">// Type of the input, options: integer | radio | select | color | file | composite | stack</span>
type <span class="token punctuation">:</span> <span class="token string">'integer'</span><span class="token punctuation">,</span>
type <span class="token operator">:</span> <span class="token string">'integer'</span><span class="token punctuation">,</span>
<span class="token comment">// Units, available only for 'integer' types</span>
units <span class="token punctuation">:</span> <span class="token punctuation">[</span><span class="token string">'px'</span><span class="token punctuation">,</span> <span class="token string">'%'</span><span class="token punctuation">]</span><span class="token punctuation">,</span>
units <span class="token operator">:</span> <span class="token punctuation">[</span><span class="token string">'px'</span><span class="token punctuation">,</span> <span class="token string">'%'</span><span class="token punctuation">]</span><span class="token punctuation">,</span>
<span class="token comment">// Default value</span>
defaults <span class="token punctuation">:</span> <span class="token string">'auto'</span><span class="token punctuation">,</span>
defaults <span class="token operator">:</span> <span class="token string">'auto'</span><span class="token punctuation">,</span>
<span class="token comment">// Min value, available only for 'integer' types</span>
min <span class="token punctuation">:</span> <span class="token number">0</span><span class="token punctuation">,</span>
min <span class="token operator">:</span> <span class="token number">0</span><span class="token punctuation">,</span>
<span class="token punctuation">}</span><span class="token punctuation">,</span><span class="token punctuation">{</span>
<span class="token comment">// Here I'm going to be more original</span>
name <span class="token punctuation">:</span> <span class="token string">'Minimum height'</span><span class="token punctuation">,</span>
property <span class="token punctuation">:</span> <span class="token string">'min-height'</span><span class="token punctuation">,</span>
type <span class="token punctuation">:</span> <span class="token string">'select'</span><span class="token punctuation">,</span>
defaults <span class="token punctuation">:</span> <span class="token string">'100px'</span><span class="token punctuation">,</span>
name <span class="token operator">:</span> <span class="token string">'Minimum height'</span><span class="token punctuation">,</span>
property <span class="token operator">:</span> <span class="token string">'min-height'</span><span class="token punctuation">,</span>
type <span class="token operator">:</span> <span class="token string">'select'</span><span class="token punctuation">,</span>
defaults <span class="token operator">:</span> <span class="token string">'100px'</span><span class="token punctuation">,</span>
<span class="token comment">// List of options, available only for 'select' and 'radio' types</span>
list <span class="token punctuation">:</span> <span class="token punctuation">[</span><span class="token punctuation">{</span>
value <span class="token punctuation">:</span> <span class="token string">'100px'</span><span class="token punctuation">,</span>
name <span class="token punctuation">:</span> <span class="token string">'100'</span><span class="token punctuation">,</span>
list <span class="token operator">:</span> <span class="token punctuation">[</span><span class="token punctuation">{</span>
value <span class="token operator">:</span> <span class="token string">'100px'</span><span class="token punctuation">,</span>
name <span class="token operator">:</span> <span class="token string">'100'</span><span class="token punctuation">,</span>
<span class="token punctuation">}</span><span class="token punctuation">,</span><span class="token punctuation">{</span>
value <span class="token punctuation">:</span> <span class="token string">'200px'</span><span class="token punctuation">,</span>
name <span class="token punctuation">:</span> <span class="token string">'200'</span><span class="token punctuation">,</span>
value <span class="token operator">:</span> <span class="token string">'200px'</span><span class="token punctuation">,</span>
name <span class="token operator">:</span> <span class="token string">'200'</span><span class="token punctuation">,</span>
<span class="token punctuation">}</span><span class="token punctuation">,</span><span class="token punctuation">{</span>
value <span class="token punctuation">:</span> <span class="token string">'300px'</span><span class="token punctuation">,</span>
name <span class="token punctuation">:</span> <span class="token string">'300'</span><span class="token punctuation">,</span>
value <span class="token operator">:</span> <span class="token string">'300px'</span><span class="token punctuation">,</span>
name <span class="token operator">:</span> <span class="token string">'300'</span><span class="token punctuation">,</span>
<span class="token punctuation">}</span><span class="token punctuation">]</span><span class="token punctuation">,</span>
<span class="token punctuation">}</span>
<span class="token punctuation">]</span>
<span class="token punctuation">}</span><span class="token punctuation">,</span><span class="token punctuation">{</span>
name<span class="token punctuation">:</span> <span class="token string">'Extra'</span><span class="token punctuation">,</span>
name<span class="token operator">:</span> <span class="token string">'Extra'</span><span class="token punctuation">,</span>
<span class="token comment">// Sectors are expanded by default so put this one closed</span>
open<span class="token punctuation">:</span> <span class="token boolean">false</span><span class="token punctuation">,</span>
properties<span class="token punctuation">:</span><span class="token punctuation">[</span>
open<span class="token operator">:</span> <span class="token boolean">false</span><span class="token punctuation">,</span>
properties<span class="token operator">:</span><span class="token punctuation">[</span>
<span class="token punctuation">{</span>
name <span class="token punctuation">:</span> <span class="token string">'Background'</span><span class="token punctuation">,</span>
property <span class="token punctuation">:</span> <span class="token string">'background-color'</span><span class="token punctuation">,</span>
type <span class="token punctuation">:</span> <span class="token string">'color'</span><span class="token punctuation">,</span>
defaults<span class="token punctuation">:</span> <span class="token string">'none'</span>
name <span class="token operator">:</span> <span class="token string">'Background'</span><span class="token punctuation">,</span>
property <span class="token operator">:</span> <span class="token string">'background-color'</span><span class="token punctuation">,</span>
type <span class="token operator">:</span> <span class="token string">'color'</span><span class="token punctuation">,</span>
defaults<span class="token operator">:</span> <span class="token string">'none'</span>
<span class="token punctuation">}</span><span class="token punctuation">,</span><span class="token punctuation">{</span>
name <span class="token punctuation">:</span> <span class="token string">'Box shadow'</span><span class="token punctuation">,</span>
property <span class="token punctuation">:</span> <span class="token string">'box-shadow'</span><span class="token punctuation">,</span>
type <span class="token punctuation">:</span> <span class="token string">'stack'</span><span class="token punctuation">,</span>
preview <span class="token punctuation">:</span> <span class="token boolean">true</span><span class="token punctuation">,</span>
name <span class="token operator">:</span> <span class="token string">'Box shadow'</span><span class="token punctuation">,</span>
property <span class="token operator">:</span> <span class="token string">'box-shadow'</span><span class="token punctuation">,</span>
type <span class="token operator">:</span> <span class="token string">'stack'</span><span class="token punctuation">,</span>
preview <span class="token operator">:</span> <span class="token boolean">true</span><span class="token punctuation">,</span>
<span class="token comment">// List of nested properties, available only for 'stack' and 'composite' types</span>
properties <span class="token punctuation">:</span> <span class="token punctuation">[</span><span class="token punctuation">{</span>
name<span class="token punctuation">:</span> <span class="token string">'Shadow type'</span><span class="token punctuation">,</span>
properties <span class="token operator">:</span> <span class="token punctuation">[</span><span class="token punctuation">{</span>
name<span class="token operator">:</span> <span class="token string">'Shadow type'</span><span class="token punctuation">,</span>
<span class="token comment">// Nested properties with stack/composite type don't require proper 'property' name</span>
<span class="token comment">// as all of them will be merged to parent property, eg. box-shadow: X Y ...;</span>
property<span class="token punctuation">:</span> <span class="token string">'shadow-type'</span><span class="token punctuation">,</span>
type<span class="token punctuation">:</span> <span class="token string">'select'</span><span class="token punctuation">,</span>
defaults<span class="token punctuation">:</span> <span class="token string">''</span><span class="token punctuation">,</span>
list<span class="token punctuation">:</span> <span class="token punctuation">[</span> <span class="token punctuation">{</span> value <span class="token punctuation">:</span> <span class="token string">''</span><span class="token punctuation">,</span> name <span class="token punctuation">:</span> <span class="token string">'Outside'</span><span class="token punctuation">,</span> <span class="token punctuation">}</span><span class="token punctuation">,</span>
<span class="token punctuation">{</span> value <span class="token punctuation">:</span> <span class="token string">'inset'</span><span class="token punctuation">,</span> name <span class="token punctuation">:</span> <span class="token string">'Inside'</span><span class="token punctuation">,</span> <span class="token punctuation">}</span><span class="token punctuation">]</span><span class="token punctuation">,</span>
property<span class="token operator">:</span> <span class="token string">'shadow-type'</span><span class="token punctuation">,</span>
type<span class="token operator">:</span> <span class="token string">'select'</span><span class="token punctuation">,</span>
defaults<span class="token operator">:</span> <span class="token string">''</span><span class="token punctuation">,</span>
list<span class="token operator">:</span> <span class="token punctuation">[</span> <span class="token punctuation">{</span> value <span class="token operator">:</span> <span class="token string">''</span><span class="token punctuation">,</span> name <span class="token operator">:</span> <span class="token string">'Outside'</span><span class="token punctuation">,</span> <span class="token punctuation">}</span><span class="token punctuation">,</span>
<span class="token punctuation">{</span> value <span class="token operator">:</span> <span class="token string">'inset'</span><span class="token punctuation">,</span> name <span class="token operator">:</span> <span class="token string">'Inside'</span><span class="token punctuation">,</span> <span class="token punctuation">}</span><span class="token punctuation">]</span><span class="token punctuation">,</span>
<span class="token punctuation">}</span><span class="token punctuation">,</span><span class="token punctuation">{</span>
name<span class="token punctuation">:</span> <span class="token string">'X position'</span><span class="token punctuation">,</span>
property<span class="token punctuation">:</span> <span class="token string">'shadow-x'</span><span class="token punctuation">,</span>
type<span class="token punctuation">:</span> <span class="token string">'integer'</span><span class="token punctuation">,</span>
units<span class="token punctuation">:</span> <span class="token punctuation">[</span><span class="token string">'px'</span><span class="token punctuation">,</span><span class="token string">'%'</span><span class="token punctuation">]</span><span class="token punctuation">,</span>
defaults <span class="token punctuation">:</span> <span class="token number">0</span><span class="token punctuation">,</span>
name<span class="token operator">:</span> <span class="token string">'X position'</span><span class="token punctuation">,</span>
property<span class="token operator">:</span> <span class="token string">'shadow-x'</span><span class="token punctuation">,</span>
type<span class="token operator">:</span> <span class="token string">'integer'</span><span class="token punctuation">,</span>
units<span class="token operator">:</span> <span class="token punctuation">[</span><span class="token string">'px'</span><span class="token punctuation">,</span><span class="token string">'%'</span><span class="token punctuation">]</span><span class="token punctuation">,</span>
defaults <span class="token operator">:</span> <span class="token number">0</span><span class="token punctuation">,</span>
<span class="token punctuation">}</span><span class="token punctuation">,</span><span class="token punctuation">{</span>
name<span class="token punctuation">:</span> <span class="token string">'Y position'</span><span class="token punctuation">,</span>
property<span class="token punctuation">:</span> <span class="token string">'shadow-y'</span><span class="token punctuation">,</span>
type<span class="token punctuation">:</span> <span class="token string">'integer'</span><span class="token punctuation">,</span>
units<span class="token punctuation">:</span> <span class="token punctuation">[</span><span class="token string">'px'</span><span class="token punctuation">,</span><span class="token string">'%'</span><span class="token punctuation">]</span><span class="token punctuation">,</span>
defaults <span class="token punctuation">:</span> <span class="token number">0</span><span class="token punctuation">,</span>
name<span class="token operator">:</span> <span class="token string">'Y position'</span><span class="token punctuation">,</span>
property<span class="token operator">:</span> <span class="token string">'shadow-y'</span><span class="token punctuation">,</span>
type<span class="token operator">:</span> <span class="token string">'integer'</span><span class="token punctuation">,</span>
units<span class="token operator">:</span> <span class="token punctuation">[</span><span class="token string">'px'</span><span class="token punctuation">,</span><span class="token string">'%'</span><span class="token punctuation">]</span><span class="token punctuation">,</span>
defaults <span class="token operator">:</span> <span class="token number">0</span><span class="token punctuation">,</span>
<span class="token punctuation">}</span><span class="token punctuation">,</span><span class="token punctuation">{</span>
name<span class="token punctuation">:</span> <span class="token string">'Blur'</span><span class="token punctuation">,</span>
property<span class="token punctuation">:</span> <span class="token string">'shadow-blur'</span><span class="token punctuation">,</span>
type<span class="token punctuation">:</span> <span class="token string">'integer'</span><span class="token punctuation">,</span>
units<span class="token punctuation">:</span> <span class="token punctuation">[</span><span class="token string">'px'</span><span class="token punctuation">]</span><span class="token punctuation">,</span>
defaults <span class="token punctuation">:</span> <span class="token number">0</span><span class="token punctuation">,</span>
min<span class="token punctuation">:</span> <span class="token number">0</span><span class="token punctuation">,</span>
name<span class="token operator">:</span> <span class="token string">'Blur'</span><span class="token punctuation">,</span>
property<span class="token operator">:</span> <span class="token string">'shadow-blur'</span><span class="token punctuation">,</span>
type<span class="token operator">:</span> <span class="token string">'integer'</span><span class="token punctuation">,</span>
units<span class="token operator">:</span> <span class="token punctuation">[</span><span class="token string">'px'</span><span class="token punctuation">]</span><span class="token punctuation">,</span>
defaults <span class="token operator">:</span> <span class="token number">0</span><span class="token punctuation">,</span>
min<span class="token operator">:</span> <span class="token number">0</span><span class="token punctuation">,</span>
<span class="token punctuation">}</span><span class="token punctuation">,</span><span class="token punctuation">{</span>
name<span class="token punctuation">:</span> <span class="token string">'Spread'</span><span class="token punctuation">,</span>
property<span class="token punctuation">:</span> <span class="token string">'shadow-spread'</span><span class="token punctuation">,</span>
type<span class="token punctuation">:</span> <span class="token string">'integer'</span><span class="token punctuation">,</span>
units<span class="token punctuation">:</span> <span class="token punctuation">[</span><span class="token string">'px'</span><span class="token punctuation">]</span><span class="token punctuation">,</span>
defaults <span class="token punctuation">:</span> <span class="token number">0</span><span class="token punctuation">,</span>
name<span class="token operator">:</span> <span class="token string">'Spread'</span><span class="token punctuation">,</span>
property<span class="token operator">:</span> <span class="token string">'shadow-spread'</span><span class="token punctuation">,</span>
type<span class="token operator">:</span> <span class="token string">'integer'</span><span class="token punctuation">,</span>
units<span class="token operator">:</span> <span class="token punctuation">[</span><span class="token string">'px'</span><span class="token punctuation">]</span><span class="token punctuation">,</span>
defaults <span class="token operator">:</span> <span class="token number">0</span><span class="token punctuation">,</span>
<span class="token punctuation">}</span><span class="token punctuation">,</span><span class="token punctuation">{</span>
name<span class="token punctuation">:</span> <span class="token string">'Color'</span><span class="token punctuation">,</span>
property<span class="token punctuation">:</span> <span class="token string">'shadow-color'</span><span class="token punctuation">,</span>
type<span class="token punctuation">:</span> <span class="token string">'color'</span><span class="token punctuation">,</span>
defaults<span class="token punctuation">:</span> <span class="token string">'black'</span><span class="token punctuation">,</span>
name<span class="token operator">:</span> <span class="token string">'Color'</span><span class="token punctuation">,</span>
property<span class="token operator">:</span> <span class="token string">'shadow-color'</span><span class="token punctuation">,</span>
type<span class="token operator">:</span> <span class="token string">'color'</span><span class="token punctuation">,</span>
defaults<span class="token operator">:</span> <span class="token string">'black'</span><span class="token punctuation">,</span>
<span class="token punctuation">}</span><span class="token punctuation">,</span><span class="token punctuation">]</span><span class="token punctuation">,</span>
<span class="token punctuation">}</span>
<span class="token punctuation">]</span>
@ -269,67 +275,67 @@ styleManager <span class="token punctuation">:</span> <span class="token punctua
<span class="token punctuation">]</span>
<span class="token punctuation">}</span>
<span class="token operator">...</span>
</code></pre></div><p>As you can see using <code>buildProps</code> actually will save you a lot of work. You could also mix this techniques to obtain custom properties in less time. For example, let's see how can we setup the same width but with a different value of <code>min</code>:</p><div class="language-js extra-class"><pre class="language-js"><code><span class="token operator">...</span>
styleManager <span class="token punctuation">:</span> <span class="token punctuation">{</span>
sectors<span class="token punctuation">:</span> <span class="token punctuation">[</span><span class="token punctuation">{</span>
name<span class="token punctuation">:</span> <span class="token string">'Dimension'</span><span class="token punctuation">,</span>
buildProps<span class="token punctuation">:</span> <span class="token punctuation">[</span><span class="token string">'width'</span><span class="token punctuation">,</span> <span class="token string">'min-height'</span><span class="token punctuation">]</span><span class="token punctuation">,</span>
properties<span class="token punctuation">:</span><span class="token punctuation">[</span><span class="token punctuation">{</span>
property<span class="token punctuation">:</span> <span class="token string">'width'</span><span class="token punctuation">,</span> <span class="token comment">// Use 'property' as id</span>
min<span class="token punctuation">:</span> <span class="token number">30</span>
</code></pre></div><p>As you can see using <code>buildProps</code> actually will save you a lot of work. You could also mix this techniques to obtain custom properties in less time. For example, let's see how can we setup the same width but with a different value of <code>min</code>:</p> <div class="language-js extra-class"><pre class="language-js"><code><span class="token operator">...</span>
styleManager <span class="token operator">:</span> <span class="token punctuation">{</span>
sectors<span class="token operator">:</span> <span class="token punctuation">[</span><span class="token punctuation">{</span>
name<span class="token operator">:</span> <span class="token string">'Dimension'</span><span class="token punctuation">,</span>
buildProps<span class="token operator">:</span> <span class="token punctuation">[</span><span class="token string">'width'</span><span class="token punctuation">,</span> <span class="token string">'min-height'</span><span class="token punctuation">]</span><span class="token punctuation">,</span>
properties<span class="token operator">:</span><span class="token punctuation">[</span><span class="token punctuation">{</span>
property<span class="token operator">:</span> <span class="token string">'width'</span><span class="token punctuation">,</span> <span class="token comment">// Use 'property' as id</span>
min<span class="token operator">:</span> <span class="token number">30</span>
<span class="token punctuation">}</span><span class="token punctuation">]</span>
<span class="token punctuation">}</span><span class="token punctuation">,</span>
<span class="token operator">...</span>
<span class="token punctuation">}</span>
<span class="token operator">...</span>
</code></pre></div><blockquote><p>Check <a href="API-Style-Manager">Style Manager API Reference</a></p></blockquote><h2 id="store-load-data"><a href="#store-load-data" aria-hidden="true" class="header-anchor">#</a> Store/load data</h2><p>In this last part we're gonna see how to store and load template data inside GrapesJS. You may already noticed that even if you refresh the page after changes on canvas your data are not lost and this because GrapesJS comes with some built-in storage implementation.
The default one is the localStorage which is pretty simple and all the data are stored locally on your computer. Let's see the options available for this storage</p><div class="language-js extra-class"><pre class="language-js"><code><span class="token operator">...</span>
</code></pre></div><blockquote><p>Check <a href="API-Style-Manager">Style Manager API Reference</a></p></blockquote> <h2 id="store-load-data"><a href="#store-load-data" class="header-anchor">#</a> Store/load data</h2> <p>In this last part we're gonna see how to store and load template data inside GrapesJS. You may already noticed that even if you refresh the page after changes on canvas your data are not lost and this because GrapesJS comes with some built-in storage implementation.
The default one is the localStorage which is pretty simple and all the data are stored locally on your computer. Let's see the options available for this storage</p> <div class="language-js extra-class"><pre class="language-js"><code><span class="token operator">...</span>
<span class="token keyword">var</span> editor <span class="token operator">=</span> grapesjs<span class="token punctuation">.</span><span class="token function">init</span><span class="token punctuation">(</span><span class="token punctuation">{</span>
container <span class="token punctuation">:</span> <span class="token string">'#gjs'</span><span class="token punctuation">,</span>
container <span class="token operator">:</span> <span class="token string">'#gjs'</span><span class="token punctuation">,</span>
<span class="token operator">...</span>
<span class="token comment">// Default configuration</span>
storageManager<span class="token punctuation">:</span> <span class="token punctuation">{</span>
id<span class="token punctuation">:</span> <span class="token string">'gjs-'</span><span class="token punctuation">,</span> <span class="token comment">// Prefix identifier that will be used inside storing and loading</span>
type<span class="token punctuation">:</span> <span class="token string">'local'</span><span class="token punctuation">,</span> <span class="token comment">// Type of the storage</span>
autosave<span class="token punctuation">:</span> <span class="token boolean">true</span><span class="token punctuation">,</span> <span class="token comment">// Store data automatically</span>
autoload<span class="token punctuation">:</span> <span class="token boolean">true</span><span class="token punctuation">,</span> <span class="token comment">// Autoload stored data on init</span>
stepsBeforeSave<span class="token punctuation">:</span> <span class="token number">1</span><span class="token punctuation">,</span> <span class="token comment">// If autosave enabled, indicates how many changes are necessary before store method is triggered</span>
storeComponents<span class="token punctuation">:</span> <span class="token boolean">false</span><span class="token punctuation">,</span> <span class="token comment">// Enable/Disable storing of components in JSON format</span>
storeStyles<span class="token punctuation">:</span> <span class="token boolean">false</span><span class="token punctuation">,</span> <span class="token comment">// Enable/Disable storing of rules/style in JSON format</span>
storeHtml<span class="token punctuation">:</span> <span class="token boolean">true</span><span class="token punctuation">,</span> <span class="token comment">// Enable/Disable storing of components as HTML string</span>
storeCss<span class="token punctuation">:</span> <span class="token boolean">true</span><span class="token punctuation">,</span> <span class="token comment">// Enable/Disable storing of rules/style as CSS string</span>
storageManager<span class="token operator">:</span> <span class="token punctuation">{</span>
id<span class="token operator">:</span> <span class="token string">'gjs-'</span><span class="token punctuation">,</span> <span class="token comment">// Prefix identifier that will be used inside storing and loading</span>
type<span class="token operator">:</span> <span class="token string">'local'</span><span class="token punctuation">,</span> <span class="token comment">// Type of the storage</span>
autosave<span class="token operator">:</span> <span class="token boolean">true</span><span class="token punctuation">,</span> <span class="token comment">// Store data automatically</span>
autoload<span class="token operator">:</span> <span class="token boolean">true</span><span class="token punctuation">,</span> <span class="token comment">// Autoload stored data on init</span>
stepsBeforeSave<span class="token operator">:</span> <span class="token number">1</span><span class="token punctuation">,</span> <span class="token comment">// If autosave enabled, indicates how many changes are necessary before store method is triggered</span>
storeComponents<span class="token operator">:</span> <span class="token boolean">false</span><span class="token punctuation">,</span> <span class="token comment">// Enable/Disable storing of components in JSON format</span>
storeStyles<span class="token operator">:</span> <span class="token boolean">false</span><span class="token punctuation">,</span> <span class="token comment">// Enable/Disable storing of rules/style in JSON format</span>
storeHtml<span class="token operator">:</span> <span class="token boolean">true</span><span class="token punctuation">,</span> <span class="token comment">// Enable/Disable storing of components as HTML string</span>
storeCss<span class="token operator">:</span> <span class="token boolean">true</span><span class="token punctuation">,</span> <span class="token comment">// Enable/Disable storing of rules/style as CSS string</span>
<span class="token punctuation">}</span>
<span class="token punctuation">}</span><span class="token punctuation">)</span><span class="token punctuation">;</span>
<span class="token operator">...</span>
</code></pre></div><p>Worth noting the defaut <code>id</code> parameter which adds a prefix for all keys to store. If you check the localStorage inside your DOM panel you'll see something like <code>{ 'gjs-components': '&lt;div&gt;....' ...}</code> in this way it prevents the risk of collisions, quite common with localStorage use in large applications.</p><p>Storing data locally it's easy and fast but useless in some common cases. In the next example we'll see how to setup a remote storage, which is not far from the previous one</p><div class="language-js extra-class"><pre class="language-js"><code><span class="token operator">...</span>
</code></pre></div><p>Worth noting the defaut <code>id</code> parameter which adds a prefix for all keys to store. If you check the localStorage inside your DOM panel you'll see something like <code>{ 'gjs-components': '&lt;div&gt;....' ...}</code> in this way it prevents the risk of collisions, quite common with localStorage use in large applications.</p> <p>Storing data locally it's easy and fast but useless in some common cases. In the next example we'll see how to setup a remote storage, which is not far from the previous one</p> <div class="language-js extra-class"><pre class="language-js"><code><span class="token operator">...</span>
<span class="token keyword">var</span> editor <span class="token operator">=</span> grapesjs<span class="token punctuation">.</span><span class="token function">init</span><span class="token punctuation">(</span><span class="token punctuation">{</span>
container <span class="token punctuation">:</span> <span class="token string">'#gjs'</span><span class="token punctuation">,</span>
container <span class="token operator">:</span> <span class="token string">'#gjs'</span><span class="token punctuation">,</span>
<span class="token operator">...</span>
storageManager<span class="token punctuation">:</span> <span class="token punctuation">{</span>
type<span class="token punctuation">:</span> <span class="token string">'remote'</span><span class="token punctuation">,</span>
stepsBeforeSave<span class="token punctuation">:</span> <span class="token number">10</span><span class="token punctuation">,</span>
urlStore<span class="token punctuation">:</span> <span class="token string">'http://store/endpoint'</span><span class="token punctuation">,</span>
urlLoad<span class="token punctuation">:</span> <span class="token string">'http://load/endpoint'</span><span class="token punctuation">,</span>
params<span class="token punctuation">:</span> <span class="token punctuation">{</span><span class="token punctuation">}</span><span class="token punctuation">,</span> <span class="token comment">// For custom values on requests</span>
storageManager<span class="token operator">:</span> <span class="token punctuation">{</span>
type<span class="token operator">:</span> <span class="token string">'remote'</span><span class="token punctuation">,</span>
stepsBeforeSave<span class="token operator">:</span> <span class="token number">10</span><span class="token punctuation">,</span>
urlStore<span class="token operator">:</span> <span class="token string">'http://store/endpoint'</span><span class="token punctuation">,</span>
urlLoad<span class="token operator">:</span> <span class="token string">'http://load/endpoint'</span><span class="token punctuation">,</span>
params<span class="token operator">:</span> <span class="token punctuation">{</span><span class="token punctuation">}</span><span class="token punctuation">,</span> <span class="token comment">// For custom values on requests</span>
<span class="token punctuation">}</span>
<span class="token punctuation">}</span><span class="token punctuation">)</span><span class="token punctuation">;</span>
<span class="token operator">...</span>
</code></pre></div><p>As you can see we've left some default option unchanged, increased changes necessary for autosave triggering and passed remote endpoints.</p><p>If you prefer you could also disable autosaving and do it by yourself using some custom command in this way:</p><div class="language-js extra-class"><pre class="language-js"><code><span class="token operator">...</span>
storageManager<span class="token punctuation">:</span> <span class="token punctuation">{</span>
type<span class="token punctuation">:</span> <span class="token string">'remote'</span><span class="token punctuation">,</span>
autosave<span class="token punctuation">:</span> <span class="token boolean">false</span><span class="token punctuation">,</span>
</code></pre></div><p>As you can see we've left some default option unchanged, increased changes necessary for autosave triggering and passed remote endpoints.</p> <p>If you prefer you could also disable autosaving and do it by yourself using some custom command in this way:</p> <div class="language-js extra-class"><pre class="language-js"><code><span class="token operator">...</span>
storageManager<span class="token operator">:</span> <span class="token punctuation">{</span>
type<span class="token operator">:</span> <span class="token string">'remote'</span><span class="token punctuation">,</span>
autosave<span class="token operator">:</span> <span class="token boolean">false</span><span class="token punctuation">,</span>
<span class="token punctuation">}</span><span class="token punctuation">,</span>
<span class="token operator">...</span>
commands<span class="token punctuation">:</span> <span class="token punctuation">{</span>
defaults<span class="token punctuation">:</span> <span class="token punctuation">[</span><span class="token punctuation">{</span>
id<span class="token punctuation">:</span> <span class="token string">'storeData'</span><span class="token punctuation">,</span>
<span class="token function-variable function">run</span><span class="token punctuation">:</span> <span class="token keyword">function</span><span class="token punctuation">(</span><span class="token parameter">editor<span class="token punctuation">,</span> senderBtn</span><span class="token punctuation">)</span><span class="token punctuation">{</span>
commands<span class="token operator">:</span> <span class="token punctuation">{</span>
defaults<span class="token operator">:</span> <span class="token punctuation">[</span><span class="token punctuation">{</span>
id<span class="token operator">:</span> <span class="token string">'storeData'</span><span class="token punctuation">,</span>
<span class="token function-variable function">run</span><span class="token operator">:</span> <span class="token keyword">function</span><span class="token punctuation">(</span><span class="token parameter">editor<span class="token punctuation">,</span> senderBtn</span><span class="token punctuation">)</span><span class="token punctuation">{</span>
editor<span class="token punctuation">.</span><span class="token function">store</span><span class="token punctuation">(</span><span class="token punctuation">)</span><span class="token punctuation">;</span>
<span class="token punctuation">}</span><span class="token punctuation">,</span>
<span class="token punctuation">}</span><span class="token punctuation">]</span>
<span class="token punctuation">}</span>
<span class="token operator">...</span>
</code></pre></div><blockquote><p>Check <a href="API-Storage-Manager">Storage Manager API Reference</a></p></blockquote></div><div class="page-edit"><div class="edit-link"><a href="https://github.com/artf/grapesjs/edit/dev/docs/Home.md" target="_blank" rel="noopener noreferrer">Edit this page on GitHub</a><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path><polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></div><div class="last-updated"><span class="prefix">Last Updated: </span><span class="time">7/13/2018, 12:12:35 AM</span></div></div><!----></div></div></div>
<script src="/docs/assets/js/app.e1f2d947.js" defer></script><script src="/docs/assets/js/11.3f87b9b8.js" defer></script>
</code></pre></div><blockquote><p>Check <a href="API-Storage-Manager">Storage Manager API Reference</a></p></blockquote></div> <footer class="page-edit"><div class="edit-link"><a href="https://github.com/artf/grapesjs/edit/dev/docs/Home.md" target="_blank" rel="noopener noreferrer">Edit this page on GitHub</a> <svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></div> <div class="last-updated"><span class="prefix">Last Updated:</span> <span class="time">7/13/2018, 12:12:35 AM</span></div></footer> <!----> </main></div><div class="global-ui"></div></div>
<script src="/docs/assets/js/app.4dd41b9b.js" defer></script><script src="/docs/assets/js/11.b2ac4984.js" defer></script><script src="/docs/assets/js/2.a342f4be.js" defer></script><script src="/docs/assets/js/17.9b7a7fa4.js" defer></script>
</body>
</html>

96
docs/api/assets.html

File diff suppressed because one or more lines are too long

88
docs/api/block_manager.html

@ -4,57 +4,63 @@
<meta charset="utf-8">
<meta name="viewport" content="width=device-width,initial-scale=1">
<title>GrapesJS</title>
<meta name="description" content="GrapesJS documentation">
<meta name="generator" content="VuePress 1.4.1">
<link rel="icon" href="/docs/logo-icon.png">
<link rel="stylesheet" href="../stylesheets/grapes.min.css?v0.16.12">
<script src="../js/grapes.min.js?v0.16.12"></script>
<link rel="preload" href="/docs/assets/css/styles.e1f2d947.css" as="style"><link rel="preload" href="/docs/assets/js/app.e1f2d947.js" as="script"><link rel="preload" href="/docs/assets/js/15.aa7f42f8.js" as="script"><link rel="prefetch" href="/docs/assets/css/1.styles.b40e6662.css"><link rel="prefetch" href="/docs/assets/css/2.styles.896e948d.css"><link rel="prefetch" href="/docs/assets/css/3.styles.46968bd4.css"><link rel="prefetch" href="/docs/assets/css/4.styles.79691bb5.css"><link rel="prefetch" href="/docs/assets/css/5.styles.6013373a.css"><link rel="prefetch" href="/docs/assets/css/6.styles.467c19a2.css"><link rel="prefetch" href="/docs/assets/css/7.styles.ce9d181d.css"><link rel="prefetch" href="/docs/assets/css/8.styles.aae17ac6.css"><link rel="prefetch" href="/docs/assets/css/9.styles.e0170b17.css"><link rel="prefetch" href="/docs/assets/js/1.b40e6662.js"><link rel="prefetch" href="/docs/assets/js/10.e7cd7c26.js"><link rel="prefetch" href="/docs/assets/js/11.3f87b9b8.js"><link rel="prefetch" href="/docs/assets/js/12.269b5586.js"><link rel="prefetch" href="/docs/assets/js/13.e52ea678.js"><link rel="prefetch" href="/docs/assets/js/14.0606827a.js"><link rel="prefetch" href="/docs/assets/js/16.959c0bd7.js"><link rel="prefetch" href="/docs/assets/js/17.bfba947e.js"><link rel="prefetch" href="/docs/assets/js/18.7f401ffb.js"><link rel="prefetch" href="/docs/assets/js/19.3e0ce3c8.js"><link rel="prefetch" href="/docs/assets/js/2.896e948d.js"><link rel="prefetch" href="/docs/assets/js/20.f4502040.js"><link rel="prefetch" href="/docs/assets/js/21.2babea6a.js"><link rel="prefetch" href="/docs/assets/js/22.26e5d9ed.js"><link rel="prefetch" href="/docs/assets/js/23.a2c9ec17.js"><link rel="prefetch" href="/docs/assets/js/24.f9675b16.js"><link rel="prefetch" href="/docs/assets/js/25.b52924ae.js"><link rel="prefetch" href="/docs/assets/js/26.81c00685.js"><link rel="prefetch" href="/docs/assets/js/27.7372785c.js"><link rel="prefetch" href="/docs/assets/js/28.df5c22ed.js"><link rel="prefetch" href="/docs/assets/js/29.b167a894.js"><link rel="prefetch" href="/docs/assets/js/3.46968bd4.js"><link rel="prefetch" href="/docs/assets/js/30.d165faf7.js"><link rel="prefetch" href="/docs/assets/js/31.334d7953.js"><link rel="prefetch" href="/docs/assets/js/32.f9daa2c8.js"><link rel="prefetch" href="/docs/assets/js/33.93f49bfa.js"><link rel="prefetch" href="/docs/assets/js/34.4865e6c3.js"><link rel="prefetch" href="/docs/assets/js/35.9d089775.js"><link rel="prefetch" href="/docs/assets/js/36.67cb8d1f.js"><link rel="prefetch" href="/docs/assets/js/37.708a94ac.js"><link rel="prefetch" href="/docs/assets/js/38.0f8df29b.js"><link rel="prefetch" href="/docs/assets/js/39.074f3faf.js"><link rel="prefetch" href="/docs/assets/js/4.79691bb5.js"><link rel="prefetch" href="/docs/assets/js/40.cef45f06.js"><link rel="prefetch" href="/docs/assets/js/41.c734b929.js"><link rel="prefetch" href="/docs/assets/js/42.1078a060.js"><link rel="prefetch" href="/docs/assets/js/43.7188da01.js"><link rel="prefetch" href="/docs/assets/js/44.1fd52e91.js"><link rel="prefetch" href="/docs/assets/js/45.69c67864.js"><link rel="prefetch" href="/docs/assets/js/5.6013373a.js"><link rel="prefetch" href="/docs/assets/js/6.467c19a2.js"><link rel="prefetch" href="/docs/assets/js/7.ce9d181d.js"><link rel="prefetch" href="/docs/assets/js/8.aae17ac6.js"><link rel="prefetch" href="/docs/assets/js/9.e0170b17.js">
<link rel="stylesheet" href="/docs/assets/css/styles.e1f2d947.css">
<link rel="stylesheet" href="../stylesheets/grapes.min.css?v0.16.12">
<script src="../js/grapes.min.js?v0.16.12"></script>
<meta name="description" content="GrapesJS documentation">
<link rel="preload" href="/docs/assets/css/0.styles.d44f2c14.css" as="style"><link rel="preload" href="/docs/assets/js/app.4dd41b9b.js" as="script"><link rel="preload" href="/docs/assets/js/11.b2ac4984.js" as="script"><link rel="preload" href="/docs/assets/js/2.a342f4be.js" as="script"><link rel="preload" href="/docs/assets/js/21.66fe8957.js" as="script"><link rel="prefetch" href="/docs/assets/js/10.6a518be5.js"><link rel="prefetch" href="/docs/assets/js/12.bf8ecce1.js"><link rel="prefetch" href="/docs/assets/js/13.d807997f.js"><link rel="prefetch" href="/docs/assets/js/14.0ba8a778.js"><link rel="prefetch" href="/docs/assets/js/15.52ce2afa.js"><link rel="prefetch" href="/docs/assets/js/16.47266d46.js"><link rel="prefetch" href="/docs/assets/js/17.9b7a7fa4.js"><link rel="prefetch" href="/docs/assets/js/18.66b0785d.js"><link rel="prefetch" href="/docs/assets/js/19.2f9692d0.js"><link rel="prefetch" href="/docs/assets/js/20.ab1e767c.js"><link rel="prefetch" href="/docs/assets/js/22.cb6c233f.js"><link rel="prefetch" href="/docs/assets/js/23.dc99d7c7.js"><link rel="prefetch" href="/docs/assets/js/24.245fff8a.js"><link rel="prefetch" href="/docs/assets/js/25.d8c7e0b5.js"><link rel="prefetch" href="/docs/assets/js/26.ad7fc796.js"><link rel="prefetch" href="/docs/assets/js/27.169cfbf6.js"><link rel="prefetch" href="/docs/assets/js/28.f086d486.js"><link rel="prefetch" href="/docs/assets/js/29.5e2a7327.js"><link rel="prefetch" href="/docs/assets/js/3.7e642bff.js"><link rel="prefetch" href="/docs/assets/js/30.3a998b30.js"><link rel="prefetch" href="/docs/assets/js/31.5286fade.js"><link rel="prefetch" href="/docs/assets/js/32.0a0e4ae7.js"><link rel="prefetch" href="/docs/assets/js/33.0ba298a5.js"><link rel="prefetch" href="/docs/assets/js/34.07640632.js"><link rel="prefetch" href="/docs/assets/js/35.061f6dd5.js"><link rel="prefetch" href="/docs/assets/js/36.63462982.js"><link rel="prefetch" href="/docs/assets/js/37.e2d50838.js"><link rel="prefetch" href="/docs/assets/js/38.1230aa70.js"><link rel="prefetch" href="/docs/assets/js/39.c8373102.js"><link rel="prefetch" href="/docs/assets/js/4.32ffd5a1.js"><link rel="prefetch" href="/docs/assets/js/40.0600f064.js"><link rel="prefetch" href="/docs/assets/js/41.9bbfe266.js"><link rel="prefetch" href="/docs/assets/js/42.63c51d25.js"><link rel="prefetch" href="/docs/assets/js/43.d69d8e57.js"><link rel="prefetch" href="/docs/assets/js/44.a981446c.js"><link rel="prefetch" href="/docs/assets/js/45.415ecb59.js"><link rel="prefetch" href="/docs/assets/js/46.75d7a27f.js"><link rel="prefetch" href="/docs/assets/js/47.a4983875.js"><link rel="prefetch" href="/docs/assets/js/48.0dd7e7e0.js"><link rel="prefetch" href="/docs/assets/js/49.166bd1fa.js"><link rel="prefetch" href="/docs/assets/js/5.a0a5a0aa.js"><link rel="prefetch" href="/docs/assets/js/50.4e76f723.js"><link rel="prefetch" href="/docs/assets/js/51.21d145d2.js"><link rel="prefetch" href="/docs/assets/js/52.43234198.js"><link rel="prefetch" href="/docs/assets/js/6.9461537e.js"><link rel="prefetch" href="/docs/assets/js/7.3158bea4.js"><link rel="prefetch" href="/docs/assets/js/8.625d63ee.js"><link rel="prefetch" href="/docs/assets/js/9.e856c4d3.js">
<link rel="stylesheet" href="/docs/assets/css/0.styles.d44f2c14.css">
</head>
<body>
<div id="app" data-server-rendered="true"><div class="theme-container"><header class="navbar"><div class="sidebar-button"><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" role="img" viewBox="0 0 448 512" class="icon"><path fill="currentColor" d="M436 124H12c-6.627 0-12-5.373-12-12V80c0-6.627 5.373-12 12-12h424c6.627 0 12 5.373 12 12v32c0 6.627-5.373 12-12 12zm0 160H12c-6.627 0-12-5.373-12-12v-32c0-6.627 5.373-12 12-12h424c6.627 0 12 5.373 12 12v32c0 6.627-5.373 12-12 12zm0 160H12c-6.627 0-12-5.373-12-12v-32c0-6.627 5.373-12 12-12h424c6.627 0 12 5.373 12 12v32c0 6.627-5.373 12-12 12z"></path></svg></div><a href="/docs/" class="home-link router-link-active"><img src="/docs/logo.png" class="logo"><span class="site-name can-hide">
GrapesJS
</span></a><div class="links"><div class="search-box"><input aria-label="Search" autocomplete="off" spellcheck="false" value=""><!----></div><nav class="nav-links can-hide"><div class="nav-item"><a href="/docs/" class="nav-link">Docs</a></div><div class="nav-item"><a href="/docs/api/" class="nav-link router-link-active">API Reference</a></div><div class="nav-item"><a href="https://opencollective.com/grapesjs" target="_blank" rel="noopener noreferrer" class="nav-link external">
<div id="app" data-server-rendered="true"><div class="theme-container"><header class="navbar"><div class="sidebar-button"><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" role="img" viewBox="0 0 448 512" class="icon"><path fill="currentColor" d="M436 124H12c-6.627 0-12-5.373-12-12V80c0-6.627 5.373-12 12-12h424c6.627 0 12 5.373 12 12v32c0 6.627-5.373 12-12 12zm0 160H12c-6.627 0-12-5.373-12-12v-32c0-6.627 5.373-12 12-12h424c6.627 0 12 5.373 12 12v32c0 6.627-5.373 12-12 12zm0 160H12c-6.627 0-12-5.373-12-12v-32c0-6.627 5.373-12 12-12h424c6.627 0 12 5.373 12 12v32c0 6.627-5.373 12-12 12z"></path></svg></div> <a href="/docs/" class="home-link router-link-active"><img src="/docs/logo.png" alt="GrapesJS" class="logo"> <span class="site-name can-hide">GrapesJS</span></a> <div class="links"><div class="search-box"><input aria-label="Search" autocomplete="off" spellcheck="false" value=""> <!----></div> <nav class="nav-links can-hide"><div class="nav-item"><a href="/docs/" class="nav-link">
Docs
</a></div><div class="nav-item"><a href="/docs/api/" class="nav-link router-link-active">
API Reference
</a></div><div class="nav-item"><a href="https://opencollective.com/grapesjs" target="_blank" rel="noopener noreferrer" class="nav-link external">
Support Us
<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path><polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></div><div class="nav-item"><a href="https://twitter.com/grapesjs" target="_blank" rel="noopener noreferrer" class="nav-link external">
<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></div><div class="nav-item"><a href="https://twitter.com/grapesjs" target="_blank" rel="noopener noreferrer" class="nav-link external">
Twitter
<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path><polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></div><a href="https://github.com/artf/grapesjs" target="_blank" rel="noopener noreferrer" class="repo-link">
<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></div> <a href="https://github.com/artf/grapesjs" target="_blank" rel="noopener noreferrer" class="repo-link">
GitHub
<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path><polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></nav></div></header><div class="sidebar-mask"></div><div class="sidebar"><nav class="nav-links"><div class="nav-item"><a href="/docs/" class="nav-link">Docs</a></div><div class="nav-item"><a href="/docs/api/" class="nav-link router-link-active">API Reference</a></div><div class="nav-item"><a href="https://opencollective.com/grapesjs" target="_blank" rel="noopener noreferrer" class="nav-link external">
<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></nav></div></header> <div class="sidebar-mask"></div> <aside class="sidebar"><nav class="nav-links"><div class="nav-item"><a href="/docs/" class="nav-link">
Docs
</a></div><div class="nav-item"><a href="/docs/api/" class="nav-link router-link-active">
API Reference
</a></div><div class="nav-item"><a href="https://opencollective.com/grapesjs" target="_blank" rel="noopener noreferrer" class="nav-link external">
Support Us
<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path><polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></div><div class="nav-item"><a href="https://twitter.com/grapesjs" target="_blank" rel="noopener noreferrer" class="nav-link external">
<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></div><div class="nav-item"><a href="https://twitter.com/grapesjs" target="_blank" rel="noopener noreferrer" class="nav-link external">
Twitter
<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path><polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></div><a href="https://github.com/artf/grapesjs" target="_blank" rel="noopener noreferrer" class="repo-link">
<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></div> <a href="https://github.com/artf/grapesjs" target="_blank" rel="noopener noreferrer" class="repo-link">
GitHub
<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path><polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></nav><div id="native-carbon" class="carbon-ads"></div><ul class="sidebar-links"><li><a href="/docs/api/" class="sidebar-link">API Reference</a></li><li><a href="/docs/api/editor.html" class="sidebar-link">Editor</a></li><li><a href="/docs/api/i18n.html" class="sidebar-link">I18n</a></li><li><a href="/docs/api/canvas.html" class="sidebar-link">Canvas</a></li><li><a href="/docs/api/assets.html" class="sidebar-link">Asset Manager</a></li><li><a href="/docs/api/block_manager.html" class="active sidebar-link">Block Manager</a><ul class="sidebar-sub-headers"><li class="sidebar-sub-header"><a href="/docs/api/block_manager.html#blockmanager" class="sidebar-link">BlockManager</a></li><li class="sidebar-sub-header"><a href="/docs/api/block_manager.html#getconfig" class="sidebar-link">getConfig</a></li><li class="sidebar-sub-header"><a href="/docs/api/block_manager.html#onload" class="sidebar-link">onLoad</a></li><li class="sidebar-sub-header"><a href="/docs/api/block_manager.html#add" class="sidebar-link">add</a></li><li class="sidebar-sub-header"><a href="/docs/api/block_manager.html#get" class="sidebar-link">get</a></li><li class="sidebar-sub-header"><a href="/docs/api/block_manager.html#getall" class="sidebar-link">getAll</a></li><li class="sidebar-sub-header"><a href="/docs/api/block_manager.html#getallvisible" class="sidebar-link">getAllVisible</a></li><li class="sidebar-sub-header"><a href="/docs/api/block_manager.html#remove" class="sidebar-link">remove</a></li><li class="sidebar-sub-header"><a href="/docs/api/block_manager.html#getcategories" class="sidebar-link">getCategories</a></li><li class="sidebar-sub-header"><a href="/docs/api/block_manager.html#getcontainer" class="sidebar-link">getContainer</a></li><li class="sidebar-sub-header"><a href="/docs/api/block_manager.html#render" class="sidebar-link">render</a></li></ul></li><li><a href="/docs/api/commands.html" class="sidebar-link">Commands</a></li><li><a href="/docs/api/components.html" class="sidebar-link">DOM Components</a></li><li><a href="/docs/api/component.html" class="sidebar-link"> - Component</a></li><li><a href="/docs/api/panels.html" class="sidebar-link">Panels</a></li><li><a href="/docs/api/style_manager.html" class="sidebar-link">Style Manager</a></li><li><a href="/docs/api/storage_manager.html" class="sidebar-link">Storage Manager</a></li><li><a href="/docs/api/device_manager.html" class="sidebar-link">Device Manager</a></li><li><a href="/docs/api/selector_manager.html" class="sidebar-link">Selector Manager</a></li><li><a href="/docs/api/css_composer.html" class="sidebar-link">CSS Composer</a></li><li><a href="/docs/api/modal_dialog.html" class="sidebar-link">Modal</a></li><li><a href="/docs/api/rich_text_editor.html" class="sidebar-link">Rich Text Editor</a></li><li><a href="/docs/api/keymaps.html" class="sidebar-link">Keymaps</a></li><li><a href="/docs/api/undo_manager.html" class="sidebar-link">Undo Manager</a></li></ul></div><div class="page"><div class="content"><h2 id="blockmanager"><a href="#blockmanager" aria-hidden="true" class="header-anchor">#</a> BlockManager</h2><p>You can customize the initial state of the module from the editor initialization, by passing the following <a href="https://github.com/artf/grapesjs/blob/master/src/block_manager/config/config.js" target="_blank" rel="noopener noreferrer">Configuration Object<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path><polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></p><div class="language-js extra-class"><pre class="language-js"><code><span class="token keyword">const</span> editor <span class="token operator">=</span> grapesjs<span class="token punctuation">.</span><span class="token function">init</span><span class="token punctuation">(</span><span class="token punctuation">{</span>
blockManager<span class="token punctuation">:</span> <span class="token punctuation">{</span>
<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></nav> <div id="native-carbon" class="carbon-ads"></div> <ul class="sidebar-links"><li><a href="/docs/api/" class="sidebar-link">API Reference</a></li><li><a href="/docs/api/editor.html" class="sidebar-link">Editor</a></li><li><a href="/docs/api/i18n.html" class="sidebar-link">I18n</a></li><li><a href="/docs/api/canvas.html" class="sidebar-link">Canvas</a></li><li><a href="/docs/api/assets.html" class="sidebar-link">Asset Manager</a></li><li><a href="/docs/api/block_manager.html" class="active sidebar-link">Block Manager</a><ul class="sidebar-sub-headers"><li class="sidebar-sub-header"><a href="/docs/api/block_manager.html#blockmanager" class="sidebar-link">BlockManager</a></li><li class="sidebar-sub-header"><a href="/docs/api/block_manager.html#getconfig" class="sidebar-link">getConfig</a></li><li class="sidebar-sub-header"><a href="/docs/api/block_manager.html#onload" class="sidebar-link">onLoad</a></li><li class="sidebar-sub-header"><a href="/docs/api/block_manager.html#add" class="sidebar-link">add</a></li><li class="sidebar-sub-header"><a href="/docs/api/block_manager.html#get" class="sidebar-link">get</a></li><li class="sidebar-sub-header"><a href="/docs/api/block_manager.html#getall" class="sidebar-link">getAll</a></li><li class="sidebar-sub-header"><a href="/docs/api/block_manager.html#getallvisible" class="sidebar-link">getAllVisible</a></li><li class="sidebar-sub-header"><a href="/docs/api/block_manager.html#remove" class="sidebar-link">remove</a></li><li class="sidebar-sub-header"><a href="/docs/api/block_manager.html#getcategories" class="sidebar-link">getCategories</a></li><li class="sidebar-sub-header"><a href="/docs/api/block_manager.html#getcontainer" class="sidebar-link">getContainer</a></li><li class="sidebar-sub-header"><a href="/docs/api/block_manager.html#render" class="sidebar-link">render</a></li></ul></li><li><a href="/docs/api/commands.html" class="sidebar-link">Commands</a></li><li><a href="/docs/api/components.html" class="sidebar-link">DOM Components</a></li><li><a href="/docs/api/component.html" class="sidebar-link"> - Component</a></li><li><a href="/docs/api/panels.html" class="sidebar-link">Panels</a></li><li><a href="/docs/api/style_manager.html" class="sidebar-link">Style Manager</a></li><li><a href="/docs/api/storage_manager.html" class="sidebar-link">Storage Manager</a></li><li><a href="/docs/api/device_manager.html" class="sidebar-link">Device Manager</a></li><li><a href="/docs/api/selector_manager.html" class="sidebar-link">Selector Manager</a></li><li><a href="/docs/api/css_composer.html" class="sidebar-link">CSS Composer</a></li><li><a href="/docs/api/modal_dialog.html" class="sidebar-link">Modal</a></li><li><a href="/docs/api/rich_text_editor.html" class="sidebar-link">Rich Text Editor</a></li><li><a href="/docs/api/keymaps.html" class="sidebar-link">Keymaps</a></li><li><a href="/docs/api/undo_manager.html" class="sidebar-link">Undo Manager</a></li></ul> </aside> <main class="page"> <div class="theme-default-content content__default"><h2 id="blockmanager"><a href="#blockmanager" class="header-anchor">#</a> BlockManager</h2> <p>You can customize the initial state of the module from the editor initialization, by passing the following <a href="https://github.com/artf/grapesjs/blob/master/src/block_manager/config/config.js" target="_blank" rel="noopener noreferrer">Configuration Object<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></p> <div class="language-js extra-class"><pre class="language-js"><code><span class="token keyword">const</span> editor <span class="token operator">=</span> grapesjs<span class="token punctuation">.</span><span class="token function">init</span><span class="token punctuation">(</span><span class="token punctuation">{</span>
blockManager<span class="token operator">:</span> <span class="token punctuation">{</span>
<span class="token comment">// options</span>
<span class="token punctuation">}</span>
<span class="token punctuation">}</span><span class="token punctuation">)</span>
</code></pre></div><p>Once the editor is instantiated you can use its API. Before using these methods you should get the module from the instance</p><div class="language-js extra-class"><pre class="language-js"><code><span class="token keyword">const</span> blockManager <span class="token operator">=</span> editor<span class="token punctuation">.</span>BlockManager<span class="token punctuation">;</span>
</code></pre></div><ul><li><a href="#add">add</a></li><li><a href="#get">get</a></li><li><a href="#getall">getAll</a></li><li><a href="#getallvisible">getAllVisible</a></li><li><a href="#remove">remove</a></li><li><a href="#getconfig">getConfig</a></li><li><a href="#getcategories">getCategories</a></li><li><a href="#getcontainer">getContainer</a></li><li><a href="#render">render</a></li></ul><h2 id="getconfig"><a href="#getconfig" aria-hidden="true" class="header-anchor">#</a> getConfig</h2><p>Get configuration object</p><p>Returns <strong><a href="https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Object" target="_blank" rel="noopener noreferrer">Object<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path><polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></strong></p><h2 id="onload"><a href="#onload" aria-hidden="true" class="header-anchor">#</a> onLoad</h2><p>Load default blocks if the collection is empty</p><h2 id="add"><a href="#add" aria-hidden="true" class="header-anchor">#</a> add</h2><p>Add new block to the collection.</p><h3 id="parameters"><a href="#parameters" aria-hidden="true" class="header-anchor">#</a> Parameters</h3><ul><li><code>id</code><strong><a href="https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String" target="_blank" rel="noopener noreferrer">string<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path><polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></strong> Block id</li><li><code>opts</code><strong><a href="https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Object" target="_blank" rel="noopener noreferrer">Object<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path><polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></strong> Options
<ul><li><code>opts.label</code><strong><a href="https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String" target="_blank" rel="noopener noreferrer">string<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path><polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></strong> Name of the block</li><li><code>opts.content</code><strong><a href="https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String" target="_blank" rel="noopener noreferrer">string<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path><polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></strong> HTML content</li><li><code>opts.category</code><strong>(<a href="https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String" target="_blank" rel="noopener noreferrer">string<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path><polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a> | <a href="https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Object" target="_blank" rel="noopener noreferrer">Object<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path><polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a>)</strong> Group the block inside a catgegory.
</code></pre></div><p>Once the editor is instantiated you can use its API. Before using these methods you should get the module from the instance</p> <div class="language-js extra-class"><pre class="language-js"><code><span class="token keyword">const</span> blockManager <span class="token operator">=</span> editor<span class="token punctuation">.</span>BlockManager<span class="token punctuation">;</span>
</code></pre></div><ul><li><a href="#add">add</a></li> <li><a href="#get">get</a></li> <li><a href="#getall">getAll</a></li> <li><a href="#getallvisible">getAllVisible</a></li> <li><a href="#remove">remove</a></li> <li><a href="#getconfig">getConfig</a></li> <li><a href="#getcategories">getCategories</a></li> <li><a href="#getcontainer">getContainer</a></li> <li><a href="#render">render</a></li></ul> <h2 id="getconfig"><a href="#getconfig" class="header-anchor">#</a> getConfig</h2> <p>Get configuration object</p> <p>Returns <strong><a href="https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Object" target="_blank" rel="noopener noreferrer">Object<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></strong></p> <h2 id="onload"><a href="#onload" class="header-anchor">#</a> onLoad</h2> <p>Load default blocks if the collection is empty</p> <h2 id="add"><a href="#add" class="header-anchor">#</a> add</h2> <p>Add new block to the collection.</p> <h3 id="parameters"><a href="#parameters" class="header-anchor">#</a> Parameters</h3> <ul><li><code>id</code> <strong><a href="https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String" target="_blank" rel="noopener noreferrer">string<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></strong> Block id</li> <li><code>opts</code> <strong><a href="https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Object" target="_blank" rel="noopener noreferrer">Object<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></strong> Options
<ul><li><code>opts.label</code> <strong><a href="https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String" target="_blank" rel="noopener noreferrer">string<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></strong> Name of the block</li> <li><code>opts.content</code> <strong><a href="https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String" target="_blank" rel="noopener noreferrer">string<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></strong> HTML content</li> <li><code>opts.category</code> <strong>(<a href="https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String" target="_blank" rel="noopener noreferrer">string<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a> | <a href="https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Object" target="_blank" rel="noopener noreferrer">Object<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a>)</strong> Group the block inside a catgegory.
You should pass objects with id property, eg:
{id: 'some-uid', label: 'My category'}
The string will be converted in:
'someid' =&gt; {id: 'someid', label: 'someid'}</li><li><code>opts.attributes</code><strong><a href="https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Object" target="_blank" rel="noopener noreferrer">Object<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path><polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></strong> Block attributes (optional, default <code>{}</code>)</li></ul></li></ul><h3 id="examples"><a href="#examples" aria-hidden="true" class="header-anchor">#</a> Examples</h3><div class="language-javascript extra-class"><pre class="language-javascript"><code>blockManager<span class="token punctuation">.</span><span class="token function">add</span><span class="token punctuation">(</span><span class="token string">'h1-block'</span><span class="token punctuation">,</span> <span class="token punctuation">{</span>
label<span class="token punctuation">:</span> <span class="token string">'Heading'</span><span class="token punctuation">,</span>
content<span class="token punctuation">:</span> <span class="token string">'&lt;h1&gt;Put your title here&lt;/h1&gt;'</span><span class="token punctuation">,</span>
category<span class="token punctuation">:</span> <span class="token string">'Basic'</span><span class="token punctuation">,</span>
attributes<span class="token punctuation">:</span> <span class="token punctuation">{</span>
title<span class="token punctuation">:</span> <span class="token string">'Insert h1 block'</span>
'someid' =&gt; {id: 'someid', label: 'someid'}</li> <li><code>opts.attributes</code> <strong><a href="https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Object" target="_blank" rel="noopener noreferrer">Object<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></strong> Block attributes (optional, default <code>{}</code>)</li></ul></li></ul> <h3 id="examples"><a href="#examples" class="header-anchor">#</a> Examples</h3> <div class="language-javascript extra-class"><pre class="language-javascript"><code>blockManager<span class="token punctuation">.</span><span class="token function">add</span><span class="token punctuation">(</span><span class="token string">'h1-block'</span><span class="token punctuation">,</span> <span class="token punctuation">{</span>
label<span class="token operator">:</span> <span class="token string">'Heading'</span><span class="token punctuation">,</span>
content<span class="token operator">:</span> <span class="token string">'&lt;h1&gt;Put your title here&lt;/h1&gt;'</span><span class="token punctuation">,</span>
category<span class="token operator">:</span> <span class="token string">'Basic'</span><span class="token punctuation">,</span>
attributes<span class="token operator">:</span> <span class="token punctuation">{</span>
title<span class="token operator">:</span> <span class="token string">'Insert h1 block'</span>
<span class="token punctuation">}</span>
<span class="token punctuation">}</span><span class="token punctuation">)</span><span class="token punctuation">;</span>
</code></pre></div><p>Returns <strong>Block</strong> Added block</p><h2 id="get"><a href="#get" aria-hidden="true" class="header-anchor">#</a> get</h2><p>Return the block by id</p><h3 id="parameters-2"><a href="#parameters-2" aria-hidden="true" class="header-anchor">#</a> Parameters</h3><ul><li><code>id</code><strong><a href="https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String" target="_blank" rel="noopener noreferrer">string<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path><polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></strong> Block id</li></ul><h3 id="examples-2"><a href="#examples-2" aria-hidden="true" class="header-anchor">#</a> Examples</h3><div class="language-javascript extra-class"><pre class="language-javascript"><code><span class="token keyword">const</span> block <span class="token operator">=</span> blockManager<span class="token punctuation">.</span><span class="token function">get</span><span class="token punctuation">(</span><span class="token string">'h1-block'</span><span class="token punctuation">)</span><span class="token punctuation">;</span>
</code></pre></div><p>Returns <strong>Block</strong> Added block</p> <h2 id="get"><a href="#get" class="header-anchor">#</a> get</h2> <p>Return the block by id</p> <h3 id="parameters-2"><a href="#parameters-2" class="header-anchor">#</a> Parameters</h3> <ul><li><code>id</code> <strong><a href="https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String" target="_blank" rel="noopener noreferrer">string<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></strong> Block id</li></ul> <h3 id="examples-2"><a href="#examples-2" class="header-anchor">#</a> Examples</h3> <div class="language-javascript extra-class"><pre class="language-javascript"><code><span class="token keyword">const</span> block <span class="token operator">=</span> blockManager<span class="token punctuation">.</span><span class="token function">get</span><span class="token punctuation">(</span><span class="token string">'h1-block'</span><span class="token punctuation">)</span><span class="token punctuation">;</span>
console<span class="token punctuation">.</span><span class="token function">log</span><span class="token punctuation">(</span><span class="token constant">JSON</span><span class="token punctuation">.</span><span class="token function">stringify</span><span class="token punctuation">(</span>block<span class="token punctuation">)</span><span class="token punctuation">)</span><span class="token punctuation">;</span>
<span class="token comment">// {label: 'Heading', content: '&lt;h1&gt;Put your ...', ...}</span>
</code></pre></div><h2 id="getall"><a href="#getall" aria-hidden="true" class="header-anchor">#</a> getAll</h2><p>Return all blocks</p><h3 id="examples-3"><a href="#examples-3" aria-hidden="true" class="header-anchor">#</a> Examples</h3><div class="language-javascript extra-class"><pre class="language-javascript"><code><span class="token keyword">const</span> blocks <span class="token operator">=</span> blockManager<span class="token punctuation">.</span><span class="token function">getAll</span><span class="token punctuation">(</span><span class="token punctuation">)</span><span class="token punctuation">;</span>
</code></pre></div><h2 id="getall"><a href="#getall" class="header-anchor">#</a> getAll</h2> <p>Return all blocks</p> <h3 id="examples-3"><a href="#examples-3" class="header-anchor">#</a> Examples</h3> <div class="language-javascript extra-class"><pre class="language-javascript"><code><span class="token keyword">const</span> blocks <span class="token operator">=</span> blockManager<span class="token punctuation">.</span><span class="token function">getAll</span><span class="token punctuation">(</span><span class="token punctuation">)</span><span class="token punctuation">;</span>
console<span class="token punctuation">.</span><span class="token function">log</span><span class="token punctuation">(</span><span class="token constant">JSON</span><span class="token punctuation">.</span><span class="token function">stringify</span><span class="token punctuation">(</span>blocks<span class="token punctuation">)</span><span class="token punctuation">)</span><span class="token punctuation">;</span>
<span class="token comment">// [{label: 'Heading', content: '&lt;h1&gt;Put your ...'}, ...]</span>
</code></pre></div><p>Returns <strong>Collection</strong></p><h2 id="getallvisible"><a href="#getallvisible" aria-hidden="true" class="header-anchor">#</a> getAllVisible</h2><p>Return the visible collection, which containes blocks actually rendered</p><p>Returns <strong>Collection</strong></p><h2 id="remove"><a href="#remove" aria-hidden="true" class="header-anchor">#</a> remove</h2><p>Remove a block by id</p><h3 id="parameters-3"><a href="#parameters-3" aria-hidden="true" class="header-anchor">#</a> Parameters</h3><ul><li><code>id</code><strong><a href="https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String" target="_blank" rel="noopener noreferrer">string<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path><polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></strong> Block id</li></ul><p>Returns <strong>Block</strong> Removed block</p><h2 id="getcategories"><a href="#getcategories" aria-hidden="true" class="header-anchor">#</a> getCategories</h2><p>Get all available categories.
It's possible to add categories only within blocks via 'add()' method</p><p>Returns <strong>(<a href="https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Array" target="_blank" rel="noopener noreferrer">Array<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path><polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a> | Collection)</strong></p><h2 id="getcontainer"><a href="#getcontainer" aria-hidden="true" class="header-anchor">#</a> getContainer</h2><p>Return the Blocks container element</p><p>Returns <strong><a href="https://developer.mozilla.org/docs/Web/HTML/Element" target="_blank" rel="noopener noreferrer">HTMLElement<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path><polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></strong></p><h2 id="render"><a href="#render" aria-hidden="true" class="header-anchor">#</a> render</h2><p>Render blocks</p><h3 id="parameters-4"><a href="#parameters-4" aria-hidden="true" class="header-anchor">#</a> Parameters</h3><ul><li><code>blocks</code><strong><a href="https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Array" target="_blank" rel="noopener noreferrer">Array<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path><polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></strong> Blocks to render, without the argument will render all global blocks</li><li><code>opts</code><strong><a href="https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Object" target="_blank" rel="noopener noreferrer">Object<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path><polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></strong> Options (optional, default <code>{}</code>)
<ul><li><code>opts.external</code><strong><a href="https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Boolean" target="_blank" rel="noopener noreferrer">Boolean<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path><polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a>?</strong> Render blocks in a new container (HTMLElement will be returned)</li><li><code>opts.ignoreCategories</code><strong><a href="https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Boolean" target="_blank" rel="noopener noreferrer">Boolean<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path><polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a>?</strong> Render blocks without categories</li></ul></li></ul><h3 id="examples-4"><a href="#examples-4" aria-hidden="true" class="header-anchor">#</a> Examples</h3><div class="language-javascript extra-class"><pre class="language-javascript"><code><span class="token comment">// Render all blocks (inside the global collection)</span>
</code></pre></div><p>Returns <strong>Collection</strong></p> <h2 id="getallvisible"><a href="#getallvisible" class="header-anchor">#</a> getAllVisible</h2> <p>Return the visible collection, which containes blocks actually rendered</p> <p>Returns <strong>Collection</strong></p> <h2 id="remove"><a href="#remove" class="header-anchor">#</a> remove</h2> <p>Remove a block by id</p> <h3 id="parameters-3"><a href="#parameters-3" class="header-anchor">#</a> Parameters</h3> <ul><li><code>id</code> <strong><a href="https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String" target="_blank" rel="noopener noreferrer">string<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></strong> Block id</li></ul> <p>Returns <strong>Block</strong> Removed block</p> <h2 id="getcategories"><a href="#getcategories" class="header-anchor">#</a> getCategories</h2> <p>Get all available categories.
It's possible to add categories only within blocks via 'add()' method</p> <p>Returns <strong>(<a href="https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Array" target="_blank" rel="noopener noreferrer">Array<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a> | Collection)</strong></p> <h2 id="getcontainer"><a href="#getcontainer" class="header-anchor">#</a> getContainer</h2> <p>Return the Blocks container element</p> <p>Returns <strong><a href="https://developer.mozilla.org/docs/Web/HTML/Element" target="_blank" rel="noopener noreferrer">HTMLElement<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></strong></p> <h2 id="render"><a href="#render" class="header-anchor">#</a> render</h2> <p>Render blocks</p> <h3 id="parameters-4"><a href="#parameters-4" class="header-anchor">#</a> Parameters</h3> <ul><li><code>blocks</code> <strong><a href="https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Array" target="_blank" rel="noopener noreferrer">Array<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></strong> Blocks to render, without the argument will render all global blocks</li> <li><code>opts</code> <strong><a href="https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Object" target="_blank" rel="noopener noreferrer">Object<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></strong> Options (optional, default <code>{}</code>)
<ul><li><code>opts.external</code> <strong><a href="https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Boolean" target="_blank" rel="noopener noreferrer">Boolean<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a>?</strong> Render blocks in a new container (HTMLElement will be returned)</li> <li><code>opts.ignoreCategories</code> <strong><a href="https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Boolean" target="_blank" rel="noopener noreferrer">Boolean<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a>?</strong> Render blocks without categories</li></ul></li></ul> <h3 id="examples-4"><a href="#examples-4" class="header-anchor">#</a> Examples</h3> <div class="language-javascript extra-class"><pre class="language-javascript"><code><span class="token comment">// Render all blocks (inside the global collection)</span>
blockManager<span class="token punctuation">.</span><span class="token function">render</span><span class="token punctuation">(</span><span class="token punctuation">)</span><span class="token punctuation">;</span>
<span class="token comment">// Render new set of blocks</span>
@ -64,22 +70,24 @@ blockManager<span class="token punctuation">.</span><span class="token function"
blockManager<span class="token punctuation">.</span><span class="token function">render</span><span class="token punctuation">(</span>filtered<span class="token punctuation">)</span><span class="token punctuation">;</span>
<span class="token comment">// Or a new set from an array</span>
blockManager<span class="token punctuation">.</span><span class="token function">render</span><span class="token punctuation">(</span><span class="token punctuation">[</span>
<span class="token punctuation">{</span>label<span class="token punctuation">:</span> <span class="token string">'Label text'</span><span class="token punctuation">,</span> content<span class="token punctuation">:</span> <span class="token string">'&lt;div&gt;Content&lt;/div&gt;'</span><span class="token punctuation">}</span>
<span class="token punctuation">{</span>label<span class="token operator">:</span> <span class="token string">'Label text'</span><span class="token punctuation">,</span> content<span class="token operator">:</span> <span class="token string">'&lt;div&gt;Content&lt;/div&gt;'</span><span class="token punctuation">}</span>
<span class="token punctuation">]</span><span class="token punctuation">)</span><span class="token punctuation">;</span>
<span class="token comment">// Back to blocks from the global collection</span>
blockManager<span class="token punctuation">.</span><span class="token function">render</span><span class="token punctuation">(</span><span class="token punctuation">)</span><span class="token punctuation">;</span>
<span class="token comment">// You can also render your blocks outside of the main block container</span>
<span class="token keyword">const</span> newBlocksEl <span class="token operator">=</span> blockManager<span class="token punctuation">.</span><span class="token function">render</span><span class="token punctuation">(</span>filtered<span class="token punctuation">,</span> <span class="token punctuation">{</span> external<span class="token punctuation">:</span> <span class="token boolean">true</span> <span class="token punctuation">}</span><span class="token punctuation">)</span><span class="token punctuation">;</span>
<span class="token keyword">const</span> newBlocksEl <span class="token operator">=</span> blockManager<span class="token punctuation">.</span><span class="token function">render</span><span class="token punctuation">(</span>filtered<span class="token punctuation">,</span> <span class="token punctuation">{</span> external<span class="token operator">:</span> <span class="token boolean">true</span> <span class="token punctuation">}</span><span class="token punctuation">)</span><span class="token punctuation">;</span>
document<span class="token punctuation">.</span><span class="token function">getElementById</span><span class="token punctuation">(</span><span class="token string">'some-id'</span><span class="token punctuation">)</span><span class="token punctuation">.</span><span class="token function">appendChild</span><span class="token punctuation">(</span>newBlocksEl<span class="token punctuation">)</span><span class="token punctuation">;</span>
</code></pre></div><p>Returns <strong><a href="https://developer.mozilla.org/docs/Web/HTML/Element" target="_blank" rel="noopener noreferrer">HTMLElement<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path><polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></strong> Rendered element</p></div><div class="page-edit"><div class="edit-link"><a href="https://github.com/artf/grapesjs/edit/dev/docs/api/block_manager.md" target="_blank" rel="noopener noreferrer">Edit this page on GitHub</a><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path><polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></div><div class="last-updated"><span class="prefix">Last Updated: </span><span class="time">1/28/2019, 7:45:05 PM</span></div></div><div class="page-nav"><p class="inner"><span class="prev">
← <a href="/docs/api/assets.html" class="prev">
Asset Manager
</a></span><span class="next"><a href="/docs/api/commands.html">
Commands
</a> →
</span></p></div></div></div></div>
<script src="/docs/assets/js/app.e1f2d947.js" defer></script><script src="/docs/assets/js/15.aa7f42f8.js" defer></script>
</code></pre></div><p>Returns <strong><a href="https://developer.mozilla.org/docs/Web/HTML/Element" target="_blank" rel="noopener noreferrer">HTMLElement<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></strong> Rendered element</p></div> <footer class="page-edit"><div class="edit-link"><a href="https://github.com/artf/grapesjs/edit/dev/docs/api/block_manager.md" target="_blank" rel="noopener noreferrer">Edit this page on GitHub</a> <svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></div> <div class="last-updated"><span class="prefix">Last Updated:</span> <span class="time">1/28/2019, 7:45:05 PM</span></div></footer> <div class="page-nav"><p class="inner"><span class="prev">
←
<a href="/docs/api/assets.html" class="prev">
Asset Manager
</a></span> <span class="next"><a href="/docs/api/commands.html">
Commands
</a>
→
</span></p></div> </main></div><div class="global-ui"></div></div>
<script src="/docs/assets/js/app.4dd41b9b.js" defer></script><script src="/docs/assets/js/11.b2ac4984.js" defer></script><script src="/docs/assets/js/2.a342f4be.js" defer></script><script src="/docs/assets/js/21.66fe8957.js" defer></script>
</body>
</html>

86
docs/api/canvas.html

File diff suppressed because one or more lines are too long

76
docs/api/commands.html

@ -4,38 +4,44 @@
<meta charset="utf-8">
<meta name="viewport" content="width=device-width,initial-scale=1">
<title>GrapesJS</title>
<meta name="description" content="GrapesJS documentation">
<meta name="generator" content="VuePress 1.4.1">
<link rel="icon" href="/docs/logo-icon.png">
<link rel="stylesheet" href="../stylesheets/grapes.min.css?v0.16.12">
<script src="../js/grapes.min.js?v0.16.12"></script>
<link rel="preload" href="/docs/assets/css/styles.e1f2d947.css" as="style"><link rel="preload" href="/docs/assets/js/app.e1f2d947.js" as="script"><link rel="preload" href="/docs/assets/js/17.bfba947e.js" as="script"><link rel="prefetch" href="/docs/assets/css/1.styles.b40e6662.css"><link rel="prefetch" href="/docs/assets/css/2.styles.896e948d.css"><link rel="prefetch" href="/docs/assets/css/3.styles.46968bd4.css"><link rel="prefetch" href="/docs/assets/css/4.styles.79691bb5.css"><link rel="prefetch" href="/docs/assets/css/5.styles.6013373a.css"><link rel="prefetch" href="/docs/assets/css/6.styles.467c19a2.css"><link rel="prefetch" href="/docs/assets/css/7.styles.ce9d181d.css"><link rel="prefetch" href="/docs/assets/css/8.styles.aae17ac6.css"><link rel="prefetch" href="/docs/assets/css/9.styles.e0170b17.css"><link rel="prefetch" href="/docs/assets/js/1.b40e6662.js"><link rel="prefetch" href="/docs/assets/js/10.e7cd7c26.js"><link rel="prefetch" href="/docs/assets/js/11.3f87b9b8.js"><link rel="prefetch" href="/docs/assets/js/12.269b5586.js"><link rel="prefetch" href="/docs/assets/js/13.e52ea678.js"><link rel="prefetch" href="/docs/assets/js/14.0606827a.js"><link rel="prefetch" href="/docs/assets/js/15.aa7f42f8.js"><link rel="prefetch" href="/docs/assets/js/16.959c0bd7.js"><link rel="prefetch" href="/docs/assets/js/18.7f401ffb.js"><link rel="prefetch" href="/docs/assets/js/19.3e0ce3c8.js"><link rel="prefetch" href="/docs/assets/js/2.896e948d.js"><link rel="prefetch" href="/docs/assets/js/20.f4502040.js"><link rel="prefetch" href="/docs/assets/js/21.2babea6a.js"><link rel="prefetch" href="/docs/assets/js/22.26e5d9ed.js"><link rel="prefetch" href="/docs/assets/js/23.a2c9ec17.js"><link rel="prefetch" href="/docs/assets/js/24.f9675b16.js"><link rel="prefetch" href="/docs/assets/js/25.b52924ae.js"><link rel="prefetch" href="/docs/assets/js/26.81c00685.js"><link rel="prefetch" href="/docs/assets/js/27.7372785c.js"><link rel="prefetch" href="/docs/assets/js/28.df5c22ed.js"><link rel="prefetch" href="/docs/assets/js/29.b167a894.js"><link rel="prefetch" href="/docs/assets/js/3.46968bd4.js"><link rel="prefetch" href="/docs/assets/js/30.d165faf7.js"><link rel="prefetch" href="/docs/assets/js/31.334d7953.js"><link rel="prefetch" href="/docs/assets/js/32.f9daa2c8.js"><link rel="prefetch" href="/docs/assets/js/33.93f49bfa.js"><link rel="prefetch" href="/docs/assets/js/34.4865e6c3.js"><link rel="prefetch" href="/docs/assets/js/35.9d089775.js"><link rel="prefetch" href="/docs/assets/js/36.67cb8d1f.js"><link rel="prefetch" href="/docs/assets/js/37.708a94ac.js"><link rel="prefetch" href="/docs/assets/js/38.0f8df29b.js"><link rel="prefetch" href="/docs/assets/js/39.074f3faf.js"><link rel="prefetch" href="/docs/assets/js/4.79691bb5.js"><link rel="prefetch" href="/docs/assets/js/40.cef45f06.js"><link rel="prefetch" href="/docs/assets/js/41.c734b929.js"><link rel="prefetch" href="/docs/assets/js/42.1078a060.js"><link rel="prefetch" href="/docs/assets/js/43.7188da01.js"><link rel="prefetch" href="/docs/assets/js/44.1fd52e91.js"><link rel="prefetch" href="/docs/assets/js/45.69c67864.js"><link rel="prefetch" href="/docs/assets/js/5.6013373a.js"><link rel="prefetch" href="/docs/assets/js/6.467c19a2.js"><link rel="prefetch" href="/docs/assets/js/7.ce9d181d.js"><link rel="prefetch" href="/docs/assets/js/8.aae17ac6.js"><link rel="prefetch" href="/docs/assets/js/9.e0170b17.js">
<link rel="stylesheet" href="/docs/assets/css/styles.e1f2d947.css">
<link rel="stylesheet" href="../stylesheets/grapes.min.css?v0.16.12">
<script src="../js/grapes.min.js?v0.16.12"></script>
<meta name="description" content="GrapesJS documentation">
<link rel="preload" href="/docs/assets/css/0.styles.d44f2c14.css" as="style"><link rel="preload" href="/docs/assets/js/app.4dd41b9b.js" as="script"><link rel="preload" href="/docs/assets/js/11.b2ac4984.js" as="script"><link rel="preload" href="/docs/assets/js/2.a342f4be.js" as="script"><link rel="preload" href="/docs/assets/js/23.dc99d7c7.js" as="script"><link rel="prefetch" href="/docs/assets/js/10.6a518be5.js"><link rel="prefetch" href="/docs/assets/js/12.bf8ecce1.js"><link rel="prefetch" href="/docs/assets/js/13.d807997f.js"><link rel="prefetch" href="/docs/assets/js/14.0ba8a778.js"><link rel="prefetch" href="/docs/assets/js/15.52ce2afa.js"><link rel="prefetch" href="/docs/assets/js/16.47266d46.js"><link rel="prefetch" href="/docs/assets/js/17.9b7a7fa4.js"><link rel="prefetch" href="/docs/assets/js/18.66b0785d.js"><link rel="prefetch" href="/docs/assets/js/19.2f9692d0.js"><link rel="prefetch" href="/docs/assets/js/20.ab1e767c.js"><link rel="prefetch" href="/docs/assets/js/21.66fe8957.js"><link rel="prefetch" href="/docs/assets/js/22.cb6c233f.js"><link rel="prefetch" href="/docs/assets/js/24.245fff8a.js"><link rel="prefetch" href="/docs/assets/js/25.d8c7e0b5.js"><link rel="prefetch" href="/docs/assets/js/26.ad7fc796.js"><link rel="prefetch" href="/docs/assets/js/27.169cfbf6.js"><link rel="prefetch" href="/docs/assets/js/28.f086d486.js"><link rel="prefetch" href="/docs/assets/js/29.5e2a7327.js"><link rel="prefetch" href="/docs/assets/js/3.7e642bff.js"><link rel="prefetch" href="/docs/assets/js/30.3a998b30.js"><link rel="prefetch" href="/docs/assets/js/31.5286fade.js"><link rel="prefetch" href="/docs/assets/js/32.0a0e4ae7.js"><link rel="prefetch" href="/docs/assets/js/33.0ba298a5.js"><link rel="prefetch" href="/docs/assets/js/34.07640632.js"><link rel="prefetch" href="/docs/assets/js/35.061f6dd5.js"><link rel="prefetch" href="/docs/assets/js/36.63462982.js"><link rel="prefetch" href="/docs/assets/js/37.e2d50838.js"><link rel="prefetch" href="/docs/assets/js/38.1230aa70.js"><link rel="prefetch" href="/docs/assets/js/39.c8373102.js"><link rel="prefetch" href="/docs/assets/js/4.32ffd5a1.js"><link rel="prefetch" href="/docs/assets/js/40.0600f064.js"><link rel="prefetch" href="/docs/assets/js/41.9bbfe266.js"><link rel="prefetch" href="/docs/assets/js/42.63c51d25.js"><link rel="prefetch" href="/docs/assets/js/43.d69d8e57.js"><link rel="prefetch" href="/docs/assets/js/44.a981446c.js"><link rel="prefetch" href="/docs/assets/js/45.415ecb59.js"><link rel="prefetch" href="/docs/assets/js/46.75d7a27f.js"><link rel="prefetch" href="/docs/assets/js/47.a4983875.js"><link rel="prefetch" href="/docs/assets/js/48.0dd7e7e0.js"><link rel="prefetch" href="/docs/assets/js/49.166bd1fa.js"><link rel="prefetch" href="/docs/assets/js/5.a0a5a0aa.js"><link rel="prefetch" href="/docs/assets/js/50.4e76f723.js"><link rel="prefetch" href="/docs/assets/js/51.21d145d2.js"><link rel="prefetch" href="/docs/assets/js/52.43234198.js"><link rel="prefetch" href="/docs/assets/js/6.9461537e.js"><link rel="prefetch" href="/docs/assets/js/7.3158bea4.js"><link rel="prefetch" href="/docs/assets/js/8.625d63ee.js"><link rel="prefetch" href="/docs/assets/js/9.e856c4d3.js">
<link rel="stylesheet" href="/docs/assets/css/0.styles.d44f2c14.css">
</head>
<body>
<div id="app" data-server-rendered="true"><div class="theme-container"><header class="navbar"><div class="sidebar-button"><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" role="img" viewBox="0 0 448 512" class="icon"><path fill="currentColor" d="M436 124H12c-6.627 0-12-5.373-12-12V80c0-6.627 5.373-12 12-12h424c6.627 0 12 5.373 12 12v32c0 6.627-5.373 12-12 12zm0 160H12c-6.627 0-12-5.373-12-12v-32c0-6.627 5.373-12 12-12h424c6.627 0 12 5.373 12 12v32c0 6.627-5.373 12-12 12zm0 160H12c-6.627 0-12-5.373-12-12v-32c0-6.627 5.373-12 12-12h424c6.627 0 12 5.373 12 12v32c0 6.627-5.373 12-12 12z"></path></svg></div><a href="/docs/" class="home-link router-link-active"><img src="/docs/logo.png" class="logo"><span class="site-name can-hide">
GrapesJS
</span></a><div class="links"><div class="search-box"><input aria-label="Search" autocomplete="off" spellcheck="false" value=""><!----></div><nav class="nav-links can-hide"><div class="nav-item"><a href="/docs/" class="nav-link">Docs</a></div><div class="nav-item"><a href="/docs/api/" class="nav-link router-link-active">API Reference</a></div><div class="nav-item"><a href="https://opencollective.com/grapesjs" target="_blank" rel="noopener noreferrer" class="nav-link external">
<div id="app" data-server-rendered="true"><div class="theme-container"><header class="navbar"><div class="sidebar-button"><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" role="img" viewBox="0 0 448 512" class="icon"><path fill="currentColor" d="M436 124H12c-6.627 0-12-5.373-12-12V80c0-6.627 5.373-12 12-12h424c6.627 0 12 5.373 12 12v32c0 6.627-5.373 12-12 12zm0 160H12c-6.627 0-12-5.373-12-12v-32c0-6.627 5.373-12 12-12h424c6.627 0 12 5.373 12 12v32c0 6.627-5.373 12-12 12zm0 160H12c-6.627 0-12-5.373-12-12v-32c0-6.627 5.373-12 12-12h424c6.627 0 12 5.373 12 12v32c0 6.627-5.373 12-12 12z"></path></svg></div> <a href="/docs/" class="home-link router-link-active"><img src="/docs/logo.png" alt="GrapesJS" class="logo"> <span class="site-name can-hide">GrapesJS</span></a> <div class="links"><div class="search-box"><input aria-label="Search" autocomplete="off" spellcheck="false" value=""> <!----></div> <nav class="nav-links can-hide"><div class="nav-item"><a href="/docs/" class="nav-link">
Docs
</a></div><div class="nav-item"><a href="/docs/api/" class="nav-link router-link-active">
API Reference
</a></div><div class="nav-item"><a href="https://opencollective.com/grapesjs" target="_blank" rel="noopener noreferrer" class="nav-link external">
Support Us
<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path><polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></div><div class="nav-item"><a href="https://twitter.com/grapesjs" target="_blank" rel="noopener noreferrer" class="nav-link external">
<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></div><div class="nav-item"><a href="https://twitter.com/grapesjs" target="_blank" rel="noopener noreferrer" class="nav-link external">
Twitter
<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path><polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></div><a href="https://github.com/artf/grapesjs" target="_blank" rel="noopener noreferrer" class="repo-link">
<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></div> <a href="https://github.com/artf/grapesjs" target="_blank" rel="noopener noreferrer" class="repo-link">
GitHub
<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path><polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></nav></div></header><div class="sidebar-mask"></div><div class="sidebar"><nav class="nav-links"><div class="nav-item"><a href="/docs/" class="nav-link">Docs</a></div><div class="nav-item"><a href="/docs/api/" class="nav-link router-link-active">API Reference</a></div><div class="nav-item"><a href="https://opencollective.com/grapesjs" target="_blank" rel="noopener noreferrer" class="nav-link external">
<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></nav></div></header> <div class="sidebar-mask"></div> <aside class="sidebar"><nav class="nav-links"><div class="nav-item"><a href="/docs/" class="nav-link">
Docs
</a></div><div class="nav-item"><a href="/docs/api/" class="nav-link router-link-active">
API Reference
</a></div><div class="nav-item"><a href="https://opencollective.com/grapesjs" target="_blank" rel="noopener noreferrer" class="nav-link external">
Support Us
<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path><polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></div><div class="nav-item"><a href="https://twitter.com/grapesjs" target="_blank" rel="noopener noreferrer" class="nav-link external">
<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></div><div class="nav-item"><a href="https://twitter.com/grapesjs" target="_blank" rel="noopener noreferrer" class="nav-link external">
Twitter
<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path><polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></div><a href="https://github.com/artf/grapesjs" target="_blank" rel="noopener noreferrer" class="repo-link">
<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></div> <a href="https://github.com/artf/grapesjs" target="_blank" rel="noopener noreferrer" class="repo-link">
GitHub
<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path><polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></nav><div id="native-carbon" class="carbon-ads"></div><ul class="sidebar-links"><li><a href="/docs/api/" class="sidebar-link">API Reference</a></li><li><a href="/docs/api/editor.html" class="sidebar-link">Editor</a></li><li><a href="/docs/api/i18n.html" class="sidebar-link">I18n</a></li><li><a href="/docs/api/canvas.html" class="sidebar-link">Canvas</a></li><li><a href="/docs/api/assets.html" class="sidebar-link">Asset Manager</a></li><li><a href="/docs/api/block_manager.html" class="sidebar-link">Block Manager</a></li><li><a href="/docs/api/commands.html" class="active sidebar-link">Commands</a><ul class="sidebar-sub-headers"><li class="sidebar-sub-header"><a href="/docs/api/commands.html#commands" class="sidebar-link">Commands</a></li><li class="sidebar-sub-header"><a href="/docs/api/commands.html#add" class="sidebar-link">add</a></li><li class="sidebar-sub-header"><a href="/docs/api/commands.html#get" class="sidebar-link">get</a></li><li class="sidebar-sub-header"><a href="/docs/api/commands.html#extend" class="sidebar-link">extend</a></li><li class="sidebar-sub-header"><a href="/docs/api/commands.html#has" class="sidebar-link">has</a></li><li class="sidebar-sub-header"><a href="/docs/api/commands.html#getall" class="sidebar-link">getAll</a></li><li class="sidebar-sub-header"><a href="/docs/api/commands.html#run" class="sidebar-link">run</a></li><li class="sidebar-sub-header"><a href="/docs/api/commands.html#stop" class="sidebar-link">stop</a></li><li class="sidebar-sub-header"><a href="/docs/api/commands.html#isactive" class="sidebar-link">isActive</a></li><li class="sidebar-sub-header"><a href="/docs/api/commands.html#getactive" class="sidebar-link">getActive</a></li></ul></li><li><a href="/docs/api/components.html" class="sidebar-link">DOM Components</a></li><li><a href="/docs/api/component.html" class="sidebar-link"> - Component</a></li><li><a href="/docs/api/panels.html" class="sidebar-link">Panels</a></li><li><a href="/docs/api/style_manager.html" class="sidebar-link">Style Manager</a></li><li><a href="/docs/api/storage_manager.html" class="sidebar-link">Storage Manager</a></li><li><a href="/docs/api/device_manager.html" class="sidebar-link">Device Manager</a></li><li><a href="/docs/api/selector_manager.html" class="sidebar-link">Selector Manager</a></li><li><a href="/docs/api/css_composer.html" class="sidebar-link">CSS Composer</a></li><li><a href="/docs/api/modal_dialog.html" class="sidebar-link">Modal</a></li><li><a href="/docs/api/rich_text_editor.html" class="sidebar-link">Rich Text Editor</a></li><li><a href="/docs/api/keymaps.html" class="sidebar-link">Keymaps</a></li><li><a href="/docs/api/undo_manager.html" class="sidebar-link">Undo Manager</a></li></ul></div><div class="page"><div class="content"><h2 id="commands"><a href="#commands" aria-hidden="true" class="header-anchor">#</a> Commands</h2><p>You can customize the initial state of the module from the editor initialization, by passing the following <a href="https://github.com/artf/grapesjs/blob/master/src/commands/config/config.js" target="_blank" rel="noopener noreferrer">Configuration Object<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path><polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></p><div class="language-js extra-class"><pre class="language-js"><code><span class="token keyword">const</span> editor <span class="token operator">=</span> grapesjs<span class="token punctuation">.</span><span class="token function">init</span><span class="token punctuation">(</span><span class="token punctuation">{</span>
commands<span class="token punctuation">:</span> <span class="token punctuation">{</span>
<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></nav> <div id="native-carbon" class="carbon-ads"></div> <ul class="sidebar-links"><li><a href="/docs/api/" class="sidebar-link">API Reference</a></li><li><a href="/docs/api/editor.html" class="sidebar-link">Editor</a></li><li><a href="/docs/api/i18n.html" class="sidebar-link">I18n</a></li><li><a href="/docs/api/canvas.html" class="sidebar-link">Canvas</a></li><li><a href="/docs/api/assets.html" class="sidebar-link">Asset Manager</a></li><li><a href="/docs/api/block_manager.html" class="sidebar-link">Block Manager</a></li><li><a href="/docs/api/commands.html" class="active sidebar-link">Commands</a><ul class="sidebar-sub-headers"><li class="sidebar-sub-header"><a href="/docs/api/commands.html#commands" class="sidebar-link">Commands</a></li><li class="sidebar-sub-header"><a href="/docs/api/commands.html#add" class="sidebar-link">add</a></li><li class="sidebar-sub-header"><a href="/docs/api/commands.html#get" class="sidebar-link">get</a></li><li class="sidebar-sub-header"><a href="/docs/api/commands.html#extend" class="sidebar-link">extend</a></li><li class="sidebar-sub-header"><a href="/docs/api/commands.html#has" class="sidebar-link">has</a></li><li class="sidebar-sub-header"><a href="/docs/api/commands.html#getall" class="sidebar-link">getAll</a></li><li class="sidebar-sub-header"><a href="/docs/api/commands.html#run" class="sidebar-link">run</a></li><li class="sidebar-sub-header"><a href="/docs/api/commands.html#stop" class="sidebar-link">stop</a></li><li class="sidebar-sub-header"><a href="/docs/api/commands.html#isactive" class="sidebar-link">isActive</a></li><li class="sidebar-sub-header"><a href="/docs/api/commands.html#getactive" class="sidebar-link">getActive</a></li></ul></li><li><a href="/docs/api/components.html" class="sidebar-link">DOM Components</a></li><li><a href="/docs/api/component.html" class="sidebar-link"> - Component</a></li><li><a href="/docs/api/panels.html" class="sidebar-link">Panels</a></li><li><a href="/docs/api/style_manager.html" class="sidebar-link">Style Manager</a></li><li><a href="/docs/api/storage_manager.html" class="sidebar-link">Storage Manager</a></li><li><a href="/docs/api/device_manager.html" class="sidebar-link">Device Manager</a></li><li><a href="/docs/api/selector_manager.html" class="sidebar-link">Selector Manager</a></li><li><a href="/docs/api/css_composer.html" class="sidebar-link">CSS Composer</a></li><li><a href="/docs/api/modal_dialog.html" class="sidebar-link">Modal</a></li><li><a href="/docs/api/rich_text_editor.html" class="sidebar-link">Rich Text Editor</a></li><li><a href="/docs/api/keymaps.html" class="sidebar-link">Keymaps</a></li><li><a href="/docs/api/undo_manager.html" class="sidebar-link">Undo Manager</a></li></ul> </aside> <main class="page"> <div class="theme-default-content content__default"><h2 id="commands"><a href="#commands" class="header-anchor">#</a> Commands</h2> <p>You can customize the initial state of the module from the editor initialization, by passing the following <a href="https://github.com/artf/grapesjs/blob/master/src/commands/config/config.js" target="_blank" rel="noopener noreferrer">Configuration Object<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></p> <div class="language-js extra-class"><pre class="language-js"><code><span class="token keyword">const</span> editor <span class="token operator">=</span> grapesjs<span class="token punctuation">.</span><span class="token function">init</span><span class="token punctuation">(</span><span class="token punctuation">{</span>
commands<span class="token operator">:</span> <span class="token punctuation">{</span>
<span class="token comment">// options</span>
<span class="token punctuation">}</span>
<span class="token punctuation">}</span><span class="token punctuation">)</span>
</code></pre></div><p>Once the editor is instantiated you can use its API. Before using these methods you should get the module from the instance</p><div class="language-js extra-class"><pre class="language-js"><code><span class="token keyword">const</span> commands <span class="token operator">=</span> editor<span class="token punctuation">.</span>Commands<span class="token punctuation">;</span>
</code></pre></div><ul><li><a href="#add">add</a></li><li><a href="#get">get</a></li><li><a href="#getall">getAll</a></li><li><a href="#extend">extend</a></li><li><a href="#has">has</a></li><li><a href="#run">run</a></li><li><a href="#stop">stop</a></li><li><a href="#isactive">isActive</a></li><li><a href="#getactive">getActive</a></li></ul><h2 id="add"><a href="#add" aria-hidden="true" class="header-anchor">#</a> add</h2><p>Add new command to the collection</p><h3 id="parameters"><a href="#parameters" aria-hidden="true" class="header-anchor">#</a> Parameters</h3><ul><li><code>id</code><strong><a href="https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String" target="_blank" rel="noopener noreferrer">string<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path><polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></strong> Command's ID</li><li><code>command</code><strong>(<a href="https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Object" target="_blank" rel="noopener noreferrer">Object<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path><polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a> | <a href="https://developer.mozilla.org/docs/Web/JavaScript/Reference/Statements/function" target="_blank" rel="noopener noreferrer">Function<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path><polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a>)</strong> Object representing your command,
</code></pre></div><p>Once the editor is instantiated you can use its API. Before using these methods you should get the module from the instance</p> <div class="language-js extra-class"><pre class="language-js"><code><span class="token keyword">const</span> commands <span class="token operator">=</span> editor<span class="token punctuation">.</span>Commands<span class="token punctuation">;</span>
</code></pre></div><ul><li><a href="#add">add</a></li> <li><a href="#get">get</a></li> <li><a href="#getall">getAll</a></li> <li><a href="#extend">extend</a></li> <li><a href="#has">has</a></li> <li><a href="#run">run</a></li> <li><a href="#stop">stop</a></li> <li><a href="#isactive">isActive</a></li> <li><a href="#getactive">getActive</a></li></ul> <h2 id="add"><a href="#add" class="header-anchor">#</a> add</h2> <p>Add new command to the collection</p> <h3 id="parameters"><a href="#parameters" class="header-anchor">#</a> Parameters</h3> <ul><li><code>id</code> <strong><a href="https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String" target="_blank" rel="noopener noreferrer">string<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></strong> Command's ID</li> <li><code>command</code> <strong>(<a href="https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Object" target="_blank" rel="noopener noreferrer">Object<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a> | <a href="https://developer.mozilla.org/docs/Web/JavaScript/Reference/Statements/function" target="_blank" rel="noopener noreferrer">Function<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a>)</strong> Object representing your command,
By passing just a function it's intended as a stateless command
(just like passing an object with only <code>run</code> method).</li></ul><h3 id="examples"><a href="#examples" aria-hidden="true" class="header-anchor">#</a> Examples</h3><div class="language-javascript extra-class"><pre class="language-javascript"><code>commands<span class="token punctuation">.</span><span class="token function">add</span><span class="token punctuation">(</span><span class="token string">'myCommand'</span><span class="token punctuation">,</span> <span class="token punctuation">{</span>
(just like passing an object with only <code>run</code> method).</li></ul> <h3 id="examples"><a href="#examples" class="header-anchor">#</a> Examples</h3> <div class="language-javascript extra-class"><pre class="language-javascript"><code>commands<span class="token punctuation">.</span><span class="token function">add</span><span class="token punctuation">(</span><span class="token string">'myCommand'</span><span class="token punctuation">,</span> <span class="token punctuation">{</span>
<span class="token function">run</span><span class="token punctuation">(</span><span class="token parameter">editor<span class="token punctuation">,</span> sender</span><span class="token punctuation">)</span> <span class="token punctuation">{</span>
<span class="token function">alert</span><span class="token punctuation">(</span><span class="token string">'Hello world!'</span><span class="token punctuation">)</span><span class="token punctuation">;</span>
<span class="token punctuation">}</span><span class="token punctuation">,</span>
@ -44,33 +50,35 @@ By passing just a function it's intended as a stateless command
<span class="token punctuation">}</span><span class="token punctuation">)</span><span class="token punctuation">;</span>
<span class="token comment">// As a function</span>
commands<span class="token punctuation">.</span><span class="token function">add</span><span class="token punctuation">(</span><span class="token string">'myCommand2'</span><span class="token punctuation">,</span> <span class="token parameter">editor</span> <span class="token operator">=&gt;</span> <span class="token punctuation">{</span> <span class="token operator">...</span> <span class="token punctuation">}</span><span class="token punctuation">)</span><span class="token punctuation">;</span>
</code></pre></div><p>Returns <strong>this</strong></p><h2 id="get"><a href="#get" aria-hidden="true" class="header-anchor">#</a> get</h2><p>Get command by ID</p><h3 id="parameters-2"><a href="#parameters-2" aria-hidden="true" class="header-anchor">#</a> Parameters</h3><ul><li><code>id</code><strong><a href="https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String" target="_blank" rel="noopener noreferrer">string<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path><polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></strong> Command's ID</li></ul><h3 id="examples-2"><a href="#examples-2" aria-hidden="true" class="header-anchor">#</a> Examples</h3><div class="language-javascript extra-class"><pre class="language-javascript"><code><span class="token keyword">var</span> myCommand <span class="token operator">=</span> commands<span class="token punctuation">.</span><span class="token function">get</span><span class="token punctuation">(</span><span class="token string">'myCommand'</span><span class="token punctuation">)</span><span class="token punctuation">;</span>
</code></pre></div><p>Returns <strong>this</strong></p> <h2 id="get"><a href="#get" class="header-anchor">#</a> get</h2> <p>Get command by ID</p> <h3 id="parameters-2"><a href="#parameters-2" class="header-anchor">#</a> Parameters</h3> <ul><li><code>id</code> <strong><a href="https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String" target="_blank" rel="noopener noreferrer">string<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></strong> Command's ID</li></ul> <h3 id="examples-2"><a href="#examples-2" class="header-anchor">#</a> Examples</h3> <div class="language-javascript extra-class"><pre class="language-javascript"><code><span class="token keyword">var</span> myCommand <span class="token operator">=</span> commands<span class="token punctuation">.</span><span class="token function">get</span><span class="token punctuation">(</span><span class="token string">'myCommand'</span><span class="token punctuation">)</span><span class="token punctuation">;</span>
myCommand<span class="token punctuation">.</span><span class="token function">run</span><span class="token punctuation">(</span><span class="token punctuation">)</span><span class="token punctuation">;</span>
</code></pre></div><p>Returns <strong><a href="https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Object" target="_blank" rel="noopener noreferrer">Object<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path><polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></strong> Object representing the command</p><h2 id="extend"><a href="#extend" aria-hidden="true" class="header-anchor">#</a> extend</h2><p>Extend the command. The command to extend should be defined as an object</p><h3 id="parameters-3"><a href="#parameters-3" aria-hidden="true" class="header-anchor">#</a> Parameters</h3><ul><li><code>id</code><strong><a href="https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String" target="_blank" rel="noopener noreferrer">string<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path><polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></strong> Command's ID</li><li><code>cmd</code> (optional, default <code>{}</code>)</li><li><code>Object</code><strong><a href="https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Object" target="_blank" rel="noopener noreferrer">Object<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path><polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></strong> with the new command functions</li></ul><h3 id="examples-3"><a href="#examples-3" aria-hidden="true" class="header-anchor">#</a> Examples</h3><div class="language-javascript extra-class"><pre class="language-javascript"><code>commands<span class="token punctuation">.</span><span class="token function">extend</span><span class="token punctuation">(</span><span class="token string">'old-command'</span><span class="token punctuation">,</span> <span class="token punctuation">{</span>
</code></pre></div><p>Returns <strong><a href="https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Object" target="_blank" rel="noopener noreferrer">Object<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></strong> Object representing the command</p> <h2 id="extend"><a href="#extend" class="header-anchor">#</a> extend</h2> <p>Extend the command. The command to extend should be defined as an object</p> <h3 id="parameters-3"><a href="#parameters-3" class="header-anchor">#</a> Parameters</h3> <ul><li><code>id</code> <strong><a href="https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String" target="_blank" rel="noopener noreferrer">string<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></strong> Command's ID</li> <li><code>cmd</code> (optional, default <code>{}</code>)</li> <li><code>Object</code> <strong><a href="https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Object" target="_blank" rel="noopener noreferrer">Object<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></strong> with the new command functions</li></ul> <h3 id="examples-3"><a href="#examples-3" class="header-anchor">#</a> Examples</h3> <div class="language-javascript extra-class"><pre class="language-javascript"><code>commands<span class="token punctuation">.</span><span class="token function">extend</span><span class="token punctuation">(</span><span class="token string">'old-command'</span><span class="token punctuation">,</span> <span class="token punctuation">{</span>
<span class="token function">someInnerFunction</span><span class="token punctuation">(</span><span class="token punctuation">)</span> <span class="token punctuation">{</span>
<span class="token comment">// ...</span>
<span class="token punctuation">}</span>
<span class="token punctuation">}</span><span class="token punctuation">)</span><span class="token punctuation">;</span>
</code></pre></div><p>Returns <strong>this</strong></p><h2 id="has"><a href="#has" aria-hidden="true" class="header-anchor">#</a> has</h2><p>Check if command exists</p><h3 id="parameters-4"><a href="#parameters-4" aria-hidden="true" class="header-anchor">#</a> Parameters</h3><ul><li><code>id</code><strong><a href="https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String" target="_blank" rel="noopener noreferrer">string<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path><polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></strong> Command's ID</li></ul><p>Returns <strong><a href="https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Boolean" target="_blank" rel="noopener noreferrer">Boolean<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path><polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></strong></p><h2 id="getall"><a href="#getall" aria-hidden="true" class="header-anchor">#</a> getAll</h2><p>Get an object containing all the commands</p><p>Returns <strong><a href="https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Object" target="_blank" rel="noopener noreferrer">Object<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path><polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></strong></p><h2 id="run"><a href="#run" aria-hidden="true" class="header-anchor">#</a> run</h2><p>Execute the command</p><h3 id="parameters-5"><a href="#parameters-5" aria-hidden="true" class="header-anchor">#</a> Parameters</h3><ul><li><code>id</code><strong><a href="https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String" target="_blank" rel="noopener noreferrer">String<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path><polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></strong> Command ID</li><li><code>options</code><strong><a href="https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Object" target="_blank" rel="noopener noreferrer">Object<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path><polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></strong> Options (optional, default <code>{}</code>)</li></ul><h3 id="examples-4"><a href="#examples-4" aria-hidden="true" class="header-anchor">#</a> Examples</h3><div class="language-javascript extra-class"><pre class="language-javascript"><code>commands<span class="token punctuation">.</span><span class="token function">run</span><span class="token punctuation">(</span><span class="token string">'myCommand'</span><span class="token punctuation">,</span> <span class="token punctuation">{</span> someOption<span class="token punctuation">:</span> <span class="token number">1</span> <span class="token punctuation">}</span><span class="token punctuation">)</span><span class="token punctuation">;</span>
</code></pre></div><p>Returns <strong>any</strong> The return is defined by the command</p><h2 id="stop"><a href="#stop" aria-hidden="true" class="header-anchor">#</a> stop</h2><p>Stop the command</p><h3 id="parameters-6"><a href="#parameters-6" aria-hidden="true" class="header-anchor">#</a> Parameters</h3><ul><li><code>id</code><strong><a href="https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String" target="_blank" rel="noopener noreferrer">String<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path><polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></strong> Command ID</li><li><code>options</code><strong><a href="https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Object" target="_blank" rel="noopener noreferrer">Object<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path><polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></strong> Options (optional, default <code>{}</code>)</li></ul><h3 id="examples-5"><a href="#examples-5" aria-hidden="true" class="header-anchor">#</a> Examples</h3><div class="language-javascript extra-class"><pre class="language-javascript"><code>commands<span class="token punctuation">.</span><span class="token function">stop</span><span class="token punctuation">(</span><span class="token string">'myCommand'</span><span class="token punctuation">,</span> <span class="token punctuation">{</span> someOption<span class="token punctuation">:</span> <span class="token number">1</span> <span class="token punctuation">}</span><span class="token punctuation">)</span><span class="token punctuation">;</span>
</code></pre></div><p>Returns <strong>any</strong> The return is defined by the command</p><h2 id="isactive"><a href="#isactive" aria-hidden="true" class="header-anchor">#</a> isActive</h2><p>Check if the command is active. You activate commands with <code>run</code>
</code></pre></div><p>Returns <strong>this</strong></p> <h2 id="has"><a href="#has" class="header-anchor">#</a> has</h2> <p>Check if command exists</p> <h3 id="parameters-4"><a href="#parameters-4" class="header-anchor">#</a> Parameters</h3> <ul><li><code>id</code> <strong><a href="https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String" target="_blank" rel="noopener noreferrer">string<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></strong> Command's ID</li></ul> <p>Returns <strong><a href="https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Boolean" target="_blank" rel="noopener noreferrer">Boolean<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></strong></p> <h2 id="getall"><a href="#getall" class="header-anchor">#</a> getAll</h2> <p>Get an object containing all the commands</p> <p>Returns <strong><a href="https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Object" target="_blank" rel="noopener noreferrer">Object<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></strong></p> <h2 id="run"><a href="#run" class="header-anchor">#</a> run</h2> <p>Execute the command</p> <h3 id="parameters-5"><a href="#parameters-5" class="header-anchor">#</a> Parameters</h3> <ul><li><code>id</code> <strong><a href="https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String" target="_blank" rel="noopener noreferrer">String<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></strong> Command ID</li> <li><code>options</code> <strong><a href="https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Object" target="_blank" rel="noopener noreferrer">Object<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></strong> Options (optional, default <code>{}</code>)</li></ul> <h3 id="examples-4"><a href="#examples-4" class="header-anchor">#</a> Examples</h3> <div class="language-javascript extra-class"><pre class="language-javascript"><code>commands<span class="token punctuation">.</span><span class="token function">run</span><span class="token punctuation">(</span><span class="token string">'myCommand'</span><span class="token punctuation">,</span> <span class="token punctuation">{</span> someOption<span class="token operator">:</span> <span class="token number">1</span> <span class="token punctuation">}</span><span class="token punctuation">)</span><span class="token punctuation">;</span>
</code></pre></div><p>Returns <strong>any</strong> The return is defined by the command</p> <h2 id="stop"><a href="#stop" class="header-anchor">#</a> stop</h2> <p>Stop the command</p> <h3 id="parameters-6"><a href="#parameters-6" class="header-anchor">#</a> Parameters</h3> <ul><li><code>id</code> <strong><a href="https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String" target="_blank" rel="noopener noreferrer">String<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></strong> Command ID</li> <li><code>options</code> <strong><a href="https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Object" target="_blank" rel="noopener noreferrer">Object<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></strong> Options (optional, default <code>{}</code>)</li></ul> <h3 id="examples-5"><a href="#examples-5" class="header-anchor">#</a> Examples</h3> <div class="language-javascript extra-class"><pre class="language-javascript"><code>commands<span class="token punctuation">.</span><span class="token function">stop</span><span class="token punctuation">(</span><span class="token string">'myCommand'</span><span class="token punctuation">,</span> <span class="token punctuation">{</span> someOption<span class="token operator">:</span> <span class="token number">1</span> <span class="token punctuation">}</span><span class="token punctuation">)</span><span class="token punctuation">;</span>
</code></pre></div><p>Returns <strong>any</strong> The return is defined by the command</p> <h2 id="isactive"><a href="#isactive" class="header-anchor">#</a> isActive</h2> <p>Check if the command is active. You activate commands with <code>run</code>
and disable them with <code>stop</code>. If the command was created without <code>stop</code>
method it can't be registered as active</p><h3 id="parameters-7"><a href="#parameters-7" aria-hidden="true" class="header-anchor">#</a> Parameters</h3><ul><li><code>id</code><strong><a href="https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String" target="_blank" rel="noopener noreferrer">String<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path><polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></strong> Command id</li></ul><h3 id="examples-6"><a href="#examples-6" aria-hidden="true" class="header-anchor">#</a> Examples</h3><div class="language-javascript extra-class"><pre class="language-javascript"><code><span class="token keyword">const</span> cId <span class="token operator">=</span> <span class="token string">'some-command'</span><span class="token punctuation">;</span>
method it can't be registered as active</p> <h3 id="parameters-7"><a href="#parameters-7" class="header-anchor">#</a> Parameters</h3> <ul><li><code>id</code> <strong><a href="https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String" target="_blank" rel="noopener noreferrer">String<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></strong> Command id</li></ul> <h3 id="examples-6"><a href="#examples-6" class="header-anchor">#</a> Examples</h3> <div class="language-javascript extra-class"><pre class="language-javascript"><code><span class="token keyword">const</span> cId <span class="token operator">=</span> <span class="token string">'some-command'</span><span class="token punctuation">;</span>
commands<span class="token punctuation">.</span><span class="token function">run</span><span class="token punctuation">(</span>cId<span class="token punctuation">)</span><span class="token punctuation">;</span>
commands<span class="token punctuation">.</span><span class="token function">isActive</span><span class="token punctuation">(</span>cId<span class="token punctuation">)</span><span class="token punctuation">;</span>
<span class="token comment">// -&gt; true</span>
commands<span class="token punctuation">.</span><span class="token function">stop</span><span class="token punctuation">(</span>cId<span class="token punctuation">)</span><span class="token punctuation">;</span>
commands<span class="token punctuation">.</span><span class="token function">isActive</span><span class="token punctuation">(</span>cId<span class="token punctuation">)</span><span class="token punctuation">;</span>
<span class="token comment">// -&gt; false</span>
</code></pre></div><p>Returns <strong><a href="https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Boolean" target="_blank" rel="noopener noreferrer">Boolean<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path><polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></strong></p><h2 id="getactive"><a href="#getactive" aria-hidden="true" class="header-anchor">#</a> getActive</h2><p>Get all active commands</p><h3 id="examples-7"><a href="#examples-7" aria-hidden="true" class="header-anchor">#</a> Examples</h3><div class="language-javascript extra-class"><pre class="language-javascript"><code>console<span class="token punctuation">.</span><span class="token function">log</span><span class="token punctuation">(</span>commands<span class="token punctuation">.</span><span class="token function">getActive</span><span class="token punctuation">(</span><span class="token punctuation">)</span><span class="token punctuation">)</span><span class="token punctuation">;</span>
</code></pre></div><p>Returns <strong><a href="https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Boolean" target="_blank" rel="noopener noreferrer">Boolean<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></strong></p> <h2 id="getactive"><a href="#getactive" class="header-anchor">#</a> getActive</h2> <p>Get all active commands</p> <h3 id="examples-7"><a href="#examples-7" class="header-anchor">#</a> Examples</h3> <div class="language-javascript extra-class"><pre class="language-javascript"><code>console<span class="token punctuation">.</span><span class="token function">log</span><span class="token punctuation">(</span>commands<span class="token punctuation">.</span><span class="token function">getActive</span><span class="token punctuation">(</span><span class="token punctuation">)</span><span class="token punctuation">)</span><span class="token punctuation">;</span>
<span class="token comment">// -&gt; { someCommand: itsLastReturn, anotherOne: ... };</span>
</code></pre></div><p>Returns <strong><a href="https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Object" target="_blank" rel="noopener noreferrer">Object<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path><polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></strong></p></div><div class="page-edit"><div class="edit-link"><a href="https://github.com/artf/grapesjs/edit/dev/docs/api/commands.md" target="_blank" rel="noopener noreferrer">Edit this page on GitHub</a><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path><polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></div><div class="last-updated"><span class="prefix">Last Updated: </span><span class="time">5/2/2019, 1:28:33 AM</span></div></div><div class="page-nav"><p class="inner"><span class="prev">
← <a href="/docs/api/block_manager.html" class="prev">
Block Manager
</a></span><span class="next"><a href="/docs/api/components.html">
DOM Components
</a> →
</span></p></div></div></div></div>
<script src="/docs/assets/js/app.e1f2d947.js" defer></script><script src="/docs/assets/js/17.bfba947e.js" defer></script>
</code></pre></div><p>Returns <strong><a href="https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Object" target="_blank" rel="noopener noreferrer">Object<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></strong></p></div> <footer class="page-edit"><div class="edit-link"><a href="https://github.com/artf/grapesjs/edit/dev/docs/api/commands.md" target="_blank" rel="noopener noreferrer">Edit this page on GitHub</a> <svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></div> <div class="last-updated"><span class="prefix">Last Updated:</span> <span class="time">5/2/2019, 1:28:33 AM</span></div></footer> <div class="page-nav"><p class="inner"><span class="prev">
←
<a href="/docs/api/block_manager.html" class="prev">
Block Manager
</a></span> <span class="next"><a href="/docs/api/components.html">
DOM Components
</a>
→
</span></p></div> </main></div><div class="global-ui"></div></div>
<script src="/docs/assets/js/app.4dd41b9b.js" defer></script><script src="/docs/assets/js/11.b2ac4984.js" defer></script><script src="/docs/assets/js/2.a342f4be.js" defer></script><script src="/docs/assets/js/23.dc99d7c7.js" defer></script>
</body>
</html>

158
docs/api/component.html

File diff suppressed because one or more lines are too long

108
docs/api/components.html

File diff suppressed because one or more lines are too long

94
docs/api/css_composer.html

File diff suppressed because one or more lines are too long

70
docs/api/device_manager.html

@ -4,56 +4,64 @@
<meta charset="utf-8">
<meta name="viewport" content="width=device-width,initial-scale=1">
<title>GrapesJS</title>
<meta name="description" content="GrapesJS documentation">
<meta name="generator" content="VuePress 1.4.1">
<link rel="icon" href="/docs/logo-icon.png">
<link rel="stylesheet" href="../stylesheets/grapes.min.css?v0.16.12">
<script src="../js/grapes.min.js?v0.16.12"></script>
<link rel="preload" href="/docs/assets/css/styles.e1f2d947.css" as="style"><link rel="preload" href="/docs/assets/js/app.e1f2d947.js" as="script"><link rel="preload" href="/docs/assets/js/21.2babea6a.js" as="script"><link rel="prefetch" href="/docs/assets/css/1.styles.b40e6662.css"><link rel="prefetch" href="/docs/assets/css/2.styles.896e948d.css"><link rel="prefetch" href="/docs/assets/css/3.styles.46968bd4.css"><link rel="prefetch" href="/docs/assets/css/4.styles.79691bb5.css"><link rel="prefetch" href="/docs/assets/css/5.styles.6013373a.css"><link rel="prefetch" href="/docs/assets/css/6.styles.467c19a2.css"><link rel="prefetch" href="/docs/assets/css/7.styles.ce9d181d.css"><link rel="prefetch" href="/docs/assets/css/8.styles.aae17ac6.css"><link rel="prefetch" href="/docs/assets/css/9.styles.e0170b17.css"><link rel="prefetch" href="/docs/assets/js/1.b40e6662.js"><link rel="prefetch" href="/docs/assets/js/10.e7cd7c26.js"><link rel="prefetch" href="/docs/assets/js/11.3f87b9b8.js"><link rel="prefetch" href="/docs/assets/js/12.269b5586.js"><link rel="prefetch" href="/docs/assets/js/13.e52ea678.js"><link rel="prefetch" href="/docs/assets/js/14.0606827a.js"><link rel="prefetch" href="/docs/assets/js/15.aa7f42f8.js"><link rel="prefetch" href="/docs/assets/js/16.959c0bd7.js"><link rel="prefetch" href="/docs/assets/js/17.bfba947e.js"><link rel="prefetch" href="/docs/assets/js/18.7f401ffb.js"><link rel="prefetch" href="/docs/assets/js/19.3e0ce3c8.js"><link rel="prefetch" href="/docs/assets/js/2.896e948d.js"><link rel="prefetch" href="/docs/assets/js/20.f4502040.js"><link rel="prefetch" href="/docs/assets/js/22.26e5d9ed.js"><link rel="prefetch" href="/docs/assets/js/23.a2c9ec17.js"><link rel="prefetch" href="/docs/assets/js/24.f9675b16.js"><link rel="prefetch" href="/docs/assets/js/25.b52924ae.js"><link rel="prefetch" href="/docs/assets/js/26.81c00685.js"><link rel="prefetch" href="/docs/assets/js/27.7372785c.js"><link rel="prefetch" href="/docs/assets/js/28.df5c22ed.js"><link rel="prefetch" href="/docs/assets/js/29.b167a894.js"><link rel="prefetch" href="/docs/assets/js/3.46968bd4.js"><link rel="prefetch" href="/docs/assets/js/30.d165faf7.js"><link rel="prefetch" href="/docs/assets/js/31.334d7953.js"><link rel="prefetch" href="/docs/assets/js/32.f9daa2c8.js"><link rel="prefetch" href="/docs/assets/js/33.93f49bfa.js"><link rel="prefetch" href="/docs/assets/js/34.4865e6c3.js"><link rel="prefetch" href="/docs/assets/js/35.9d089775.js"><link rel="prefetch" href="/docs/assets/js/36.67cb8d1f.js"><link rel="prefetch" href="/docs/assets/js/37.708a94ac.js"><link rel="prefetch" href="/docs/assets/js/38.0f8df29b.js"><link rel="prefetch" href="/docs/assets/js/39.074f3faf.js"><link rel="prefetch" href="/docs/assets/js/4.79691bb5.js"><link rel="prefetch" href="/docs/assets/js/40.cef45f06.js"><link rel="prefetch" href="/docs/assets/js/41.c734b929.js"><link rel="prefetch" href="/docs/assets/js/42.1078a060.js"><link rel="prefetch" href="/docs/assets/js/43.7188da01.js"><link rel="prefetch" href="/docs/assets/js/44.1fd52e91.js"><link rel="prefetch" href="/docs/assets/js/45.69c67864.js"><link rel="prefetch" href="/docs/assets/js/5.6013373a.js"><link rel="prefetch" href="/docs/assets/js/6.467c19a2.js"><link rel="prefetch" href="/docs/assets/js/7.ce9d181d.js"><link rel="prefetch" href="/docs/assets/js/8.aae17ac6.js"><link rel="prefetch" href="/docs/assets/js/9.e0170b17.js">
<link rel="stylesheet" href="/docs/assets/css/styles.e1f2d947.css">
<link rel="stylesheet" href="../stylesheets/grapes.min.css?v0.16.12">
<script src="../js/grapes.min.js?v0.16.12"></script>
<meta name="description" content="GrapesJS documentation">
<link rel="preload" href="/docs/assets/css/0.styles.d44f2c14.css" as="style"><link rel="preload" href="/docs/assets/js/app.4dd41b9b.js" as="script"><link rel="preload" href="/docs/assets/js/11.b2ac4984.js" as="script"><link rel="preload" href="/docs/assets/js/2.a342f4be.js" as="script"><link rel="preload" href="/docs/assets/js/27.169cfbf6.js" as="script"><link rel="prefetch" href="/docs/assets/js/10.6a518be5.js"><link rel="prefetch" href="/docs/assets/js/12.bf8ecce1.js"><link rel="prefetch" href="/docs/assets/js/13.d807997f.js"><link rel="prefetch" href="/docs/assets/js/14.0ba8a778.js"><link rel="prefetch" href="/docs/assets/js/15.52ce2afa.js"><link rel="prefetch" href="/docs/assets/js/16.47266d46.js"><link rel="prefetch" href="/docs/assets/js/17.9b7a7fa4.js"><link rel="prefetch" href="/docs/assets/js/18.66b0785d.js"><link rel="prefetch" href="/docs/assets/js/19.2f9692d0.js"><link rel="prefetch" href="/docs/assets/js/20.ab1e767c.js"><link rel="prefetch" href="/docs/assets/js/21.66fe8957.js"><link rel="prefetch" href="/docs/assets/js/22.cb6c233f.js"><link rel="prefetch" href="/docs/assets/js/23.dc99d7c7.js"><link rel="prefetch" href="/docs/assets/js/24.245fff8a.js"><link rel="prefetch" href="/docs/assets/js/25.d8c7e0b5.js"><link rel="prefetch" href="/docs/assets/js/26.ad7fc796.js"><link rel="prefetch" href="/docs/assets/js/28.f086d486.js"><link rel="prefetch" href="/docs/assets/js/29.5e2a7327.js"><link rel="prefetch" href="/docs/assets/js/3.7e642bff.js"><link rel="prefetch" href="/docs/assets/js/30.3a998b30.js"><link rel="prefetch" href="/docs/assets/js/31.5286fade.js"><link rel="prefetch" href="/docs/assets/js/32.0a0e4ae7.js"><link rel="prefetch" href="/docs/assets/js/33.0ba298a5.js"><link rel="prefetch" href="/docs/assets/js/34.07640632.js"><link rel="prefetch" href="/docs/assets/js/35.061f6dd5.js"><link rel="prefetch" href="/docs/assets/js/36.63462982.js"><link rel="prefetch" href="/docs/assets/js/37.e2d50838.js"><link rel="prefetch" href="/docs/assets/js/38.1230aa70.js"><link rel="prefetch" href="/docs/assets/js/39.c8373102.js"><link rel="prefetch" href="/docs/assets/js/4.32ffd5a1.js"><link rel="prefetch" href="/docs/assets/js/40.0600f064.js"><link rel="prefetch" href="/docs/assets/js/41.9bbfe266.js"><link rel="prefetch" href="/docs/assets/js/42.63c51d25.js"><link rel="prefetch" href="/docs/assets/js/43.d69d8e57.js"><link rel="prefetch" href="/docs/assets/js/44.a981446c.js"><link rel="prefetch" href="/docs/assets/js/45.415ecb59.js"><link rel="prefetch" href="/docs/assets/js/46.75d7a27f.js"><link rel="prefetch" href="/docs/assets/js/47.a4983875.js"><link rel="prefetch" href="/docs/assets/js/48.0dd7e7e0.js"><link rel="prefetch" href="/docs/assets/js/49.166bd1fa.js"><link rel="prefetch" href="/docs/assets/js/5.a0a5a0aa.js"><link rel="prefetch" href="/docs/assets/js/50.4e76f723.js"><link rel="prefetch" href="/docs/assets/js/51.21d145d2.js"><link rel="prefetch" href="/docs/assets/js/52.43234198.js"><link rel="prefetch" href="/docs/assets/js/6.9461537e.js"><link rel="prefetch" href="/docs/assets/js/7.3158bea4.js"><link rel="prefetch" href="/docs/assets/js/8.625d63ee.js"><link rel="prefetch" href="/docs/assets/js/9.e856c4d3.js">
<link rel="stylesheet" href="/docs/assets/css/0.styles.d44f2c14.css">
</head>
<body>
<div id="app" data-server-rendered="true"><div class="theme-container"><header class="navbar"><div class="sidebar-button"><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" role="img" viewBox="0 0 448 512" class="icon"><path fill="currentColor" d="M436 124H12c-6.627 0-12-5.373-12-12V80c0-6.627 5.373-12 12-12h424c6.627 0 12 5.373 12 12v32c0 6.627-5.373 12-12 12zm0 160H12c-6.627 0-12-5.373-12-12v-32c0-6.627 5.373-12 12-12h424c6.627 0 12 5.373 12 12v32c0 6.627-5.373 12-12 12zm0 160H12c-6.627 0-12-5.373-12-12v-32c0-6.627 5.373-12 12-12h424c6.627 0 12 5.373 12 12v32c0 6.627-5.373 12-12 12z"></path></svg></div><a href="/docs/" class="home-link router-link-active"><img src="/docs/logo.png" class="logo"><span class="site-name can-hide">
GrapesJS
</span></a><div class="links"><div class="search-box"><input aria-label="Search" autocomplete="off" spellcheck="false" value=""><!----></div><nav class="nav-links can-hide"><div class="nav-item"><a href="/docs/" class="nav-link">Docs</a></div><div class="nav-item"><a href="/docs/api/" class="nav-link router-link-active">API Reference</a></div><div class="nav-item"><a href="https://opencollective.com/grapesjs" target="_blank" rel="noopener noreferrer" class="nav-link external">
<div id="app" data-server-rendered="true"><div class="theme-container"><header class="navbar"><div class="sidebar-button"><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" role="img" viewBox="0 0 448 512" class="icon"><path fill="currentColor" d="M436 124H12c-6.627 0-12-5.373-12-12V80c0-6.627 5.373-12 12-12h424c6.627 0 12 5.373 12 12v32c0 6.627-5.373 12-12 12zm0 160H12c-6.627 0-12-5.373-12-12v-32c0-6.627 5.373-12 12-12h424c6.627 0 12 5.373 12 12v32c0 6.627-5.373 12-12 12zm0 160H12c-6.627 0-12-5.373-12-12v-32c0-6.627 5.373-12 12-12h424c6.627 0 12 5.373 12 12v32c0 6.627-5.373 12-12 12z"></path></svg></div> <a href="/docs/" class="home-link router-link-active"><img src="/docs/logo.png" alt="GrapesJS" class="logo"> <span class="site-name can-hide">GrapesJS</span></a> <div class="links"><div class="search-box"><input aria-label="Search" autocomplete="off" spellcheck="false" value=""> <!----></div> <nav class="nav-links can-hide"><div class="nav-item"><a href="/docs/" class="nav-link">
Docs
</a></div><div class="nav-item"><a href="/docs/api/" class="nav-link router-link-active">
API Reference
</a></div><div class="nav-item"><a href="https://opencollective.com/grapesjs" target="_blank" rel="noopener noreferrer" class="nav-link external">
Support Us
<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path><polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></div><div class="nav-item"><a href="https://twitter.com/grapesjs" target="_blank" rel="noopener noreferrer" class="nav-link external">
<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></div><div class="nav-item"><a href="https://twitter.com/grapesjs" target="_blank" rel="noopener noreferrer" class="nav-link external">
Twitter
<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path><polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></div><a href="https://github.com/artf/grapesjs" target="_blank" rel="noopener noreferrer" class="repo-link">
<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></div> <a href="https://github.com/artf/grapesjs" target="_blank" rel="noopener noreferrer" class="repo-link">
GitHub
<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path><polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></nav></div></header><div class="sidebar-mask"></div><div class="sidebar"><nav class="nav-links"><div class="nav-item"><a href="/docs/" class="nav-link">Docs</a></div><div class="nav-item"><a href="/docs/api/" class="nav-link router-link-active">API Reference</a></div><div class="nav-item"><a href="https://opencollective.com/grapesjs" target="_blank" rel="noopener noreferrer" class="nav-link external">
<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></nav></div></header> <div class="sidebar-mask"></div> <aside class="sidebar"><nav class="nav-links"><div class="nav-item"><a href="/docs/" class="nav-link">
Docs
</a></div><div class="nav-item"><a href="/docs/api/" class="nav-link router-link-active">
API Reference
</a></div><div class="nav-item"><a href="https://opencollective.com/grapesjs" target="_blank" rel="noopener noreferrer" class="nav-link external">
Support Us
<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path><polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></div><div class="nav-item"><a href="https://twitter.com/grapesjs" target="_blank" rel="noopener noreferrer" class="nav-link external">
<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></div><div class="nav-item"><a href="https://twitter.com/grapesjs" target="_blank" rel="noopener noreferrer" class="nav-link external">
Twitter
<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path><polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></div><a href="https://github.com/artf/grapesjs" target="_blank" rel="noopener noreferrer" class="repo-link">
<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></div> <a href="https://github.com/artf/grapesjs" target="_blank" rel="noopener noreferrer" class="repo-link">
GitHub
<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path><polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></nav><div id="native-carbon" class="carbon-ads"></div><ul class="sidebar-links"><li><a href="/docs/api/" class="sidebar-link">API Reference</a></li><li><a href="/docs/api/editor.html" class="sidebar-link">Editor</a></li><li><a href="/docs/api/i18n.html" class="sidebar-link">I18n</a></li><li><a href="/docs/api/canvas.html" class="sidebar-link">Canvas</a></li><li><a href="/docs/api/assets.html" class="sidebar-link">Asset Manager</a></li><li><a href="/docs/api/block_manager.html" class="sidebar-link">Block Manager</a></li><li><a href="/docs/api/commands.html" class="sidebar-link">Commands</a></li><li><a href="/docs/api/components.html" class="sidebar-link">DOM Components</a></li><li><a href="/docs/api/component.html" class="sidebar-link"> - Component</a></li><li><a href="/docs/api/panels.html" class="sidebar-link">Panels</a></li><li><a href="/docs/api/style_manager.html" class="sidebar-link">Style Manager</a></li><li><a href="/docs/api/storage_manager.html" class="sidebar-link">Storage Manager</a></li><li><a href="/docs/api/device_manager.html" class="active sidebar-link">Device Manager</a><ul class="sidebar-sub-headers"><li class="sidebar-sub-header"><a href="/docs/api/device_manager.html#devicemanager" class="sidebar-link">DeviceManager</a></li><li class="sidebar-sub-header"><a href="/docs/api/device_manager.html#add" class="sidebar-link">add</a></li><li class="sidebar-sub-header"><a href="/docs/api/device_manager.html#get" class="sidebar-link">get</a></li><li class="sidebar-sub-header"><a href="/docs/api/device_manager.html#getall" class="sidebar-link">getAll</a></li></ul></li><li><a href="/docs/api/selector_manager.html" class="sidebar-link">Selector Manager</a></li><li><a href="/docs/api/css_composer.html" class="sidebar-link">CSS Composer</a></li><li><a href="/docs/api/modal_dialog.html" class="sidebar-link">Modal</a></li><li><a href="/docs/api/rich_text_editor.html" class="sidebar-link">Rich Text Editor</a></li><li><a href="/docs/api/keymaps.html" class="sidebar-link">Keymaps</a></li><li><a href="/docs/api/undo_manager.html" class="sidebar-link">Undo Manager</a></li></ul></div><div class="page"><div class="content"><h2 id="devicemanager"><a href="#devicemanager" aria-hidden="true" class="header-anchor">#</a> DeviceManager</h2><p>You can customize the initial state of the module from the editor initialization, by passing the following <a href="https://github.com/artf/grapesjs/blob/master/src/device_manager/config/config.js" target="_blank" rel="noopener noreferrer">Configuration Object<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path><polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></p><div class="language-js extra-class"><pre class="language-js"><code><span class="token keyword">const</span> editor <span class="token operator">=</span> grapesjs<span class="token punctuation">.</span><span class="token function">init</span><span class="token punctuation">(</span><span class="token punctuation">{</span>
deviceManager<span class="token punctuation">:</span> <span class="token punctuation">{</span>
<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></nav> <div id="native-carbon" class="carbon-ads"></div> <ul class="sidebar-links"><li><a href="/docs/api/" class="sidebar-link">API Reference</a></li><li><a href="/docs/api/editor.html" class="sidebar-link">Editor</a></li><li><a href="/docs/api/i18n.html" class="sidebar-link">I18n</a></li><li><a href="/docs/api/canvas.html" class="sidebar-link">Canvas</a></li><li><a href="/docs/api/assets.html" class="sidebar-link">Asset Manager</a></li><li><a href="/docs/api/block_manager.html" class="sidebar-link">Block Manager</a></li><li><a href="/docs/api/commands.html" class="sidebar-link">Commands</a></li><li><a href="/docs/api/components.html" class="sidebar-link">DOM Components</a></li><li><a href="/docs/api/component.html" class="sidebar-link"> - Component</a></li><li><a href="/docs/api/panels.html" class="sidebar-link">Panels</a></li><li><a href="/docs/api/style_manager.html" class="sidebar-link">Style Manager</a></li><li><a href="/docs/api/storage_manager.html" class="sidebar-link">Storage Manager</a></li><li><a href="/docs/api/device_manager.html" class="active sidebar-link">Device Manager</a><ul class="sidebar-sub-headers"><li class="sidebar-sub-header"><a href="/docs/api/device_manager.html#devicemanager" class="sidebar-link">DeviceManager</a></li><li class="sidebar-sub-header"><a href="/docs/api/device_manager.html#add" class="sidebar-link">add</a></li><li class="sidebar-sub-header"><a href="/docs/api/device_manager.html#get" class="sidebar-link">get</a></li><li class="sidebar-sub-header"><a href="/docs/api/device_manager.html#getall" class="sidebar-link">getAll</a></li></ul></li><li><a href="/docs/api/selector_manager.html" class="sidebar-link">Selector Manager</a></li><li><a href="/docs/api/css_composer.html" class="sidebar-link">CSS Composer</a></li><li><a href="/docs/api/modal_dialog.html" class="sidebar-link">Modal</a></li><li><a href="/docs/api/rich_text_editor.html" class="sidebar-link">Rich Text Editor</a></li><li><a href="/docs/api/keymaps.html" class="sidebar-link">Keymaps</a></li><li><a href="/docs/api/undo_manager.html" class="sidebar-link">Undo Manager</a></li></ul> </aside> <main class="page"> <div class="theme-default-content content__default"><h2 id="devicemanager"><a href="#devicemanager" class="header-anchor">#</a> DeviceManager</h2> <p>You can customize the initial state of the module from the editor initialization, by passing the following <a href="https://github.com/artf/grapesjs/blob/master/src/device_manager/config/config.js" target="_blank" rel="noopener noreferrer">Configuration Object<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></p> <div class="language-js extra-class"><pre class="language-js"><code><span class="token keyword">const</span> editor <span class="token operator">=</span> grapesjs<span class="token punctuation">.</span><span class="token function">init</span><span class="token punctuation">(</span><span class="token punctuation">{</span>
deviceManager<span class="token operator">:</span> <span class="token punctuation">{</span>
<span class="token comment">// options</span>
<span class="token punctuation">}</span>
<span class="token punctuation">}</span><span class="token punctuation">)</span>
</code></pre></div><p>Once the editor is instantiated you can use its API. Before using these methods you should get the module from the instance</p><div class="language-js extra-class"><pre class="language-js"><code><span class="token keyword">const</span> deviceManager <span class="token operator">=</span> editor<span class="token punctuation">.</span>DeviceManager<span class="token punctuation">;</span>
</code></pre></div><ul><li><a href="#add">add</a></li><li><a href="#get">get</a></li><li><a href="#getAll">getAll</a></li></ul><h2 id="add"><a href="#add" aria-hidden="true" class="header-anchor">#</a> add</h2><p>Add new device to the collection. URLs are supposed to be unique</p><h3 id="parameters"><a href="#parameters" aria-hidden="true" class="header-anchor">#</a> Parameters</h3><ul><li><code>id</code><strong><a href="https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String" target="_blank" rel="noopener noreferrer">String<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path><polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></strong> Device id</li><li><code>width</code><strong><a href="https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String" target="_blank" rel="noopener noreferrer">String<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path><polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></strong> Width of the device</li><li><code>opts</code><strong><a href="https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Object" target="_blank" rel="noopener noreferrer">Object<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path><polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a>?</strong> Custom options (optional, default <code>{}</code>)</li></ul><h3 id="examples"><a href="#examples" aria-hidden="true" class="header-anchor">#</a> Examples</h3><div class="language-javascript extra-class"><pre class="language-javascript"><code>deviceManager<span class="token punctuation">.</span><span class="token function">add</span><span class="token punctuation">(</span><span class="token string">'tablet'</span><span class="token punctuation">,</span> <span class="token string">'900px'</span><span class="token punctuation">)</span><span class="token punctuation">;</span>
</code></pre></div><p>Once the editor is instantiated you can use its API. Before using these methods you should get the module from the instance</p> <div class="language-js extra-class"><pre class="language-js"><code><span class="token keyword">const</span> deviceManager <span class="token operator">=</span> editor<span class="token punctuation">.</span>DeviceManager<span class="token punctuation">;</span>
</code></pre></div><ul><li><a href="#add">add</a></li> <li><a href="#get">get</a></li> <li><a href="#getAll">getAll</a></li></ul> <h2 id="add"><a href="#add" class="header-anchor">#</a> add</h2> <p>Add new device to the collection. URLs are supposed to be unique</p> <h3 id="parameters"><a href="#parameters" class="header-anchor">#</a> Parameters</h3> <ul><li><code>id</code> <strong><a href="https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String" target="_blank" rel="noopener noreferrer">String<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></strong> Device id</li> <li><code>width</code> <strong><a href="https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String" target="_blank" rel="noopener noreferrer">String<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></strong> Width of the device</li> <li><code>opts</code> <strong><a href="https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Object" target="_blank" rel="noopener noreferrer">Object<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a>?</strong> Custom options (optional, default <code>{}</code>)</li></ul> <h3 id="examples"><a href="#examples" class="header-anchor">#</a> Examples</h3> <div class="language-javascript extra-class"><pre class="language-javascript"><code>deviceManager<span class="token punctuation">.</span><span class="token function">add</span><span class="token punctuation">(</span><span class="token string">'tablet'</span><span class="token punctuation">,</span> <span class="token string">'900px'</span><span class="token punctuation">)</span><span class="token punctuation">;</span>
deviceManager<span class="token punctuation">.</span><span class="token function">add</span><span class="token punctuation">(</span><span class="token string">'tablet2'</span><span class="token punctuation">,</span> <span class="token string">'900px'</span><span class="token punctuation">,</span> <span class="token punctuation">{</span>
height<span class="token punctuation">:</span> <span class="token string">'300px'</span><span class="token punctuation">,</span>
height<span class="token operator">:</span> <span class="token string">'300px'</span><span class="token punctuation">,</span>
<span class="token comment">// At first, GrapesJS tries to localize the name by device id.</span>
<span class="token comment">// In case is not found, the `name` property is used (or `id` if name is missing)</span>
name<span class="token punctuation">:</span> <span class="token string">'Tablet 2'</span><span class="token punctuation">,</span>
widthMedia<span class="token punctuation">:</span> <span class="token string">'810px'</span><span class="token punctuation">,</span> <span class="token comment">// the width that will be used for the CSS media</span>
name<span class="token operator">:</span> <span class="token string">'Tablet 2'</span><span class="token punctuation">,</span>
widthMedia<span class="token operator">:</span> <span class="token string">'810px'</span><span class="token punctuation">,</span> <span class="token comment">// the width that will be used for the CSS media</span>
<span class="token punctuation">}</span><span class="token punctuation">)</span><span class="token punctuation">;</span>
</code></pre></div><p>Returns <strong>Device</strong> Added device</p><h2 id="get"><a href="#get" aria-hidden="true" class="header-anchor">#</a> get</h2><p>Return device by name</p><h3 id="parameters-2"><a href="#parameters-2" aria-hidden="true" class="header-anchor">#</a> Parameters</h3><ul><li><code>name</code><strong><a href="https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String" target="_blank" rel="noopener noreferrer">string<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path><polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></strong> Name of the device</li></ul><h3 id="examples-2"><a href="#examples-2" aria-hidden="true" class="header-anchor">#</a> Examples</h3><div class="language-javascript extra-class"><pre class="language-javascript"><code><span class="token keyword">var</span> device <span class="token operator">=</span> deviceManager<span class="token punctuation">.</span><span class="token function">get</span><span class="token punctuation">(</span><span class="token string">'Tablet'</span><span class="token punctuation">)</span><span class="token punctuation">;</span>
</code></pre></div><p>Returns <strong>Device</strong> Added device</p> <h2 id="get"><a href="#get" class="header-anchor">#</a> get</h2> <p>Return device by name</p> <h3 id="parameters-2"><a href="#parameters-2" class="header-anchor">#</a> Parameters</h3> <ul><li><code>name</code> <strong><a href="https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String" target="_blank" rel="noopener noreferrer">string<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></strong> Name of the device</li></ul> <h3 id="examples-2"><a href="#examples-2" class="header-anchor">#</a> Examples</h3> <div class="language-javascript extra-class"><pre class="language-javascript"><code><span class="token keyword">var</span> device <span class="token operator">=</span> deviceManager<span class="token punctuation">.</span><span class="token function">get</span><span class="token punctuation">(</span><span class="token string">'Tablet'</span><span class="token punctuation">)</span><span class="token punctuation">;</span>
console<span class="token punctuation">.</span><span class="token function">log</span><span class="token punctuation">(</span><span class="token constant">JSON</span><span class="token punctuation">.</span><span class="token function">stringify</span><span class="token punctuation">(</span>device<span class="token punctuation">)</span><span class="token punctuation">)</span><span class="token punctuation">;</span>
<span class="token comment">// {name: 'Tablet', width: '900px'}</span>
</code></pre></div><h2 id="getall"><a href="#getall" aria-hidden="true" class="header-anchor">#</a> getAll</h2><p>Return all devices</p><h3 id="examples-3"><a href="#examples-3" aria-hidden="true" class="header-anchor">#</a> Examples</h3><div class="language-javascript extra-class"><pre class="language-javascript"><code><span class="token keyword">var</span> devices <span class="token operator">=</span> deviceManager<span class="token punctuation">.</span><span class="token function">getAll</span><span class="token punctuation">(</span><span class="token punctuation">)</span><span class="token punctuation">;</span>
</code></pre></div><h2 id="getall"><a href="#getall" class="header-anchor">#</a> getAll</h2> <p>Return all devices</p> <h3 id="examples-3"><a href="#examples-3" class="header-anchor">#</a> Examples</h3> <div class="language-javascript extra-class"><pre class="language-javascript"><code><span class="token keyword">var</span> devices <span class="token operator">=</span> deviceManager<span class="token punctuation">.</span><span class="token function">getAll</span><span class="token punctuation">(</span><span class="token punctuation">)</span><span class="token punctuation">;</span>
console<span class="token punctuation">.</span><span class="token function">log</span><span class="token punctuation">(</span><span class="token constant">JSON</span><span class="token punctuation">.</span><span class="token function">stringify</span><span class="token punctuation">(</span>devices<span class="token punctuation">)</span><span class="token punctuation">)</span><span class="token punctuation">;</span>
<span class="token comment">// [{name: 'Desktop', width: ''}, ...]</span>
</code></pre></div><p>Returns <strong>Collection</strong></p></div><div class="page-edit"><div class="edit-link"><a href="https://github.com/artf/grapesjs/edit/dev/docs/api/device_manager.md" target="_blank" rel="noopener noreferrer">Edit this page on GitHub</a><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path><polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></div><div class="last-updated"><span class="prefix">Last Updated: </span><span class="time">11/4/2019, 12:14:53 AM</span></div></div><div class="page-nav"><p class="inner"><span class="prev">
← <a href="/docs/api/storage_manager.html" class="prev">
Storage Manager
</a></span><span class="next"><a href="/docs/api/selector_manager.html">
Selector Manager
</a> →
</span></p></div></div></div></div>
<script src="/docs/assets/js/app.e1f2d947.js" defer></script><script src="/docs/assets/js/21.2babea6a.js" defer></script>
</code></pre></div><p>Returns <strong>Collection</strong></p></div> <footer class="page-edit"><div class="edit-link"><a href="https://github.com/artf/grapesjs/edit/dev/docs/api/device_manager.md" target="_blank" rel="noopener noreferrer">Edit this page on GitHub</a> <svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></div> <div class="last-updated"><span class="prefix">Last Updated:</span> <span class="time">11/4/2019, 12:14:53 AM</span></div></footer> <div class="page-nav"><p class="inner"><span class="prev">
←
<a href="/docs/api/storage_manager.html" class="prev">
Storage Manager
</a></span> <span class="next"><a href="/docs/api/selector_manager.html">
Selector Manager
</a>
→
</span></p></div> </main></div><div class="global-ui"></div></div>
<script src="/docs/assets/js/app.4dd41b9b.js" defer></script><script src="/docs/assets/js/11.b2ac4984.js" defer></script><script src="/docs/assets/js/2.a342f4be.js" defer></script><script src="/docs/assets/js/27.169cfbf6.js" defer></script>
</body>
</html>

146
docs/api/editor.html

File diff suppressed because one or more lines are too long

92
docs/api/i18n.html

@ -4,76 +4,84 @@
<meta charset="utf-8">
<meta name="viewport" content="width=device-width,initial-scale=1">
<title>GrapesJS</title>
<meta name="description" content="GrapesJS documentation">
<meta name="generator" content="VuePress 1.4.1">
<link rel="icon" href="/docs/logo-icon.png">
<link rel="stylesheet" href="../stylesheets/grapes.min.css?v0.16.12">
<script src="../js/grapes.min.js?v0.16.12"></script>
<link rel="preload" href="/docs/assets/css/styles.e1f2d947.css" as="style"><link rel="preload" href="/docs/assets/js/app.e1f2d947.js" as="script"><link rel="preload" href="/docs/assets/js/23.a2c9ec17.js" as="script"><link rel="prefetch" href="/docs/assets/css/1.styles.b40e6662.css"><link rel="prefetch" href="/docs/assets/css/2.styles.896e948d.css"><link rel="prefetch" href="/docs/assets/css/3.styles.46968bd4.css"><link rel="prefetch" href="/docs/assets/css/4.styles.79691bb5.css"><link rel="prefetch" href="/docs/assets/css/5.styles.6013373a.css"><link rel="prefetch" href="/docs/assets/css/6.styles.467c19a2.css"><link rel="prefetch" href="/docs/assets/css/7.styles.ce9d181d.css"><link rel="prefetch" href="/docs/assets/css/8.styles.aae17ac6.css"><link rel="prefetch" href="/docs/assets/css/9.styles.e0170b17.css"><link rel="prefetch" href="/docs/assets/js/1.b40e6662.js"><link rel="prefetch" href="/docs/assets/js/10.e7cd7c26.js"><link rel="prefetch" href="/docs/assets/js/11.3f87b9b8.js"><link rel="prefetch" href="/docs/assets/js/12.269b5586.js"><link rel="prefetch" href="/docs/assets/js/13.e52ea678.js"><link rel="prefetch" href="/docs/assets/js/14.0606827a.js"><link rel="prefetch" href="/docs/assets/js/15.aa7f42f8.js"><link rel="prefetch" href="/docs/assets/js/16.959c0bd7.js"><link rel="prefetch" href="/docs/assets/js/17.bfba947e.js"><link rel="prefetch" href="/docs/assets/js/18.7f401ffb.js"><link rel="prefetch" href="/docs/assets/js/19.3e0ce3c8.js"><link rel="prefetch" href="/docs/assets/js/2.896e948d.js"><link rel="prefetch" href="/docs/assets/js/20.f4502040.js"><link rel="prefetch" href="/docs/assets/js/21.2babea6a.js"><link rel="prefetch" href="/docs/assets/js/22.26e5d9ed.js"><link rel="prefetch" href="/docs/assets/js/24.f9675b16.js"><link rel="prefetch" href="/docs/assets/js/25.b52924ae.js"><link rel="prefetch" href="/docs/assets/js/26.81c00685.js"><link rel="prefetch" href="/docs/assets/js/27.7372785c.js"><link rel="prefetch" href="/docs/assets/js/28.df5c22ed.js"><link rel="prefetch" href="/docs/assets/js/29.b167a894.js"><link rel="prefetch" href="/docs/assets/js/3.46968bd4.js"><link rel="prefetch" href="/docs/assets/js/30.d165faf7.js"><link rel="prefetch" href="/docs/assets/js/31.334d7953.js"><link rel="prefetch" href="/docs/assets/js/32.f9daa2c8.js"><link rel="prefetch" href="/docs/assets/js/33.93f49bfa.js"><link rel="prefetch" href="/docs/assets/js/34.4865e6c3.js"><link rel="prefetch" href="/docs/assets/js/35.9d089775.js"><link rel="prefetch" href="/docs/assets/js/36.67cb8d1f.js"><link rel="prefetch" href="/docs/assets/js/37.708a94ac.js"><link rel="prefetch" href="/docs/assets/js/38.0f8df29b.js"><link rel="prefetch" href="/docs/assets/js/39.074f3faf.js"><link rel="prefetch" href="/docs/assets/js/4.79691bb5.js"><link rel="prefetch" href="/docs/assets/js/40.cef45f06.js"><link rel="prefetch" href="/docs/assets/js/41.c734b929.js"><link rel="prefetch" href="/docs/assets/js/42.1078a060.js"><link rel="prefetch" href="/docs/assets/js/43.7188da01.js"><link rel="prefetch" href="/docs/assets/js/44.1fd52e91.js"><link rel="prefetch" href="/docs/assets/js/45.69c67864.js"><link rel="prefetch" href="/docs/assets/js/5.6013373a.js"><link rel="prefetch" href="/docs/assets/js/6.467c19a2.js"><link rel="prefetch" href="/docs/assets/js/7.ce9d181d.js"><link rel="prefetch" href="/docs/assets/js/8.aae17ac6.js"><link rel="prefetch" href="/docs/assets/js/9.e0170b17.js">
<link rel="stylesheet" href="/docs/assets/css/styles.e1f2d947.css">
<link rel="stylesheet" href="../stylesheets/grapes.min.css?v0.16.12">
<script src="../js/grapes.min.js?v0.16.12"></script>
<meta name="description" content="GrapesJS documentation">
<link rel="preload" href="/docs/assets/css/0.styles.d44f2c14.css" as="style"><link rel="preload" href="/docs/assets/js/app.4dd41b9b.js" as="script"><link rel="preload" href="/docs/assets/js/11.b2ac4984.js" as="script"><link rel="preload" href="/docs/assets/js/2.a342f4be.js" as="script"><link rel="preload" href="/docs/assets/js/29.5e2a7327.js" as="script"><link rel="prefetch" href="/docs/assets/js/10.6a518be5.js"><link rel="prefetch" href="/docs/assets/js/12.bf8ecce1.js"><link rel="prefetch" href="/docs/assets/js/13.d807997f.js"><link rel="prefetch" href="/docs/assets/js/14.0ba8a778.js"><link rel="prefetch" href="/docs/assets/js/15.52ce2afa.js"><link rel="prefetch" href="/docs/assets/js/16.47266d46.js"><link rel="prefetch" href="/docs/assets/js/17.9b7a7fa4.js"><link rel="prefetch" href="/docs/assets/js/18.66b0785d.js"><link rel="prefetch" href="/docs/assets/js/19.2f9692d0.js"><link rel="prefetch" href="/docs/assets/js/20.ab1e767c.js"><link rel="prefetch" href="/docs/assets/js/21.66fe8957.js"><link rel="prefetch" href="/docs/assets/js/22.cb6c233f.js"><link rel="prefetch" href="/docs/assets/js/23.dc99d7c7.js"><link rel="prefetch" href="/docs/assets/js/24.245fff8a.js"><link rel="prefetch" href="/docs/assets/js/25.d8c7e0b5.js"><link rel="prefetch" href="/docs/assets/js/26.ad7fc796.js"><link rel="prefetch" href="/docs/assets/js/27.169cfbf6.js"><link rel="prefetch" href="/docs/assets/js/28.f086d486.js"><link rel="prefetch" href="/docs/assets/js/3.7e642bff.js"><link rel="prefetch" href="/docs/assets/js/30.3a998b30.js"><link rel="prefetch" href="/docs/assets/js/31.5286fade.js"><link rel="prefetch" href="/docs/assets/js/32.0a0e4ae7.js"><link rel="prefetch" href="/docs/assets/js/33.0ba298a5.js"><link rel="prefetch" href="/docs/assets/js/34.07640632.js"><link rel="prefetch" href="/docs/assets/js/35.061f6dd5.js"><link rel="prefetch" href="/docs/assets/js/36.63462982.js"><link rel="prefetch" href="/docs/assets/js/37.e2d50838.js"><link rel="prefetch" href="/docs/assets/js/38.1230aa70.js"><link rel="prefetch" href="/docs/assets/js/39.c8373102.js"><link rel="prefetch" href="/docs/assets/js/4.32ffd5a1.js"><link rel="prefetch" href="/docs/assets/js/40.0600f064.js"><link rel="prefetch" href="/docs/assets/js/41.9bbfe266.js"><link rel="prefetch" href="/docs/assets/js/42.63c51d25.js"><link rel="prefetch" href="/docs/assets/js/43.d69d8e57.js"><link rel="prefetch" href="/docs/assets/js/44.a981446c.js"><link rel="prefetch" href="/docs/assets/js/45.415ecb59.js"><link rel="prefetch" href="/docs/assets/js/46.75d7a27f.js"><link rel="prefetch" href="/docs/assets/js/47.a4983875.js"><link rel="prefetch" href="/docs/assets/js/48.0dd7e7e0.js"><link rel="prefetch" href="/docs/assets/js/49.166bd1fa.js"><link rel="prefetch" href="/docs/assets/js/5.a0a5a0aa.js"><link rel="prefetch" href="/docs/assets/js/50.4e76f723.js"><link rel="prefetch" href="/docs/assets/js/51.21d145d2.js"><link rel="prefetch" href="/docs/assets/js/52.43234198.js"><link rel="prefetch" href="/docs/assets/js/6.9461537e.js"><link rel="prefetch" href="/docs/assets/js/7.3158bea4.js"><link rel="prefetch" href="/docs/assets/js/8.625d63ee.js"><link rel="prefetch" href="/docs/assets/js/9.e856c4d3.js">
<link rel="stylesheet" href="/docs/assets/css/0.styles.d44f2c14.css">
</head>
<body>
<div id="app" data-server-rendered="true"><div class="theme-container"><header class="navbar"><div class="sidebar-button"><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" role="img" viewBox="0 0 448 512" class="icon"><path fill="currentColor" d="M436 124H12c-6.627 0-12-5.373-12-12V80c0-6.627 5.373-12 12-12h424c6.627 0 12 5.373 12 12v32c0 6.627-5.373 12-12 12zm0 160H12c-6.627 0-12-5.373-12-12v-32c0-6.627 5.373-12 12-12h424c6.627 0 12 5.373 12 12v32c0 6.627-5.373 12-12 12zm0 160H12c-6.627 0-12-5.373-12-12v-32c0-6.627 5.373-12 12-12h424c6.627 0 12 5.373 12 12v32c0 6.627-5.373 12-12 12z"></path></svg></div><a href="/docs/" class="home-link router-link-active"><img src="/docs/logo.png" class="logo"><span class="site-name can-hide">
GrapesJS
</span></a><div class="links"><div class="search-box"><input aria-label="Search" autocomplete="off" spellcheck="false" value=""><!----></div><nav class="nav-links can-hide"><div class="nav-item"><a href="/docs/" class="nav-link">Docs</a></div><div class="nav-item"><a href="/docs/api/" class="nav-link router-link-active">API Reference</a></div><div class="nav-item"><a href="https://opencollective.com/grapesjs" target="_blank" rel="noopener noreferrer" class="nav-link external">
<div id="app" data-server-rendered="true"><div class="theme-container"><header class="navbar"><div class="sidebar-button"><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" role="img" viewBox="0 0 448 512" class="icon"><path fill="currentColor" d="M436 124H12c-6.627 0-12-5.373-12-12V80c0-6.627 5.373-12 12-12h424c6.627 0 12 5.373 12 12v32c0 6.627-5.373 12-12 12zm0 160H12c-6.627 0-12-5.373-12-12v-32c0-6.627 5.373-12 12-12h424c6.627 0 12 5.373 12 12v32c0 6.627-5.373 12-12 12zm0 160H12c-6.627 0-12-5.373-12-12v-32c0-6.627 5.373-12 12-12h424c6.627 0 12 5.373 12 12v32c0 6.627-5.373 12-12 12z"></path></svg></div> <a href="/docs/" class="home-link router-link-active"><img src="/docs/logo.png" alt="GrapesJS" class="logo"> <span class="site-name can-hide">GrapesJS</span></a> <div class="links"><div class="search-box"><input aria-label="Search" autocomplete="off" spellcheck="false" value=""> <!----></div> <nav class="nav-links can-hide"><div class="nav-item"><a href="/docs/" class="nav-link">
Docs
</a></div><div class="nav-item"><a href="/docs/api/" class="nav-link router-link-active">
API Reference
</a></div><div class="nav-item"><a href="https://opencollective.com/grapesjs" target="_blank" rel="noopener noreferrer" class="nav-link external">
Support Us
<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path><polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></div><div class="nav-item"><a href="https://twitter.com/grapesjs" target="_blank" rel="noopener noreferrer" class="nav-link external">
<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></div><div class="nav-item"><a href="https://twitter.com/grapesjs" target="_blank" rel="noopener noreferrer" class="nav-link external">
Twitter
<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path><polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></div><a href="https://github.com/artf/grapesjs" target="_blank" rel="noopener noreferrer" class="repo-link">
<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></div> <a href="https://github.com/artf/grapesjs" target="_blank" rel="noopener noreferrer" class="repo-link">
GitHub
<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path><polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></nav></div></header><div class="sidebar-mask"></div><div class="sidebar"><nav class="nav-links"><div class="nav-item"><a href="/docs/" class="nav-link">Docs</a></div><div class="nav-item"><a href="/docs/api/" class="nav-link router-link-active">API Reference</a></div><div class="nav-item"><a href="https://opencollective.com/grapesjs" target="_blank" rel="noopener noreferrer" class="nav-link external">
<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></nav></div></header> <div class="sidebar-mask"></div> <aside class="sidebar"><nav class="nav-links"><div class="nav-item"><a href="/docs/" class="nav-link">
Docs
</a></div><div class="nav-item"><a href="/docs/api/" class="nav-link router-link-active">
API Reference
</a></div><div class="nav-item"><a href="https://opencollective.com/grapesjs" target="_blank" rel="noopener noreferrer" class="nav-link external">
Support Us
<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path><polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></div><div class="nav-item"><a href="https://twitter.com/grapesjs" target="_blank" rel="noopener noreferrer" class="nav-link external">
<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></div><div class="nav-item"><a href="https://twitter.com/grapesjs" target="_blank" rel="noopener noreferrer" class="nav-link external">
Twitter
<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path><polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></div><a href="https://github.com/artf/grapesjs" target="_blank" rel="noopener noreferrer" class="repo-link">
<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></div> <a href="https://github.com/artf/grapesjs" target="_blank" rel="noopener noreferrer" class="repo-link">
GitHub
<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path><polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></nav><div id="native-carbon" class="carbon-ads"></div><ul class="sidebar-links"><li><a href="/docs/api/" class="sidebar-link">API Reference</a></li><li><a href="/docs/api/editor.html" class="sidebar-link">Editor</a></li><li><a href="/docs/api/i18n.html" class="active sidebar-link">I18n</a><ul class="sidebar-sub-headers"><li class="sidebar-sub-header"><a href="/docs/api/i18n.html#i18n" class="sidebar-link">I18n</a></li><li class="sidebar-sub-header"><a href="/docs/api/i18n.html#getconfig" class="sidebar-link">getConfig</a></li><li class="sidebar-sub-header"><a href="/docs/api/i18n.html#setlocale" class="sidebar-link">setLocale</a></li><li class="sidebar-sub-header"><a href="/docs/api/i18n.html#getlocale" class="sidebar-link">getLocale</a></li><li class="sidebar-sub-header"><a href="/docs/api/i18n.html#getmessages" class="sidebar-link">getMessages</a></li><li class="sidebar-sub-header"><a href="/docs/api/i18n.html#setmessages" class="sidebar-link">setMessages</a></li><li class="sidebar-sub-header"><a href="/docs/api/i18n.html#addmessages" class="sidebar-link">addMessages</a></li><li class="sidebar-sub-header"><a href="/docs/api/i18n.html#t" class="sidebar-link">t</a></li></ul></li><li><a href="/docs/api/canvas.html" class="sidebar-link">Canvas</a></li><li><a href="/docs/api/assets.html" class="sidebar-link">Asset Manager</a></li><li><a href="/docs/api/block_manager.html" class="sidebar-link">Block Manager</a></li><li><a href="/docs/api/commands.html" class="sidebar-link">Commands</a></li><li><a href="/docs/api/components.html" class="sidebar-link">DOM Components</a></li><li><a href="/docs/api/component.html" class="sidebar-link"> - Component</a></li><li><a href="/docs/api/panels.html" class="sidebar-link">Panels</a></li><li><a href="/docs/api/style_manager.html" class="sidebar-link">Style Manager</a></li><li><a href="/docs/api/storage_manager.html" class="sidebar-link">Storage Manager</a></li><li><a href="/docs/api/device_manager.html" class="sidebar-link">Device Manager</a></li><li><a href="/docs/api/selector_manager.html" class="sidebar-link">Selector Manager</a></li><li><a href="/docs/api/css_composer.html" class="sidebar-link">CSS Composer</a></li><li><a href="/docs/api/modal_dialog.html" class="sidebar-link">Modal</a></li><li><a href="/docs/api/rich_text_editor.html" class="sidebar-link">Rich Text Editor</a></li><li><a href="/docs/api/keymaps.html" class="sidebar-link">Keymaps</a></li><li><a href="/docs/api/undo_manager.html" class="sidebar-link">Undo Manager</a></li></ul></div><div class="page"><div class="content"><h2 id="i18n"><a href="#i18n" aria-hidden="true" class="header-anchor">#</a> I18n</h2><p>You can customize the initial state of the module from the editor initialization, by passing the following <a href="https://github.com/artf/grapesjs/blob/master/src/i18n/config.js" target="_blank" rel="noopener noreferrer">Configuration Object<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path><polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></p><div class="language-js extra-class"><pre class="language-js"><code><span class="token keyword">const</span> editor <span class="token operator">=</span> grapesjs<span class="token punctuation">.</span><span class="token function">init</span><span class="token punctuation">(</span><span class="token punctuation">{</span>
i18n<span class="token punctuation">:</span> <span class="token punctuation">{</span>
locale<span class="token punctuation">:</span> <span class="token string">'en'</span><span class="token punctuation">,</span>
localeFallback<span class="token punctuation">:</span> <span class="token string">'en'</span><span class="token punctuation">,</span>
messages<span class="token punctuation">:</span> <span class="token punctuation">{</span>
it<span class="token punctuation">:</span> <span class="token punctuation">{</span> hello<span class="token punctuation">:</span> <span class="token string">'Ciao'</span><span class="token punctuation">,</span> <span class="token operator">...</span> <span class="token punctuation">}</span><span class="token punctuation">,</span>
<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></nav> <div id="native-carbon" class="carbon-ads"></div> <ul class="sidebar-links"><li><a href="/docs/api/" class="sidebar-link">API Reference</a></li><li><a href="/docs/api/editor.html" class="sidebar-link">Editor</a></li><li><a href="/docs/api/i18n.html" class="active sidebar-link">I18n</a><ul class="sidebar-sub-headers"><li class="sidebar-sub-header"><a href="/docs/api/i18n.html#i18n" class="sidebar-link">I18n</a></li><li class="sidebar-sub-header"><a href="/docs/api/i18n.html#getconfig" class="sidebar-link">getConfig</a></li><li class="sidebar-sub-header"><a href="/docs/api/i18n.html#setlocale" class="sidebar-link">setLocale</a></li><li class="sidebar-sub-header"><a href="/docs/api/i18n.html#getlocale" class="sidebar-link">getLocale</a></li><li class="sidebar-sub-header"><a href="/docs/api/i18n.html#getmessages" class="sidebar-link">getMessages</a></li><li class="sidebar-sub-header"><a href="/docs/api/i18n.html#setmessages" class="sidebar-link">setMessages</a></li><li class="sidebar-sub-header"><a href="/docs/api/i18n.html#addmessages" class="sidebar-link">addMessages</a></li><li class="sidebar-sub-header"><a href="/docs/api/i18n.html#t" class="sidebar-link">t</a></li></ul></li><li><a href="/docs/api/canvas.html" class="sidebar-link">Canvas</a></li><li><a href="/docs/api/assets.html" class="sidebar-link">Asset Manager</a></li><li><a href="/docs/api/block_manager.html" class="sidebar-link">Block Manager</a></li><li><a href="/docs/api/commands.html" class="sidebar-link">Commands</a></li><li><a href="/docs/api/components.html" class="sidebar-link">DOM Components</a></li><li><a href="/docs/api/component.html" class="sidebar-link"> - Component</a></li><li><a href="/docs/api/panels.html" class="sidebar-link">Panels</a></li><li><a href="/docs/api/style_manager.html" class="sidebar-link">Style Manager</a></li><li><a href="/docs/api/storage_manager.html" class="sidebar-link">Storage Manager</a></li><li><a href="/docs/api/device_manager.html" class="sidebar-link">Device Manager</a></li><li><a href="/docs/api/selector_manager.html" class="sidebar-link">Selector Manager</a></li><li><a href="/docs/api/css_composer.html" class="sidebar-link">CSS Composer</a></li><li><a href="/docs/api/modal_dialog.html" class="sidebar-link">Modal</a></li><li><a href="/docs/api/rich_text_editor.html" class="sidebar-link">Rich Text Editor</a></li><li><a href="/docs/api/keymaps.html" class="sidebar-link">Keymaps</a></li><li><a href="/docs/api/undo_manager.html" class="sidebar-link">Undo Manager</a></li></ul> </aside> <main class="page"> <div class="theme-default-content content__default"><h2 id="i18n"><a href="#i18n" class="header-anchor">#</a> I18n</h2> <p>You can customize the initial state of the module from the editor initialization, by passing the following <a href="https://github.com/artf/grapesjs/blob/master/src/i18n/config.js" target="_blank" rel="noopener noreferrer">Configuration Object<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></p> <div class="language-js extra-class"><pre class="language-js"><code><span class="token keyword">const</span> editor <span class="token operator">=</span> grapesjs<span class="token punctuation">.</span><span class="token function">init</span><span class="token punctuation">(</span><span class="token punctuation">{</span>
i18n<span class="token operator">:</span> <span class="token punctuation">{</span>
locale<span class="token operator">:</span> <span class="token string">'en'</span><span class="token punctuation">,</span>
localeFallback<span class="token operator">:</span> <span class="token string">'en'</span><span class="token punctuation">,</span>
messages<span class="token operator">:</span> <span class="token punctuation">{</span>
it<span class="token operator">:</span> <span class="token punctuation">{</span> hello<span class="token operator">:</span> <span class="token string">'Ciao'</span><span class="token punctuation">,</span> <span class="token operator">...</span> <span class="token punctuation">}</span><span class="token punctuation">,</span>
<span class="token operator">...</span>
<span class="token punctuation">}</span>
<span class="token punctuation">}</span>
<span class="token punctuation">}</span><span class="token punctuation">)</span>
</code></pre></div><p>Once the editor is instantiated you can use its API. Before using these methods you should get the module from the instance</p><div class="language-js extra-class"><pre class="language-js"><code><span class="token keyword">const</span> i18n <span class="token operator">=</span> editor<span class="token punctuation">.</span>I18n<span class="token punctuation">;</span>
</code></pre></div><h3 id="events"><a href="#events" aria-hidden="true" class="header-anchor">#</a> Events</h3><ul><li><code>i18n:add</code> - New set of messages is added</li><li><code>i18n:update</code> - The set of messages is updated</li><li><code>i18n:locale</code> - Locale changed</li></ul><h2 id="getconfig"><a href="#getconfig" aria-hidden="true" class="header-anchor">#</a> getConfig</h2><p>Get module configurations</p><p>Returns <strong><a href="https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Object" target="_blank" rel="noopener noreferrer">Object<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path><polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></strong> Configuration object</p><h2 id="setlocale"><a href="#setlocale" aria-hidden="true" class="header-anchor">#</a> setLocale</h2><p>Update current locale</p><h3 id="parameters"><a href="#parameters" aria-hidden="true" class="header-anchor">#</a> Parameters</h3><ul><li><code>locale</code><strong><a href="https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String" target="_blank" rel="noopener noreferrer">String<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path><polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></strong> Locale value</li></ul><h3 id="examples"><a href="#examples" aria-hidden="true" class="header-anchor">#</a> Examples</h3><div class="language-javascript extra-class"><pre class="language-javascript"><code>i18n<span class="token punctuation">.</span><span class="token function">setLocale</span><span class="token punctuation">(</span><span class="token string">'it'</span><span class="token punctuation">)</span><span class="token punctuation">;</span>
</code></pre></div><p>Returns <strong>this</strong></p><h2 id="getlocale"><a href="#getlocale" aria-hidden="true" class="header-anchor">#</a> getLocale</h2><p>Get current locale</p><p>Returns <strong><a href="https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String" target="_blank" rel="noopener noreferrer">String<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path><polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></strong> Current locale value</p><h2 id="getmessages"><a href="#getmessages" aria-hidden="true" class="header-anchor">#</a> getMessages</h2><p>Get all messages</p><h3 id="parameters-2"><a href="#parameters-2" aria-hidden="true" class="header-anchor">#</a> Parameters</h3><ul><li><code>lang</code><strong><a href="https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String" target="_blank" rel="noopener noreferrer">String<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path><polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a>?</strong> Specify the language of messages to return</li><li><code>opts</code><strong><a href="https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Object" target="_blank" rel="noopener noreferrer">Object<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path><polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a>?</strong> Options (optional, default <code>{}</code>)
<ul><li><code>opts.debug</code><strong><a href="https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Boolean" target="_blank" rel="noopener noreferrer">Boolean<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path><polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a>?</strong> Show warnings in case of missing language</li></ul></li></ul><h3 id="examples-2"><a href="#examples-2" aria-hidden="true" class="header-anchor">#</a> Examples</h3><div class="language-javascript extra-class"><pre class="language-javascript"><code>i18n<span class="token punctuation">.</span><span class="token function">getMessages</span><span class="token punctuation">(</span><span class="token punctuation">)</span><span class="token punctuation">;</span>
</code></pre></div><p>Once the editor is instantiated you can use its API. Before using these methods you should get the module from the instance</p> <div class="language-js extra-class"><pre class="language-js"><code><span class="token keyword">const</span> i18n <span class="token operator">=</span> editor<span class="token punctuation">.</span>I18n<span class="token punctuation">;</span>
</code></pre></div><h3 id="events"><a href="#events" class="header-anchor">#</a> Events</h3> <ul><li><code>i18n:add</code> - New set of messages is added</li> <li><code>i18n:update</code> - The set of messages is updated</li> <li><code>i18n:locale</code> - Locale changed</li></ul> <h2 id="getconfig"><a href="#getconfig" class="header-anchor">#</a> getConfig</h2> <p>Get module configurations</p> <p>Returns <strong><a href="https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Object" target="_blank" rel="noopener noreferrer">Object<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></strong> Configuration object</p> <h2 id="setlocale"><a href="#setlocale" class="header-anchor">#</a> setLocale</h2> <p>Update current locale</p> <h3 id="parameters"><a href="#parameters" class="header-anchor">#</a> Parameters</h3> <ul><li><code>locale</code> <strong><a href="https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String" target="_blank" rel="noopener noreferrer">String<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></strong> Locale value</li></ul> <h3 id="examples"><a href="#examples" class="header-anchor">#</a> Examples</h3> <div class="language-javascript extra-class"><pre class="language-javascript"><code>i18n<span class="token punctuation">.</span><span class="token function">setLocale</span><span class="token punctuation">(</span><span class="token string">'it'</span><span class="token punctuation">)</span><span class="token punctuation">;</span>
</code></pre></div><p>Returns <strong>this</strong></p> <h2 id="getlocale"><a href="#getlocale" class="header-anchor">#</a> getLocale</h2> <p>Get current locale</p> <p>Returns <strong><a href="https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String" target="_blank" rel="noopener noreferrer">String<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></strong> Current locale value</p> <h2 id="getmessages"><a href="#getmessages" class="header-anchor">#</a> getMessages</h2> <p>Get all messages</p> <h3 id="parameters-2"><a href="#parameters-2" class="header-anchor">#</a> Parameters</h3> <ul><li><code>lang</code> <strong><a href="https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String" target="_blank" rel="noopener noreferrer">String<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a>?</strong> Specify the language of messages to return</li> <li><code>opts</code> <strong><a href="https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Object" target="_blank" rel="noopener noreferrer">Object<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a>?</strong> Options (optional, default <code>{}</code>)
<ul><li><code>opts.debug</code> <strong><a href="https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Boolean" target="_blank" rel="noopener noreferrer">Boolean<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a>?</strong> Show warnings in case of missing language</li></ul></li></ul> <h3 id="examples-2"><a href="#examples-2" class="header-anchor">#</a> Examples</h3> <div class="language-javascript extra-class"><pre class="language-javascript"><code>i18n<span class="token punctuation">.</span><span class="token function">getMessages</span><span class="token punctuation">(</span><span class="token punctuation">)</span><span class="token punctuation">;</span>
<span class="token comment">// -&gt; { en: { hello: '...' }, ... }</span>
i18n<span class="token punctuation">.</span><span class="token function">getMessages</span><span class="token punctuation">(</span><span class="token string">'en'</span><span class="token punctuation">)</span><span class="token punctuation">;</span>
<span class="token comment">// -&gt; { hello: '...' }</span>
</code></pre></div><p>Returns <strong><a href="https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Object" target="_blank" rel="noopener noreferrer">Object<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path><polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></strong></p><h2 id="setmessages"><a href="#setmessages" aria-hidden="true" class="header-anchor">#</a> setMessages</h2><p>Set new set of messages</p><h3 id="parameters-3"><a href="#parameters-3" aria-hidden="true" class="header-anchor">#</a> Parameters</h3><ul><li><code>msg</code><strong><a href="https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Object" target="_blank" rel="noopener noreferrer">Object<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path><polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></strong> Set of messages</li></ul><h3 id="examples-3"><a href="#examples-3" aria-hidden="true" class="header-anchor">#</a> Examples</h3><div class="language-javascript extra-class"><pre class="language-javascript"><code>i18n<span class="token punctuation">.</span><span class="token function">getMessages</span><span class="token punctuation">(</span><span class="token punctuation">)</span><span class="token punctuation">;</span>
</code></pre></div><p>Returns <strong><a href="https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Object" target="_blank" rel="noopener noreferrer">Object<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></strong></p> <h2 id="setmessages"><a href="#setmessages" class="header-anchor">#</a> setMessages</h2> <p>Set new set of messages</p> <h3 id="parameters-3"><a href="#parameters-3" class="header-anchor">#</a> Parameters</h3> <ul><li><code>msg</code> <strong><a href="https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Object" target="_blank" rel="noopener noreferrer">Object<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></strong> Set of messages</li></ul> <h3 id="examples-3"><a href="#examples-3" class="header-anchor">#</a> Examples</h3> <div class="language-javascript extra-class"><pre class="language-javascript"><code>i18n<span class="token punctuation">.</span><span class="token function">getMessages</span><span class="token punctuation">(</span><span class="token punctuation">)</span><span class="token punctuation">;</span>
<span class="token comment">// -&gt; { en: { msg1: 'Msg 1', msg2: 'Msg 2', } }</span>
i18n<span class="token punctuation">.</span><span class="token function">setMessages</span><span class="token punctuation">(</span><span class="token punctuation">{</span> en<span class="token punctuation">:</span> <span class="token punctuation">{</span> msg2<span class="token punctuation">:</span> <span class="token string">'Msg 2 up'</span><span class="token punctuation">,</span> msg3<span class="token punctuation">:</span> <span class="token string">'Msg 3'</span><span class="token punctuation">,</span> <span class="token punctuation">}</span> <span class="token punctuation">}</span><span class="token punctuation">)</span><span class="token punctuation">;</span>
i18n<span class="token punctuation">.</span><span class="token function">setMessages</span><span class="token punctuation">(</span><span class="token punctuation">{</span> en<span class="token operator">:</span> <span class="token punctuation">{</span> msg2<span class="token operator">:</span> <span class="token string">'Msg 2 up'</span><span class="token punctuation">,</span> msg3<span class="token operator">:</span> <span class="token string">'Msg 3'</span><span class="token punctuation">,</span> <span class="token punctuation">}</span> <span class="token punctuation">}</span><span class="token punctuation">)</span><span class="token punctuation">;</span>
<span class="token comment">// Set replaced</span>
i18n<span class="token punctuation">.</span><span class="token function">getMessages</span><span class="token punctuation">(</span><span class="token punctuation">)</span><span class="token punctuation">;</span>
<span class="token comment">// -&gt; { en: { msg2: 'Msg 2 up', msg3: 'Msg 3', } }</span>
</code></pre></div><p>Returns <strong>this</strong></p><h2 id="addmessages"><a href="#addmessages" aria-hidden="true" class="header-anchor">#</a> addMessages</h2><p>Update messages</p><h3 id="parameters-4"><a href="#parameters-4" aria-hidden="true" class="header-anchor">#</a> Parameters</h3><ul><li><code>msg</code><strong><a href="https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Object" target="_blank" rel="noopener noreferrer">Object<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path><polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></strong> Set of messages to add</li></ul><h3 id="examples-4"><a href="#examples-4" aria-hidden="true" class="header-anchor">#</a> Examples</h3><div class="language-javascript extra-class"><pre class="language-javascript"><code>i18n<span class="token punctuation">.</span><span class="token function">getMessages</span><span class="token punctuation">(</span><span class="token punctuation">)</span><span class="token punctuation">;</span>
</code></pre></div><p>Returns <strong>this</strong></p> <h2 id="addmessages"><a href="#addmessages" class="header-anchor">#</a> addMessages</h2> <p>Update messages</p> <h3 id="parameters-4"><a href="#parameters-4" class="header-anchor">#</a> Parameters</h3> <ul><li><code>msg</code> <strong><a href="https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Object" target="_blank" rel="noopener noreferrer">Object<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></strong> Set of messages to add</li></ul> <h3 id="examples-4"><a href="#examples-4" class="header-anchor">#</a> Examples</h3> <div class="language-javascript extra-class"><pre class="language-javascript"><code>i18n<span class="token punctuation">.</span><span class="token function">getMessages</span><span class="token punctuation">(</span><span class="token punctuation">)</span><span class="token punctuation">;</span>
<span class="token comment">// -&gt; { en: { msg1: 'Msg 1', msg2: 'Msg 2', } }</span>
i18n<span class="token punctuation">.</span><span class="token function">addMessages</span><span class="token punctuation">(</span><span class="token punctuation">{</span> en<span class="token punctuation">:</span> <span class="token punctuation">{</span> msg2<span class="token punctuation">:</span> <span class="token string">'Msg 2 up'</span><span class="token punctuation">,</span> msg3<span class="token punctuation">:</span> <span class="token string">'Msg 3'</span><span class="token punctuation">,</span> <span class="token punctuation">}</span> <span class="token punctuation">}</span><span class="token punctuation">)</span><span class="token punctuation">;</span>
i18n<span class="token punctuation">.</span><span class="token function">addMessages</span><span class="token punctuation">(</span><span class="token punctuation">{</span> en<span class="token operator">:</span> <span class="token punctuation">{</span> msg2<span class="token operator">:</span> <span class="token string">'Msg 2 up'</span><span class="token punctuation">,</span> msg3<span class="token operator">:</span> <span class="token string">'Msg 3'</span><span class="token punctuation">,</span> <span class="token punctuation">}</span> <span class="token punctuation">}</span><span class="token punctuation">)</span><span class="token punctuation">;</span>
<span class="token comment">// Set updated</span>
i18n<span class="token punctuation">.</span><span class="token function">getMessages</span><span class="token punctuation">(</span><span class="token punctuation">)</span><span class="token punctuation">;</span>
<span class="token comment">// -&gt; { en: { msg1: 'Msg 1', msg2: 'Msg 2 up', msg3: 'Msg 3', } }</span>
</code></pre></div><p>Returns <strong>this</strong></p><h2 id="t"><a href="#t" aria-hidden="true" class="header-anchor">#</a> t</h2><p>Translate the locale message</p><h3 id="parameters-5"><a href="#parameters-5" aria-hidden="true" class="header-anchor">#</a> Parameters</h3><ul><li><code>key</code><strong><a href="https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String" target="_blank" rel="noopener noreferrer">String<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path><polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></strong> Label to translate</li><li><code>opts</code><strong><a href="https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Object" target="_blank" rel="noopener noreferrer">Object<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path><polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a>?</strong> Options for the translation (optional, default <code>{}</code>)
<ul><li><code>opts.params</code><strong><a href="https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Object" target="_blank" rel="noopener noreferrer">Object<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path><polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a>?</strong> Params for the translation</li><li><code>opts.debug</code><strong><a href="https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Boolean" target="_blank" rel="noopener noreferrer">Boolean<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path><polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a>?</strong> Show warnings in case of missing resources</li></ul></li></ul><h3 id="examples-5"><a href="#examples-5" aria-hidden="true" class="header-anchor">#</a> Examples</h3><div class="language-javascript extra-class"><pre class="language-javascript"><code>obj<span class="token punctuation">.</span><span class="token function">setMessages</span><span class="token punctuation">(</span><span class="token punctuation">{</span>
en<span class="token punctuation">:</span> <span class="token punctuation">{</span> msg<span class="token punctuation">:</span> <span class="token string">'Msg'</span><span class="token punctuation">,</span> msg2<span class="token punctuation">:</span> <span class="token string">'Msg {test}'</span><span class="token punctuation">}</span><span class="token punctuation">,</span>
it<span class="token punctuation">:</span> <span class="token punctuation">{</span> msg2<span class="token punctuation">:</span> <span class="token string">'Msg {test} it'</span><span class="token punctuation">}</span><span class="token punctuation">,</span>
</code></pre></div><p>Returns <strong>this</strong></p> <h2 id="t"><a href="#t" class="header-anchor">#</a> t</h2> <p>Translate the locale message</p> <h3 id="parameters-5"><a href="#parameters-5" class="header-anchor">#</a> Parameters</h3> <ul><li><code>key</code> <strong><a href="https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String" target="_blank" rel="noopener noreferrer">String<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></strong> Label to translate</li> <li><code>opts</code> <strong><a href="https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Object" target="_blank" rel="noopener noreferrer">Object<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a>?</strong> Options for the translation (optional, default <code>{}</code>)
<ul><li><code>opts.params</code> <strong><a href="https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Object" target="_blank" rel="noopener noreferrer">Object<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a>?</strong> Params for the translation</li> <li><code>opts.debug</code> <strong><a href="https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Boolean" target="_blank" rel="noopener noreferrer">Boolean<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a>?</strong> Show warnings in case of missing resources</li></ul></li></ul> <h3 id="examples-5"><a href="#examples-5" class="header-anchor">#</a> Examples</h3> <div class="language-javascript extra-class"><pre class="language-javascript"><code>obj<span class="token punctuation">.</span><span class="token function">setMessages</span><span class="token punctuation">(</span><span class="token punctuation">{</span>
en<span class="token operator">:</span> <span class="token punctuation">{</span> msg<span class="token operator">:</span> <span class="token string">'Msg'</span><span class="token punctuation">,</span> msg2<span class="token operator">:</span> <span class="token string">'Msg {test}'</span><span class="token punctuation">}</span><span class="token punctuation">,</span>
it<span class="token operator">:</span> <span class="token punctuation">{</span> msg2<span class="token operator">:</span> <span class="token string">'Msg {test} it'</span><span class="token punctuation">}</span><span class="token punctuation">,</span>
<span class="token punctuation">}</span><span class="token punctuation">)</span><span class="token punctuation">;</span>
obj<span class="token punctuation">.</span><span class="token function">t</span><span class="token punctuation">(</span><span class="token string">'msg'</span><span class="token punctuation">)</span><span class="token punctuation">;</span>
<span class="token comment">// -&gt; outputs `Msg`</span>
obj<span class="token punctuation">.</span><span class="token function">t</span><span class="token punctuation">(</span><span class="token string">'msg2'</span><span class="token punctuation">,</span> <span class="token punctuation">{</span> params<span class="token punctuation">:</span> <span class="token punctuation">{</span> test<span class="token punctuation">:</span> <span class="token string">'hello'</span> <span class="token punctuation">}</span> <span class="token punctuation">}</span><span class="token punctuation">)</span><span class="token punctuation">;</span> <span class="token comment">// use params</span>
obj<span class="token punctuation">.</span><span class="token function">t</span><span class="token punctuation">(</span><span class="token string">'msg2'</span><span class="token punctuation">,</span> <span class="token punctuation">{</span> params<span class="token operator">:</span> <span class="token punctuation">{</span> test<span class="token operator">:</span> <span class="token string">'hello'</span> <span class="token punctuation">}</span> <span class="token punctuation">}</span><span class="token punctuation">)</span><span class="token punctuation">;</span> <span class="token comment">// use params</span>
<span class="token comment">// -&gt; outputs `Msg hello`</span>
obj<span class="token punctuation">.</span><span class="token function">t</span><span class="token punctuation">(</span><span class="token string">'msg2'</span><span class="token punctuation">,</span> <span class="token punctuation">{</span> l<span class="token punctuation">:</span> <span class="token string">'it'</span><span class="token punctuation">,</span> params<span class="token punctuation">:</span> <span class="token punctuation">{</span> test<span class="token punctuation">:</span> <span class="token string">'hello'</span> <span class="token punctuation">}</span> <span class="token punctuation">}</span><span class="token punctuation">)</span><span class="token punctuation">;</span> <span class="token comment">// custom local</span>
obj<span class="token punctuation">.</span><span class="token function">t</span><span class="token punctuation">(</span><span class="token string">'msg2'</span><span class="token punctuation">,</span> <span class="token punctuation">{</span> l<span class="token operator">:</span> <span class="token string">'it'</span><span class="token punctuation">,</span> params<span class="token operator">:</span> <span class="token punctuation">{</span> test<span class="token operator">:</span> <span class="token string">'hello'</span> <span class="token punctuation">}</span> <span class="token punctuation">}</span><span class="token punctuation">)</span><span class="token punctuation">;</span> <span class="token comment">// custom local</span>
<span class="token comment">// -&gt; outputs `Msg hello it`</span>
</code></pre></div><p>Returns <strong><a href="https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String" target="_blank" rel="noopener noreferrer">String<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path><polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></strong></p></div><div class="page-edit"><div class="edit-link"><a href="https://github.com/artf/grapesjs/edit/dev/docs/api/i18n.md" target="_blank" rel="noopener noreferrer">Edit this page on GitHub</a><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path><polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></div><div class="last-updated"><span class="prefix">Last Updated: </span><span class="time">11/6/2019, 10:01:26 PM</span></div></div><div class="page-nav"><p class="inner"><span class="prev">
← <a href="/docs/api/editor.html" class="prev">
Editor
</a></span><span class="next"><a href="/docs/api/canvas.html">
Canvas
</a> →
</span></p></div></div></div></div>
<script src="/docs/assets/js/app.e1f2d947.js" defer></script><script src="/docs/assets/js/23.a2c9ec17.js" defer></script>
</code></pre></div><p>Returns <strong><a href="https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String" target="_blank" rel="noopener noreferrer">String<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></strong></p></div> <footer class="page-edit"><div class="edit-link"><a href="https://github.com/artf/grapesjs/edit/dev/docs/api/i18n.md" target="_blank" rel="noopener noreferrer">Edit this page on GitHub</a> <svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></div> <div class="last-updated"><span class="prefix">Last Updated:</span> <span class="time">11/6/2019, 10:01:26 PM</span></div></footer> <div class="page-nav"><p class="inner"><span class="prev">
←
<a href="/docs/api/editor.html" class="prev">
Editor
</a></span> <span class="next"><a href="/docs/api/canvas.html">
Canvas
</a>
→
</span></p></div> </main></div><div class="global-ui"></div></div>
<script src="/docs/assets/js/app.4dd41b9b.js" defer></script><script src="/docs/assets/js/11.b2ac4984.js" defer></script><script src="/docs/assets/js/2.a342f4be.js" defer></script><script src="/docs/assets/js/29.5e2a7327.js" defer></script>
</body>
</html>

45
docs/api/index.html

@ -4,33 +4,40 @@
<meta charset="utf-8">
<meta name="viewport" content="width=device-width,initial-scale=1">
<title>API Reference | GrapesJS</title>
<meta name="description" content="GrapesJS documentation">
<meta name="generator" content="VuePress 1.4.1">
<link rel="icon" href="/docs/logo-icon.png">
<link rel="stylesheet" href="../stylesheets/grapes.min.css?v0.16.12">
<script src="../js/grapes.min.js?v0.16.12"></script>
<link rel="preload" href="/docs/assets/css/styles.e1f2d947.css" as="style"><link rel="preload" href="/docs/assets/js/app.e1f2d947.js" as="script"><link rel="preload" href="/docs/assets/js/13.e52ea678.js" as="script"><link rel="prefetch" href="/docs/assets/css/1.styles.b40e6662.css"><link rel="prefetch" href="/docs/assets/css/2.styles.896e948d.css"><link rel="prefetch" href="/docs/assets/css/3.styles.46968bd4.css"><link rel="prefetch" href="/docs/assets/css/4.styles.79691bb5.css"><link rel="prefetch" href="/docs/assets/css/5.styles.6013373a.css"><link rel="prefetch" href="/docs/assets/css/6.styles.467c19a2.css"><link rel="prefetch" href="/docs/assets/css/7.styles.ce9d181d.css"><link rel="prefetch" href="/docs/assets/css/8.styles.aae17ac6.css"><link rel="prefetch" href="/docs/assets/css/9.styles.e0170b17.css"><link rel="prefetch" href="/docs/assets/js/1.b40e6662.js"><link rel="prefetch" href="/docs/assets/js/10.e7cd7c26.js"><link rel="prefetch" href="/docs/assets/js/11.3f87b9b8.js"><link rel="prefetch" href="/docs/assets/js/12.269b5586.js"><link rel="prefetch" href="/docs/assets/js/14.0606827a.js"><link rel="prefetch" href="/docs/assets/js/15.aa7f42f8.js"><link rel="prefetch" href="/docs/assets/js/16.959c0bd7.js"><link rel="prefetch" href="/docs/assets/js/17.bfba947e.js"><link rel="prefetch" href="/docs/assets/js/18.7f401ffb.js"><link rel="prefetch" href="/docs/assets/js/19.3e0ce3c8.js"><link rel="prefetch" href="/docs/assets/js/2.896e948d.js"><link rel="prefetch" href="/docs/assets/js/20.f4502040.js"><link rel="prefetch" href="/docs/assets/js/21.2babea6a.js"><link rel="prefetch" href="/docs/assets/js/22.26e5d9ed.js"><link rel="prefetch" href="/docs/assets/js/23.a2c9ec17.js"><link rel="prefetch" href="/docs/assets/js/24.f9675b16.js"><link rel="prefetch" href="/docs/assets/js/25.b52924ae.js"><link rel="prefetch" href="/docs/assets/js/26.81c00685.js"><link rel="prefetch" href="/docs/assets/js/27.7372785c.js"><link rel="prefetch" href="/docs/assets/js/28.df5c22ed.js"><link rel="prefetch" href="/docs/assets/js/29.b167a894.js"><link rel="prefetch" href="/docs/assets/js/3.46968bd4.js"><link rel="prefetch" href="/docs/assets/js/30.d165faf7.js"><link rel="prefetch" href="/docs/assets/js/31.334d7953.js"><link rel="prefetch" href="/docs/assets/js/32.f9daa2c8.js"><link rel="prefetch" href="/docs/assets/js/33.93f49bfa.js"><link rel="prefetch" href="/docs/assets/js/34.4865e6c3.js"><link rel="prefetch" href="/docs/assets/js/35.9d089775.js"><link rel="prefetch" href="/docs/assets/js/36.67cb8d1f.js"><link rel="prefetch" href="/docs/assets/js/37.708a94ac.js"><link rel="prefetch" href="/docs/assets/js/38.0f8df29b.js"><link rel="prefetch" href="/docs/assets/js/39.074f3faf.js"><link rel="prefetch" href="/docs/assets/js/4.79691bb5.js"><link rel="prefetch" href="/docs/assets/js/40.cef45f06.js"><link rel="prefetch" href="/docs/assets/js/41.c734b929.js"><link rel="prefetch" href="/docs/assets/js/42.1078a060.js"><link rel="prefetch" href="/docs/assets/js/43.7188da01.js"><link rel="prefetch" href="/docs/assets/js/44.1fd52e91.js"><link rel="prefetch" href="/docs/assets/js/45.69c67864.js"><link rel="prefetch" href="/docs/assets/js/5.6013373a.js"><link rel="prefetch" href="/docs/assets/js/6.467c19a2.js"><link rel="prefetch" href="/docs/assets/js/7.ce9d181d.js"><link rel="prefetch" href="/docs/assets/js/8.aae17ac6.js"><link rel="prefetch" href="/docs/assets/js/9.e0170b17.js">
<link rel="stylesheet" href="/docs/assets/css/styles.e1f2d947.css">
<link rel="stylesheet" href="../stylesheets/grapes.min.css?v0.16.12">
<script src="../js/grapes.min.js?v0.16.12"></script>
<meta name="description" content="GrapesJS documentation">
<link rel="preload" href="/docs/assets/css/0.styles.d44f2c14.css" as="style"><link rel="preload" href="/docs/assets/js/app.4dd41b9b.js" as="script"><link rel="preload" href="/docs/assets/js/11.b2ac4984.js" as="script"><link rel="preload" href="/docs/assets/js/2.a342f4be.js" as="script"><link rel="preload" href="/docs/assets/js/19.2f9692d0.js" as="script"><link rel="prefetch" href="/docs/assets/js/10.6a518be5.js"><link rel="prefetch" href="/docs/assets/js/12.bf8ecce1.js"><link rel="prefetch" href="/docs/assets/js/13.d807997f.js"><link rel="prefetch" href="/docs/assets/js/14.0ba8a778.js"><link rel="prefetch" href="/docs/assets/js/15.52ce2afa.js"><link rel="prefetch" href="/docs/assets/js/16.47266d46.js"><link rel="prefetch" href="/docs/assets/js/17.9b7a7fa4.js"><link rel="prefetch" href="/docs/assets/js/18.66b0785d.js"><link rel="prefetch" href="/docs/assets/js/20.ab1e767c.js"><link rel="prefetch" href="/docs/assets/js/21.66fe8957.js"><link rel="prefetch" href="/docs/assets/js/22.cb6c233f.js"><link rel="prefetch" href="/docs/assets/js/23.dc99d7c7.js"><link rel="prefetch" href="/docs/assets/js/24.245fff8a.js"><link rel="prefetch" href="/docs/assets/js/25.d8c7e0b5.js"><link rel="prefetch" href="/docs/assets/js/26.ad7fc796.js"><link rel="prefetch" href="/docs/assets/js/27.169cfbf6.js"><link rel="prefetch" href="/docs/assets/js/28.f086d486.js"><link rel="prefetch" href="/docs/assets/js/29.5e2a7327.js"><link rel="prefetch" href="/docs/assets/js/3.7e642bff.js"><link rel="prefetch" href="/docs/assets/js/30.3a998b30.js"><link rel="prefetch" href="/docs/assets/js/31.5286fade.js"><link rel="prefetch" href="/docs/assets/js/32.0a0e4ae7.js"><link rel="prefetch" href="/docs/assets/js/33.0ba298a5.js"><link rel="prefetch" href="/docs/assets/js/34.07640632.js"><link rel="prefetch" href="/docs/assets/js/35.061f6dd5.js"><link rel="prefetch" href="/docs/assets/js/36.63462982.js"><link rel="prefetch" href="/docs/assets/js/37.e2d50838.js"><link rel="prefetch" href="/docs/assets/js/38.1230aa70.js"><link rel="prefetch" href="/docs/assets/js/39.c8373102.js"><link rel="prefetch" href="/docs/assets/js/4.32ffd5a1.js"><link rel="prefetch" href="/docs/assets/js/40.0600f064.js"><link rel="prefetch" href="/docs/assets/js/41.9bbfe266.js"><link rel="prefetch" href="/docs/assets/js/42.63c51d25.js"><link rel="prefetch" href="/docs/assets/js/43.d69d8e57.js"><link rel="prefetch" href="/docs/assets/js/44.a981446c.js"><link rel="prefetch" href="/docs/assets/js/45.415ecb59.js"><link rel="prefetch" href="/docs/assets/js/46.75d7a27f.js"><link rel="prefetch" href="/docs/assets/js/47.a4983875.js"><link rel="prefetch" href="/docs/assets/js/48.0dd7e7e0.js"><link rel="prefetch" href="/docs/assets/js/49.166bd1fa.js"><link rel="prefetch" href="/docs/assets/js/5.a0a5a0aa.js"><link rel="prefetch" href="/docs/assets/js/50.4e76f723.js"><link rel="prefetch" href="/docs/assets/js/51.21d145d2.js"><link rel="prefetch" href="/docs/assets/js/52.43234198.js"><link rel="prefetch" href="/docs/assets/js/6.9461537e.js"><link rel="prefetch" href="/docs/assets/js/7.3158bea4.js"><link rel="prefetch" href="/docs/assets/js/8.625d63ee.js"><link rel="prefetch" href="/docs/assets/js/9.e856c4d3.js">
<link rel="stylesheet" href="/docs/assets/css/0.styles.d44f2c14.css">
</head>
<body>
<div id="app" data-server-rendered="true"><div class="theme-container page__apis"><header class="navbar"><div class="sidebar-button"><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" role="img" viewBox="0 0 448 512" class="icon"><path fill="currentColor" d="M436 124H12c-6.627 0-12-5.373-12-12V80c0-6.627 5.373-12 12-12h424c6.627 0 12 5.373 12 12v32c0 6.627-5.373 12-12 12zm0 160H12c-6.627 0-12-5.373-12-12v-32c0-6.627 5.373-12 12-12h424c6.627 0 12 5.373 12 12v32c0 6.627-5.373 12-12 12zm0 160H12c-6.627 0-12-5.373-12-12v-32c0-6.627 5.373-12 12-12h424c6.627 0 12 5.373 12 12v32c0 6.627-5.373 12-12 12z"></path></svg></div><a href="/docs/" class="home-link router-link-active"><img src="/docs/logo.png" class="logo"><span class="site-name can-hide">
GrapesJS
</span></a><div class="links"><div class="search-box"><input aria-label="Search" autocomplete="off" spellcheck="false" value=""><!----></div><nav class="nav-links can-hide"><div class="nav-item"><a href="/docs/" class="nav-link">Docs</a></div><div class="nav-item"><a href="/docs/api/" class="nav-link router-link-exact-active router-link-active">API Reference</a></div><div class="nav-item"><a href="https://opencollective.com/grapesjs" target="_blank" rel="noopener noreferrer" class="nav-link external">
<div id="app" data-server-rendered="true"><div class="theme-container page__apis"><header class="navbar"><div class="sidebar-button"><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" role="img" viewBox="0 0 448 512" class="icon"><path fill="currentColor" d="M436 124H12c-6.627 0-12-5.373-12-12V80c0-6.627 5.373-12 12-12h424c6.627 0 12 5.373 12 12v32c0 6.627-5.373 12-12 12zm0 160H12c-6.627 0-12-5.373-12-12v-32c0-6.627 5.373-12 12-12h424c6.627 0 12 5.373 12 12v32c0 6.627-5.373 12-12 12zm0 160H12c-6.627 0-12-5.373-12-12v-32c0-6.627 5.373-12 12-12h424c6.627 0 12 5.373 12 12v32c0 6.627-5.373 12-12 12z"></path></svg></div> <a href="/docs/" class="home-link router-link-active"><img src="/docs/logo.png" alt="GrapesJS" class="logo"> <span class="site-name can-hide">GrapesJS</span></a> <div class="links"><div class="search-box"><input aria-label="Search" autocomplete="off" spellcheck="false" value=""> <!----></div> <nav class="nav-links can-hide"><div class="nav-item"><a href="/docs/" class="nav-link">
Docs
</a></div><div class="nav-item"><a href="/docs/api/" class="nav-link router-link-exact-active router-link-active">
API Reference
</a></div><div class="nav-item"><a href="https://opencollective.com/grapesjs" target="_blank" rel="noopener noreferrer" class="nav-link external">
Support Us
<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path><polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></div><div class="nav-item"><a href="https://twitter.com/grapesjs" target="_blank" rel="noopener noreferrer" class="nav-link external">
<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></div><div class="nav-item"><a href="https://twitter.com/grapesjs" target="_blank" rel="noopener noreferrer" class="nav-link external">
Twitter
<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path><polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></div><a href="https://github.com/artf/grapesjs" target="_blank" rel="noopener noreferrer" class="repo-link">
<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></div> <a href="https://github.com/artf/grapesjs" target="_blank" rel="noopener noreferrer" class="repo-link">
GitHub
<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path><polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></nav></div></header><div class="sidebar-mask"></div><div class="sidebar"><nav class="nav-links"><div class="nav-item"><a href="/docs/" class="nav-link">Docs</a></div><div class="nav-item"><a href="/docs/api/" class="nav-link router-link-exact-active router-link-active">API Reference</a></div><div class="nav-item"><a href="https://opencollective.com/grapesjs" target="_blank" rel="noopener noreferrer" class="nav-link external">
<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></nav></div></header> <div class="sidebar-mask"></div> <aside class="sidebar"><nav class="nav-links"><div class="nav-item"><a href="/docs/" class="nav-link">
Docs
</a></div><div class="nav-item"><a href="/docs/api/" class="nav-link router-link-exact-active router-link-active">
API Reference
</a></div><div class="nav-item"><a href="https://opencollective.com/grapesjs" target="_blank" rel="noopener noreferrer" class="nav-link external">
Support Us
<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path><polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></div><div class="nav-item"><a href="https://twitter.com/grapesjs" target="_blank" rel="noopener noreferrer" class="nav-link external">
<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></div><div class="nav-item"><a href="https://twitter.com/grapesjs" target="_blank" rel="noopener noreferrer" class="nav-link external">
Twitter
<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path><polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></div><a href="https://github.com/artf/grapesjs" target="_blank" rel="noopener noreferrer" class="repo-link">
<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></div> <a href="https://github.com/artf/grapesjs" target="_blank" rel="noopener noreferrer" class="repo-link">
GitHub
<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path><polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></nav><div id="native-carbon" class="carbon-ads"></div><ul class="sidebar-links"><li><a href="/docs/api/" class="active sidebar-link">API Reference</a></li><li><a href="/docs/api/editor.html" class="sidebar-link">Editor</a></li><li><a href="/docs/api/i18n.html" class="sidebar-link">I18n</a></li><li><a href="/docs/api/canvas.html" class="sidebar-link">Canvas</a></li><li><a href="/docs/api/assets.html" class="sidebar-link">Asset Manager</a></li><li><a href="/docs/api/block_manager.html" class="sidebar-link">Block Manager</a></li><li><a href="/docs/api/commands.html" class="sidebar-link">Commands</a></li><li><a href="/docs/api/components.html" class="sidebar-link">DOM Components</a></li><li><a href="/docs/api/component.html" class="sidebar-link"> - Component</a></li><li><a href="/docs/api/panels.html" class="sidebar-link">Panels</a></li><li><a href="/docs/api/style_manager.html" class="sidebar-link">Style Manager</a></li><li><a href="/docs/api/storage_manager.html" class="sidebar-link">Storage Manager</a></li><li><a href="/docs/api/device_manager.html" class="sidebar-link">Device Manager</a></li><li><a href="/docs/api/selector_manager.html" class="sidebar-link">Selector Manager</a></li><li><a href="/docs/api/css_composer.html" class="sidebar-link">CSS Composer</a></li><li><a href="/docs/api/modal_dialog.html" class="sidebar-link">Modal</a></li><li><a href="/docs/api/rich_text_editor.html" class="sidebar-link">Rich Text Editor</a></li><li><a href="/docs/api/keymaps.html" class="sidebar-link">Keymaps</a></li><li><a href="/docs/api/undo_manager.html" class="sidebar-link">Undo Manager</a></li></ul></div><div class="page"><div class="content"><h1 id="api-reference"><a href="#api-reference" aria-hidden="true" class="header-anchor">#</a> API Reference</h1><p>Here you can find the documentation about GrapesJS' APIs. Mainly, you would use them for your editor to extend the basic functionality of the framework or you could also <a href="/docs/modules/Plugins.html">create a plugin</a> and make those extensions reusable and available to others.</p></div><div class="page-edit"><div class="edit-link"><a href="https://github.com/artf/grapesjs/edit/dev/docs/api/README.md" target="_blank" rel="noopener noreferrer">Edit this page on GitHub</a><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path><polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></div><div class="last-updated"><span class="prefix">Last Updated: </span><span class="time">7/9/2018, 1:03:59 AM</span></div></div><div class="page-nav"><p class="inner"><!----><span class="next"><a href="/docs/api/editor.html">
Editor
</a> →
</span></p></div></div></div></div>
<script src="/docs/assets/js/app.e1f2d947.js" defer></script><script src="/docs/assets/js/13.e52ea678.js" defer></script>
<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></nav> <div id="native-carbon" class="carbon-ads"></div> <ul class="sidebar-links"><li><a href="/docs/api/" class="active sidebar-link">API Reference</a></li><li><a href="/docs/api/editor.html" class="sidebar-link">Editor</a></li><li><a href="/docs/api/i18n.html" class="sidebar-link">I18n</a></li><li><a href="/docs/api/canvas.html" class="sidebar-link">Canvas</a></li><li><a href="/docs/api/assets.html" class="sidebar-link">Asset Manager</a></li><li><a href="/docs/api/block_manager.html" class="sidebar-link">Block Manager</a></li><li><a href="/docs/api/commands.html" class="sidebar-link">Commands</a></li><li><a href="/docs/api/components.html" class="sidebar-link">DOM Components</a></li><li><a href="/docs/api/component.html" class="sidebar-link"> - Component</a></li><li><a href="/docs/api/panels.html" class="sidebar-link">Panels</a></li><li><a href="/docs/api/style_manager.html" class="sidebar-link">Style Manager</a></li><li><a href="/docs/api/storage_manager.html" class="sidebar-link">Storage Manager</a></li><li><a href="/docs/api/device_manager.html" class="sidebar-link">Device Manager</a></li><li><a href="/docs/api/selector_manager.html" class="sidebar-link">Selector Manager</a></li><li><a href="/docs/api/css_composer.html" class="sidebar-link">CSS Composer</a></li><li><a href="/docs/api/modal_dialog.html" class="sidebar-link">Modal</a></li><li><a href="/docs/api/rich_text_editor.html" class="sidebar-link">Rich Text Editor</a></li><li><a href="/docs/api/keymaps.html" class="sidebar-link">Keymaps</a></li><li><a href="/docs/api/undo_manager.html" class="sidebar-link">Undo Manager</a></li></ul> </aside> <main class="page"> <div class="theme-default-content content__default"><h1 id="api-reference"><a href="#api-reference" class="header-anchor">#</a> API Reference</h1> <p>Here you can find the documentation about GrapesJS' APIs. Mainly, you would use them for your editor to extend the basic functionality of the framework or you could also <a href="/docs/modules/Plugins.html">create a plugin</a> and make those extensions reusable and available to others.</p></div> <footer class="page-edit"><div class="edit-link"><a href="https://github.com/artf/grapesjs/edit/dev/docs/api/README.md" target="_blank" rel="noopener noreferrer">Edit this page on GitHub</a> <svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></div> <div class="last-updated"><span class="prefix">Last Updated:</span> <span class="time">7/9/2018, 1:03:59 AM</span></div></footer> <div class="page-nav"><p class="inner"><!----> <span class="next"><a href="/docs/api/editor.html">
Editor
</a>
→
</span></p></div> </main></div><div class="global-ui"></div></div>
<script src="/docs/assets/js/app.4dd41b9b.js" defer></script><script src="/docs/assets/js/11.b2ac4984.js" defer></script><script src="/docs/assets/js/2.a342f4be.js" defer></script><script src="/docs/assets/js/19.2f9692d0.js" defer></script>
</body>
</html>

74
docs/api/keymaps.html

@ -4,43 +4,49 @@
<meta charset="utf-8">
<meta name="viewport" content="width=device-width,initial-scale=1">
<title>GrapesJS</title>
<meta name="description" content="GrapesJS documentation">
<meta name="generator" content="VuePress 1.4.1">
<link rel="icon" href="/docs/logo-icon.png">
<link rel="stylesheet" href="../stylesheets/grapes.min.css?v0.16.12">
<script src="../js/grapes.min.js?v0.16.12"></script>
<link rel="preload" href="/docs/assets/css/styles.e1f2d947.css" as="style"><link rel="preload" href="/docs/assets/js/app.e1f2d947.js" as="script"><link rel="preload" href="/docs/assets/js/24.f9675b16.js" as="script"><link rel="prefetch" href="/docs/assets/css/1.styles.b40e6662.css"><link rel="prefetch" href="/docs/assets/css/2.styles.896e948d.css"><link rel="prefetch" href="/docs/assets/css/3.styles.46968bd4.css"><link rel="prefetch" href="/docs/assets/css/4.styles.79691bb5.css"><link rel="prefetch" href="/docs/assets/css/5.styles.6013373a.css"><link rel="prefetch" href="/docs/assets/css/6.styles.467c19a2.css"><link rel="prefetch" href="/docs/assets/css/7.styles.ce9d181d.css"><link rel="prefetch" href="/docs/assets/css/8.styles.aae17ac6.css"><link rel="prefetch" href="/docs/assets/css/9.styles.e0170b17.css"><link rel="prefetch" href="/docs/assets/js/1.b40e6662.js"><link rel="prefetch" href="/docs/assets/js/10.e7cd7c26.js"><link rel="prefetch" href="/docs/assets/js/11.3f87b9b8.js"><link rel="prefetch" href="/docs/assets/js/12.269b5586.js"><link rel="prefetch" href="/docs/assets/js/13.e52ea678.js"><link rel="prefetch" href="/docs/assets/js/14.0606827a.js"><link rel="prefetch" href="/docs/assets/js/15.aa7f42f8.js"><link rel="prefetch" href="/docs/assets/js/16.959c0bd7.js"><link rel="prefetch" href="/docs/assets/js/17.bfba947e.js"><link rel="prefetch" href="/docs/assets/js/18.7f401ffb.js"><link rel="prefetch" href="/docs/assets/js/19.3e0ce3c8.js"><link rel="prefetch" href="/docs/assets/js/2.896e948d.js"><link rel="prefetch" href="/docs/assets/js/20.f4502040.js"><link rel="prefetch" href="/docs/assets/js/21.2babea6a.js"><link rel="prefetch" href="/docs/assets/js/22.26e5d9ed.js"><link rel="prefetch" href="/docs/assets/js/23.a2c9ec17.js"><link rel="prefetch" href="/docs/assets/js/25.b52924ae.js"><link rel="prefetch" href="/docs/assets/js/26.81c00685.js"><link rel="prefetch" href="/docs/assets/js/27.7372785c.js"><link rel="prefetch" href="/docs/assets/js/28.df5c22ed.js"><link rel="prefetch" href="/docs/assets/js/29.b167a894.js"><link rel="prefetch" href="/docs/assets/js/3.46968bd4.js"><link rel="prefetch" href="/docs/assets/js/30.d165faf7.js"><link rel="prefetch" href="/docs/assets/js/31.334d7953.js"><link rel="prefetch" href="/docs/assets/js/32.f9daa2c8.js"><link rel="prefetch" href="/docs/assets/js/33.93f49bfa.js"><link rel="prefetch" href="/docs/assets/js/34.4865e6c3.js"><link rel="prefetch" href="/docs/assets/js/35.9d089775.js"><link rel="prefetch" href="/docs/assets/js/36.67cb8d1f.js"><link rel="prefetch" href="/docs/assets/js/37.708a94ac.js"><link rel="prefetch" href="/docs/assets/js/38.0f8df29b.js"><link rel="prefetch" href="/docs/assets/js/39.074f3faf.js"><link rel="prefetch" href="/docs/assets/js/4.79691bb5.js"><link rel="prefetch" href="/docs/assets/js/40.cef45f06.js"><link rel="prefetch" href="/docs/assets/js/41.c734b929.js"><link rel="prefetch" href="/docs/assets/js/42.1078a060.js"><link rel="prefetch" href="/docs/assets/js/43.7188da01.js"><link rel="prefetch" href="/docs/assets/js/44.1fd52e91.js"><link rel="prefetch" href="/docs/assets/js/45.69c67864.js"><link rel="prefetch" href="/docs/assets/js/5.6013373a.js"><link rel="prefetch" href="/docs/assets/js/6.467c19a2.js"><link rel="prefetch" href="/docs/assets/js/7.ce9d181d.js"><link rel="prefetch" href="/docs/assets/js/8.aae17ac6.js"><link rel="prefetch" href="/docs/assets/js/9.e0170b17.js">
<link rel="stylesheet" href="/docs/assets/css/styles.e1f2d947.css">
<link rel="stylesheet" href="../stylesheets/grapes.min.css?v0.16.12">
<script src="../js/grapes.min.js?v0.16.12"></script>
<meta name="description" content="GrapesJS documentation">
<link rel="preload" href="/docs/assets/css/0.styles.d44f2c14.css" as="style"><link rel="preload" href="/docs/assets/js/app.4dd41b9b.js" as="script"><link rel="preload" href="/docs/assets/js/11.b2ac4984.js" as="script"><link rel="preload" href="/docs/assets/js/2.a342f4be.js" as="script"><link rel="preload" href="/docs/assets/js/30.3a998b30.js" as="script"><link rel="prefetch" href="/docs/assets/js/10.6a518be5.js"><link rel="prefetch" href="/docs/assets/js/12.bf8ecce1.js"><link rel="prefetch" href="/docs/assets/js/13.d807997f.js"><link rel="prefetch" href="/docs/assets/js/14.0ba8a778.js"><link rel="prefetch" href="/docs/assets/js/15.52ce2afa.js"><link rel="prefetch" href="/docs/assets/js/16.47266d46.js"><link rel="prefetch" href="/docs/assets/js/17.9b7a7fa4.js"><link rel="prefetch" href="/docs/assets/js/18.66b0785d.js"><link rel="prefetch" href="/docs/assets/js/19.2f9692d0.js"><link rel="prefetch" href="/docs/assets/js/20.ab1e767c.js"><link rel="prefetch" href="/docs/assets/js/21.66fe8957.js"><link rel="prefetch" href="/docs/assets/js/22.cb6c233f.js"><link rel="prefetch" href="/docs/assets/js/23.dc99d7c7.js"><link rel="prefetch" href="/docs/assets/js/24.245fff8a.js"><link rel="prefetch" href="/docs/assets/js/25.d8c7e0b5.js"><link rel="prefetch" href="/docs/assets/js/26.ad7fc796.js"><link rel="prefetch" href="/docs/assets/js/27.169cfbf6.js"><link rel="prefetch" href="/docs/assets/js/28.f086d486.js"><link rel="prefetch" href="/docs/assets/js/29.5e2a7327.js"><link rel="prefetch" href="/docs/assets/js/3.7e642bff.js"><link rel="prefetch" href="/docs/assets/js/31.5286fade.js"><link rel="prefetch" href="/docs/assets/js/32.0a0e4ae7.js"><link rel="prefetch" href="/docs/assets/js/33.0ba298a5.js"><link rel="prefetch" href="/docs/assets/js/34.07640632.js"><link rel="prefetch" href="/docs/assets/js/35.061f6dd5.js"><link rel="prefetch" href="/docs/assets/js/36.63462982.js"><link rel="prefetch" href="/docs/assets/js/37.e2d50838.js"><link rel="prefetch" href="/docs/assets/js/38.1230aa70.js"><link rel="prefetch" href="/docs/assets/js/39.c8373102.js"><link rel="prefetch" href="/docs/assets/js/4.32ffd5a1.js"><link rel="prefetch" href="/docs/assets/js/40.0600f064.js"><link rel="prefetch" href="/docs/assets/js/41.9bbfe266.js"><link rel="prefetch" href="/docs/assets/js/42.63c51d25.js"><link rel="prefetch" href="/docs/assets/js/43.d69d8e57.js"><link rel="prefetch" href="/docs/assets/js/44.a981446c.js"><link rel="prefetch" href="/docs/assets/js/45.415ecb59.js"><link rel="prefetch" href="/docs/assets/js/46.75d7a27f.js"><link rel="prefetch" href="/docs/assets/js/47.a4983875.js"><link rel="prefetch" href="/docs/assets/js/48.0dd7e7e0.js"><link rel="prefetch" href="/docs/assets/js/49.166bd1fa.js"><link rel="prefetch" href="/docs/assets/js/5.a0a5a0aa.js"><link rel="prefetch" href="/docs/assets/js/50.4e76f723.js"><link rel="prefetch" href="/docs/assets/js/51.21d145d2.js"><link rel="prefetch" href="/docs/assets/js/52.43234198.js"><link rel="prefetch" href="/docs/assets/js/6.9461537e.js"><link rel="prefetch" href="/docs/assets/js/7.3158bea4.js"><link rel="prefetch" href="/docs/assets/js/8.625d63ee.js"><link rel="prefetch" href="/docs/assets/js/9.e856c4d3.js">
<link rel="stylesheet" href="/docs/assets/css/0.styles.d44f2c14.css">
</head>
<body>
<div id="app" data-server-rendered="true"><div class="theme-container"><header class="navbar"><div class="sidebar-button"><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" role="img" viewBox="0 0 448 512" class="icon"><path fill="currentColor" d="M436 124H12c-6.627 0-12-5.373-12-12V80c0-6.627 5.373-12 12-12h424c6.627 0 12 5.373 12 12v32c0 6.627-5.373 12-12 12zm0 160H12c-6.627 0-12-5.373-12-12v-32c0-6.627 5.373-12 12-12h424c6.627 0 12 5.373 12 12v32c0 6.627-5.373 12-12 12zm0 160H12c-6.627 0-12-5.373-12-12v-32c0-6.627 5.373-12 12-12h424c6.627 0 12 5.373 12 12v32c0 6.627-5.373 12-12 12z"></path></svg></div><a href="/docs/" class="home-link router-link-active"><img src="/docs/logo.png" class="logo"><span class="site-name can-hide">
GrapesJS
</span></a><div class="links"><div class="search-box"><input aria-label="Search" autocomplete="off" spellcheck="false" value=""><!----></div><nav class="nav-links can-hide"><div class="nav-item"><a href="/docs/" class="nav-link">Docs</a></div><div class="nav-item"><a href="/docs/api/" class="nav-link router-link-active">API Reference</a></div><div class="nav-item"><a href="https://opencollective.com/grapesjs" target="_blank" rel="noopener noreferrer" class="nav-link external">
<div id="app" data-server-rendered="true"><div class="theme-container"><header class="navbar"><div class="sidebar-button"><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" role="img" viewBox="0 0 448 512" class="icon"><path fill="currentColor" d="M436 124H12c-6.627 0-12-5.373-12-12V80c0-6.627 5.373-12 12-12h424c6.627 0 12 5.373 12 12v32c0 6.627-5.373 12-12 12zm0 160H12c-6.627 0-12-5.373-12-12v-32c0-6.627 5.373-12 12-12h424c6.627 0 12 5.373 12 12v32c0 6.627-5.373 12-12 12zm0 160H12c-6.627 0-12-5.373-12-12v-32c0-6.627 5.373-12 12-12h424c6.627 0 12 5.373 12 12v32c0 6.627-5.373 12-12 12z"></path></svg></div> <a href="/docs/" class="home-link router-link-active"><img src="/docs/logo.png" alt="GrapesJS" class="logo"> <span class="site-name can-hide">GrapesJS</span></a> <div class="links"><div class="search-box"><input aria-label="Search" autocomplete="off" spellcheck="false" value=""> <!----></div> <nav class="nav-links can-hide"><div class="nav-item"><a href="/docs/" class="nav-link">
Docs
</a></div><div class="nav-item"><a href="/docs/api/" class="nav-link router-link-active">
API Reference
</a></div><div class="nav-item"><a href="https://opencollective.com/grapesjs" target="_blank" rel="noopener noreferrer" class="nav-link external">
Support Us
<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path><polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></div><div class="nav-item"><a href="https://twitter.com/grapesjs" target="_blank" rel="noopener noreferrer" class="nav-link external">
<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></div><div class="nav-item"><a href="https://twitter.com/grapesjs" target="_blank" rel="noopener noreferrer" class="nav-link external">
Twitter
<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path><polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></div><a href="https://github.com/artf/grapesjs" target="_blank" rel="noopener noreferrer" class="repo-link">
<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></div> <a href="https://github.com/artf/grapesjs" target="_blank" rel="noopener noreferrer" class="repo-link">
GitHub
<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path><polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></nav></div></header><div class="sidebar-mask"></div><div class="sidebar"><nav class="nav-links"><div class="nav-item"><a href="/docs/" class="nav-link">Docs</a></div><div class="nav-item"><a href="/docs/api/" class="nav-link router-link-active">API Reference</a></div><div class="nav-item"><a href="https://opencollective.com/grapesjs" target="_blank" rel="noopener noreferrer" class="nav-link external">
<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></nav></div></header> <div class="sidebar-mask"></div> <aside class="sidebar"><nav class="nav-links"><div class="nav-item"><a href="/docs/" class="nav-link">
Docs
</a></div><div class="nav-item"><a href="/docs/api/" class="nav-link router-link-active">
API Reference
</a></div><div class="nav-item"><a href="https://opencollective.com/grapesjs" target="_blank" rel="noopener noreferrer" class="nav-link external">
Support Us
<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path><polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></div><div class="nav-item"><a href="https://twitter.com/grapesjs" target="_blank" rel="noopener noreferrer" class="nav-link external">
<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></div><div class="nav-item"><a href="https://twitter.com/grapesjs" target="_blank" rel="noopener noreferrer" class="nav-link external">
Twitter
<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path><polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></div><a href="https://github.com/artf/grapesjs" target="_blank" rel="noopener noreferrer" class="repo-link">
<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></div> <a href="https://github.com/artf/grapesjs" target="_blank" rel="noopener noreferrer" class="repo-link">
GitHub
<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path><polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></nav><div id="native-carbon" class="carbon-ads"></div><ul class="sidebar-links"><li><a href="/docs/api/" class="sidebar-link">API Reference</a></li><li><a href="/docs/api/editor.html" class="sidebar-link">Editor</a></li><li><a href="/docs/api/i18n.html" class="sidebar-link">I18n</a></li><li><a href="/docs/api/canvas.html" class="sidebar-link">Canvas</a></li><li><a href="/docs/api/assets.html" class="sidebar-link">Asset Manager</a></li><li><a href="/docs/api/block_manager.html" class="sidebar-link">Block Manager</a></li><li><a href="/docs/api/commands.html" class="sidebar-link">Commands</a></li><li><a href="/docs/api/components.html" class="sidebar-link">DOM Components</a></li><li><a href="/docs/api/component.html" class="sidebar-link"> - Component</a></li><li><a href="/docs/api/panels.html" class="sidebar-link">Panels</a></li><li><a href="/docs/api/style_manager.html" class="sidebar-link">Style Manager</a></li><li><a href="/docs/api/storage_manager.html" class="sidebar-link">Storage Manager</a></li><li><a href="/docs/api/device_manager.html" class="sidebar-link">Device Manager</a></li><li><a href="/docs/api/selector_manager.html" class="sidebar-link">Selector Manager</a></li><li><a href="/docs/api/css_composer.html" class="sidebar-link">CSS Composer</a></li><li><a href="/docs/api/modal_dialog.html" class="sidebar-link">Modal</a></li><li><a href="/docs/api/rich_text_editor.html" class="sidebar-link">Rich Text Editor</a></li><li><a href="/docs/api/keymaps.html" class="active sidebar-link">Keymaps</a><ul class="sidebar-sub-headers"><li class="sidebar-sub-header"><a href="/docs/api/keymaps.html#keymaps" class="sidebar-link">Keymaps</a></li><li class="sidebar-sub-header"><a href="/docs/api/keymaps.html#getconfig" class="sidebar-link">getConfig</a></li><li class="sidebar-sub-header"><a href="/docs/api/keymaps.html#add" class="sidebar-link">add</a></li><li class="sidebar-sub-header"><a href="/docs/api/keymaps.html#get" class="sidebar-link">get</a></li><li class="sidebar-sub-header"><a href="/docs/api/keymaps.html#getall" class="sidebar-link">getAll</a></li><li class="sidebar-sub-header"><a href="/docs/api/keymaps.html#remove" class="sidebar-link">remove</a></li><li class="sidebar-sub-header"><a href="/docs/api/keymaps.html#removeall" class="sidebar-link">removeAll</a></li></ul></li><li><a href="/docs/api/undo_manager.html" class="sidebar-link">Undo Manager</a></li></ul></div><div class="page"><div class="content"><h2 id="keymaps"><a href="#keymaps" aria-hidden="true" class="header-anchor">#</a> Keymaps</h2><p>You can customize the initial state of the module from the editor initialization</p><div class="language-js extra-class"><pre class="language-js"><code><span class="token keyword">const</span> editor <span class="token operator">=</span> grapesjs<span class="token punctuation">.</span><span class="token function">init</span><span class="token punctuation">(</span><span class="token punctuation">{</span>
keymaps<span class="token punctuation">:</span> <span class="token punctuation">{</span>
<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></nav> <div id="native-carbon" class="carbon-ads"></div> <ul class="sidebar-links"><li><a href="/docs/api/" class="sidebar-link">API Reference</a></li><li><a href="/docs/api/editor.html" class="sidebar-link">Editor</a></li><li><a href="/docs/api/i18n.html" class="sidebar-link">I18n</a></li><li><a href="/docs/api/canvas.html" class="sidebar-link">Canvas</a></li><li><a href="/docs/api/assets.html" class="sidebar-link">Asset Manager</a></li><li><a href="/docs/api/block_manager.html" class="sidebar-link">Block Manager</a></li><li><a href="/docs/api/commands.html" class="sidebar-link">Commands</a></li><li><a href="/docs/api/components.html" class="sidebar-link">DOM Components</a></li><li><a href="/docs/api/component.html" class="sidebar-link"> - Component</a></li><li><a href="/docs/api/panels.html" class="sidebar-link">Panels</a></li><li><a href="/docs/api/style_manager.html" class="sidebar-link">Style Manager</a></li><li><a href="/docs/api/storage_manager.html" class="sidebar-link">Storage Manager</a></li><li><a href="/docs/api/device_manager.html" class="sidebar-link">Device Manager</a></li><li><a href="/docs/api/selector_manager.html" class="sidebar-link">Selector Manager</a></li><li><a href="/docs/api/css_composer.html" class="sidebar-link">CSS Composer</a></li><li><a href="/docs/api/modal_dialog.html" class="sidebar-link">Modal</a></li><li><a href="/docs/api/rich_text_editor.html" class="sidebar-link">Rich Text Editor</a></li><li><a href="/docs/api/keymaps.html" class="active sidebar-link">Keymaps</a><ul class="sidebar-sub-headers"><li class="sidebar-sub-header"><a href="/docs/api/keymaps.html#keymaps" class="sidebar-link">Keymaps</a></li><li class="sidebar-sub-header"><a href="/docs/api/keymaps.html#getconfig" class="sidebar-link">getConfig</a></li><li class="sidebar-sub-header"><a href="/docs/api/keymaps.html#add" class="sidebar-link">add</a></li><li class="sidebar-sub-header"><a href="/docs/api/keymaps.html#get" class="sidebar-link">get</a></li><li class="sidebar-sub-header"><a href="/docs/api/keymaps.html#getall" class="sidebar-link">getAll</a></li><li class="sidebar-sub-header"><a href="/docs/api/keymaps.html#remove" class="sidebar-link">remove</a></li><li class="sidebar-sub-header"><a href="/docs/api/keymaps.html#removeall" class="sidebar-link">removeAll</a></li></ul></li><li><a href="/docs/api/undo_manager.html" class="sidebar-link">Undo Manager</a></li></ul> </aside> <main class="page"> <div class="theme-default-content content__default"><h2 id="keymaps"><a href="#keymaps" class="header-anchor">#</a> Keymaps</h2> <p>You can customize the initial state of the module from the editor initialization</p> <div class="language-js extra-class"><pre class="language-js"><code><span class="token keyword">const</span> editor <span class="token operator">=</span> grapesjs<span class="token punctuation">.</span><span class="token function">init</span><span class="token punctuation">(</span><span class="token punctuation">{</span>
keymaps<span class="token operator">:</span> <span class="token punctuation">{</span>
<span class="token comment">// Object of keymaps</span>
defaults<span class="token punctuation">:</span> <span class="token punctuation">{</span>
defaults<span class="token operator">:</span> <span class="token punctuation">{</span>
<span class="token string">'your-namespace:keymap-name'</span> <span class="token punctuation">{</span>
keys<span class="token punctuation">:</span> <span class="token string">'⌘+z, ctrl+z'</span><span class="token punctuation">,</span>
handler<span class="token punctuation">:</span> <span class="token string">'some-command-id'</span>
keys<span class="token operator">:</span> <span class="token string">'⌘+z, ctrl+z'</span><span class="token punctuation">,</span>
handler<span class="token operator">:</span> <span class="token string">'some-command-id'</span>
<span class="token punctuation">}</span><span class="token punctuation">,</span>
<span class="token operator">...</span>
<span class="token punctuation">}</span>
<span class="token punctuation">}</span>
<span class="token punctuation">}</span><span class="token punctuation">)</span>
</code></pre></div><p>Once the editor is instantiated you can use its API. Before using these methods you should get the module from the instance</p><div class="language-js extra-class"><pre class="language-js"><code><span class="token keyword">const</span> keymaps <span class="token operator">=</span> editor<span class="token punctuation">.</span>Keymaps<span class="token punctuation">;</span>
</code></pre></div><ul><li><a href="#getconfig">getConfig</a></li><li><a href="#add">add</a></li><li><a href="#get">get</a></li><li><a href="#getAll">getAll</a></li><li><a href="#remove">remove</a></li><li><a href="#removeall">removeAll</a></li></ul><h2 id="getconfig"><a href="#getconfig" aria-hidden="true" class="header-anchor">#</a> getConfig</h2><p>Get module configurations</p><p>Returns <strong><a href="https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Object" target="_blank" rel="noopener noreferrer">Object<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path><polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></strong> Configuration object</p><h2 id="add"><a href="#add" aria-hidden="true" class="header-anchor">#</a> add</h2><p>Add new keymap</p><h3 id="parameters"><a href="#parameters" aria-hidden="true" class="header-anchor">#</a> Parameters</h3><ul><li><code>id</code><strong><a href="https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String" target="_blank" rel="noopener noreferrer">string<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path><polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></strong> Keymap id</li><li><code>keys</code><strong><a href="https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String" target="_blank" rel="noopener noreferrer">string<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path><polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></strong> Keymap keys, eg. <code>ctrl+a</code>, <code>⌘+z, ctrl+z</code></li><li><code>handler</code><strong>(<a href="https://developer.mozilla.org/docs/Web/JavaScript/Reference/Statements/function" target="_blank" rel="noopener noreferrer">Function<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path><polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a> | <a href="https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String" target="_blank" rel="noopener noreferrer">string<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path><polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a>)</strong> Keymap handler, might be a function</li><li><code>opts</code><strong><a href="https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Object" target="_blank" rel="noopener noreferrer">Object<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path><polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></strong> Options (optional, default <code>{}</code>)</li></ul><h3 id="examples"><a href="#examples" aria-hidden="true" class="header-anchor">#</a> Examples</h3><div class="language-javascript extra-class"><pre class="language-javascript"><code><span class="token comment">// 'ns' is just a custom namespace</span>
</code></pre></div><p>Once the editor is instantiated you can use its API. Before using these methods you should get the module from the instance</p> <div class="language-js extra-class"><pre class="language-js"><code><span class="token keyword">const</span> keymaps <span class="token operator">=</span> editor<span class="token punctuation">.</span>Keymaps<span class="token punctuation">;</span>
</code></pre></div><ul><li><a href="#getconfig">getConfig</a></li> <li><a href="#add">add</a></li> <li><a href="#get">get</a></li> <li><a href="#getAll">getAll</a></li> <li><a href="#remove">remove</a></li> <li><a href="#removeall">removeAll</a></li></ul> <h2 id="getconfig"><a href="#getconfig" class="header-anchor">#</a> getConfig</h2> <p>Get module configurations</p> <p>Returns <strong><a href="https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Object" target="_blank" rel="noopener noreferrer">Object<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></strong> Configuration object</p> <h2 id="add"><a href="#add" class="header-anchor">#</a> add</h2> <p>Add new keymap</p> <h3 id="parameters"><a href="#parameters" class="header-anchor">#</a> Parameters</h3> <ul><li><code>id</code> <strong><a href="https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String" target="_blank" rel="noopener noreferrer">string<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></strong> Keymap id</li> <li><code>keys</code> <strong><a href="https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String" target="_blank" rel="noopener noreferrer">string<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></strong> Keymap keys, eg. <code>ctrl+a</code>, <code>⌘+z, ctrl+z</code></li> <li><code>handler</code> <strong>(<a href="https://developer.mozilla.org/docs/Web/JavaScript/Reference/Statements/function" target="_blank" rel="noopener noreferrer">Function<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a> | <a href="https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String" target="_blank" rel="noopener noreferrer">string<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a>)</strong> Keymap handler, might be a function</li> <li><code>opts</code> <strong><a href="https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Object" target="_blank" rel="noopener noreferrer">Object<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></strong> Options (optional, default <code>{}</code>)</li></ul> <h3 id="examples"><a href="#examples" class="header-anchor">#</a> Examples</h3> <div class="language-javascript extra-class"><pre class="language-javascript"><code><span class="token comment">// 'ns' is just a custom namespace</span>
keymaps<span class="token punctuation">.</span><span class="token function">add</span><span class="token punctuation">(</span><span class="token string">'ns:my-keymap'</span><span class="token punctuation">,</span> <span class="token string">'⌘+j, ⌘+u, ctrl+j, alt+u'</span><span class="token punctuation">,</span> <span class="token parameter">editor</span> <span class="token operator">=&gt;</span> <span class="token punctuation">{</span>
console<span class="token punctuation">.</span><span class="token function">log</span><span class="token punctuation">(</span><span class="token string">'do stuff'</span><span class="token punctuation">)</span><span class="token punctuation">;</span>
<span class="token punctuation">}</span><span class="token punctuation">)</span><span class="token punctuation">;</span>
@ -51,20 +57,22 @@ keymaps<span class="token punctuation">.</span><span class="token function">add<
editor<span class="token punctuation">.</span><span class="token function">on</span><span class="token punctuation">(</span><span class="token string">'keymap:emit'</span><span class="token punctuation">,</span> <span class="token punctuation">(</span><span class="token parameter">id<span class="token punctuation">,</span> shortcut<span class="token punctuation">,</span> e</span><span class="token punctuation">)</span> <span class="token operator">=&gt;</span> <span class="token punctuation">{</span>
<span class="token comment">// ...</span>
<span class="token punctuation">}</span><span class="token punctuation">)</span>
</code></pre></div><p>Returns <strong><a href="https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Object" target="_blank" rel="noopener noreferrer">Object<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path><polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></strong> Added keymap
or just a command id as a string</p><h2 id="get"><a href="#get" aria-hidden="true" class="header-anchor">#</a> get</h2><p>Get the keymap by id</p><h3 id="parameters-2"><a href="#parameters-2" aria-hidden="true" class="header-anchor">#</a> Parameters</h3><ul><li><code>id</code><strong><a href="https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String" target="_blank" rel="noopener noreferrer">string<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path><polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></strong> Keymap id</li></ul><h3 id="examples-2"><a href="#examples-2" aria-hidden="true" class="header-anchor">#</a> Examples</h3><div class="language-javascript extra-class"><pre class="language-javascript"><code>keymaps<span class="token punctuation">.</span><span class="token function">get</span><span class="token punctuation">(</span><span class="token string">'ns:my-keymap'</span><span class="token punctuation">)</span><span class="token punctuation">;</span>
</code></pre></div><p>Returns <strong><a href="https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Object" target="_blank" rel="noopener noreferrer">Object<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></strong> Added keymap
or just a command id as a string</p> <h2 id="get"><a href="#get" class="header-anchor">#</a> get</h2> <p>Get the keymap by id</p> <h3 id="parameters-2"><a href="#parameters-2" class="header-anchor">#</a> Parameters</h3> <ul><li><code>id</code> <strong><a href="https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String" target="_blank" rel="noopener noreferrer">string<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></strong> Keymap id</li></ul> <h3 id="examples-2"><a href="#examples-2" class="header-anchor">#</a> Examples</h3> <div class="language-javascript extra-class"><pre class="language-javascript"><code>keymaps<span class="token punctuation">.</span><span class="token function">get</span><span class="token punctuation">(</span><span class="token string">'ns:my-keymap'</span><span class="token punctuation">)</span><span class="token punctuation">;</span>
<span class="token comment">// -&gt; {keys, handler};</span>
</code></pre></div><p>Returns <strong><a href="https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Object" target="_blank" rel="noopener noreferrer">Object<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path><polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></strong> Keymap object</p><h2 id="getall"><a href="#getall" aria-hidden="true" class="header-anchor">#</a> getAll</h2><p>Get all keymaps</p><h3 id="examples-3"><a href="#examples-3" aria-hidden="true" class="header-anchor">#</a> Examples</h3><div class="language-javascript extra-class"><pre class="language-javascript"><code>keymaps<span class="token punctuation">.</span><span class="token function">getAll</span><span class="token punctuation">(</span><span class="token punctuation">)</span><span class="token punctuation">;</span>
</code></pre></div><p>Returns <strong><a href="https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Object" target="_blank" rel="noopener noreferrer">Object<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></strong> Keymap object</p> <h2 id="getall"><a href="#getall" class="header-anchor">#</a> getAll</h2> <p>Get all keymaps</p> <h3 id="examples-3"><a href="#examples-3" class="header-anchor">#</a> Examples</h3> <div class="language-javascript extra-class"><pre class="language-javascript"><code>keymaps<span class="token punctuation">.</span><span class="token function">getAll</span><span class="token punctuation">(</span><span class="token punctuation">)</span><span class="token punctuation">;</span>
<span class="token comment">// -&gt; {id1: {}, id2: {}};</span>
</code></pre></div><p>Returns <strong><a href="https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Object" target="_blank" rel="noopener noreferrer">Object<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path><polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></strong></p><h2 id="remove"><a href="#remove" aria-hidden="true" class="header-anchor">#</a> remove</h2><p>Remove the keymap by id</p><h3 id="parameters-3"><a href="#parameters-3" aria-hidden="true" class="header-anchor">#</a> Parameters</h3><ul><li><code>id</code><strong><a href="https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String" target="_blank" rel="noopener noreferrer">string<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path><polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></strong> Keymap id</li></ul><h3 id="examples-4"><a href="#examples-4" aria-hidden="true" class="header-anchor">#</a> Examples</h3><div class="language-javascript extra-class"><pre class="language-javascript"><code>keymaps<span class="token punctuation">.</span><span class="token function">remove</span><span class="token punctuation">(</span><span class="token string">'ns:my-keymap'</span><span class="token punctuation">)</span><span class="token punctuation">;</span>
</code></pre></div><p>Returns <strong><a href="https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Object" target="_blank" rel="noopener noreferrer">Object<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></strong></p> <h2 id="remove"><a href="#remove" class="header-anchor">#</a> remove</h2> <p>Remove the keymap by id</p> <h3 id="parameters-3"><a href="#parameters-3" class="header-anchor">#</a> Parameters</h3> <ul><li><code>id</code> <strong><a href="https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String" target="_blank" rel="noopener noreferrer">string<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></strong> Keymap id</li></ul> <h3 id="examples-4"><a href="#examples-4" class="header-anchor">#</a> Examples</h3> <div class="language-javascript extra-class"><pre class="language-javascript"><code>keymaps<span class="token punctuation">.</span><span class="token function">remove</span><span class="token punctuation">(</span><span class="token string">'ns:my-keymap'</span><span class="token punctuation">)</span><span class="token punctuation">;</span>
<span class="token comment">// -&gt; {keys, handler};</span>
</code></pre></div><p>Returns <strong><a href="https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Object" target="_blank" rel="noopener noreferrer">Object<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path><polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></strong> Removed keymap</p><h2 id="removeall"><a href="#removeall" aria-hidden="true" class="header-anchor">#</a> removeAll</h2><p>Remove all binded keymaps</p><p>Returns <strong>this</strong></p></div><div class="page-edit"><div class="edit-link"><a href="https://github.com/artf/grapesjs/edit/dev/docs/api/keymaps.md" target="_blank" rel="noopener noreferrer">Edit this page on GitHub</a><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path><polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></div><div class="last-updated"><span class="prefix">Last Updated: </span><span class="time">3/11/2019, 6:17:19 PM</span></div></div><div class="page-nav"><p class="inner"><span class="prev">
← <a href="/docs/api/rich_text_editor.html" class="prev">
Rich Text Editor
</a></span><span class="next"><a href="/docs/api/undo_manager.html">
Undo Manager
</a> →
</span></p></div></div></div></div>
<script src="/docs/assets/js/app.e1f2d947.js" defer></script><script src="/docs/assets/js/24.f9675b16.js" defer></script>
</code></pre></div><p>Returns <strong><a href="https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Object" target="_blank" rel="noopener noreferrer">Object<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></strong> Removed keymap</p> <h2 id="removeall"><a href="#removeall" class="header-anchor">#</a> removeAll</h2> <p>Remove all binded keymaps</p> <p>Returns <strong>this</strong></p></div> <footer class="page-edit"><div class="edit-link"><a href="https://github.com/artf/grapesjs/edit/dev/docs/api/keymaps.md" target="_blank" rel="noopener noreferrer">Edit this page on GitHub</a> <svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></div> <div class="last-updated"><span class="prefix">Last Updated:</span> <span class="time">3/11/2019, 6:17:19 PM</span></div></footer> <div class="page-nav"><p class="inner"><span class="prev">
←
<a href="/docs/api/rich_text_editor.html" class="prev">
Rich Text Editor
</a></span> <span class="next"><a href="/docs/api/undo_manager.html">
Undo Manager
</a>
→
</span></p></div> </main></div><div class="global-ui"></div></div>
<script src="/docs/assets/js/app.4dd41b9b.js" defer></script><script src="/docs/assets/js/11.b2ac4984.js" defer></script><script src="/docs/assets/js/2.a342f4be.js" defer></script><script src="/docs/assets/js/30.3a998b30.js" defer></script>
</body>
</html>

68
docs/api/modal_dialog.html

@ -4,47 +4,55 @@
<meta charset="utf-8">
<meta name="viewport" content="width=device-width,initial-scale=1">
<title>GrapesJS</title>
<meta name="description" content="GrapesJS documentation">
<meta name="generator" content="VuePress 1.4.1">
<link rel="icon" href="/docs/logo-icon.png">
<link rel="stylesheet" href="../stylesheets/grapes.min.css?v0.16.12">
<script src="../js/grapes.min.js?v0.16.12"></script>
<link rel="preload" href="/docs/assets/css/styles.e1f2d947.css" as="style"><link rel="preload" href="/docs/assets/js/app.e1f2d947.js" as="script"><link rel="preload" href="/docs/assets/js/25.b52924ae.js" as="script"><link rel="prefetch" href="/docs/assets/css/1.styles.b40e6662.css"><link rel="prefetch" href="/docs/assets/css/2.styles.896e948d.css"><link rel="prefetch" href="/docs/assets/css/3.styles.46968bd4.css"><link rel="prefetch" href="/docs/assets/css/4.styles.79691bb5.css"><link rel="prefetch" href="/docs/assets/css/5.styles.6013373a.css"><link rel="prefetch" href="/docs/assets/css/6.styles.467c19a2.css"><link rel="prefetch" href="/docs/assets/css/7.styles.ce9d181d.css"><link rel="prefetch" href="/docs/assets/css/8.styles.aae17ac6.css"><link rel="prefetch" href="/docs/assets/css/9.styles.e0170b17.css"><link rel="prefetch" href="/docs/assets/js/1.b40e6662.js"><link rel="prefetch" href="/docs/assets/js/10.e7cd7c26.js"><link rel="prefetch" href="/docs/assets/js/11.3f87b9b8.js"><link rel="prefetch" href="/docs/assets/js/12.269b5586.js"><link rel="prefetch" href="/docs/assets/js/13.e52ea678.js"><link rel="prefetch" href="/docs/assets/js/14.0606827a.js"><link rel="prefetch" href="/docs/assets/js/15.aa7f42f8.js"><link rel="prefetch" href="/docs/assets/js/16.959c0bd7.js"><link rel="prefetch" href="/docs/assets/js/17.bfba947e.js"><link rel="prefetch" href="/docs/assets/js/18.7f401ffb.js"><link rel="prefetch" href="/docs/assets/js/19.3e0ce3c8.js"><link rel="prefetch" href="/docs/assets/js/2.896e948d.js"><link rel="prefetch" href="/docs/assets/js/20.f4502040.js"><link rel="prefetch" href="/docs/assets/js/21.2babea6a.js"><link rel="prefetch" href="/docs/assets/js/22.26e5d9ed.js"><link rel="prefetch" href="/docs/assets/js/23.a2c9ec17.js"><link rel="prefetch" href="/docs/assets/js/24.f9675b16.js"><link rel="prefetch" href="/docs/assets/js/26.81c00685.js"><link rel="prefetch" href="/docs/assets/js/27.7372785c.js"><link rel="prefetch" href="/docs/assets/js/28.df5c22ed.js"><link rel="prefetch" href="/docs/assets/js/29.b167a894.js"><link rel="prefetch" href="/docs/assets/js/3.46968bd4.js"><link rel="prefetch" href="/docs/assets/js/30.d165faf7.js"><link rel="prefetch" href="/docs/assets/js/31.334d7953.js"><link rel="prefetch" href="/docs/assets/js/32.f9daa2c8.js"><link rel="prefetch" href="/docs/assets/js/33.93f49bfa.js"><link rel="prefetch" href="/docs/assets/js/34.4865e6c3.js"><link rel="prefetch" href="/docs/assets/js/35.9d089775.js"><link rel="prefetch" href="/docs/assets/js/36.67cb8d1f.js"><link rel="prefetch" href="/docs/assets/js/37.708a94ac.js"><link rel="prefetch" href="/docs/assets/js/38.0f8df29b.js"><link rel="prefetch" href="/docs/assets/js/39.074f3faf.js"><link rel="prefetch" href="/docs/assets/js/4.79691bb5.js"><link rel="prefetch" href="/docs/assets/js/40.cef45f06.js"><link rel="prefetch" href="/docs/assets/js/41.c734b929.js"><link rel="prefetch" href="/docs/assets/js/42.1078a060.js"><link rel="prefetch" href="/docs/assets/js/43.7188da01.js"><link rel="prefetch" href="/docs/assets/js/44.1fd52e91.js"><link rel="prefetch" href="/docs/assets/js/45.69c67864.js"><link rel="prefetch" href="/docs/assets/js/5.6013373a.js"><link rel="prefetch" href="/docs/assets/js/6.467c19a2.js"><link rel="prefetch" href="/docs/assets/js/7.ce9d181d.js"><link rel="prefetch" href="/docs/assets/js/8.aae17ac6.js"><link rel="prefetch" href="/docs/assets/js/9.e0170b17.js">
<link rel="stylesheet" href="/docs/assets/css/styles.e1f2d947.css">
<link rel="stylesheet" href="../stylesheets/grapes.min.css?v0.16.12">
<script src="../js/grapes.min.js?v0.16.12"></script>
<meta name="description" content="GrapesJS documentation">
<link rel="preload" href="/docs/assets/css/0.styles.d44f2c14.css" as="style"><link rel="preload" href="/docs/assets/js/app.4dd41b9b.js" as="script"><link rel="preload" href="/docs/assets/js/11.b2ac4984.js" as="script"><link rel="preload" href="/docs/assets/js/2.a342f4be.js" as="script"><link rel="preload" href="/docs/assets/js/31.5286fade.js" as="script"><link rel="prefetch" href="/docs/assets/js/10.6a518be5.js"><link rel="prefetch" href="/docs/assets/js/12.bf8ecce1.js"><link rel="prefetch" href="/docs/assets/js/13.d807997f.js"><link rel="prefetch" href="/docs/assets/js/14.0ba8a778.js"><link rel="prefetch" href="/docs/assets/js/15.52ce2afa.js"><link rel="prefetch" href="/docs/assets/js/16.47266d46.js"><link rel="prefetch" href="/docs/assets/js/17.9b7a7fa4.js"><link rel="prefetch" href="/docs/assets/js/18.66b0785d.js"><link rel="prefetch" href="/docs/assets/js/19.2f9692d0.js"><link rel="prefetch" href="/docs/assets/js/20.ab1e767c.js"><link rel="prefetch" href="/docs/assets/js/21.66fe8957.js"><link rel="prefetch" href="/docs/assets/js/22.cb6c233f.js"><link rel="prefetch" href="/docs/assets/js/23.dc99d7c7.js"><link rel="prefetch" href="/docs/assets/js/24.245fff8a.js"><link rel="prefetch" href="/docs/assets/js/25.d8c7e0b5.js"><link rel="prefetch" href="/docs/assets/js/26.ad7fc796.js"><link rel="prefetch" href="/docs/assets/js/27.169cfbf6.js"><link rel="prefetch" href="/docs/assets/js/28.f086d486.js"><link rel="prefetch" href="/docs/assets/js/29.5e2a7327.js"><link rel="prefetch" href="/docs/assets/js/3.7e642bff.js"><link rel="prefetch" href="/docs/assets/js/30.3a998b30.js"><link rel="prefetch" href="/docs/assets/js/32.0a0e4ae7.js"><link rel="prefetch" href="/docs/assets/js/33.0ba298a5.js"><link rel="prefetch" href="/docs/assets/js/34.07640632.js"><link rel="prefetch" href="/docs/assets/js/35.061f6dd5.js"><link rel="prefetch" href="/docs/assets/js/36.63462982.js"><link rel="prefetch" href="/docs/assets/js/37.e2d50838.js"><link rel="prefetch" href="/docs/assets/js/38.1230aa70.js"><link rel="prefetch" href="/docs/assets/js/39.c8373102.js"><link rel="prefetch" href="/docs/assets/js/4.32ffd5a1.js"><link rel="prefetch" href="/docs/assets/js/40.0600f064.js"><link rel="prefetch" href="/docs/assets/js/41.9bbfe266.js"><link rel="prefetch" href="/docs/assets/js/42.63c51d25.js"><link rel="prefetch" href="/docs/assets/js/43.d69d8e57.js"><link rel="prefetch" href="/docs/assets/js/44.a981446c.js"><link rel="prefetch" href="/docs/assets/js/45.415ecb59.js"><link rel="prefetch" href="/docs/assets/js/46.75d7a27f.js"><link rel="prefetch" href="/docs/assets/js/47.a4983875.js"><link rel="prefetch" href="/docs/assets/js/48.0dd7e7e0.js"><link rel="prefetch" href="/docs/assets/js/49.166bd1fa.js"><link rel="prefetch" href="/docs/assets/js/5.a0a5a0aa.js"><link rel="prefetch" href="/docs/assets/js/50.4e76f723.js"><link rel="prefetch" href="/docs/assets/js/51.21d145d2.js"><link rel="prefetch" href="/docs/assets/js/52.43234198.js"><link rel="prefetch" href="/docs/assets/js/6.9461537e.js"><link rel="prefetch" href="/docs/assets/js/7.3158bea4.js"><link rel="prefetch" href="/docs/assets/js/8.625d63ee.js"><link rel="prefetch" href="/docs/assets/js/9.e856c4d3.js">
<link rel="stylesheet" href="/docs/assets/css/0.styles.d44f2c14.css">
</head>
<body>
<div id="app" data-server-rendered="true"><div class="theme-container"><header class="navbar"><div class="sidebar-button"><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" role="img" viewBox="0 0 448 512" class="icon"><path fill="currentColor" d="M436 124H12c-6.627 0-12-5.373-12-12V80c0-6.627 5.373-12 12-12h424c6.627 0 12 5.373 12 12v32c0 6.627-5.373 12-12 12zm0 160H12c-6.627 0-12-5.373-12-12v-32c0-6.627 5.373-12 12-12h424c6.627 0 12 5.373 12 12v32c0 6.627-5.373 12-12 12zm0 160H12c-6.627 0-12-5.373-12-12v-32c0-6.627 5.373-12 12-12h424c6.627 0 12 5.373 12 12v32c0 6.627-5.373 12-12 12z"></path></svg></div><a href="/docs/" class="home-link router-link-active"><img src="/docs/logo.png" class="logo"><span class="site-name can-hide">
GrapesJS
</span></a><div class="links"><div class="search-box"><input aria-label="Search" autocomplete="off" spellcheck="false" value=""><!----></div><nav class="nav-links can-hide"><div class="nav-item"><a href="/docs/" class="nav-link">Docs</a></div><div class="nav-item"><a href="/docs/api/" class="nav-link router-link-active">API Reference</a></div><div class="nav-item"><a href="https://opencollective.com/grapesjs" target="_blank" rel="noopener noreferrer" class="nav-link external">
<div id="app" data-server-rendered="true"><div class="theme-container"><header class="navbar"><div class="sidebar-button"><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" role="img" viewBox="0 0 448 512" class="icon"><path fill="currentColor" d="M436 124H12c-6.627 0-12-5.373-12-12V80c0-6.627 5.373-12 12-12h424c6.627 0 12 5.373 12 12v32c0 6.627-5.373 12-12 12zm0 160H12c-6.627 0-12-5.373-12-12v-32c0-6.627 5.373-12 12-12h424c6.627 0 12 5.373 12 12v32c0 6.627-5.373 12-12 12zm0 160H12c-6.627 0-12-5.373-12-12v-32c0-6.627 5.373-12 12-12h424c6.627 0 12 5.373 12 12v32c0 6.627-5.373 12-12 12z"></path></svg></div> <a href="/docs/" class="home-link router-link-active"><img src="/docs/logo.png" alt="GrapesJS" class="logo"> <span class="site-name can-hide">GrapesJS</span></a> <div class="links"><div class="search-box"><input aria-label="Search" autocomplete="off" spellcheck="false" value=""> <!----></div> <nav class="nav-links can-hide"><div class="nav-item"><a href="/docs/" class="nav-link">
Docs
</a></div><div class="nav-item"><a href="/docs/api/" class="nav-link router-link-active">
API Reference
</a></div><div class="nav-item"><a href="https://opencollective.com/grapesjs" target="_blank" rel="noopener noreferrer" class="nav-link external">
Support Us
<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path><polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></div><div class="nav-item"><a href="https://twitter.com/grapesjs" target="_blank" rel="noopener noreferrer" class="nav-link external">
<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></div><div class="nav-item"><a href="https://twitter.com/grapesjs" target="_blank" rel="noopener noreferrer" class="nav-link external">
Twitter
<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path><polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></div><a href="https://github.com/artf/grapesjs" target="_blank" rel="noopener noreferrer" class="repo-link">
<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></div> <a href="https://github.com/artf/grapesjs" target="_blank" rel="noopener noreferrer" class="repo-link">
GitHub
<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path><polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></nav></div></header><div class="sidebar-mask"></div><div class="sidebar"><nav class="nav-links"><div class="nav-item"><a href="/docs/" class="nav-link">Docs</a></div><div class="nav-item"><a href="/docs/api/" class="nav-link router-link-active">API Reference</a></div><div class="nav-item"><a href="https://opencollective.com/grapesjs" target="_blank" rel="noopener noreferrer" class="nav-link external">
<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></nav></div></header> <div class="sidebar-mask"></div> <aside class="sidebar"><nav class="nav-links"><div class="nav-item"><a href="/docs/" class="nav-link">
Docs
</a></div><div class="nav-item"><a href="/docs/api/" class="nav-link router-link-active">
API Reference
</a></div><div class="nav-item"><a href="https://opencollective.com/grapesjs" target="_blank" rel="noopener noreferrer" class="nav-link external">
Support Us
<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path><polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></div><div class="nav-item"><a href="https://twitter.com/grapesjs" target="_blank" rel="noopener noreferrer" class="nav-link external">
<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></div><div class="nav-item"><a href="https://twitter.com/grapesjs" target="_blank" rel="noopener noreferrer" class="nav-link external">
Twitter
<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path><polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></div><a href="https://github.com/artf/grapesjs" target="_blank" rel="noopener noreferrer" class="repo-link">
<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></div> <a href="https://github.com/artf/grapesjs" target="_blank" rel="noopener noreferrer" class="repo-link">
GitHub
<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path><polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></nav><div id="native-carbon" class="carbon-ads"></div><ul class="sidebar-links"><li><a href="/docs/api/" class="sidebar-link">API Reference</a></li><li><a href="/docs/api/editor.html" class="sidebar-link">Editor</a></li><li><a href="/docs/api/i18n.html" class="sidebar-link">I18n</a></li><li><a href="/docs/api/canvas.html" class="sidebar-link">Canvas</a></li><li><a href="/docs/api/assets.html" class="sidebar-link">Asset Manager</a></li><li><a href="/docs/api/block_manager.html" class="sidebar-link">Block Manager</a></li><li><a href="/docs/api/commands.html" class="sidebar-link">Commands</a></li><li><a href="/docs/api/components.html" class="sidebar-link">DOM Components</a></li><li><a href="/docs/api/component.html" class="sidebar-link"> - Component</a></li><li><a href="/docs/api/panels.html" class="sidebar-link">Panels</a></li><li><a href="/docs/api/style_manager.html" class="sidebar-link">Style Manager</a></li><li><a href="/docs/api/storage_manager.html" class="sidebar-link">Storage Manager</a></li><li><a href="/docs/api/device_manager.html" class="sidebar-link">Device Manager</a></li><li><a href="/docs/api/selector_manager.html" class="sidebar-link">Selector Manager</a></li><li><a href="/docs/api/css_composer.html" class="sidebar-link">CSS Composer</a></li><li><a href="/docs/api/modal_dialog.html" class="active sidebar-link">Modal</a><ul class="sidebar-sub-headers"><li class="sidebar-sub-header"><a href="/docs/api/modal_dialog.html#modal" class="sidebar-link">Modal</a></li><li class="sidebar-sub-header"><a href="/docs/api/modal_dialog.html#open" class="sidebar-link">open</a></li><li class="sidebar-sub-header"><a href="/docs/api/modal_dialog.html#close" class="sidebar-link">close</a></li><li class="sidebar-sub-header"><a href="/docs/api/modal_dialog.html#onceclose" class="sidebar-link">onceClose</a></li><li class="sidebar-sub-header"><a href="/docs/api/modal_dialog.html#onceopen" class="sidebar-link">onceOpen</a></li><li class="sidebar-sub-header"><a href="/docs/api/modal_dialog.html#isopen" class="sidebar-link">isOpen</a></li><li class="sidebar-sub-header"><a href="/docs/api/modal_dialog.html#settitle" class="sidebar-link">setTitle</a></li><li class="sidebar-sub-header"><a href="/docs/api/modal_dialog.html#gettitle" class="sidebar-link">getTitle</a></li><li class="sidebar-sub-header"><a href="/docs/api/modal_dialog.html#setcontent" class="sidebar-link">setContent</a></li><li class="sidebar-sub-header"><a href="/docs/api/modal_dialog.html#getcontent" class="sidebar-link">getContent</a></li></ul></li><li><a href="/docs/api/rich_text_editor.html" class="sidebar-link">Rich Text Editor</a></li><li><a href="/docs/api/keymaps.html" class="sidebar-link">Keymaps</a></li><li><a href="/docs/api/undo_manager.html" class="sidebar-link">Undo Manager</a></li></ul></div><div class="page"><div class="content"><h2 id="modal"><a href="#modal" aria-hidden="true" class="header-anchor">#</a> Modal</h2><p>You can customize the initial state of the module from the editor initialization, by passing the following <a href="https://github.com/artf/grapesjs/blob/master/src/modal_dialog/config/config.js" target="_blank" rel="noopener noreferrer">Configuration Object<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path><polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></p><div class="language-js extra-class"><pre class="language-js"><code><span class="token keyword">const</span> editor <span class="token operator">=</span> grapesjs<span class="token punctuation">.</span><span class="token function">init</span><span class="token punctuation">(</span><span class="token punctuation">{</span>
modal<span class="token punctuation">:</span> <span class="token punctuation">{</span>
<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></nav> <div id="native-carbon" class="carbon-ads"></div> <ul class="sidebar-links"><li><a href="/docs/api/" class="sidebar-link">API Reference</a></li><li><a href="/docs/api/editor.html" class="sidebar-link">Editor</a></li><li><a href="/docs/api/i18n.html" class="sidebar-link">I18n</a></li><li><a href="/docs/api/canvas.html" class="sidebar-link">Canvas</a></li><li><a href="/docs/api/assets.html" class="sidebar-link">Asset Manager</a></li><li><a href="/docs/api/block_manager.html" class="sidebar-link">Block Manager</a></li><li><a href="/docs/api/commands.html" class="sidebar-link">Commands</a></li><li><a href="/docs/api/components.html" class="sidebar-link">DOM Components</a></li><li><a href="/docs/api/component.html" class="sidebar-link"> - Component</a></li><li><a href="/docs/api/panels.html" class="sidebar-link">Panels</a></li><li><a href="/docs/api/style_manager.html" class="sidebar-link">Style Manager</a></li><li><a href="/docs/api/storage_manager.html" class="sidebar-link">Storage Manager</a></li><li><a href="/docs/api/device_manager.html" class="sidebar-link">Device Manager</a></li><li><a href="/docs/api/selector_manager.html" class="sidebar-link">Selector Manager</a></li><li><a href="/docs/api/css_composer.html" class="sidebar-link">CSS Composer</a></li><li><a href="/docs/api/modal_dialog.html" class="active sidebar-link">Modal</a><ul class="sidebar-sub-headers"><li class="sidebar-sub-header"><a href="/docs/api/modal_dialog.html#modal" class="sidebar-link">Modal</a></li><li class="sidebar-sub-header"><a href="/docs/api/modal_dialog.html#open" class="sidebar-link">open</a></li><li class="sidebar-sub-header"><a href="/docs/api/modal_dialog.html#close" class="sidebar-link">close</a></li><li class="sidebar-sub-header"><a href="/docs/api/modal_dialog.html#onceclose" class="sidebar-link">onceClose</a></li><li class="sidebar-sub-header"><a href="/docs/api/modal_dialog.html#onceopen" class="sidebar-link">onceOpen</a></li><li class="sidebar-sub-header"><a href="/docs/api/modal_dialog.html#isopen" class="sidebar-link">isOpen</a></li><li class="sidebar-sub-header"><a href="/docs/api/modal_dialog.html#settitle" class="sidebar-link">setTitle</a></li><li class="sidebar-sub-header"><a href="/docs/api/modal_dialog.html#gettitle" class="sidebar-link">getTitle</a></li><li class="sidebar-sub-header"><a href="/docs/api/modal_dialog.html#setcontent" class="sidebar-link">setContent</a></li><li class="sidebar-sub-header"><a href="/docs/api/modal_dialog.html#getcontent" class="sidebar-link">getContent</a></li></ul></li><li><a href="/docs/api/rich_text_editor.html" class="sidebar-link">Rich Text Editor</a></li><li><a href="/docs/api/keymaps.html" class="sidebar-link">Keymaps</a></li><li><a href="/docs/api/undo_manager.html" class="sidebar-link">Undo Manager</a></li></ul> </aside> <main class="page"> <div class="theme-default-content content__default"><h2 id="modal"><a href="#modal" class="header-anchor">#</a> Modal</h2> <p>You can customize the initial state of the module from the editor initialization, by passing the following <a href="https://github.com/artf/grapesjs/blob/master/src/modal_dialog/config/config.js" target="_blank" rel="noopener noreferrer">Configuration Object<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></p> <div class="language-js extra-class"><pre class="language-js"><code><span class="token keyword">const</span> editor <span class="token operator">=</span> grapesjs<span class="token punctuation">.</span><span class="token function">init</span><span class="token punctuation">(</span><span class="token punctuation">{</span>
modal<span class="token operator">:</span> <span class="token punctuation">{</span>
<span class="token comment">// options</span>
<span class="token punctuation">}</span>
<span class="token punctuation">}</span><span class="token punctuation">)</span>
</code></pre></div><p>Once the editor is instantiated you can use its API. Before using these methods you should get the module from the instance</p><div class="language-js extra-class"><pre class="language-js"><code><span class="token keyword">const</span> modal <span class="token operator">=</span> editor<span class="token punctuation">.</span>Modal<span class="token punctuation">;</span>
</code></pre></div><ul><li><a href="#open">open</a></li><li><a href="#close">close</a></li><li><a href="#isopen">isOpen</a></li><li><a href="#settitle">setTitle</a></li><li><a href="#gettitle">getTitle</a></li><li><a href="#setcontent">setContent</a></li><li><a href="#getcontent">getContent</a></li><li><a href="#onceclose">onceClose</a></li><li><a href="#onceopen">onceOpen</a></li></ul><h2 id="open"><a href="#open" aria-hidden="true" class="header-anchor">#</a> open</h2><p>Open the modal window</p><h3 id="parameters"><a href="#parameters" aria-hidden="true" class="header-anchor">#</a> Parameters</h3><ul><li><code>opts</code><strong><a href="https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Object" target="_blank" rel="noopener noreferrer">Object<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path><polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></strong> Options (optional, default <code>{}</code>)
<ul><li><code>opts.title</code><strong>(<a href="https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String" target="_blank" rel="noopener noreferrer">String<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path><polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a> | <a href="https://developer.mozilla.org/docs/Web/HTML/Element" target="_blank" rel="noopener noreferrer">HTMLElement<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path><polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a>)?</strong> Title to set for the modal</li><li><code>opts.content</code><strong>(<a href="https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String" target="_blank" rel="noopener noreferrer">String<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path><polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a> | <a href="https://developer.mozilla.org/docs/Web/HTML/Element" target="_blank" rel="noopener noreferrer">HTMLElement<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path><polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a>)?</strong> Content to set for the modal</li></ul></li></ul><p>Returns <strong>this</strong></p><h2 id="close"><a href="#close" aria-hidden="true" class="header-anchor">#</a> close</h2><p>Close the modal window</p><p>Returns <strong>this</strong></p><h2 id="onceclose"><a href="#onceclose" aria-hidden="true" class="header-anchor">#</a> onceClose</h2><p>Execute callback when the modal will be closed.
The callback will be called one only time</p><h3 id="parameters-2"><a href="#parameters-2" aria-hidden="true" class="header-anchor">#</a> Parameters</h3><ul><li><code>clb</code><strong><a href="https://developer.mozilla.org/docs/Web/JavaScript/Reference/Statements/function" target="_blank" rel="noopener noreferrer">Function<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path><polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></strong></li></ul><p>Returns <strong>this</strong></p><h2 id="onceopen"><a href="#onceopen" aria-hidden="true" class="header-anchor">#</a> onceOpen</h2><p>Execute callback when the modal will be opened.
The callback will be called one only time</p><h3 id="parameters-3"><a href="#parameters-3" aria-hidden="true" class="header-anchor">#</a> Parameters</h3><ul><li><code>clb</code><strong><a href="https://developer.mozilla.org/docs/Web/JavaScript/Reference/Statements/function" target="_blank" rel="noopener noreferrer">Function<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path><polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></strong></li></ul><p>Returns <strong>this</strong></p><h2 id="isopen"><a href="#isopen" aria-hidden="true" class="header-anchor">#</a> isOpen</h2><p>Checks if the modal window is open</p><p>Returns <strong><a href="https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Boolean" target="_blank" rel="noopener noreferrer">Boolean<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path><polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></strong></p><h2 id="settitle"><a href="#settitle" aria-hidden="true" class="header-anchor">#</a> setTitle</h2><p>Set the title to the modal window</p><h3 id="parameters-4"><a href="#parameters-4" aria-hidden="true" class="header-anchor">#</a> Parameters</h3><ul><li><code>title</code><strong><a href="https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String" target="_blank" rel="noopener noreferrer">string<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path><polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></strong> Title</li></ul><h3 id="examples"><a href="#examples" aria-hidden="true" class="header-anchor">#</a> Examples</h3><div class="language-javascript extra-class"><pre class="language-javascript"><code>modal<span class="token punctuation">.</span><span class="token function">setTitle</span><span class="token punctuation">(</span><span class="token string">'New title'</span><span class="token punctuation">)</span><span class="token punctuation">;</span>
</code></pre></div><p>Returns <strong>this</strong></p><h2 id="gettitle"><a href="#gettitle" aria-hidden="true" class="header-anchor">#</a> getTitle</h2><p>Returns the title of the modal window</p><p>Returns <strong><a href="https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String" target="_blank" rel="noopener noreferrer">string<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path><polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></strong></p><h2 id="setcontent"><a href="#setcontent" aria-hidden="true" class="header-anchor">#</a> setContent</h2><p>Set the content of the modal window</p><h3 id="parameters-5"><a href="#parameters-5" aria-hidden="true" class="header-anchor">#</a> Parameters</h3><ul><li><code>content</code><strong>(<a href="https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String" target="_blank" rel="noopener noreferrer">string<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path><polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a> | <a href="https://developer.mozilla.org/docs/Web/HTML/Element" target="_blank" rel="noopener noreferrer">HTMLElement<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path><polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a>)</strong> Content</li></ul><h3 id="examples-2"><a href="#examples-2" aria-hidden="true" class="header-anchor">#</a> Examples</h3><div class="language-javascript extra-class"><pre class="language-javascript"><code>modal<span class="token punctuation">.</span><span class="token function">setContent</span><span class="token punctuation">(</span><span class="token string">'&lt;div&gt;Some HTML content&lt;/div&gt;'</span><span class="token punctuation">)</span><span class="token punctuation">;</span>
</code></pre></div><p>Returns <strong>this</strong></p><h2 id="getcontent"><a href="#getcontent" aria-hidden="true" class="header-anchor">#</a> getContent</h2><p>Get the content of the modal window</p><p>Returns <strong><a href="https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String" target="_blank" rel="noopener noreferrer">string<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path><polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></strong></p></div><div class="page-edit"><div class="edit-link"><a href="https://github.com/artf/grapesjs/edit/dev/docs/api/modal_dialog.md" target="_blank" rel="noopener noreferrer">Edit this page on GitHub</a><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path><polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></div><div class="last-updated"><span class="prefix">Last Updated: </span><span class="time">5/2/2019, 1:28:33 AM</span></div></div><div class="page-nav"><p class="inner"><span class="prev">
← <a href="/docs/api/css_composer.html" class="prev">
CSS Composer
</a></span><span class="next"><a href="/docs/api/rich_text_editor.html">
Rich Text Editor
</a> →
</span></p></div></div></div></div>
<script src="/docs/assets/js/app.e1f2d947.js" defer></script><script src="/docs/assets/js/25.b52924ae.js" defer></script>
</code></pre></div><p>Once the editor is instantiated you can use its API. Before using these methods you should get the module from the instance</p> <div class="language-js extra-class"><pre class="language-js"><code><span class="token keyword">const</span> modal <span class="token operator">=</span> editor<span class="token punctuation">.</span>Modal<span class="token punctuation">;</span>
</code></pre></div><ul><li><a href="#open">open</a></li> <li><a href="#close">close</a></li> <li><a href="#isopen">isOpen</a></li> <li><a href="#settitle">setTitle</a></li> <li><a href="#gettitle">getTitle</a></li> <li><a href="#setcontent">setContent</a></li> <li><a href="#getcontent">getContent</a></li> <li><a href="#onceclose">onceClose</a></li> <li><a href="#onceopen">onceOpen</a></li></ul> <h2 id="open"><a href="#open" class="header-anchor">#</a> open</h2> <p>Open the modal window</p> <h3 id="parameters"><a href="#parameters" class="header-anchor">#</a> Parameters</h3> <ul><li><code>opts</code> <strong><a href="https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Object" target="_blank" rel="noopener noreferrer">Object<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></strong> Options (optional, default <code>{}</code>)
<ul><li><code>opts.title</code> <strong>(<a href="https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String" target="_blank" rel="noopener noreferrer">String<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a> | <a href="https://developer.mozilla.org/docs/Web/HTML/Element" target="_blank" rel="noopener noreferrer">HTMLElement<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a>)?</strong> Title to set for the modal</li> <li><code>opts.content</code> <strong>(<a href="https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String" target="_blank" rel="noopener noreferrer">String<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a> | <a href="https://developer.mozilla.org/docs/Web/HTML/Element" target="_blank" rel="noopener noreferrer">HTMLElement<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a>)?</strong> Content to set for the modal</li></ul></li></ul> <p>Returns <strong>this</strong></p> <h2 id="close"><a href="#close" class="header-anchor">#</a> close</h2> <p>Close the modal window</p> <p>Returns <strong>this</strong></p> <h2 id="onceclose"><a href="#onceclose" class="header-anchor">#</a> onceClose</h2> <p>Execute callback when the modal will be closed.
The callback will be called one only time</p> <h3 id="parameters-2"><a href="#parameters-2" class="header-anchor">#</a> Parameters</h3> <ul><li><code>clb</code> <strong><a href="https://developer.mozilla.org/docs/Web/JavaScript/Reference/Statements/function" target="_blank" rel="noopener noreferrer">Function<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></strong></li></ul> <p>Returns <strong>this</strong></p> <h2 id="onceopen"><a href="#onceopen" class="header-anchor">#</a> onceOpen</h2> <p>Execute callback when the modal will be opened.
The callback will be called one only time</p> <h3 id="parameters-3"><a href="#parameters-3" class="header-anchor">#</a> Parameters</h3> <ul><li><code>clb</code> <strong><a href="https://developer.mozilla.org/docs/Web/JavaScript/Reference/Statements/function" target="_blank" rel="noopener noreferrer">Function<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></strong></li></ul> <p>Returns <strong>this</strong></p> <h2 id="isopen"><a href="#isopen" class="header-anchor">#</a> isOpen</h2> <p>Checks if the modal window is open</p> <p>Returns <strong><a href="https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Boolean" target="_blank" rel="noopener noreferrer">Boolean<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></strong></p> <h2 id="settitle"><a href="#settitle" class="header-anchor">#</a> setTitle</h2> <p>Set the title to the modal window</p> <h3 id="parameters-4"><a href="#parameters-4" class="header-anchor">#</a> Parameters</h3> <ul><li><code>title</code> <strong><a href="https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String" target="_blank" rel="noopener noreferrer">string<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></strong> Title</li></ul> <h3 id="examples"><a href="#examples" class="header-anchor">#</a> Examples</h3> <div class="language-javascript extra-class"><pre class="language-javascript"><code>modal<span class="token punctuation">.</span><span class="token function">setTitle</span><span class="token punctuation">(</span><span class="token string">'New title'</span><span class="token punctuation">)</span><span class="token punctuation">;</span>
</code></pre></div><p>Returns <strong>this</strong></p> <h2 id="gettitle"><a href="#gettitle" class="header-anchor">#</a> getTitle</h2> <p>Returns the title of the modal window</p> <p>Returns <strong><a href="https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String" target="_blank" rel="noopener noreferrer">string<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></strong></p> <h2 id="setcontent"><a href="#setcontent" class="header-anchor">#</a> setContent</h2> <p>Set the content of the modal window</p> <h3 id="parameters-5"><a href="#parameters-5" class="header-anchor">#</a> Parameters</h3> <ul><li><code>content</code> <strong>(<a href="https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String" target="_blank" rel="noopener noreferrer">string<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a> | <a href="https://developer.mozilla.org/docs/Web/HTML/Element" target="_blank" rel="noopener noreferrer">HTMLElement<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a>)</strong> Content</li></ul> <h3 id="examples-2"><a href="#examples-2" class="header-anchor">#</a> Examples</h3> <div class="language-javascript extra-class"><pre class="language-javascript"><code>modal<span class="token punctuation">.</span><span class="token function">setContent</span><span class="token punctuation">(</span><span class="token string">'&lt;div&gt;Some HTML content&lt;/div&gt;'</span><span class="token punctuation">)</span><span class="token punctuation">;</span>
</code></pre></div><p>Returns <strong>this</strong></p> <h2 id="getcontent"><a href="#getcontent" class="header-anchor">#</a> getContent</h2> <p>Get the content of the modal window</p> <p>Returns <strong><a href="https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String" target="_blank" rel="noopener noreferrer">string<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></strong></p></div> <footer class="page-edit"><div class="edit-link"><a href="https://github.com/artf/grapesjs/edit/dev/docs/api/modal_dialog.md" target="_blank" rel="noopener noreferrer">Edit this page on GitHub</a> <svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></div> <div class="last-updated"><span class="prefix">Last Updated:</span> <span class="time">5/2/2019, 1:28:33 AM</span></div></footer> <div class="page-nav"><p class="inner"><span class="prev">
←
<a href="/docs/api/css_composer.html" class="prev">
CSS Composer
</a></span> <span class="next"><a href="/docs/api/rich_text_editor.html">
Rich Text Editor
</a>
→
</span></p></div> </main></div><div class="global-ui"></div></div>
<script src="/docs/assets/js/app.4dd41b9b.js" defer></script><script src="/docs/assets/js/11.b2ac4984.js" defer></script><script src="/docs/assets/js/2.a342f4be.js" defer></script><script src="/docs/assets/js/31.5286fade.js" defer></script>
</body>
</html>

110
docs/api/panels.html

@ -4,88 +4,96 @@
<meta charset="utf-8">
<meta name="viewport" content="width=device-width,initial-scale=1">
<title>GrapesJS</title>
<meta name="description" content="GrapesJS documentation">
<meta name="generator" content="VuePress 1.4.1">
<link rel="icon" href="/docs/logo-icon.png">
<link rel="stylesheet" href="../stylesheets/grapes.min.css?v0.16.12">
<script src="../js/grapes.min.js?v0.16.12"></script>
<link rel="preload" href="/docs/assets/css/styles.e1f2d947.css" as="style"><link rel="preload" href="/docs/assets/js/app.e1f2d947.js" as="script"><link rel="preload" href="/docs/assets/js/26.81c00685.js" as="script"><link rel="prefetch" href="/docs/assets/css/1.styles.b40e6662.css"><link rel="prefetch" href="/docs/assets/css/2.styles.896e948d.css"><link rel="prefetch" href="/docs/assets/css/3.styles.46968bd4.css"><link rel="prefetch" href="/docs/assets/css/4.styles.79691bb5.css"><link rel="prefetch" href="/docs/assets/css/5.styles.6013373a.css"><link rel="prefetch" href="/docs/assets/css/6.styles.467c19a2.css"><link rel="prefetch" href="/docs/assets/css/7.styles.ce9d181d.css"><link rel="prefetch" href="/docs/assets/css/8.styles.aae17ac6.css"><link rel="prefetch" href="/docs/assets/css/9.styles.e0170b17.css"><link rel="prefetch" href="/docs/assets/js/1.b40e6662.js"><link rel="prefetch" href="/docs/assets/js/10.e7cd7c26.js"><link rel="prefetch" href="/docs/assets/js/11.3f87b9b8.js"><link rel="prefetch" href="/docs/assets/js/12.269b5586.js"><link rel="prefetch" href="/docs/assets/js/13.e52ea678.js"><link rel="prefetch" href="/docs/assets/js/14.0606827a.js"><link rel="prefetch" href="/docs/assets/js/15.aa7f42f8.js"><link rel="prefetch" href="/docs/assets/js/16.959c0bd7.js"><link rel="prefetch" href="/docs/assets/js/17.bfba947e.js"><link rel="prefetch" href="/docs/assets/js/18.7f401ffb.js"><link rel="prefetch" href="/docs/assets/js/19.3e0ce3c8.js"><link rel="prefetch" href="/docs/assets/js/2.896e948d.js"><link rel="prefetch" href="/docs/assets/js/20.f4502040.js"><link rel="prefetch" href="/docs/assets/js/21.2babea6a.js"><link rel="prefetch" href="/docs/assets/js/22.26e5d9ed.js"><link rel="prefetch" href="/docs/assets/js/23.a2c9ec17.js"><link rel="prefetch" href="/docs/assets/js/24.f9675b16.js"><link rel="prefetch" href="/docs/assets/js/25.b52924ae.js"><link rel="prefetch" href="/docs/assets/js/27.7372785c.js"><link rel="prefetch" href="/docs/assets/js/28.df5c22ed.js"><link rel="prefetch" href="/docs/assets/js/29.b167a894.js"><link rel="prefetch" href="/docs/assets/js/3.46968bd4.js"><link rel="prefetch" href="/docs/assets/js/30.d165faf7.js"><link rel="prefetch" href="/docs/assets/js/31.334d7953.js"><link rel="prefetch" href="/docs/assets/js/32.f9daa2c8.js"><link rel="prefetch" href="/docs/assets/js/33.93f49bfa.js"><link rel="prefetch" href="/docs/assets/js/34.4865e6c3.js"><link rel="prefetch" href="/docs/assets/js/35.9d089775.js"><link rel="prefetch" href="/docs/assets/js/36.67cb8d1f.js"><link rel="prefetch" href="/docs/assets/js/37.708a94ac.js"><link rel="prefetch" href="/docs/assets/js/38.0f8df29b.js"><link rel="prefetch" href="/docs/assets/js/39.074f3faf.js"><link rel="prefetch" href="/docs/assets/js/4.79691bb5.js"><link rel="prefetch" href="/docs/assets/js/40.cef45f06.js"><link rel="prefetch" href="/docs/assets/js/41.c734b929.js"><link rel="prefetch" href="/docs/assets/js/42.1078a060.js"><link rel="prefetch" href="/docs/assets/js/43.7188da01.js"><link rel="prefetch" href="/docs/assets/js/44.1fd52e91.js"><link rel="prefetch" href="/docs/assets/js/45.69c67864.js"><link rel="prefetch" href="/docs/assets/js/5.6013373a.js"><link rel="prefetch" href="/docs/assets/js/6.467c19a2.js"><link rel="prefetch" href="/docs/assets/js/7.ce9d181d.js"><link rel="prefetch" href="/docs/assets/js/8.aae17ac6.js"><link rel="prefetch" href="/docs/assets/js/9.e0170b17.js">
<link rel="stylesheet" href="/docs/assets/css/styles.e1f2d947.css">
<link rel="stylesheet" href="../stylesheets/grapes.min.css?v0.16.12">
<script src="../js/grapes.min.js?v0.16.12"></script>
<meta name="description" content="GrapesJS documentation">
<link rel="preload" href="/docs/assets/css/0.styles.d44f2c14.css" as="style"><link rel="preload" href="/docs/assets/js/app.4dd41b9b.js" as="script"><link rel="preload" href="/docs/assets/js/11.b2ac4984.js" as="script"><link rel="preload" href="/docs/assets/js/2.a342f4be.js" as="script"><link rel="preload" href="/docs/assets/js/32.0a0e4ae7.js" as="script"><link rel="prefetch" href="/docs/assets/js/10.6a518be5.js"><link rel="prefetch" href="/docs/assets/js/12.bf8ecce1.js"><link rel="prefetch" href="/docs/assets/js/13.d807997f.js"><link rel="prefetch" href="/docs/assets/js/14.0ba8a778.js"><link rel="prefetch" href="/docs/assets/js/15.52ce2afa.js"><link rel="prefetch" href="/docs/assets/js/16.47266d46.js"><link rel="prefetch" href="/docs/assets/js/17.9b7a7fa4.js"><link rel="prefetch" href="/docs/assets/js/18.66b0785d.js"><link rel="prefetch" href="/docs/assets/js/19.2f9692d0.js"><link rel="prefetch" href="/docs/assets/js/20.ab1e767c.js"><link rel="prefetch" href="/docs/assets/js/21.66fe8957.js"><link rel="prefetch" href="/docs/assets/js/22.cb6c233f.js"><link rel="prefetch" href="/docs/assets/js/23.dc99d7c7.js"><link rel="prefetch" href="/docs/assets/js/24.245fff8a.js"><link rel="prefetch" href="/docs/assets/js/25.d8c7e0b5.js"><link rel="prefetch" href="/docs/assets/js/26.ad7fc796.js"><link rel="prefetch" href="/docs/assets/js/27.169cfbf6.js"><link rel="prefetch" href="/docs/assets/js/28.f086d486.js"><link rel="prefetch" href="/docs/assets/js/29.5e2a7327.js"><link rel="prefetch" href="/docs/assets/js/3.7e642bff.js"><link rel="prefetch" href="/docs/assets/js/30.3a998b30.js"><link rel="prefetch" href="/docs/assets/js/31.5286fade.js"><link rel="prefetch" href="/docs/assets/js/33.0ba298a5.js"><link rel="prefetch" href="/docs/assets/js/34.07640632.js"><link rel="prefetch" href="/docs/assets/js/35.061f6dd5.js"><link rel="prefetch" href="/docs/assets/js/36.63462982.js"><link rel="prefetch" href="/docs/assets/js/37.e2d50838.js"><link rel="prefetch" href="/docs/assets/js/38.1230aa70.js"><link rel="prefetch" href="/docs/assets/js/39.c8373102.js"><link rel="prefetch" href="/docs/assets/js/4.32ffd5a1.js"><link rel="prefetch" href="/docs/assets/js/40.0600f064.js"><link rel="prefetch" href="/docs/assets/js/41.9bbfe266.js"><link rel="prefetch" href="/docs/assets/js/42.63c51d25.js"><link rel="prefetch" href="/docs/assets/js/43.d69d8e57.js"><link rel="prefetch" href="/docs/assets/js/44.a981446c.js"><link rel="prefetch" href="/docs/assets/js/45.415ecb59.js"><link rel="prefetch" href="/docs/assets/js/46.75d7a27f.js"><link rel="prefetch" href="/docs/assets/js/47.a4983875.js"><link rel="prefetch" href="/docs/assets/js/48.0dd7e7e0.js"><link rel="prefetch" href="/docs/assets/js/49.166bd1fa.js"><link rel="prefetch" href="/docs/assets/js/5.a0a5a0aa.js"><link rel="prefetch" href="/docs/assets/js/50.4e76f723.js"><link rel="prefetch" href="/docs/assets/js/51.21d145d2.js"><link rel="prefetch" href="/docs/assets/js/52.43234198.js"><link rel="prefetch" href="/docs/assets/js/6.9461537e.js"><link rel="prefetch" href="/docs/assets/js/7.3158bea4.js"><link rel="prefetch" href="/docs/assets/js/8.625d63ee.js"><link rel="prefetch" href="/docs/assets/js/9.e856c4d3.js">
<link rel="stylesheet" href="/docs/assets/css/0.styles.d44f2c14.css">
</head>
<body>
<div id="app" data-server-rendered="true"><div class="theme-container"><header class="navbar"><div class="sidebar-button"><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" role="img" viewBox="0 0 448 512" class="icon"><path fill="currentColor" d="M436 124H12c-6.627 0-12-5.373-12-12V80c0-6.627 5.373-12 12-12h424c6.627 0 12 5.373 12 12v32c0 6.627-5.373 12-12 12zm0 160H12c-6.627 0-12-5.373-12-12v-32c0-6.627 5.373-12 12-12h424c6.627 0 12 5.373 12 12v32c0 6.627-5.373 12-12 12zm0 160H12c-6.627 0-12-5.373-12-12v-32c0-6.627 5.373-12 12-12h424c6.627 0 12 5.373 12 12v32c0 6.627-5.373 12-12 12z"></path></svg></div><a href="/docs/" class="home-link router-link-active"><img src="/docs/logo.png" class="logo"><span class="site-name can-hide">
GrapesJS
</span></a><div class="links"><div class="search-box"><input aria-label="Search" autocomplete="off" spellcheck="false" value=""><!----></div><nav class="nav-links can-hide"><div class="nav-item"><a href="/docs/" class="nav-link">Docs</a></div><div class="nav-item"><a href="/docs/api/" class="nav-link router-link-active">API Reference</a></div><div class="nav-item"><a href="https://opencollective.com/grapesjs" target="_blank" rel="noopener noreferrer" class="nav-link external">
<div id="app" data-server-rendered="true"><div class="theme-container"><header class="navbar"><div class="sidebar-button"><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" role="img" viewBox="0 0 448 512" class="icon"><path fill="currentColor" d="M436 124H12c-6.627 0-12-5.373-12-12V80c0-6.627 5.373-12 12-12h424c6.627 0 12 5.373 12 12v32c0 6.627-5.373 12-12 12zm0 160H12c-6.627 0-12-5.373-12-12v-32c0-6.627 5.373-12 12-12h424c6.627 0 12 5.373 12 12v32c0 6.627-5.373 12-12 12zm0 160H12c-6.627 0-12-5.373-12-12v-32c0-6.627 5.373-12 12-12h424c6.627 0 12 5.373 12 12v32c0 6.627-5.373 12-12 12z"></path></svg></div> <a href="/docs/" class="home-link router-link-active"><img src="/docs/logo.png" alt="GrapesJS" class="logo"> <span class="site-name can-hide">GrapesJS</span></a> <div class="links"><div class="search-box"><input aria-label="Search" autocomplete="off" spellcheck="false" value=""> <!----></div> <nav class="nav-links can-hide"><div class="nav-item"><a href="/docs/" class="nav-link">
Docs
</a></div><div class="nav-item"><a href="/docs/api/" class="nav-link router-link-active">
API Reference
</a></div><div class="nav-item"><a href="https://opencollective.com/grapesjs" target="_blank" rel="noopener noreferrer" class="nav-link external">
Support Us
<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path><polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></div><div class="nav-item"><a href="https://twitter.com/grapesjs" target="_blank" rel="noopener noreferrer" class="nav-link external">
<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></div><div class="nav-item"><a href="https://twitter.com/grapesjs" target="_blank" rel="noopener noreferrer" class="nav-link external">
Twitter
<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path><polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></div><a href="https://github.com/artf/grapesjs" target="_blank" rel="noopener noreferrer" class="repo-link">
<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></div> <a href="https://github.com/artf/grapesjs" target="_blank" rel="noopener noreferrer" class="repo-link">
GitHub
<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path><polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></nav></div></header><div class="sidebar-mask"></div><div class="sidebar"><nav class="nav-links"><div class="nav-item"><a href="/docs/" class="nav-link">Docs</a></div><div class="nav-item"><a href="/docs/api/" class="nav-link router-link-active">API Reference</a></div><div class="nav-item"><a href="https://opencollective.com/grapesjs" target="_blank" rel="noopener noreferrer" class="nav-link external">
<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></nav></div></header> <div class="sidebar-mask"></div> <aside class="sidebar"><nav class="nav-links"><div class="nav-item"><a href="/docs/" class="nav-link">
Docs
</a></div><div class="nav-item"><a href="/docs/api/" class="nav-link router-link-active">
API Reference
</a></div><div class="nav-item"><a href="https://opencollective.com/grapesjs" target="_blank" rel="noopener noreferrer" class="nav-link external">
Support Us
<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path><polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></div><div class="nav-item"><a href="https://twitter.com/grapesjs" target="_blank" rel="noopener noreferrer" class="nav-link external">
<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></div><div class="nav-item"><a href="https://twitter.com/grapesjs" target="_blank" rel="noopener noreferrer" class="nav-link external">
Twitter
<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path><polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></div><a href="https://github.com/artf/grapesjs" target="_blank" rel="noopener noreferrer" class="repo-link">
<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></div> <a href="https://github.com/artf/grapesjs" target="_blank" rel="noopener noreferrer" class="repo-link">
GitHub
<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path><polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></nav><div id="native-carbon" class="carbon-ads"></div><ul class="sidebar-links"><li><a href="/docs/api/" class="sidebar-link">API Reference</a></li><li><a href="/docs/api/editor.html" class="sidebar-link">Editor</a></li><li><a href="/docs/api/i18n.html" class="sidebar-link">I18n</a></li><li><a href="/docs/api/canvas.html" class="sidebar-link">Canvas</a></li><li><a href="/docs/api/assets.html" class="sidebar-link">Asset Manager</a></li><li><a href="/docs/api/block_manager.html" class="sidebar-link">Block Manager</a></li><li><a href="/docs/api/commands.html" class="sidebar-link">Commands</a></li><li><a href="/docs/api/components.html" class="sidebar-link">DOM Components</a></li><li><a href="/docs/api/component.html" class="sidebar-link"> - Component</a></li><li><a href="/docs/api/panels.html" class="active sidebar-link">Panels</a><ul class="sidebar-sub-headers"><li class="sidebar-sub-header"><a href="/docs/api/panels.html#panels" class="sidebar-link">Panels</a></li><li class="sidebar-sub-header"><a href="/docs/api/panels.html#getpanels" class="sidebar-link">getPanels</a></li><li class="sidebar-sub-header"><a href="/docs/api/panels.html#getpanelsel" class="sidebar-link">getPanelsEl</a></li><li class="sidebar-sub-header"><a href="/docs/api/panels.html#addpanel" class="sidebar-link">addPanel</a></li><li class="sidebar-sub-header"><a href="/docs/api/panels.html#removepanel" class="sidebar-link">removePanel</a></li><li class="sidebar-sub-header"><a href="/docs/api/panels.html#getpanel" class="sidebar-link">getPanel</a></li><li class="sidebar-sub-header"><a href="/docs/api/panels.html#addbutton" class="sidebar-link">addButton</a></li><li class="sidebar-sub-header"><a href="/docs/api/panels.html#removebutton" class="sidebar-link">removeButton</a></li><li class="sidebar-sub-header"><a href="/docs/api/panels.html#getbutton" class="sidebar-link">getButton</a></li></ul></li><li><a href="/docs/api/style_manager.html" class="sidebar-link">Style Manager</a></li><li><a href="/docs/api/storage_manager.html" class="sidebar-link">Storage Manager</a></li><li><a href="/docs/api/device_manager.html" class="sidebar-link">Device Manager</a></li><li><a href="/docs/api/selector_manager.html" class="sidebar-link">Selector Manager</a></li><li><a href="/docs/api/css_composer.html" class="sidebar-link">CSS Composer</a></li><li><a href="/docs/api/modal_dialog.html" class="sidebar-link">Modal</a></li><li><a href="/docs/api/rich_text_editor.html" class="sidebar-link">Rich Text Editor</a></li><li><a href="/docs/api/keymaps.html" class="sidebar-link">Keymaps</a></li><li><a href="/docs/api/undo_manager.html" class="sidebar-link">Undo Manager</a></li></ul></div><div class="page"><div class="content"><h2 id="panels"><a href="#panels" aria-hidden="true" class="header-anchor">#</a> Panels</h2><p>You can customize the initial state of the module from the editor initialization, by passing the following <a href="https://github.com/artf/grapesjs/blob/master/src/panels/config/config.js" target="_blank" rel="noopener noreferrer">Configuration Object<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path><polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></p><div class="language-js extra-class"><pre class="language-js"><code><span class="token keyword">const</span> editor <span class="token operator">=</span> grapesjs<span class="token punctuation">.</span><span class="token function">init</span><span class="token punctuation">(</span><span class="token punctuation">{</span>
panels<span class="token punctuation">:</span> <span class="token punctuation">{</span>
<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></nav> <div id="native-carbon" class="carbon-ads"></div> <ul class="sidebar-links"><li><a href="/docs/api/" class="sidebar-link">API Reference</a></li><li><a href="/docs/api/editor.html" class="sidebar-link">Editor</a></li><li><a href="/docs/api/i18n.html" class="sidebar-link">I18n</a></li><li><a href="/docs/api/canvas.html" class="sidebar-link">Canvas</a></li><li><a href="/docs/api/assets.html" class="sidebar-link">Asset Manager</a></li><li><a href="/docs/api/block_manager.html" class="sidebar-link">Block Manager</a></li><li><a href="/docs/api/commands.html" class="sidebar-link">Commands</a></li><li><a href="/docs/api/components.html" class="sidebar-link">DOM Components</a></li><li><a href="/docs/api/component.html" class="sidebar-link"> - Component</a></li><li><a href="/docs/api/panels.html" class="active sidebar-link">Panels</a><ul class="sidebar-sub-headers"><li class="sidebar-sub-header"><a href="/docs/api/panels.html#panels" class="sidebar-link">Panels</a></li><li class="sidebar-sub-header"><a href="/docs/api/panels.html#getpanels" class="sidebar-link">getPanels</a></li><li class="sidebar-sub-header"><a href="/docs/api/panels.html#getpanelsel" class="sidebar-link">getPanelsEl</a></li><li class="sidebar-sub-header"><a href="/docs/api/panels.html#addpanel" class="sidebar-link">addPanel</a></li><li class="sidebar-sub-header"><a href="/docs/api/panels.html#removepanel" class="sidebar-link">removePanel</a></li><li class="sidebar-sub-header"><a href="/docs/api/panels.html#getpanel" class="sidebar-link">getPanel</a></li><li class="sidebar-sub-header"><a href="/docs/api/panels.html#addbutton" class="sidebar-link">addButton</a></li><li class="sidebar-sub-header"><a href="/docs/api/panels.html#removebutton" class="sidebar-link">removeButton</a></li><li class="sidebar-sub-header"><a href="/docs/api/panels.html#getbutton" class="sidebar-link">getButton</a></li></ul></li><li><a href="/docs/api/style_manager.html" class="sidebar-link">Style Manager</a></li><li><a href="/docs/api/storage_manager.html" class="sidebar-link">Storage Manager</a></li><li><a href="/docs/api/device_manager.html" class="sidebar-link">Device Manager</a></li><li><a href="/docs/api/selector_manager.html" class="sidebar-link">Selector Manager</a></li><li><a href="/docs/api/css_composer.html" class="sidebar-link">CSS Composer</a></li><li><a href="/docs/api/modal_dialog.html" class="sidebar-link">Modal</a></li><li><a href="/docs/api/rich_text_editor.html" class="sidebar-link">Rich Text Editor</a></li><li><a href="/docs/api/keymaps.html" class="sidebar-link">Keymaps</a></li><li><a href="/docs/api/undo_manager.html" class="sidebar-link">Undo Manager</a></li></ul> </aside> <main class="page"> <div class="theme-default-content content__default"><h2 id="panels"><a href="#panels" class="header-anchor">#</a> Panels</h2> <p>You can customize the initial state of the module from the editor initialization, by passing the following <a href="https://github.com/artf/grapesjs/blob/master/src/panels/config/config.js" target="_blank" rel="noopener noreferrer">Configuration Object<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></p> <div class="language-js extra-class"><pre class="language-js"><code><span class="token keyword">const</span> editor <span class="token operator">=</span> grapesjs<span class="token punctuation">.</span><span class="token function">init</span><span class="token punctuation">(</span><span class="token punctuation">{</span>
panels<span class="token operator">:</span> <span class="token punctuation">{</span>
<span class="token comment">// options</span>
<span class="token punctuation">}</span>
<span class="token punctuation">}</span><span class="token punctuation">)</span>
</code></pre></div><p>Once the editor is instantiated you can use its API. Before using these methods you should get the module from the instance</p><div class="language-js extra-class"><pre class="language-js"><code><span class="token keyword">const</span> panelManager <span class="token operator">=</span> editor<span class="token punctuation">.</span>Panels<span class="token punctuation">;</span>
</code></pre></div><ul><li><a href="#addpanel">addPanel</a></li><li><a href="#addbutton">addButton</a></li><li><a href="#getbutton">getButton</a></li><li><a href="#getpanel">getPanel</a></li><li><a href="#getpanels">getPanels</a></li><li><a href="#getpanelsel">getPanelsEl</a></li><li><a href="#removepanel">removePanel</a></li><li><a href="#removebutton">removeButton</a></li></ul><h2 id="getpanels"><a href="#getpanels" aria-hidden="true" class="header-anchor">#</a> getPanels</h2><p>Returns the collection of panels</p><p>Returns <strong>Collection</strong> Collection of panel</p><h2 id="getpanelsel"><a href="#getpanelsel" aria-hidden="true" class="header-anchor">#</a> getPanelsEl</h2><p>Returns panels element</p><p>Returns <strong><a href="https://developer.mozilla.org/docs/Web/HTML/Element" target="_blank" rel="noopener noreferrer">HTMLElement<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path><polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></strong></p><h2 id="addpanel"><a href="#addpanel" aria-hidden="true" class="header-anchor">#</a> addPanel</h2><p>Add new panel to the collection</p><h3 id="parameters"><a href="#parameters" aria-hidden="true" class="header-anchor">#</a> Parameters</h3><ul><li><code>panel</code><strong>(<a href="https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Object" target="_blank" rel="noopener noreferrer">Object<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path><polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a> | Panel)</strong> Object with right properties or an instance of Panel</li></ul><h3 id="examples"><a href="#examples" aria-hidden="true" class="header-anchor">#</a> Examples</h3><div class="language-javascript extra-class"><pre class="language-javascript"><code><span class="token keyword">var</span> newPanel <span class="token operator">=</span> panelManager<span class="token punctuation">.</span><span class="token function">addPanel</span><span class="token punctuation">(</span><span class="token punctuation">{</span>
id<span class="token punctuation">:</span> <span class="token string">'myNewPanel'</span><span class="token punctuation">,</span>
visible <span class="token punctuation">:</span> <span class="token boolean">true</span><span class="token punctuation">,</span>
buttons <span class="token punctuation">:</span> <span class="token punctuation">[</span><span class="token operator">...</span><span class="token punctuation">]</span><span class="token punctuation">,</span>
</code></pre></div><p>Once the editor is instantiated you can use its API. Before using these methods you should get the module from the instance</p> <div class="language-js extra-class"><pre class="language-js"><code><span class="token keyword">const</span> panelManager <span class="token operator">=</span> editor<span class="token punctuation">.</span>Panels<span class="token punctuation">;</span>
</code></pre></div><ul><li><a href="#addpanel">addPanel</a></li> <li><a href="#addbutton">addButton</a></li> <li><a href="#getbutton">getButton</a></li> <li><a href="#getpanel">getPanel</a></li> <li><a href="#getpanels">getPanels</a></li> <li><a href="#getpanelsel">getPanelsEl</a></li> <li><a href="#removepanel">removePanel</a></li> <li><a href="#removebutton">removeButton</a></li></ul> <h2 id="getpanels"><a href="#getpanels" class="header-anchor">#</a> getPanels</h2> <p>Returns the collection of panels</p> <p>Returns <strong>Collection</strong> Collection of panel</p> <h2 id="getpanelsel"><a href="#getpanelsel" class="header-anchor">#</a> getPanelsEl</h2> <p>Returns panels element</p> <p>Returns <strong><a href="https://developer.mozilla.org/docs/Web/HTML/Element" target="_blank" rel="noopener noreferrer">HTMLElement<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></strong></p> <h2 id="addpanel"><a href="#addpanel" class="header-anchor">#</a> addPanel</h2> <p>Add new panel to the collection</p> <h3 id="parameters"><a href="#parameters" class="header-anchor">#</a> Parameters</h3> <ul><li><code>panel</code> <strong>(<a href="https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Object" target="_blank" rel="noopener noreferrer">Object<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a> | Panel)</strong> Object with right properties or an instance of Panel</li></ul> <h3 id="examples"><a href="#examples" class="header-anchor">#</a> Examples</h3> <div class="language-javascript extra-class"><pre class="language-javascript"><code><span class="token keyword">var</span> newPanel <span class="token operator">=</span> panelManager<span class="token punctuation">.</span><span class="token function">addPanel</span><span class="token punctuation">(</span><span class="token punctuation">{</span>
id<span class="token operator">:</span> <span class="token string">'myNewPanel'</span><span class="token punctuation">,</span>
visible <span class="token operator">:</span> <span class="token boolean">true</span><span class="token punctuation">,</span>
buttons <span class="token operator">:</span> <span class="token punctuation">[</span><span class="token operator">...</span><span class="token punctuation">]</span><span class="token punctuation">,</span>
<span class="token punctuation">}</span><span class="token punctuation">)</span><span class="token punctuation">;</span>
</code></pre></div><p>Returns <strong>Panel</strong> Added panel. Useful in case passed argument was an Object</p><h2 id="removepanel"><a href="#removepanel" aria-hidden="true" class="header-anchor">#</a> removePanel</h2><p>Remove a panel from the collection</p><h3 id="parameters-2"><a href="#parameters-2" aria-hidden="true" class="header-anchor">#</a> Parameters</h3><ul><li><code>panel</code><strong>(<a href="https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Object" target="_blank" rel="noopener noreferrer">Object<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path><polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a> | Panel | <a href="https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String" target="_blank" rel="noopener noreferrer">String<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path><polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a>)</strong> Object with right properties or an instance of Panel or Painel id</li></ul><h3 id="examples-2"><a href="#examples-2" aria-hidden="true" class="header-anchor">#</a> Examples</h3><div class="language-javascript extra-class"><pre class="language-javascript"><code><span class="token keyword">const</span> newPanel <span class="token operator">=</span> panelManager<span class="token punctuation">.</span><span class="token function">removePanel</span><span class="token punctuation">(</span><span class="token punctuation">{</span>
id<span class="token punctuation">:</span> <span class="token string">'myNewPanel'</span><span class="token punctuation">,</span>
visible <span class="token punctuation">:</span> <span class="token boolean">true</span><span class="token punctuation">,</span>
buttons <span class="token punctuation">:</span> <span class="token punctuation">[</span><span class="token operator">...</span><span class="token punctuation">]</span><span class="token punctuation">,</span>
</code></pre></div><p>Returns <strong>Panel</strong> Added panel. Useful in case passed argument was an Object</p> <h2 id="removepanel"><a href="#removepanel" class="header-anchor">#</a> removePanel</h2> <p>Remove a panel from the collection</p> <h3 id="parameters-2"><a href="#parameters-2" class="header-anchor">#</a> Parameters</h3> <ul><li><code>panel</code> <strong>(<a href="https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Object" target="_blank" rel="noopener noreferrer">Object<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a> | Panel | <a href="https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String" target="_blank" rel="noopener noreferrer">String<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a>)</strong> Object with right properties or an instance of Panel or Painel id</li></ul> <h3 id="examples-2"><a href="#examples-2" class="header-anchor">#</a> Examples</h3> <div class="language-javascript extra-class"><pre class="language-javascript"><code><span class="token keyword">const</span> newPanel <span class="token operator">=</span> panelManager<span class="token punctuation">.</span><span class="token function">removePanel</span><span class="token punctuation">(</span><span class="token punctuation">{</span>
id<span class="token operator">:</span> <span class="token string">'myNewPanel'</span><span class="token punctuation">,</span>
visible <span class="token operator">:</span> <span class="token boolean">true</span><span class="token punctuation">,</span>
buttons <span class="token operator">:</span> <span class="token punctuation">[</span><span class="token operator">...</span><span class="token punctuation">]</span><span class="token punctuation">,</span>
<span class="token punctuation">}</span><span class="token punctuation">)</span><span class="token punctuation">;</span>
<span class="token keyword">const</span> newPanel <span class="token operator">=</span> panelManager<span class="token punctuation">.</span><span class="token function">removePanel</span><span class="token punctuation">(</span><span class="token string">'myNewPanel'</span><span class="token punctuation">)</span><span class="token punctuation">;</span>
</code></pre></div><p>Returns <strong>Panel</strong> Removed panel. Useful in case passed argument was an Object</p><h2 id="getpanel"><a href="#getpanel" aria-hidden="true" class="header-anchor">#</a> getPanel</h2><p>Get panel by ID</p><h3 id="parameters-3"><a href="#parameters-3" aria-hidden="true" class="header-anchor">#</a> Parameters</h3><ul><li><code>id</code><strong><a href="https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String" target="_blank" rel="noopener noreferrer">string<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path><polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></strong> Id string</li></ul><h3 id="examples-3"><a href="#examples-3" aria-hidden="true" class="header-anchor">#</a> Examples</h3><div class="language-javascript extra-class"><pre class="language-javascript"><code><span class="token keyword">var</span> myPanel <span class="token operator">=</span> panelManager<span class="token punctuation">.</span><span class="token function">getPanel</span><span class="token punctuation">(</span><span class="token string">'myNewPanel'</span><span class="token punctuation">)</span><span class="token punctuation">;</span>
</code></pre></div><p>Returns <strong>(Panel | null)</strong></p><h2 id="addbutton"><a href="#addbutton" aria-hidden="true" class="header-anchor">#</a> addButton</h2><p>Add button to the panel</p><h3 id="parameters-4"><a href="#parameters-4" aria-hidden="true" class="header-anchor">#</a> Parameters</h3><ul><li><code>panelId</code><strong><a href="https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String" target="_blank" rel="noopener noreferrer">string<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path><polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></strong> Panel's ID</li><li><code>button</code><strong>(<a href="https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Object" target="_blank" rel="noopener noreferrer">Object<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path><polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a> | Button)</strong> Button object or instance of Button</li></ul><h3 id="examples-4"><a href="#examples-4" aria-hidden="true" class="header-anchor">#</a> Examples</h3><div class="language-javascript extra-class"><pre class="language-javascript"><code><span class="token keyword">var</span> newButton <span class="token operator">=</span> panelManager<span class="token punctuation">.</span><span class="token function">addButton</span><span class="token punctuation">(</span><span class="token string">'myNewPanel'</span><span class="token punctuation">,</span><span class="token punctuation">{</span>
id<span class="token punctuation">:</span> <span class="token string">'myNewButton'</span><span class="token punctuation">,</span>
className<span class="token punctuation">:</span> <span class="token string">'someClass'</span><span class="token punctuation">,</span>
command<span class="token punctuation">:</span> <span class="token string">'someCommand'</span><span class="token punctuation">,</span>
attributes<span class="token punctuation">:</span> <span class="token punctuation">{</span> title<span class="token punctuation">:</span> <span class="token string">'Some title'</span><span class="token punctuation">}</span><span class="token punctuation">,</span>
active<span class="token punctuation">:</span> <span class="token boolean">false</span><span class="token punctuation">,</span>
</code></pre></div><p>Returns <strong>Panel</strong> Removed panel. Useful in case passed argument was an Object</p> <h2 id="getpanel"><a href="#getpanel" class="header-anchor">#</a> getPanel</h2> <p>Get panel by ID</p> <h3 id="parameters-3"><a href="#parameters-3" class="header-anchor">#</a> Parameters</h3> <ul><li><code>id</code> <strong><a href="https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String" target="_blank" rel="noopener noreferrer">string<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></strong> Id string</li></ul> <h3 id="examples-3"><a href="#examples-3" class="header-anchor">#</a> Examples</h3> <div class="language-javascript extra-class"><pre class="language-javascript"><code><span class="token keyword">var</span> myPanel <span class="token operator">=</span> panelManager<span class="token punctuation">.</span><span class="token function">getPanel</span><span class="token punctuation">(</span><span class="token string">'myNewPanel'</span><span class="token punctuation">)</span><span class="token punctuation">;</span>
</code></pre></div><p>Returns <strong>(Panel | null)</strong></p> <h2 id="addbutton"><a href="#addbutton" class="header-anchor">#</a> addButton</h2> <p>Add button to the panel</p> <h3 id="parameters-4"><a href="#parameters-4" class="header-anchor">#</a> Parameters</h3> <ul><li><code>panelId</code> <strong><a href="https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String" target="_blank" rel="noopener noreferrer">string<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></strong> Panel's ID</li> <li><code>button</code> <strong>(<a href="https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Object" target="_blank" rel="noopener noreferrer">Object<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a> | Button)</strong> Button object or instance of Button</li></ul> <h3 id="examples-4"><a href="#examples-4" class="header-anchor">#</a> Examples</h3> <div class="language-javascript extra-class"><pre class="language-javascript"><code><span class="token keyword">var</span> newButton <span class="token operator">=</span> panelManager<span class="token punctuation">.</span><span class="token function">addButton</span><span class="token punctuation">(</span><span class="token string">'myNewPanel'</span><span class="token punctuation">,</span><span class="token punctuation">{</span>
id<span class="token operator">:</span> <span class="token string">'myNewButton'</span><span class="token punctuation">,</span>
className<span class="token operator">:</span> <span class="token string">'someClass'</span><span class="token punctuation">,</span>
command<span class="token operator">:</span> <span class="token string">'someCommand'</span><span class="token punctuation">,</span>
attributes<span class="token operator">:</span> <span class="token punctuation">{</span> title<span class="token operator">:</span> <span class="token string">'Some title'</span><span class="token punctuation">}</span><span class="token punctuation">,</span>
active<span class="token operator">:</span> <span class="token boolean">false</span><span class="token punctuation">,</span>
<span class="token punctuation">}</span><span class="token punctuation">)</span><span class="token punctuation">;</span>
<span class="token comment">// It's also possible to pass the command as an object</span>
<span class="token comment">// with .run and .stop methods</span>
<span class="token operator">...</span>
command<span class="token punctuation">:</span> <span class="token punctuation">{</span>
<span class="token function-variable function">run</span><span class="token punctuation">:</span> <span class="token keyword">function</span><span class="token punctuation">(</span><span class="token parameter">editor</span><span class="token punctuation">)</span> <span class="token punctuation">{</span>
command<span class="token operator">:</span> <span class="token punctuation">{</span>
<span class="token function-variable function">run</span><span class="token operator">:</span> <span class="token keyword">function</span><span class="token punctuation">(</span><span class="token parameter">editor</span><span class="token punctuation">)</span> <span class="token punctuation">{</span>
<span class="token operator">...</span>
<span class="token punctuation">}</span><span class="token punctuation">,</span>
<span class="token function-variable function">stop</span><span class="token punctuation">:</span> <span class="token keyword">function</span><span class="token punctuation">(</span><span class="token parameter">editor</span><span class="token punctuation">)</span> <span class="token punctuation">{</span>
<span class="token function-variable function">stop</span><span class="token operator">:</span> <span class="token keyword">function</span><span class="token punctuation">(</span><span class="token parameter">editor</span><span class="token punctuation">)</span> <span class="token punctuation">{</span>
<span class="token operator">...</span>
<span class="token punctuation">}</span>
<span class="token punctuation">}</span><span class="token punctuation">,</span>
<span class="token comment">// Or simply like a function which will be evaluated as a single .run command</span>
<span class="token operator">...</span>
<span class="token function-variable function">command</span><span class="token punctuation">:</span> <span class="token keyword">function</span><span class="token punctuation">(</span><span class="token parameter">editor</span><span class="token punctuation">)</span> <span class="token punctuation">{</span>
<span class="token function-variable function">command</span><span class="token operator">:</span> <span class="token keyword">function</span><span class="token punctuation">(</span><span class="token parameter">editor</span><span class="token punctuation">)</span> <span class="token punctuation">{</span>
<span class="token operator">...</span>
<span class="token punctuation">}</span>
</code></pre></div><p>Returns <strong>(Button | null)</strong> Added button. Useful in case passed button was an Object</p><h2 id="removebutton"><a href="#removebutton" aria-hidden="true" class="header-anchor">#</a> removeButton</h2><p>Remove button from the panel</p><h3 id="parameters-5"><a href="#parameters-5" aria-hidden="true" class="header-anchor">#</a> Parameters</h3><ul><li><code>panelId</code><strong><a href="https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String" target="_blank" rel="noopener noreferrer">String<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path><polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></strong> Panel's ID</li><li><code>button</code></li><li><code>buttonId</code><strong><a href="https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String" target="_blank" rel="noopener noreferrer">String<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path><polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></strong> Button's ID</li></ul><h3 id="examples-5"><a href="#examples-5" aria-hidden="true" class="header-anchor">#</a> Examples</h3><div class="language-javascript extra-class"><pre class="language-javascript"><code><span class="token keyword">const</span> removedButton <span class="token operator">=</span> panelManager<span class="token punctuation">.</span><span class="token function">addButton</span><span class="token punctuation">(</span><span class="token string">'myNewPanel'</span><span class="token punctuation">,</span><span class="token punctuation">{</span>
id<span class="token punctuation">:</span> <span class="token string">'myNewButton'</span><span class="token punctuation">,</span>
className<span class="token punctuation">:</span> <span class="token string">'someClass'</span><span class="token punctuation">,</span>
command<span class="token punctuation">:</span> <span class="token string">'someCommand'</span><span class="token punctuation">,</span>
attributes<span class="token punctuation">:</span> <span class="token punctuation">{</span> title<span class="token punctuation">:</span> <span class="token string">'Some title'</span><span class="token punctuation">}</span><span class="token punctuation">,</span>
active<span class="token punctuation">:</span> <span class="token boolean">false</span><span class="token punctuation">,</span>
</code></pre></div><p>Returns <strong>(Button | null)</strong> Added button. Useful in case passed button was an Object</p> <h2 id="removebutton"><a href="#removebutton" class="header-anchor">#</a> removeButton</h2> <p>Remove button from the panel</p> <h3 id="parameters-5"><a href="#parameters-5" class="header-anchor">#</a> Parameters</h3> <ul><li><code>panelId</code> <strong><a href="https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String" target="_blank" rel="noopener noreferrer">String<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></strong> Panel's ID</li> <li><code>button</code></li> <li><code>buttonId</code> <strong><a href="https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String" target="_blank" rel="noopener noreferrer">String<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></strong> Button's ID</li></ul> <h3 id="examples-5"><a href="#examples-5" class="header-anchor">#</a> Examples</h3> <div class="language-javascript extra-class"><pre class="language-javascript"><code><span class="token keyword">const</span> removedButton <span class="token operator">=</span> panelManager<span class="token punctuation">.</span><span class="token function">addButton</span><span class="token punctuation">(</span><span class="token string">'myNewPanel'</span><span class="token punctuation">,</span><span class="token punctuation">{</span>
id<span class="token operator">:</span> <span class="token string">'myNewButton'</span><span class="token punctuation">,</span>
className<span class="token operator">:</span> <span class="token string">'someClass'</span><span class="token punctuation">,</span>
command<span class="token operator">:</span> <span class="token string">'someCommand'</span><span class="token punctuation">,</span>
attributes<span class="token operator">:</span> <span class="token punctuation">{</span> title<span class="token operator">:</span> <span class="token string">'Some title'</span><span class="token punctuation">}</span><span class="token punctuation">,</span>
active<span class="token operator">:</span> <span class="token boolean">false</span><span class="token punctuation">,</span>
<span class="token punctuation">}</span><span class="token punctuation">)</span><span class="token punctuation">;</span>
<span class="token keyword">const</span> removedButton <span class="token operator">=</span> panelManager<span class="token punctuation">.</span><span class="token function">removeButton</span><span class="token punctuation">(</span><span class="token string">'myNewPanel'</span><span class="token punctuation">,</span> <span class="token string">'myNewButton'</span><span class="token punctuation">)</span><span class="token punctuation">;</span>
</code></pre></div><p>Returns <strong>(Button | null)</strong> Removed button.</p><h2 id="getbutton"><a href="#getbutton" aria-hidden="true" class="header-anchor">#</a> getButton</h2><p>Get button from the panel</p><h3 id="parameters-6"><a href="#parameters-6" aria-hidden="true" class="header-anchor">#</a> Parameters</h3><ul><li><code>panelId</code><strong><a href="https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String" target="_blank" rel="noopener noreferrer">string<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path><polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></strong> Panel's ID</li><li><code>id</code><strong><a href="https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String" target="_blank" rel="noopener noreferrer">string<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path><polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></strong> Button's ID</li></ul><h3 id="examples-6"><a href="#examples-6" aria-hidden="true" class="header-anchor">#</a> Examples</h3><div class="language-javascript extra-class"><pre class="language-javascript"><code><span class="token keyword">var</span> button <span class="token operator">=</span> panelManager<span class="token punctuation">.</span><span class="token function">getButton</span><span class="token punctuation">(</span><span class="token string">'myPanel'</span><span class="token punctuation">,</span><span class="token string">'myButton'</span><span class="token punctuation">)</span><span class="token punctuation">;</span>
</code></pre></div><p>Returns <strong>(Button | null)</strong></p></div><div class="page-edit"><div class="edit-link"><a href="https://github.com/artf/grapesjs/edit/dev/docs/api/panels.md" target="_blank" rel="noopener noreferrer">Edit this page on GitHub</a><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path><polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></div><div class="last-updated"><span class="prefix">Last Updated: </span><span class="time">11/22/2018, 7:37:29 AM</span></div></div><div class="page-nav"><p class="inner"><span class="prev">
← <a href="/docs/api/component.html" class="prev">
- Component
</a></span><span class="next"><a href="/docs/api/style_manager.html">
Style Manager
</a> →
</span></p></div></div></div></div>
<script src="/docs/assets/js/app.e1f2d947.js" defer></script><script src="/docs/assets/js/26.81c00685.js" defer></script>
</code></pre></div><p>Returns <strong>(Button | null)</strong> Removed button.</p> <h2 id="getbutton"><a href="#getbutton" class="header-anchor">#</a> getButton</h2> <p>Get button from the panel</p> <h3 id="parameters-6"><a href="#parameters-6" class="header-anchor">#</a> Parameters</h3> <ul><li><code>panelId</code> <strong><a href="https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String" target="_blank" rel="noopener noreferrer">string<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></strong> Panel's ID</li> <li><code>id</code> <strong><a href="https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String" target="_blank" rel="noopener noreferrer">string<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></strong> Button's ID</li></ul> <h3 id="examples-6"><a href="#examples-6" class="header-anchor">#</a> Examples</h3> <div class="language-javascript extra-class"><pre class="language-javascript"><code><span class="token keyword">var</span> button <span class="token operator">=</span> panelManager<span class="token punctuation">.</span><span class="token function">getButton</span><span class="token punctuation">(</span><span class="token string">'myPanel'</span><span class="token punctuation">,</span><span class="token string">'myButton'</span><span class="token punctuation">)</span><span class="token punctuation">;</span>
</code></pre></div><p>Returns <strong>(Button | null)</strong></p></div> <footer class="page-edit"><div class="edit-link"><a href="https://github.com/artf/grapesjs/edit/dev/docs/api/panels.md" target="_blank" rel="noopener noreferrer">Edit this page on GitHub</a> <svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></div> <div class="last-updated"><span class="prefix">Last Updated:</span> <span class="time">11/22/2018, 7:37:29 AM</span></div></footer> <div class="page-nav"><p class="inner"><span class="prev">
←
<a href="/docs/api/component.html" class="prev">
- Component
</a></span> <span class="next"><a href="/docs/api/style_manager.html">
Style Manager
</a>
→
</span></p></div> </main></div><div class="global-ui"></div></div>
<script src="/docs/assets/js/app.4dd41b9b.js" defer></script><script src="/docs/assets/js/11.b2ac4984.js" defer></script><script src="/docs/assets/js/2.a342f4be.js" defer></script><script src="/docs/assets/js/32.0a0e4ae7.js" defer></script>
</body>
</html>

114
docs/api/rich_text_editor.html

@ -4,76 +4,110 @@
<meta charset="utf-8">
<meta name="viewport" content="width=device-width,initial-scale=1">
<title>GrapesJS</title>
<meta name="description" content="GrapesJS documentation">
<meta name="generator" content="VuePress 1.4.1">
<link rel="icon" href="/docs/logo-icon.png">
<link rel="stylesheet" href="../stylesheets/grapes.min.css?v0.16.12">
<script src="../js/grapes.min.js?v0.16.12"></script>
<link rel="preload" href="/docs/assets/css/styles.e1f2d947.css" as="style"><link rel="preload" href="/docs/assets/js/app.e1f2d947.js" as="script"><link rel="preload" href="/docs/assets/js/27.7372785c.js" as="script"><link rel="prefetch" href="/docs/assets/css/1.styles.b40e6662.css"><link rel="prefetch" href="/docs/assets/css/2.styles.896e948d.css"><link rel="prefetch" href="/docs/assets/css/3.styles.46968bd4.css"><link rel="prefetch" href="/docs/assets/css/4.styles.79691bb5.css"><link rel="prefetch" href="/docs/assets/css/5.styles.6013373a.css"><link rel="prefetch" href="/docs/assets/css/6.styles.467c19a2.css"><link rel="prefetch" href="/docs/assets/css/7.styles.ce9d181d.css"><link rel="prefetch" href="/docs/assets/css/8.styles.aae17ac6.css"><link rel="prefetch" href="/docs/assets/css/9.styles.e0170b17.css"><link rel="prefetch" href="/docs/assets/js/1.b40e6662.js"><link rel="prefetch" href="/docs/assets/js/10.e7cd7c26.js"><link rel="prefetch" href="/docs/assets/js/11.3f87b9b8.js"><link rel="prefetch" href="/docs/assets/js/12.269b5586.js"><link rel="prefetch" href="/docs/assets/js/13.e52ea678.js"><link rel="prefetch" href="/docs/assets/js/14.0606827a.js"><link rel="prefetch" href="/docs/assets/js/15.aa7f42f8.js"><link rel="prefetch" href="/docs/assets/js/16.959c0bd7.js"><link rel="prefetch" href="/docs/assets/js/17.bfba947e.js"><link rel="prefetch" href="/docs/assets/js/18.7f401ffb.js"><link rel="prefetch" href="/docs/assets/js/19.3e0ce3c8.js"><link rel="prefetch" href="/docs/assets/js/2.896e948d.js"><link rel="prefetch" href="/docs/assets/js/20.f4502040.js"><link rel="prefetch" href="/docs/assets/js/21.2babea6a.js"><link rel="prefetch" href="/docs/assets/js/22.26e5d9ed.js"><link rel="prefetch" href="/docs/assets/js/23.a2c9ec17.js"><link rel="prefetch" href="/docs/assets/js/24.f9675b16.js"><link rel="prefetch" href="/docs/assets/js/25.b52924ae.js"><link rel="prefetch" href="/docs/assets/js/26.81c00685.js"><link rel="prefetch" href="/docs/assets/js/28.df5c22ed.js"><link rel="prefetch" href="/docs/assets/js/29.b167a894.js"><link rel="prefetch" href="/docs/assets/js/3.46968bd4.js"><link rel="prefetch" href="/docs/assets/js/30.d165faf7.js"><link rel="prefetch" href="/docs/assets/js/31.334d7953.js"><link rel="prefetch" href="/docs/assets/js/32.f9daa2c8.js"><link rel="prefetch" href="/docs/assets/js/33.93f49bfa.js"><link rel="prefetch" href="/docs/assets/js/34.4865e6c3.js"><link rel="prefetch" href="/docs/assets/js/35.9d089775.js"><link rel="prefetch" href="/docs/assets/js/36.67cb8d1f.js"><link rel="prefetch" href="/docs/assets/js/37.708a94ac.js"><link rel="prefetch" href="/docs/assets/js/38.0f8df29b.js"><link rel="prefetch" href="/docs/assets/js/39.074f3faf.js"><link rel="prefetch" href="/docs/assets/js/4.79691bb5.js"><link rel="prefetch" href="/docs/assets/js/40.cef45f06.js"><link rel="prefetch" href="/docs/assets/js/41.c734b929.js"><link rel="prefetch" href="/docs/assets/js/42.1078a060.js"><link rel="prefetch" href="/docs/assets/js/43.7188da01.js"><link rel="prefetch" href="/docs/assets/js/44.1fd52e91.js"><link rel="prefetch" href="/docs/assets/js/45.69c67864.js"><link rel="prefetch" href="/docs/assets/js/5.6013373a.js"><link rel="prefetch" href="/docs/assets/js/6.467c19a2.js"><link rel="prefetch" href="/docs/assets/js/7.ce9d181d.js"><link rel="prefetch" href="/docs/assets/js/8.aae17ac6.js"><link rel="prefetch" href="/docs/assets/js/9.e0170b17.js">
<link rel="stylesheet" href="/docs/assets/css/styles.e1f2d947.css">
<link rel="stylesheet" href="../stylesheets/grapes.min.css?v0.16.12">
<script src="../js/grapes.min.js?v0.16.12"></script>
<meta name="description" content="GrapesJS documentation">
<link rel="preload" href="/docs/assets/css/0.styles.d44f2c14.css" as="style"><link rel="preload" href="/docs/assets/js/app.4dd41b9b.js" as="script"><link rel="preload" href="/docs/assets/js/11.b2ac4984.js" as="script"><link rel="preload" href="/docs/assets/js/2.a342f4be.js" as="script"><link rel="preload" href="/docs/assets/js/33.0ba298a5.js" as="script"><link rel="prefetch" href="/docs/assets/js/10.6a518be5.js"><link rel="prefetch" href="/docs/assets/js/12.bf8ecce1.js"><link rel="prefetch" href="/docs/assets/js/13.d807997f.js"><link rel="prefetch" href="/docs/assets/js/14.0ba8a778.js"><link rel="prefetch" href="/docs/assets/js/15.52ce2afa.js"><link rel="prefetch" href="/docs/assets/js/16.47266d46.js"><link rel="prefetch" href="/docs/assets/js/17.9b7a7fa4.js"><link rel="prefetch" href="/docs/assets/js/18.66b0785d.js"><link rel="prefetch" href="/docs/assets/js/19.2f9692d0.js"><link rel="prefetch" href="/docs/assets/js/20.ab1e767c.js"><link rel="prefetch" href="/docs/assets/js/21.66fe8957.js"><link rel="prefetch" href="/docs/assets/js/22.cb6c233f.js"><link rel="prefetch" href="/docs/assets/js/23.dc99d7c7.js"><link rel="prefetch" href="/docs/assets/js/24.245fff8a.js"><link rel="prefetch" href="/docs/assets/js/25.d8c7e0b5.js"><link rel="prefetch" href="/docs/assets/js/26.ad7fc796.js"><link rel="prefetch" href="/docs/assets/js/27.169cfbf6.js"><link rel="prefetch" href="/docs/assets/js/28.f086d486.js"><link rel="prefetch" href="/docs/assets/js/29.5e2a7327.js"><link rel="prefetch" href="/docs/assets/js/3.7e642bff.js"><link rel="prefetch" href="/docs/assets/js/30.3a998b30.js"><link rel="prefetch" href="/docs/assets/js/31.5286fade.js"><link rel="prefetch" href="/docs/assets/js/32.0a0e4ae7.js"><link rel="prefetch" href="/docs/assets/js/34.07640632.js"><link rel="prefetch" href="/docs/assets/js/35.061f6dd5.js"><link rel="prefetch" href="/docs/assets/js/36.63462982.js"><link rel="prefetch" href="/docs/assets/js/37.e2d50838.js"><link rel="prefetch" href="/docs/assets/js/38.1230aa70.js"><link rel="prefetch" href="/docs/assets/js/39.c8373102.js"><link rel="prefetch" href="/docs/assets/js/4.32ffd5a1.js"><link rel="prefetch" href="/docs/assets/js/40.0600f064.js"><link rel="prefetch" href="/docs/assets/js/41.9bbfe266.js"><link rel="prefetch" href="/docs/assets/js/42.63c51d25.js"><link rel="prefetch" href="/docs/assets/js/43.d69d8e57.js"><link rel="prefetch" href="/docs/assets/js/44.a981446c.js"><link rel="prefetch" href="/docs/assets/js/45.415ecb59.js"><link rel="prefetch" href="/docs/assets/js/46.75d7a27f.js"><link rel="prefetch" href="/docs/assets/js/47.a4983875.js"><link rel="prefetch" href="/docs/assets/js/48.0dd7e7e0.js"><link rel="prefetch" href="/docs/assets/js/49.166bd1fa.js"><link rel="prefetch" href="/docs/assets/js/5.a0a5a0aa.js"><link rel="prefetch" href="/docs/assets/js/50.4e76f723.js"><link rel="prefetch" href="/docs/assets/js/51.21d145d2.js"><link rel="prefetch" href="/docs/assets/js/52.43234198.js"><link rel="prefetch" href="/docs/assets/js/6.9461537e.js"><link rel="prefetch" href="/docs/assets/js/7.3158bea4.js"><link rel="prefetch" href="/docs/assets/js/8.625d63ee.js"><link rel="prefetch" href="/docs/assets/js/9.e856c4d3.js">
<link rel="stylesheet" href="/docs/assets/css/0.styles.d44f2c14.css">
</head>
<body>
<div id="app" data-server-rendered="true"><div class="theme-container"><header class="navbar"><div class="sidebar-button"><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" role="img" viewBox="0 0 448 512" class="icon"><path fill="currentColor" d="M436 124H12c-6.627 0-12-5.373-12-12V80c0-6.627 5.373-12 12-12h424c6.627 0 12 5.373 12 12v32c0 6.627-5.373 12-12 12zm0 160H12c-6.627 0-12-5.373-12-12v-32c0-6.627 5.373-12 12-12h424c6.627 0 12 5.373 12 12v32c0 6.627-5.373 12-12 12zm0 160H12c-6.627 0-12-5.373-12-12v-32c0-6.627 5.373-12 12-12h424c6.627 0 12 5.373 12 12v32c0 6.627-5.373 12-12 12z"></path></svg></div><a href="/docs/" class="home-link router-link-active"><img src="/docs/logo.png" class="logo"><span class="site-name can-hide">
GrapesJS
</span></a><div class="links"><div class="search-box"><input aria-label="Search" autocomplete="off" spellcheck="false" value=""><!----></div><nav class="nav-links can-hide"><div class="nav-item"><a href="/docs/" class="nav-link">Docs</a></div><div class="nav-item"><a href="/docs/api/" class="nav-link router-link-active">API Reference</a></div><div class="nav-item"><a href="https://opencollective.com/grapesjs" target="_blank" rel="noopener noreferrer" class="nav-link external">
<div id="app" data-server-rendered="true"><div class="theme-container"><header class="navbar"><div class="sidebar-button"><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" role="img" viewBox="0 0 448 512" class="icon"><path fill="currentColor" d="M436 124H12c-6.627 0-12-5.373-12-12V80c0-6.627 5.373-12 12-12h424c6.627 0 12 5.373 12 12v32c0 6.627-5.373 12-12 12zm0 160H12c-6.627 0-12-5.373-12-12v-32c0-6.627 5.373-12 12-12h424c6.627 0 12 5.373 12 12v32c0 6.627-5.373 12-12 12zm0 160H12c-6.627 0-12-5.373-12-12v-32c0-6.627 5.373-12 12-12h424c6.627 0 12 5.373 12 12v32c0 6.627-5.373 12-12 12z"></path></svg></div> <a href="/docs/" class="home-link router-link-active"><img src="/docs/logo.png" alt="GrapesJS" class="logo"> <span class="site-name can-hide">GrapesJS</span></a> <div class="links"><div class="search-box"><input aria-label="Search" autocomplete="off" spellcheck="false" value=""> <!----></div> <nav class="nav-links can-hide"><div class="nav-item"><a href="/docs/" class="nav-link">
Docs
</a></div><div class="nav-item"><a href="/docs/api/" class="nav-link router-link-active">
API Reference
</a></div><div class="nav-item"><a href="https://opencollective.com/grapesjs" target="_blank" rel="noopener noreferrer" class="nav-link external">
Support Us
<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path><polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></div><div class="nav-item"><a href="https://twitter.com/grapesjs" target="_blank" rel="noopener noreferrer" class="nav-link external">
<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></div><div class="nav-item"><a href="https://twitter.com/grapesjs" target="_blank" rel="noopener noreferrer" class="nav-link external">
Twitter
<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path><polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></div><a href="https://github.com/artf/grapesjs" target="_blank" rel="noopener noreferrer" class="repo-link">
<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></div> <a href="https://github.com/artf/grapesjs" target="_blank" rel="noopener noreferrer" class="repo-link">
GitHub
<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path><polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></nav></div></header><div class="sidebar-mask"></div><div class="sidebar"><nav class="nav-links"><div class="nav-item"><a href="/docs/" class="nav-link">Docs</a></div><div class="nav-item"><a href="/docs/api/" class="nav-link router-link-active">API Reference</a></div><div class="nav-item"><a href="https://opencollective.com/grapesjs" target="_blank" rel="noopener noreferrer" class="nav-link external">
<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></nav></div></header> <div class="sidebar-mask"></div> <aside class="sidebar"><nav class="nav-links"><div class="nav-item"><a href="/docs/" class="nav-link">
Docs
</a></div><div class="nav-item"><a href="/docs/api/" class="nav-link router-link-active">
API Reference
</a></div><div class="nav-item"><a href="https://opencollective.com/grapesjs" target="_blank" rel="noopener noreferrer" class="nav-link external">
Support Us
<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path><polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></div><div class="nav-item"><a href="https://twitter.com/grapesjs" target="_blank" rel="noopener noreferrer" class="nav-link external">
<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></div><div class="nav-item"><a href="https://twitter.com/grapesjs" target="_blank" rel="noopener noreferrer" class="nav-link external">
Twitter
<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path><polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></div><a href="https://github.com/artf/grapesjs" target="_blank" rel="noopener noreferrer" class="repo-link">
<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></div> <a href="https://github.com/artf/grapesjs" target="_blank" rel="noopener noreferrer" class="repo-link">
GitHub
<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path><polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></nav><div id="native-carbon" class="carbon-ads"></div><ul class="sidebar-links"><li><a href="/docs/api/" class="sidebar-link">API Reference</a></li><li><a href="/docs/api/editor.html" class="sidebar-link">Editor</a></li><li><a href="/docs/api/i18n.html" class="sidebar-link">I18n</a></li><li><a href="/docs/api/canvas.html" class="sidebar-link">Canvas</a></li><li><a href="/docs/api/assets.html" class="sidebar-link">Asset Manager</a></li><li><a href="/docs/api/block_manager.html" class="sidebar-link">Block Manager</a></li><li><a href="/docs/api/commands.html" class="sidebar-link">Commands</a></li><li><a href="/docs/api/components.html" class="sidebar-link">DOM Components</a></li><li><a href="/docs/api/component.html" class="sidebar-link"> - Component</a></li><li><a href="/docs/api/panels.html" class="sidebar-link">Panels</a></li><li><a href="/docs/api/style_manager.html" class="sidebar-link">Style Manager</a></li><li><a href="/docs/api/storage_manager.html" class="sidebar-link">Storage Manager</a></li><li><a href="/docs/api/device_manager.html" class="sidebar-link">Device Manager</a></li><li><a href="/docs/api/selector_manager.html" class="sidebar-link">Selector Manager</a></li><li><a href="/docs/api/css_composer.html" class="sidebar-link">CSS Composer</a></li><li><a href="/docs/api/modal_dialog.html" class="sidebar-link">Modal</a></li><li><a href="/docs/api/rich_text_editor.html" class="active sidebar-link">Rich Text Editor</a><ul class="sidebar-sub-headers"><li class="sidebar-sub-header"><a href="/docs/api/rich_text_editor.html#richtexteditor" class="sidebar-link">RichTextEditor</a></li><li class="sidebar-sub-header"><a href="/docs/api/rich_text_editor.html#add" class="sidebar-link">add</a></li><li class="sidebar-sub-header"><a href="/docs/api/rich_text_editor.html#get" class="sidebar-link">get</a></li><li class="sidebar-sub-header"><a href="/docs/api/rich_text_editor.html#getall" class="sidebar-link">getAll</a></li><li class="sidebar-sub-header"><a href="/docs/api/rich_text_editor.html#remove" class="sidebar-link">remove</a></li><li class="sidebar-sub-header"><a href="/docs/api/rich_text_editor.html#gettoolbarel" class="sidebar-link">getToolbarEl</a></li></ul></li><li><a href="/docs/api/keymaps.html" class="sidebar-link">Keymaps</a></li><li><a href="/docs/api/undo_manager.html" class="sidebar-link">Undo Manager</a></li></ul></div><div class="page"><div class="content"><h2 id="richtexteditor"><a href="#richtexteditor" aria-hidden="true" class="header-anchor">#</a> RichTextEditor</h2><p>This module allows to customize the built-in toolbar of the Rich Text Editor and use commands from the <a href="https://developer.mozilla.org/en-US/docs/Web/API/Document/execCommand" target="_blank" rel="noopener noreferrer">HTML Editing APIs<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path><polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a>.
It's highly recommended to keep this toolbar as small as possible, especially from styling commands (eg. 'fontSize') and leave this task to the Style Manager</p><p>You can customize the initial state of the module from the editor initialization, by passing the following <a href="https://github.com/artf/grapesjs/blob/master/src/rich_text_editor/config/config.js" target="_blank" rel="noopener noreferrer">Configuration Object<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path><polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></p><div class="language-js extra-class"><pre class="language-js"><code><span class="token keyword">const</span> editor <span class="token operator">=</span> grapesjs<span class="token punctuation">.</span><span class="token function">init</span><span class="token punctuation">(</span><span class="token punctuation">{</span>
richTextEditor<span class="token punctuation">:</span> <span class="token punctuation">{</span>
<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></nav> <div id="native-carbon" class="carbon-ads"></div> <ul class="sidebar-links"><li><a href="/docs/api/" class="sidebar-link">API Reference</a></li><li><a href="/docs/api/editor.html" class="sidebar-link">Editor</a></li><li><a href="/docs/api/i18n.html" class="sidebar-link">I18n</a></li><li><a href="/docs/api/canvas.html" class="sidebar-link">Canvas</a></li><li><a href="/docs/api/assets.html" class="sidebar-link">Asset Manager</a></li><li><a href="/docs/api/block_manager.html" class="sidebar-link">Block Manager</a></li><li><a href="/docs/api/commands.html" class="sidebar-link">Commands</a></li><li><a href="/docs/api/components.html" class="sidebar-link">DOM Components</a></li><li><a href="/docs/api/component.html" class="sidebar-link"> - Component</a></li><li><a href="/docs/api/panels.html" class="sidebar-link">Panels</a></li><li><a href="/docs/api/style_manager.html" class="sidebar-link">Style Manager</a></li><li><a href="/docs/api/storage_manager.html" class="sidebar-link">Storage Manager</a></li><li><a href="/docs/api/device_manager.html" class="sidebar-link">Device Manager</a></li><li><a href="/docs/api/selector_manager.html" class="sidebar-link">Selector Manager</a></li><li><a href="/docs/api/css_composer.html" class="sidebar-link">CSS Composer</a></li><li><a href="/docs/api/modal_dialog.html" class="sidebar-link">Modal</a></li><li><a href="/docs/api/rich_text_editor.html" class="active sidebar-link">Rich Text Editor</a><ul class="sidebar-sub-headers"><li class="sidebar-sub-header"><a href="/docs/api/rich_text_editor.html#richtexteditor" class="sidebar-link">RichTextEditor</a></li><li class="sidebar-sub-header"><a href="/docs/api/rich_text_editor.html#add" class="sidebar-link">add</a></li><li class="sidebar-sub-header"><a href="/docs/api/rich_text_editor.html#get" class="sidebar-link">get</a></li><li class="sidebar-sub-header"><a href="/docs/api/rich_text_editor.html#getall" class="sidebar-link">getAll</a></li><li class="sidebar-sub-header"><a href="/docs/api/rich_text_editor.html#remove" class="sidebar-link">remove</a></li><li class="sidebar-sub-header"><a href="/docs/api/rich_text_editor.html#gettoolbarel" class="sidebar-link">getToolbarEl</a></li></ul></li><li><a href="/docs/api/keymaps.html" class="sidebar-link">Keymaps</a></li><li><a href="/docs/api/undo_manager.html" class="sidebar-link">Undo Manager</a></li></ul> </aside> <main class="page"> <div class="theme-default-content content__default"><h2 id="richtexteditor"><a href="#richtexteditor" class="header-anchor">#</a> RichTextEditor</h2> <p>This module allows to customize the built-in toolbar of the Rich Text Editor and use commands from the <a href="https://developer.mozilla.org/en-US/docs/Web/API/Document/execCommand" target="_blank" rel="noopener noreferrer">HTML Editing APIs<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a>.
It's highly recommended to keep this toolbar as small as possible, especially from styling commands (eg. 'fontSize') and leave this task to the Style Manager</p> <p>You can customize the initial state of the module from the editor initialization, by passing the following <a href="https://github.com/artf/grapesjs/blob/master/src/rich_text_editor/config/config.js" target="_blank" rel="noopener noreferrer">Configuration Object<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></p> <div class="language-js extra-class"><pre class="language-js"><code><span class="token keyword">const</span> editor <span class="token operator">=</span> grapesjs<span class="token punctuation">.</span><span class="token function">init</span><span class="token punctuation">(</span><span class="token punctuation">{</span>
richTextEditor<span class="token operator">:</span> <span class="token punctuation">{</span>
<span class="token comment">// options</span>
<span class="token punctuation">}</span>
<span class="token punctuation">}</span><span class="token punctuation">)</span>
</code></pre></div><p>Once the editor is instantiated you can use its API. Before using these methods you should get the module from the instance</p><div class="language-js extra-class"><pre class="language-js"><code><span class="token keyword">const</span> rte <span class="token operator">=</span> editor<span class="token punctuation">.</span>RichTextEditor<span class="token punctuation">;</span>
</code></pre></div><ul><li><a href="#add">add</a></li><li><a href="#get">get</a></li><li><a href="#getall">getAll</a></li><li><a href="#remove">remove</a></li><li><a href="#gettoolbarel">getToolbarEl</a></li></ul><h2 id="add"><a href="#add" aria-hidden="true" class="header-anchor">#</a> add</h2><p>Add a new action to the built-in RTE toolbar</p><h3 id="parameters"><a href="#parameters" aria-hidden="true" class="header-anchor">#</a> Parameters</h3><ul><li><code>name</code><strong><a href="https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String" target="_blank" rel="noopener noreferrer">string<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path><polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></strong> Action name</li><li><code>action</code><strong><a href="https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Object" target="_blank" rel="noopener noreferrer">Object<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path><polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></strong> Action options (optional, default <code>{}</code>)</li></ul><h3 id="examples"><a href="#examples" aria-hidden="true" class="header-anchor">#</a> Examples</h3><div class="language-javascript extra-class"><pre class="language-javascript"><code>rte<span class="token punctuation">.</span><span class="token function">add</span><span class="token punctuation">(</span><span class="token string">'bold'</span><span class="token punctuation">,</span> <span class="token punctuation">{</span>
icon<span class="token punctuation">:</span> <span class="token string">'&lt;b&gt;B&lt;/b&gt;'</span><span class="token punctuation">,</span>
attributes<span class="token punctuation">:</span> <span class="token punctuation">{</span>title<span class="token punctuation">:</span> <span class="token string">'Bold'</span><span class="token punctuation">}</span><span class="token punctuation">,</span>
<span class="token function-variable function">result</span><span class="token punctuation">:</span> <span class="token parameter">rte</span> <span class="token operator">=&gt;</span> rte<span class="token punctuation">.</span><span class="token function">exec</span><span class="token punctuation">(</span><span class="token string">'bold'</span><span class="token punctuation">)</span>
</code></pre></div><p>Once the editor is instantiated you can use its API. Before using these methods you should get the module from the instance</p> <div class="language-js extra-class"><pre class="language-js"><code><span class="token keyword">const</span> rte <span class="token operator">=</span> editor<span class="token punctuation">.</span>RichTextEditor<span class="token punctuation">;</span>
</code></pre></div><ul><li><a href="#add">add</a></li> <li><a href="#get">get</a></li> <li><a href="#getall">getAll</a></li> <li><a href="#remove">remove</a></li> <li><a href="#gettoolbarel">getToolbarEl</a></li></ul> <h2 id="add"><a href="#add" class="header-anchor">#</a> add</h2> <p>Add a new action to the built-in RTE toolbar</p> <h3 id="parameters"><a href="#parameters" class="header-anchor">#</a> Parameters</h3> <ul><li><code>name</code> <strong><a href="https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String" target="_blank" rel="noopener noreferrer">string<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></strong> Action name</li> <li><code>action</code> <strong><a href="https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Object" target="_blank" rel="noopener noreferrer">Object<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></strong> Action options (optional, default <code>{}</code>)</li></ul> <h3 id="examples"><a href="#examples" class="header-anchor">#</a> Examples</h3> <div class="language-javascript extra-class"><pre class="language-javascript"><code>rte<span class="token punctuation">.</span><span class="token function">add</span><span class="token punctuation">(</span><span class="token string">'bold'</span><span class="token punctuation">,</span> <span class="token punctuation">{</span>
icon<span class="token operator">:</span> <span class="token string">'&lt;b&gt;B&lt;/b&gt;'</span><span class="token punctuation">,</span>
attributes<span class="token operator">:</span> <span class="token punctuation">{</span>title<span class="token operator">:</span> <span class="token string">'Bold'</span><span class="token punctuation">}</span><span class="token punctuation">,</span>
<span class="token function-variable function">result</span><span class="token operator">:</span> <span class="token parameter">rte</span> <span class="token operator">=&gt;</span> rte<span class="token punctuation">.</span><span class="token function">exec</span><span class="token punctuation">(</span><span class="token string">'bold'</span><span class="token punctuation">)</span>
<span class="token punctuation">}</span><span class="token punctuation">)</span><span class="token punctuation">;</span>
rte<span class="token punctuation">.</span><span class="token function">add</span><span class="token punctuation">(</span><span class="token string">'link'</span><span class="token punctuation">,</span> <span class="token punctuation">{</span>
icon<span class="token punctuation">:</span> document<span class="token punctuation">.</span><span class="token function">getElementById</span><span class="token punctuation">(</span><span class="token string">'t'</span><span class="token punctuation">)</span><span class="token punctuation">,</span>
attributes<span class="token punctuation">:</span> <span class="token punctuation">{</span>title<span class="token punctuation">:</span> <span class="token string">'Link'</span><span class="token punctuation">,</span><span class="token punctuation">}</span>
icon<span class="token operator">:</span> document<span class="token punctuation">.</span><span class="token function">getElementById</span><span class="token punctuation">(</span><span class="token string">'t'</span><span class="token punctuation">)</span><span class="token punctuation">,</span>
attributes<span class="token operator">:</span> <span class="token punctuation">{</span>title<span class="token operator">:</span> <span class="token string">'Link'</span><span class="token punctuation">,</span><span class="token punctuation">}</span>
<span class="token comment">// Example on it's easy to wrap a selected content</span>
<span class="token function-variable function">result</span><span class="token punctuation">:</span> <span class="token parameter">rte</span> <span class="token operator">=&gt;</span> rte<span class="token punctuation">.</span><span class="token function">insertHTML</span><span class="token punctuation">(</span><span class="token template-string"><span class="token string">`&lt;a href=&quot;#&quot;&gt;</span><span class="token interpolation"><span class="token interpolation-punctuation punctuation">${</span>rte<span class="token punctuation">.</span><span class="token function">selection</span><span class="token punctuation">(</span><span class="token punctuation">)</span><span class="token interpolation-punctuation punctuation">}</span></span><span class="token string">&lt;/a&gt;`</span></span><span class="token punctuation">)</span>
<span class="token function-variable function">result</span><span class="token operator">:</span> <span class="token parameter">rte</span> <span class="token operator">=&gt;</span> rte<span class="token punctuation">.</span><span class="token function">insertHTML</span><span class="token punctuation">(</span><span class="token template-string"><span class="token template-punctuation string">`</span><span class="token string">&lt;a href=&quot;#&quot;&gt;</span><span class="token interpolation"><span class="token interpolation-punctuation punctuation">${</span>rte<span class="token punctuation">.</span><span class="token function">selection</span><span class="token punctuation">(</span><span class="token punctuation">)</span><span class="token interpolation-punctuation punctuation">}</span></span><span class="token string">&lt;/a&gt;</span><span class="token template-punctuation string">`</span></span><span class="token punctuation">)</span>
<span class="token punctuation">}</span><span class="token punctuation">)</span><span class="token punctuation">;</span>
<span class="token comment">// An example with fontSize</span>
rte<span class="token punctuation">.</span><span class="token function">add</span><span class="token punctuation">(</span><span class="token string">'fontSize'</span><span class="token punctuation">,</span> <span class="token punctuation">{</span>
icon<span class="token punctuation">:</span> <span class="token template-string"><span class="token string">`&lt;select class=&quot;gjs-field&quot;&gt;
icon<span class="token operator">:</span> <span class="token template-string"><span class="token template-punctuation string">`</span><span class="token string">&lt;select class=&quot;gjs-field&quot;&gt;
&lt;option&gt;1&lt;/option&gt;
&lt;option&gt;4&lt;/option&gt;
&lt;option&gt;7&lt;/option&gt;
&lt;/select&gt;`</span></span><span class="token punctuation">,</span>
&lt;/select&gt;</span><span class="token template-punctuation string">`</span></span><span class="token punctuation">,</span>
<span class="token comment">// Bind the 'result' on 'change' listener</span>
event<span class="token punctuation">:</span> <span class="token string">'change'</span><span class="token punctuation">,</span>
<span class="token function-variable function">result</span><span class="token punctuation">:</span> <span class="token punctuation">(</span><span class="token parameter">rte<span class="token punctuation">,</span> action</span><span class="token punctuation">)</span> <span class="token operator">=&gt;</span> rte<span class="token punctuation">.</span><span class="token function">exec</span><span class="token punctuation">(</span><span class="token string">'fontSize'</span><span class="token punctuation">,</span> action<span class="token punctuation">.</span>btn<span class="token punctuation">.</span>firstChild<span class="token punctuation">.</span>value<span class="token punctuation">)</span><span class="token punctuation">,</span>
event<span class="token operator">:</span> <span class="token string">'change'</span><span class="token punctuation">,</span>
<span class="token function-variable function">result</span><span class="token operator">:</span> <span class="token punctuation">(</span><span class="token parameter">rte<span class="token punctuation">,</span> action</span><span class="token punctuation">)</span> <span class="token operator">=&gt;</span> rte<span class="token punctuation">.</span><span class="token function">exec</span><span class="token punctuation">(</span><span class="token string">'fontSize'</span><span class="token punctuation">,</span> action<span class="token punctuation">.</span>btn<span class="token punctuation">.</span>firstChild<span class="token punctuation">.</span>value<span class="token punctuation">)</span><span class="token punctuation">,</span>
<span class="token comment">// Callback on any input change (mousedown, keydown, etc..)</span>
<span class="token function-variable function">update</span><span class="token punctuation">:</span> <span class="token punctuation">(</span><span class="token parameter">rte<span class="token punctuation">,</span> action</span><span class="token punctuation">)</span> <span class="token operator">=&gt;</span> <span class="token punctuation">{</span>
<span class="token function-variable function">update</span><span class="token operator">:</span> <span class="token punctuation">(</span><span class="token parameter">rte<span class="token punctuation">,</span> action</span><span class="token punctuation">)</span> <span class="token operator">=&gt;</span> <span class="token punctuation">{</span>
<span class="token keyword">const</span> value <span class="token operator">=</span> rte<span class="token punctuation">.</span>doc<span class="token punctuation">.</span><span class="token function">queryCommandValue</span><span class="token punctuation">(</span>action<span class="token punctuation">.</span>name<span class="token punctuation">)</span><span class="token punctuation">;</span>
<span class="token keyword">if</span> <span class="token punctuation">(</span>value <span class="token operator">!=</span> <span class="token string">'false'</span><span class="token punctuation">)</span> <span class="token punctuation">{</span> <span class="token comment">// value is a string</span>
action<span class="token punctuation">.</span>btn<span class="token punctuation">.</span>firstChild<span class="token punctuation">.</span>value <span class="token operator">=</span> value<span class="token punctuation">;</span>
<span class="token punctuation">}</span>
<span class="token punctuation">}</span>
<span class="token punctuation">}</span><span class="token punctuation">)</span>
</code></pre></div><h2 id="get"><a href="#get" aria-hidden="true" class="header-anchor">#</a> get</h2><p>Get the action by its name</p><h3 id="parameters-2"><a href="#parameters-2" aria-hidden="true" class="header-anchor">#</a> Parameters</h3><ul><li><code>name</code><strong><a href="https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String" target="_blank" rel="noopener noreferrer">string<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path><polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></strong> Action name</li></ul><h3 id="examples-2"><a href="#examples-2" aria-hidden="true" class="header-anchor">#</a> Examples</h3><div class="language-javascript extra-class"><pre class="language-javascript"><code><span class="token keyword">const</span> action <span class="token operator">=</span> rte<span class="token punctuation">.</span><span class="token function">get</span><span class="token punctuation">(</span><span class="token string">'bold'</span><span class="token punctuation">)</span><span class="token punctuation">;</span>
<span class="token comment">// An example with state</span>
<span class="token keyword">const</span> <span class="token function-variable function">isValidAnchor</span> <span class="token operator">=</span> <span class="token punctuation">(</span><span class="token parameter">rte</span><span class="token punctuation">)</span> <span class="token operator">=&gt;</span> <span class="token punctuation">{</span>
<span class="token comment">// a utility function to help determine if the selected is a valid anchor node</span>
<span class="token keyword">const</span> anchor <span class="token operator">=</span> rte<span class="token punctuation">.</span><span class="token function">selection</span><span class="token punctuation">(</span><span class="token punctuation">)</span><span class="token punctuation">.</span>anchorNode<span class="token punctuation">;</span>
<span class="token keyword">const</span> parentNode <span class="token operator">=</span> anchor <span class="token operator">&amp;&amp;</span> anchor<span class="token punctuation">.</span>parentNode<span class="token punctuation">;</span>
<span class="token keyword">const</span> nextSibling <span class="token operator">=</span> anchor <span class="token operator">&amp;&amp;</span> anchor<span class="token punctuation">.</span>nextSibling<span class="token punctuation">;</span>
<span class="token keyword">return</span> <span class="token punctuation">(</span>parentNode <span class="token operator">&amp;&amp;</span> parentNode<span class="token punctuation">.</span>nodeName <span class="token operator">==</span> <span class="token string">'A'</span><span class="token punctuation">)</span> <span class="token operator">||</span> <span class="token punctuation">(</span>nextSibling <span class="token operator">&amp;&amp;</span> nextSibling<span class="token punctuation">.</span>nodeName <span class="token operator">==</span> <span class="token string">'A'</span><span class="token punctuation">)</span>
<span class="token punctuation">}</span>
rte<span class="token punctuation">.</span><span class="token function">add</span><span class="token punctuation">(</span><span class="token string">'toggleAnchor'</span><span class="token punctuation">,</span> <span class="token punctuation">{</span>
icon<span class="token operator">:</span> <span class="token template-string"><span class="token template-punctuation string">`</span><span class="token string">&lt;span style=&quot;transform:rotate(45deg)&quot;&gt;&amp;supdsub;&lt;/span&gt;</span><span class="token template-punctuation string">`</span></span><span class="token punctuation">,</span>
<span class="token function-variable function">state</span><span class="token operator">:</span> <span class="token punctuation">(</span><span class="token parameter">rte<span class="token punctuation">,</span> doc</span><span class="token punctuation">)</span> <span class="token operator">=&gt;</span> <span class="token punctuation">{</span>
<span class="token keyword">if</span> <span class="token punctuation">(</span>rte <span class="token operator">&amp;&amp;</span> rte<span class="token punctuation">.</span><span class="token function">selection</span><span class="token punctuation">(</span><span class="token punctuation">)</span><span class="token punctuation">)</span> <span class="token punctuation">{</span>
<span class="token comment">// `btnState` is a integer, -1 for disabled, 0 for inactive, 1 for active</span>
<span class="token keyword">return</span> <span class="token function">isValidAnchor</span><span class="token punctuation">(</span>rte<span class="token punctuation">)</span> <span class="token operator">?</span> btnState<span class="token punctuation">.</span><span class="token constant">ACTIVE</span> <span class="token operator">:</span> btnState<span class="token punctuation">.</span><span class="token constant">INACTIVE</span><span class="token punctuation">;</span>
<span class="token punctuation">}</span> <span class="token keyword">else</span> <span class="token punctuation">{</span>
<span class="token keyword">return</span> btnState<span class="token punctuation">.</span><span class="token constant">INACTIVE</span><span class="token punctuation">;</span>
<span class="token punctuation">}</span>
<span class="token punctuation">}</span><span class="token punctuation">,</span>
<span class="token function-variable function">result</span><span class="token operator">:</span> <span class="token punctuation">(</span><span class="token parameter">rte<span class="token punctuation">,</span> action</span><span class="token punctuation">)</span> <span class="token operator">=&gt;</span> <span class="token punctuation">{</span>
<span class="token keyword">if</span> <span class="token punctuation">(</span><span class="token function">isValidAnchor</span><span class="token punctuation">(</span>rte<span class="token punctuation">)</span><span class="token punctuation">)</span> <span class="token punctuation">{</span>
rte<span class="token punctuation">.</span><span class="token function">exec</span><span class="token punctuation">(</span><span class="token string">'unlink'</span><span class="token punctuation">)</span><span class="token punctuation">;</span>
<span class="token punctuation">}</span> <span class="token keyword">else</span> <span class="token punctuation">{</span>
rte<span class="token punctuation">.</span><span class="token function">insertHTML</span><span class="token punctuation">(</span><span class="token template-string"><span class="token template-punctuation string">`</span><span class="token string">&lt;a class=&quot;link&quot; href=&quot;&quot;&gt;</span><span class="token interpolation"><span class="token interpolation-punctuation punctuation">${</span>rte<span class="token punctuation">.</span><span class="token function">selection</span><span class="token punctuation">(</span><span class="token punctuation">)</span><span class="token interpolation-punctuation punctuation">}</span></span><span class="token string">&lt;/a&gt;</span><span class="token template-punctuation string">`</span></span><span class="token punctuation">)</span><span class="token punctuation">;</span>
<span class="token punctuation">}</span>
<span class="token punctuation">}</span>
<span class="token punctuation">}</span><span class="token punctuation">)</span>
</code></pre></div><h2 id="get"><a href="#get" class="header-anchor">#</a> get</h2> <p>Get the action by its name</p> <h3 id="parameters-2"><a href="#parameters-2" class="header-anchor">#</a> Parameters</h3> <ul><li><code>name</code> <strong><a href="https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String" target="_blank" rel="noopener noreferrer">string<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></strong> Action name</li></ul> <h3 id="examples-2"><a href="#examples-2" class="header-anchor">#</a> Examples</h3> <div class="language-javascript extra-class"><pre class="language-javascript"><code><span class="token keyword">const</span> action <span class="token operator">=</span> rte<span class="token punctuation">.</span><span class="token function">get</span><span class="token punctuation">(</span><span class="token string">'bold'</span><span class="token punctuation">)</span><span class="token punctuation">;</span>
<span class="token comment">// {name: 'bold', ...}</span>
</code></pre></div><p>Returns <strong><a href="https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Object" target="_blank" rel="noopener noreferrer">Object<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path><polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></strong></p><h2 id="getall"><a href="#getall" aria-hidden="true" class="header-anchor">#</a> getAll</h2><p>Get all actions</p><p>Returns <strong><a href="https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Array" target="_blank" rel="noopener noreferrer">Array<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path><polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></strong></p><h2 id="remove"><a href="#remove" aria-hidden="true" class="header-anchor">#</a> remove</h2><p>Remove the action from the toolbar</p><h3 id="parameters-3"><a href="#parameters-3" aria-hidden="true" class="header-anchor">#</a> Parameters</h3><ul><li><code>name</code><strong><a href="https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String" target="_blank" rel="noopener noreferrer">string<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path><polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></strong></li></ul><h3 id="examples-3"><a href="#examples-3" aria-hidden="true" class="header-anchor">#</a> Examples</h3><div class="language-javascript extra-class"><pre class="language-javascript"><code><span class="token keyword">const</span> action <span class="token operator">=</span> rte<span class="token punctuation">.</span><span class="token function">remove</span><span class="token punctuation">(</span><span class="token string">'bold'</span><span class="token punctuation">)</span><span class="token punctuation">;</span>
</code></pre></div><p>Returns <strong><a href="https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Object" target="_blank" rel="noopener noreferrer">Object<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></strong></p> <h2 id="getall"><a href="#getall" class="header-anchor">#</a> getAll</h2> <p>Get all actions</p> <p>Returns <strong><a href="https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Array" target="_blank" rel="noopener noreferrer">Array<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></strong></p> <h2 id="remove"><a href="#remove" class="header-anchor">#</a> remove</h2> <p>Remove the action from the toolbar</p> <h3 id="parameters-3"><a href="#parameters-3" class="header-anchor">#</a> Parameters</h3> <ul><li><code>name</code> <strong><a href="https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String" target="_blank" rel="noopener noreferrer">string<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></strong></li></ul> <h3 id="examples-3"><a href="#examples-3" class="header-anchor">#</a> Examples</h3> <div class="language-javascript extra-class"><pre class="language-javascript"><code><span class="token keyword">const</span> action <span class="token operator">=</span> rte<span class="token punctuation">.</span><span class="token function">remove</span><span class="token punctuation">(</span><span class="token string">'bold'</span><span class="token punctuation">)</span><span class="token punctuation">;</span>
<span class="token comment">// {name: 'bold', ...}</span>
</code></pre></div><p>Returns <strong><a href="https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Object" target="_blank" rel="noopener noreferrer">Object<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path><polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></strong> Removed action</p><h2 id="gettoolbarel"><a href="#gettoolbarel" aria-hidden="true" class="header-anchor">#</a> getToolbarEl</h2><p>Get the toolbar element</p><p>Returns <strong><a href="https://developer.mozilla.org/docs/Web/HTML/Element" target="_blank" rel="noopener noreferrer">HTMLElement<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path><polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></strong></p></div><div class="page-edit"><div class="edit-link"><a href="https://github.com/artf/grapesjs/edit/dev/docs/api/rich_text_editor.md" target="_blank" rel="noopener noreferrer">Edit this page on GitHub</a><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path><polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></div><div class="last-updated"><span class="prefix">Last Updated: </span><span class="time">9/18/2019, 7:55:02 AM</span></div></div><div class="page-nav"><p class="inner"><span class="prev">
← <a href="/docs/api/modal_dialog.html" class="prev">
Modal
</a></span><span class="next"><a href="/docs/api/keymaps.html">
Keymaps
</a> →
</span></p></div></div></div></div>
<script src="/docs/assets/js/app.e1f2d947.js" defer></script><script src="/docs/assets/js/27.7372785c.js" defer></script>
</code></pre></div><p>Returns <strong><a href="https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Object" target="_blank" rel="noopener noreferrer">Object<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></strong> Removed action</p> <h2 id="gettoolbarel"><a href="#gettoolbarel" class="header-anchor">#</a> getToolbarEl</h2> <p>Get the toolbar element</p> <p>Returns <strong><a href="https://developer.mozilla.org/docs/Web/HTML/Element" target="_blank" rel="noopener noreferrer">HTMLElement<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></strong></p></div> <footer class="page-edit"><div class="edit-link"><a href="https://github.com/artf/grapesjs/edit/dev/docs/api/rich_text_editor.md" target="_blank" rel="noopener noreferrer">Edit this page on GitHub</a> <svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></div> <div class="last-updated"><span class="prefix">Last Updated:</span> <span class="time">4/23/2020, 1:46:38 AM</span></div></footer> <div class="page-nav"><p class="inner"><span class="prev">
←
<a href="/docs/api/modal_dialog.html" class="prev">
Modal
</a></span> <span class="next"><a href="/docs/api/keymaps.html">
Keymaps
</a>
→
</span></p></div> </main></div><div class="global-ui"></div></div>
<script src="/docs/assets/js/app.4dd41b9b.js" defer></script><script src="/docs/assets/js/11.b2ac4984.js" defer></script><script src="/docs/assets/js/2.a342f4be.js" defer></script><script src="/docs/assets/js/33.0ba298a5.js" defer></script>
</body>
</html>

75
docs/api/selector_manager.html

@ -4,65 +4,74 @@
<meta charset="utf-8">
<meta name="viewport" content="width=device-width,initial-scale=1">
<title>GrapesJS</title>
<meta name="description" content="GrapesJS documentation">
<meta name="generator" content="VuePress 1.4.1">
<link rel="icon" href="/docs/logo-icon.png">
<link rel="stylesheet" href="../stylesheets/grapes.min.css?v0.16.12">
<script src="../js/grapes.min.js?v0.16.12"></script>
<link rel="preload" href="/docs/assets/css/styles.e1f2d947.css" as="style"><link rel="preload" href="/docs/assets/js/app.e1f2d947.js" as="script"><link rel="preload" href="/docs/assets/js/28.df5c22ed.js" as="script"><link rel="prefetch" href="/docs/assets/css/1.styles.b40e6662.css"><link rel="prefetch" href="/docs/assets/css/2.styles.896e948d.css"><link rel="prefetch" href="/docs/assets/css/3.styles.46968bd4.css"><link rel="prefetch" href="/docs/assets/css/4.styles.79691bb5.css"><link rel="prefetch" href="/docs/assets/css/5.styles.6013373a.css"><link rel="prefetch" href="/docs/assets/css/6.styles.467c19a2.css"><link rel="prefetch" href="/docs/assets/css/7.styles.ce9d181d.css"><link rel="prefetch" href="/docs/assets/css/8.styles.aae17ac6.css"><link rel="prefetch" href="/docs/assets/css/9.styles.e0170b17.css"><link rel="prefetch" href="/docs/assets/js/1.b40e6662.js"><link rel="prefetch" href="/docs/assets/js/10.e7cd7c26.js"><link rel="prefetch" href="/docs/assets/js/11.3f87b9b8.js"><link rel="prefetch" href="/docs/assets/js/12.269b5586.js"><link rel="prefetch" href="/docs/assets/js/13.e52ea678.js"><link rel="prefetch" href="/docs/assets/js/14.0606827a.js"><link rel="prefetch" href="/docs/assets/js/15.aa7f42f8.js"><link rel="prefetch" href="/docs/assets/js/16.959c0bd7.js"><link rel="prefetch" href="/docs/assets/js/17.bfba947e.js"><link rel="prefetch" href="/docs/assets/js/18.7f401ffb.js"><link rel="prefetch" href="/docs/assets/js/19.3e0ce3c8.js"><link rel="prefetch" href="/docs/assets/js/2.896e948d.js"><link rel="prefetch" href="/docs/assets/js/20.f4502040.js"><link rel="prefetch" href="/docs/assets/js/21.2babea6a.js"><link rel="prefetch" href="/docs/assets/js/22.26e5d9ed.js"><link rel="prefetch" href="/docs/assets/js/23.a2c9ec17.js"><link rel="prefetch" href="/docs/assets/js/24.f9675b16.js"><link rel="prefetch" href="/docs/assets/js/25.b52924ae.js"><link rel="prefetch" href="/docs/assets/js/26.81c00685.js"><link rel="prefetch" href="/docs/assets/js/27.7372785c.js"><link rel="prefetch" href="/docs/assets/js/29.b167a894.js"><link rel="prefetch" href="/docs/assets/js/3.46968bd4.js"><link rel="prefetch" href="/docs/assets/js/30.d165faf7.js"><link rel="prefetch" href="/docs/assets/js/31.334d7953.js"><link rel="prefetch" href="/docs/assets/js/32.f9daa2c8.js"><link rel="prefetch" href="/docs/assets/js/33.93f49bfa.js"><link rel="prefetch" href="/docs/assets/js/34.4865e6c3.js"><link rel="prefetch" href="/docs/assets/js/35.9d089775.js"><link rel="prefetch" href="/docs/assets/js/36.67cb8d1f.js"><link rel="prefetch" href="/docs/assets/js/37.708a94ac.js"><link rel="prefetch" href="/docs/assets/js/38.0f8df29b.js"><link rel="prefetch" href="/docs/assets/js/39.074f3faf.js"><link rel="prefetch" href="/docs/assets/js/4.79691bb5.js"><link rel="prefetch" href="/docs/assets/js/40.cef45f06.js"><link rel="prefetch" href="/docs/assets/js/41.c734b929.js"><link rel="prefetch" href="/docs/assets/js/42.1078a060.js"><link rel="prefetch" href="/docs/assets/js/43.7188da01.js"><link rel="prefetch" href="/docs/assets/js/44.1fd52e91.js"><link rel="prefetch" href="/docs/assets/js/45.69c67864.js"><link rel="prefetch" href="/docs/assets/js/5.6013373a.js"><link rel="prefetch" href="/docs/assets/js/6.467c19a2.js"><link rel="prefetch" href="/docs/assets/js/7.ce9d181d.js"><link rel="prefetch" href="/docs/assets/js/8.aae17ac6.js"><link rel="prefetch" href="/docs/assets/js/9.e0170b17.js">
<link rel="stylesheet" href="/docs/assets/css/styles.e1f2d947.css">
<link rel="stylesheet" href="../stylesheets/grapes.min.css?v0.16.12">
<script src="../js/grapes.min.js?v0.16.12"></script>
<meta name="description" content="GrapesJS documentation">
<link rel="preload" href="/docs/assets/css/0.styles.d44f2c14.css" as="style"><link rel="preload" href="/docs/assets/js/app.4dd41b9b.js" as="script"><link rel="preload" href="/docs/assets/js/11.b2ac4984.js" as="script"><link rel="preload" href="/docs/assets/js/2.a342f4be.js" as="script"><link rel="preload" href="/docs/assets/js/34.07640632.js" as="script"><link rel="prefetch" href="/docs/assets/js/10.6a518be5.js"><link rel="prefetch" href="/docs/assets/js/12.bf8ecce1.js"><link rel="prefetch" href="/docs/assets/js/13.d807997f.js"><link rel="prefetch" href="/docs/assets/js/14.0ba8a778.js"><link rel="prefetch" href="/docs/assets/js/15.52ce2afa.js"><link rel="prefetch" href="/docs/assets/js/16.47266d46.js"><link rel="prefetch" href="/docs/assets/js/17.9b7a7fa4.js"><link rel="prefetch" href="/docs/assets/js/18.66b0785d.js"><link rel="prefetch" href="/docs/assets/js/19.2f9692d0.js"><link rel="prefetch" href="/docs/assets/js/20.ab1e767c.js"><link rel="prefetch" href="/docs/assets/js/21.66fe8957.js"><link rel="prefetch" href="/docs/assets/js/22.cb6c233f.js"><link rel="prefetch" href="/docs/assets/js/23.dc99d7c7.js"><link rel="prefetch" href="/docs/assets/js/24.245fff8a.js"><link rel="prefetch" href="/docs/assets/js/25.d8c7e0b5.js"><link rel="prefetch" href="/docs/assets/js/26.ad7fc796.js"><link rel="prefetch" href="/docs/assets/js/27.169cfbf6.js"><link rel="prefetch" href="/docs/assets/js/28.f086d486.js"><link rel="prefetch" href="/docs/assets/js/29.5e2a7327.js"><link rel="prefetch" href="/docs/assets/js/3.7e642bff.js"><link rel="prefetch" href="/docs/assets/js/30.3a998b30.js"><link rel="prefetch" href="/docs/assets/js/31.5286fade.js"><link rel="prefetch" href="/docs/assets/js/32.0a0e4ae7.js"><link rel="prefetch" href="/docs/assets/js/33.0ba298a5.js"><link rel="prefetch" href="/docs/assets/js/35.061f6dd5.js"><link rel="prefetch" href="/docs/assets/js/36.63462982.js"><link rel="prefetch" href="/docs/assets/js/37.e2d50838.js"><link rel="prefetch" href="/docs/assets/js/38.1230aa70.js"><link rel="prefetch" href="/docs/assets/js/39.c8373102.js"><link rel="prefetch" href="/docs/assets/js/4.32ffd5a1.js"><link rel="prefetch" href="/docs/assets/js/40.0600f064.js"><link rel="prefetch" href="/docs/assets/js/41.9bbfe266.js"><link rel="prefetch" href="/docs/assets/js/42.63c51d25.js"><link rel="prefetch" href="/docs/assets/js/43.d69d8e57.js"><link rel="prefetch" href="/docs/assets/js/44.a981446c.js"><link rel="prefetch" href="/docs/assets/js/45.415ecb59.js"><link rel="prefetch" href="/docs/assets/js/46.75d7a27f.js"><link rel="prefetch" href="/docs/assets/js/47.a4983875.js"><link rel="prefetch" href="/docs/assets/js/48.0dd7e7e0.js"><link rel="prefetch" href="/docs/assets/js/49.166bd1fa.js"><link rel="prefetch" href="/docs/assets/js/5.a0a5a0aa.js"><link rel="prefetch" href="/docs/assets/js/50.4e76f723.js"><link rel="prefetch" href="/docs/assets/js/51.21d145d2.js"><link rel="prefetch" href="/docs/assets/js/52.43234198.js"><link rel="prefetch" href="/docs/assets/js/6.9461537e.js"><link rel="prefetch" href="/docs/assets/js/7.3158bea4.js"><link rel="prefetch" href="/docs/assets/js/8.625d63ee.js"><link rel="prefetch" href="/docs/assets/js/9.e856c4d3.js">
<link rel="stylesheet" href="/docs/assets/css/0.styles.d44f2c14.css">
</head>
<body>
<div id="app" data-server-rendered="true"><div class="theme-container"><header class="navbar"><div class="sidebar-button"><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" role="img" viewBox="0 0 448 512" class="icon"><path fill="currentColor" d="M436 124H12c-6.627 0-12-5.373-12-12V80c0-6.627 5.373-12 12-12h424c6.627 0 12 5.373 12 12v32c0 6.627-5.373 12-12 12zm0 160H12c-6.627 0-12-5.373-12-12v-32c0-6.627 5.373-12 12-12h424c6.627 0 12 5.373 12 12v32c0 6.627-5.373 12-12 12zm0 160H12c-6.627 0-12-5.373-12-12v-32c0-6.627 5.373-12 12-12h424c6.627 0 12 5.373 12 12v32c0 6.627-5.373 12-12 12z"></path></svg></div><a href="/docs/" class="home-link router-link-active"><img src="/docs/logo.png" class="logo"><span class="site-name can-hide">
GrapesJS
</span></a><div class="links"><div class="search-box"><input aria-label="Search" autocomplete="off" spellcheck="false" value=""><!----></div><nav class="nav-links can-hide"><div class="nav-item"><a href="/docs/" class="nav-link">Docs</a></div><div class="nav-item"><a href="/docs/api/" class="nav-link router-link-active">API Reference</a></div><div class="nav-item"><a href="https://opencollective.com/grapesjs" target="_blank" rel="noopener noreferrer" class="nav-link external">
<div id="app" data-server-rendered="true"><div class="theme-container"><header class="navbar"><div class="sidebar-button"><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" role="img" viewBox="0 0 448 512" class="icon"><path fill="currentColor" d="M436 124H12c-6.627 0-12-5.373-12-12V80c0-6.627 5.373-12 12-12h424c6.627 0 12 5.373 12 12v32c0 6.627-5.373 12-12 12zm0 160H12c-6.627 0-12-5.373-12-12v-32c0-6.627 5.373-12 12-12h424c6.627 0 12 5.373 12 12v32c0 6.627-5.373 12-12 12zm0 160H12c-6.627 0-12-5.373-12-12v-32c0-6.627 5.373-12 12-12h424c6.627 0 12 5.373 12 12v32c0 6.627-5.373 12-12 12z"></path></svg></div> <a href="/docs/" class="home-link router-link-active"><img src="/docs/logo.png" alt="GrapesJS" class="logo"> <span class="site-name can-hide">GrapesJS</span></a> <div class="links"><div class="search-box"><input aria-label="Search" autocomplete="off" spellcheck="false" value=""> <!----></div> <nav class="nav-links can-hide"><div class="nav-item"><a href="/docs/" class="nav-link">
Docs
</a></div><div class="nav-item"><a href="/docs/api/" class="nav-link router-link-active">
API Reference
</a></div><div class="nav-item"><a href="https://opencollective.com/grapesjs" target="_blank" rel="noopener noreferrer" class="nav-link external">
Support Us
<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path><polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></div><div class="nav-item"><a href="https://twitter.com/grapesjs" target="_blank" rel="noopener noreferrer" class="nav-link external">
<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></div><div class="nav-item"><a href="https://twitter.com/grapesjs" target="_blank" rel="noopener noreferrer" class="nav-link external">
Twitter
<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path><polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></div><a href="https://github.com/artf/grapesjs" target="_blank" rel="noopener noreferrer" class="repo-link">
<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></div> <a href="https://github.com/artf/grapesjs" target="_blank" rel="noopener noreferrer" class="repo-link">
GitHub
<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path><polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></nav></div></header><div class="sidebar-mask"></div><div class="sidebar"><nav class="nav-links"><div class="nav-item"><a href="/docs/" class="nav-link">Docs</a></div><div class="nav-item"><a href="/docs/api/" class="nav-link router-link-active">API Reference</a></div><div class="nav-item"><a href="https://opencollective.com/grapesjs" target="_blank" rel="noopener noreferrer" class="nav-link external">
<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></nav></div></header> <div class="sidebar-mask"></div> <aside class="sidebar"><nav class="nav-links"><div class="nav-item"><a href="/docs/" class="nav-link">
Docs
</a></div><div class="nav-item"><a href="/docs/api/" class="nav-link router-link-active">
API Reference
</a></div><div class="nav-item"><a href="https://opencollective.com/grapesjs" target="_blank" rel="noopener noreferrer" class="nav-link external">
Support Us
<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path><polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></div><div class="nav-item"><a href="https://twitter.com/grapesjs" target="_blank" rel="noopener noreferrer" class="nav-link external">
<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></div><div class="nav-item"><a href="https://twitter.com/grapesjs" target="_blank" rel="noopener noreferrer" class="nav-link external">
Twitter
<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path><polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></div><a href="https://github.com/artf/grapesjs" target="_blank" rel="noopener noreferrer" class="repo-link">
<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></div> <a href="https://github.com/artf/grapesjs" target="_blank" rel="noopener noreferrer" class="repo-link">
GitHub
<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path><polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></nav><div id="native-carbon" class="carbon-ads"></div><ul class="sidebar-links"><li><a href="/docs/api/" class="sidebar-link">API Reference</a></li><li><a href="/docs/api/editor.html" class="sidebar-link">Editor</a></li><li><a href="/docs/api/i18n.html" class="sidebar-link">I18n</a></li><li><a href="/docs/api/canvas.html" class="sidebar-link">Canvas</a></li><li><a href="/docs/api/assets.html" class="sidebar-link">Asset Manager</a></li><li><a href="/docs/api/block_manager.html" class="sidebar-link">Block Manager</a></li><li><a href="/docs/api/commands.html" class="sidebar-link">Commands</a></li><li><a href="/docs/api/components.html" class="sidebar-link">DOM Components</a></li><li><a href="/docs/api/component.html" class="sidebar-link"> - Component</a></li><li><a href="/docs/api/panels.html" class="sidebar-link">Panels</a></li><li><a href="/docs/api/style_manager.html" class="sidebar-link">Style Manager</a></li><li><a href="/docs/api/storage_manager.html" class="sidebar-link">Storage Manager</a></li><li><a href="/docs/api/device_manager.html" class="sidebar-link">Device Manager</a></li><li><a href="/docs/api/selector_manager.html" class="active sidebar-link">Selector Manager</a><ul class="sidebar-sub-headers"><li class="sidebar-sub-header"><a href="/docs/api/selector_manager.html#selectormanager" class="sidebar-link">SelectorManager</a></li><li class="sidebar-sub-header"><a href="/docs/api/selector_manager.html#getconfig" class="sidebar-link">getConfig</a></li><li class="sidebar-sub-header"><a href="/docs/api/selector_manager.html#add" class="sidebar-link">add</a></li><li class="sidebar-sub-header"><a href="/docs/api/selector_manager.html#addclass" class="sidebar-link">addClass</a></li><li class="sidebar-sub-header"><a href="/docs/api/selector_manager.html#get" class="sidebar-link">get</a></li><li class="sidebar-sub-header"><a href="/docs/api/selector_manager.html#getall" class="sidebar-link">getAll</a></li><li class="sidebar-sub-header"><a href="/docs/api/selector_manager.html#escapename" class="sidebar-link">escapeName</a></li></ul></li><li><a href="/docs/api/css_composer.html" class="sidebar-link">CSS Composer</a></li><li><a href="/docs/api/modal_dialog.html" class="sidebar-link">Modal</a></li><li><a href="/docs/api/rich_text_editor.html" class="sidebar-link">Rich Text Editor</a></li><li><a href="/docs/api/keymaps.html" class="sidebar-link">Keymaps</a></li><li><a href="/docs/api/undo_manager.html" class="sidebar-link">Undo Manager</a></li></ul></div><div class="page"><div class="content"><h2 id="selectormanager"><a href="#selectormanager" aria-hidden="true" class="header-anchor">#</a> SelectorManager</h2><p>Selectors in GrapesJS are used in CSS Composer inside Rules and in Components as classes. To illustrate this concept let's take
a look at this code:</p><div class="language-css extra-class"><pre class="language-css"><code><span class="token selector">span &gt; #send-btn.btn</span><span class="token punctuation">{</span>
<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></nav> <div id="native-carbon" class="carbon-ads"></div> <ul class="sidebar-links"><li><a href="/docs/api/" class="sidebar-link">API Reference</a></li><li><a href="/docs/api/editor.html" class="sidebar-link">Editor</a></li><li><a href="/docs/api/i18n.html" class="sidebar-link">I18n</a></li><li><a href="/docs/api/canvas.html" class="sidebar-link">Canvas</a></li><li><a href="/docs/api/assets.html" class="sidebar-link">Asset Manager</a></li><li><a href="/docs/api/block_manager.html" class="sidebar-link">Block Manager</a></li><li><a href="/docs/api/commands.html" class="sidebar-link">Commands</a></li><li><a href="/docs/api/components.html" class="sidebar-link">DOM Components</a></li><li><a href="/docs/api/component.html" class="sidebar-link"> - Component</a></li><li><a href="/docs/api/panels.html" class="sidebar-link">Panels</a></li><li><a href="/docs/api/style_manager.html" class="sidebar-link">Style Manager</a></li><li><a href="/docs/api/storage_manager.html" class="sidebar-link">Storage Manager</a></li><li><a href="/docs/api/device_manager.html" class="sidebar-link">Device Manager</a></li><li><a href="/docs/api/selector_manager.html" class="active sidebar-link">Selector Manager</a><ul class="sidebar-sub-headers"><li class="sidebar-sub-header"><a href="/docs/api/selector_manager.html#selectormanager" class="sidebar-link">SelectorManager</a></li><li class="sidebar-sub-header"><a href="/docs/api/selector_manager.html#getconfig" class="sidebar-link">getConfig</a></li><li class="sidebar-sub-header"><a href="/docs/api/selector_manager.html#setstate" class="sidebar-link">setState</a></li><li class="sidebar-sub-header"><a href="/docs/api/selector_manager.html#getstate" class="sidebar-link">getState</a></li><li class="sidebar-sub-header"><a href="/docs/api/selector_manager.html#add" class="sidebar-link">add</a></li><li class="sidebar-sub-header"><a href="/docs/api/selector_manager.html#addclass" class="sidebar-link">addClass</a></li><li class="sidebar-sub-header"><a href="/docs/api/selector_manager.html#get" class="sidebar-link">get</a></li><li class="sidebar-sub-header"><a href="/docs/api/selector_manager.html#getall" class="sidebar-link">getAll</a></li><li class="sidebar-sub-header"><a href="/docs/api/selector_manager.html#escapename" class="sidebar-link">escapeName</a></li></ul></li><li><a href="/docs/api/css_composer.html" class="sidebar-link">CSS Composer</a></li><li><a href="/docs/api/modal_dialog.html" class="sidebar-link">Modal</a></li><li><a href="/docs/api/rich_text_editor.html" class="sidebar-link">Rich Text Editor</a></li><li><a href="/docs/api/keymaps.html" class="sidebar-link">Keymaps</a></li><li><a href="/docs/api/undo_manager.html" class="sidebar-link">Undo Manager</a></li></ul> </aside> <main class="page"> <div class="theme-default-content content__default"><h2 id="selectormanager"><a href="#selectormanager" class="header-anchor">#</a> SelectorManager</h2> <p>Selectors in GrapesJS are used in CSS Composer inside Rules and in Components as classes. To illustrate this concept let's take
a look at this code:</p> <div class="language-css extra-class"><pre class="language-css"><code><span class="token selector">span &gt; #send-btn.btn</span><span class="token punctuation">{</span>
...
<span class="token punctuation">}</span>
</code></pre></div><div class="language-html extra-class"><pre class="language-html"><code><span class="token tag"><span class="token tag"><span class="token punctuation">&lt;</span>span</span><span class="token punctuation">&gt;</span></span>
<span class="token tag"><span class="token tag"><span class="token punctuation">&lt;</span>button</span> <span class="token attr-name">id</span><span class="token attr-value"><span class="token punctuation">=</span><span class="token punctuation">&quot;</span>send-btn<span class="token punctuation">&quot;</span></span> <span class="token attr-name">class</span><span class="token attr-value"><span class="token punctuation">=</span><span class="token punctuation">&quot;</span>btn<span class="token punctuation">&quot;</span></span><span class="token punctuation">&gt;</span></span><span class="token tag"><span class="token tag"><span class="token punctuation">&lt;/</span>button</span><span class="token punctuation">&gt;</span></span>
<span class="token tag"><span class="token tag"><span class="token punctuation">&lt;/</span>span</span><span class="token punctuation">&gt;</span></span>
</code></pre></div><p>In this scenario we get:</p><ul><li>span -&gt; selector of type <code>tag</code></li><li>send-btn -&gt; selector of type <code>id</code></li><li>btn -&gt; selector of type <code>class</code></li></ul><p>So, for example, being <code>btn</code> the same class entity it'll be easier to refactor and track things.</p><p>You can customize the initial state of the module from the editor initialization, by passing the following <a href="https://github.com/artf/grapesjs/blob/master/src/selector_manager/config/config.js" target="_blank" rel="noopener noreferrer">Configuration Object<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path><polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></p><div class="language-js extra-class"><pre class="language-js"><code><span class="token keyword">const</span> editor <span class="token operator">=</span> grapesjs<span class="token punctuation">.</span><span class="token function">init</span><span class="token punctuation">(</span><span class="token punctuation">{</span>
selectorManager<span class="token punctuation">:</span> <span class="token punctuation">{</span>
</code></pre></div><p>In this scenario we get:</p> <ul><li>span -&gt; selector of type <code>tag</code></li> <li>send-btn -&gt; selector of type <code>id</code></li> <li>btn -&gt; selector of type <code>class</code></li></ul> <p>So, for example, being <code>btn</code> the same class entity it'll be easier to refactor and track things.</p> <p>You can customize the initial state of the module from the editor initialization, by passing the following <a href="https://github.com/artf/grapesjs/blob/master/src/selector_manager/config/config.js" target="_blank" rel="noopener noreferrer">Configuration Object<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></p> <div class="language-js extra-class"><pre class="language-js"><code><span class="token keyword">const</span> editor <span class="token operator">=</span> grapesjs<span class="token punctuation">.</span><span class="token function">init</span><span class="token punctuation">(</span><span class="token punctuation">{</span>
selectorManager<span class="token operator">:</span> <span class="token punctuation">{</span>
<span class="token comment">// options</span>
<span class="token punctuation">}</span>
<span class="token punctuation">}</span><span class="token punctuation">)</span>
</code></pre></div><p>Once the editor is instantiated you can use its API. Before using these methods you should get the module from the instance</p><div class="language-js extra-class"><pre class="language-js"><code><span class="token keyword">const</span> selectorManager <span class="token operator">=</span> editor<span class="token punctuation">.</span>SelectorManager<span class="token punctuation">;</span>
</code></pre></div><ul><li><a href="#getconfig">getConfig</a></li><li><a href="#add">add</a></li><li><a href="#addclass">addClass</a></li><li><a href="#get">get</a></li><li><a href="#getAll">getAll</a></li></ul><h2 id="getconfig"><a href="#getconfig" aria-hidden="true" class="header-anchor">#</a> getConfig</h2><p>Get configuration object</p><p>Returns <strong><a href="https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Object" target="_blank" rel="noopener noreferrer">Object<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path><polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></strong></p><h2 id="add"><a href="#add" aria-hidden="true" class="header-anchor">#</a> add</h2><p>Add a new selector to collection if it's not already exists. Class type is a default one</p><h3 id="parameters"><a href="#parameters" aria-hidden="true" class="header-anchor">#</a> Parameters</h3><ul><li><code>name</code><strong>(<a href="https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String" target="_blank" rel="noopener noreferrer">String<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path><polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a> | <a href="https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Array" target="_blank" rel="noopener noreferrer">Array<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path><polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a>)</strong> Selector/s name</li><li><code>opts</code><strong><a href="https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Object" target="_blank" rel="noopener noreferrer">Object<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path><polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></strong> Selector options (optional, default <code>{}</code>)
<ul><li><code>opts.label</code><strong><a href="https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String" target="_blank" rel="noopener noreferrer">String<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path><polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></strong> Label for the selector, if it's not provided the label will be the same as the name (optional, default <code>''</code>)</li><li><code>opts.type</code><strong><a href="https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String" target="_blank" rel="noopener noreferrer">String<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path><polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></strong> Type of the selector. At the moment, only 'class' (1) is available (optional, default <code>1</code>)</li></ul></li></ul><h3 id="examples"><a href="#examples" aria-hidden="true" class="header-anchor">#</a> Examples</h3><div class="language-javascript extra-class"><pre class="language-javascript"><code><span class="token keyword">const</span> selector <span class="token operator">=</span> selectorManager<span class="token punctuation">.</span><span class="token function">add</span><span class="token punctuation">(</span><span class="token string">'selectorName'</span><span class="token punctuation">)</span><span class="token punctuation">;</span>
</code></pre></div><p>Once the editor is instantiated you can use its API. Before using these methods you should get the module from the instance</p> <div class="language-js extra-class"><pre class="language-js"><code><span class="token keyword">const</span> selectorManager <span class="token operator">=</span> editor<span class="token punctuation">.</span>SelectorManager<span class="token punctuation">;</span>
</code></pre></div><ul><li><a href="#getconfig">getConfig</a></li> <li><a href="#add">add</a></li> <li><a href="#addclass">addClass</a></li> <li><a href="#get">get</a></li> <li><a href="#getall">getAll</a></li> <li><a href="#setstate">setState</a></li> <li><a href="#getstate">getState</a></li></ul> <h2 id="getconfig"><a href="#getconfig" class="header-anchor">#</a> getConfig</h2> <p>Get configuration object</p> <p>Returns <strong><a href="https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Object" target="_blank" rel="noopener noreferrer">Object<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></strong></p> <h2 id="setstate"><a href="#setstate" class="header-anchor">#</a> setState</h2> <p>Change the selector state</p> <h3 id="parameters"><a href="#parameters" class="header-anchor">#</a> Parameters</h3> <ul><li><code>value</code> <strong><a href="https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String" target="_blank" rel="noopener noreferrer">String<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></strong> State value</li></ul> <h3 id="examples"><a href="#examples" class="header-anchor">#</a> Examples</h3> <div class="language-javascript extra-class"><pre class="language-javascript"><code>selectorManager<span class="token punctuation">.</span><span class="token function">setState</span><span class="token punctuation">(</span><span class="token string">'hover'</span><span class="token punctuation">)</span><span class="token punctuation">;</span>
</code></pre></div><p>Returns <strong>this</strong></p> <h2 id="getstate"><a href="#getstate" class="header-anchor">#</a> getState</h2> <p>Get the current selector state</p> <p>Returns <strong><a href="https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String" target="_blank" rel="noopener noreferrer">String<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></strong></p> <h2 id="add"><a href="#add" class="header-anchor">#</a> add</h2> <p>Add a new selector to collection if it's not already exists. Class type is a default one</p> <h3 id="parameters-2"><a href="#parameters-2" class="header-anchor">#</a> Parameters</h3> <ul><li><code>name</code> <strong>(<a href="https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String" target="_blank" rel="noopener noreferrer">String<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a> | <a href="https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Array" target="_blank" rel="noopener noreferrer">Array<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a>)</strong> Selector/s name</li> <li><code>opts</code> <strong><a href="https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Object" target="_blank" rel="noopener noreferrer">Object<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></strong> Selector options (optional, default <code>{}</code>)
<ul><li><code>opts.label</code> <strong><a href="https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String" target="_blank" rel="noopener noreferrer">String<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></strong> Label for the selector, if it's not provided the label will be the same as the name (optional, default <code>''</code>)</li> <li><code>opts.type</code> <strong><a href="https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String" target="_blank" rel="noopener noreferrer">String<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></strong> Type of the selector. At the moment, only 'class' (1) is available (optional, default <code>1</code>)</li></ul></li></ul> <h3 id="examples-2"><a href="#examples-2" class="header-anchor">#</a> Examples</h3> <div class="language-javascript extra-class"><pre class="language-javascript"><code><span class="token keyword">const</span> selector <span class="token operator">=</span> selectorManager<span class="token punctuation">.</span><span class="token function">add</span><span class="token punctuation">(</span><span class="token string">'selectorName'</span><span class="token punctuation">)</span><span class="token punctuation">;</span>
<span class="token comment">// Same as</span>
<span class="token keyword">const</span> selector <span class="token operator">=</span> selectorManager<span class="token punctuation">.</span><span class="token function">add</span><span class="token punctuation">(</span><span class="token string">'selectorName'</span><span class="token punctuation">,</span> <span class="token punctuation">{</span>
type<span class="token punctuation">:</span> <span class="token number">1</span><span class="token punctuation">,</span>
label<span class="token punctuation">:</span> <span class="token string">'selectorName'</span>
type<span class="token operator">:</span> <span class="token number">1</span><span class="token punctuation">,</span>
label<span class="token operator">:</span> <span class="token string">'selectorName'</span>
<span class="token punctuation">}</span><span class="token punctuation">)</span><span class="token punctuation">;</span>
<span class="token comment">// Multiple selectors</span>
<span class="token keyword">const</span> selectors <span class="token operator">=</span> selectorManager<span class="token punctuation">.</span><span class="token function">add</span><span class="token punctuation">(</span><span class="token punctuation">[</span><span class="token string">'.class1'</span><span class="token punctuation">,</span> <span class="token string">'.class2'</span><span class="token punctuation">,</span> <span class="token string">'#id1'</span><span class="token punctuation">]</span><span class="token punctuation">)</span><span class="token punctuation">;</span>
</code></pre></div><p>Returns <strong>(Model | <a href="https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Array" target="_blank" rel="noopener noreferrer">Array<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path><polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a>)</strong></p><h2 id="addclass"><a href="#addclass" aria-hidden="true" class="header-anchor">#</a> addClass</h2><p>Add class selectors</p><h3 id="parameters-2"><a href="#parameters-2" aria-hidden="true" class="header-anchor">#</a> Parameters</h3><ul><li><code>classes</code><strong>(<a href="https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Array" target="_blank" rel="noopener noreferrer">Array<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path><polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a> | <a href="https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String" target="_blank" rel="noopener noreferrer">string<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path><polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a>)</strong> Array or string of classes</li></ul><h3 id="examples-2"><a href="#examples-2" aria-hidden="true" class="header-anchor">#</a> Examples</h3><div class="language-javascript extra-class"><pre class="language-javascript"><code>sm<span class="token punctuation">.</span><span class="token function">addClass</span><span class="token punctuation">(</span><span class="token string">'class1'</span><span class="token punctuation">)</span><span class="token punctuation">;</span>
</code></pre></div><p>Returns <strong>(Model | <a href="https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Array" target="_blank" rel="noopener noreferrer">Array<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a>)</strong></p> <h2 id="addclass"><a href="#addclass" class="header-anchor">#</a> addClass</h2> <p>Add class selectors</p> <h3 id="parameters-3"><a href="#parameters-3" class="header-anchor">#</a> Parameters</h3> <ul><li><code>classes</code> <strong>(<a href="https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Array" target="_blank" rel="noopener noreferrer">Array<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a> | <a href="https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String" target="_blank" rel="noopener noreferrer">string<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a>)</strong> Array or string of classes</li></ul> <h3 id="examples-3"><a href="#examples-3" class="header-anchor">#</a> Examples</h3> <div class="language-javascript extra-class"><pre class="language-javascript"><code>sm<span class="token punctuation">.</span><span class="token function">addClass</span><span class="token punctuation">(</span><span class="token string">'class1'</span><span class="token punctuation">)</span><span class="token punctuation">;</span>
sm<span class="token punctuation">.</span><span class="token function">addClass</span><span class="token punctuation">(</span><span class="token string">'class1 class2'</span><span class="token punctuation">)</span><span class="token punctuation">;</span>
sm<span class="token punctuation">.</span><span class="token function">addClass</span><span class="token punctuation">(</span><span class="token punctuation">[</span><span class="token string">'class1'</span><span class="token punctuation">,</span> <span class="token string">'class2'</span><span class="token punctuation">]</span><span class="token punctuation">)</span><span class="token punctuation">;</span>
<span class="token comment">// -&gt; [SelectorObject, ...]</span>
</code></pre></div><p>Returns <strong><a href="https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Array" target="_blank" rel="noopener noreferrer">Array<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path><polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></strong> Array of added selectors</p><h2 id="get"><a href="#get" aria-hidden="true" class="header-anchor">#</a> get</h2><p>Get the selector by its name</p><h3 id="parameters-3"><a href="#parameters-3" aria-hidden="true" class="header-anchor">#</a> Parameters</h3><ul><li><code>name</code><strong>(<a href="https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String" target="_blank" rel="noopener noreferrer">String<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path><polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a> | <a href="https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Array" target="_blank" rel="noopener noreferrer">Array<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path><polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a>)</strong> Selector name</li><li><code>type</code><strong><a href="https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String" target="_blank" rel="noopener noreferrer">String<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path><polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></strong> Selector type</li></ul><h3 id="examples-3"><a href="#examples-3" aria-hidden="true" class="header-anchor">#</a> Examples</h3><div class="language-javascript extra-class"><pre class="language-javascript"><code><span class="token keyword">const</span> selector <span class="token operator">=</span> selectorManager<span class="token punctuation">.</span><span class="token function">get</span><span class="token punctuation">(</span><span class="token string">'selectorName'</span><span class="token punctuation">)</span><span class="token punctuation">;</span>
</code></pre></div><p>Returns <strong><a href="https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Array" target="_blank" rel="noopener noreferrer">Array<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></strong> Array of added selectors</p> <h2 id="get"><a href="#get" class="header-anchor">#</a> get</h2> <p>Get the selector by its name</p> <h3 id="parameters-4"><a href="#parameters-4" class="header-anchor">#</a> Parameters</h3> <ul><li><code>name</code> <strong>(<a href="https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String" target="_blank" rel="noopener noreferrer">String<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a> | <a href="https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Array" target="_blank" rel="noopener noreferrer">Array<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a>)</strong> Selector name</li> <li><code>type</code> <strong><a href="https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String" target="_blank" rel="noopener noreferrer">String<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></strong> Selector type</li></ul> <h3 id="examples-4"><a href="#examples-4" class="header-anchor">#</a> Examples</h3> <div class="language-javascript extra-class"><pre class="language-javascript"><code><span class="token keyword">const</span> selector <span class="token operator">=</span> selectorManager<span class="token punctuation">.</span><span class="token function">get</span><span class="token punctuation">(</span><span class="token string">'selectorName'</span><span class="token punctuation">)</span><span class="token punctuation">;</span>
<span class="token comment">// or get an array</span>
<span class="token keyword">const</span> selectors <span class="token operator">=</span> selectorManager<span class="token punctuation">.</span><span class="token function">get</span><span class="token punctuation">(</span><span class="token punctuation">[</span><span class="token string">'class1'</span><span class="token punctuation">,</span> <span class="token string">'class2'</span><span class="token punctuation">]</span><span class="token punctuation">)</span><span class="token punctuation">;</span>
</code></pre></div><p>Returns <strong>(Model | <a href="https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Array" target="_blank" rel="noopener noreferrer">Array<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path><polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a>)</strong></p><h2 id="getall"><a href="#getall" aria-hidden="true" class="header-anchor">#</a> getAll</h2><p>Get all selectors</p><p>Returns <strong>Collection</strong></p><h2 id="escapename"><a href="#escapename" aria-hidden="true" class="header-anchor">#</a> escapeName</h2><p>Return escaped selector name</p><h3 id="parameters-4"><a href="#parameters-4" aria-hidden="true" class="header-anchor">#</a> Parameters</h3><ul><li><code>name</code><strong><a href="https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String" target="_blank" rel="noopener noreferrer">String<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path><polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></strong> Selector name to escape</li></ul><p>Returns <strong><a href="https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String" target="_blank" rel="noopener noreferrer">String<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path><polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></strong> Escaped name</p></div><div class="page-edit"><div class="edit-link"><a href="https://github.com/artf/grapesjs/edit/dev/docs/api/selector_manager.md" target="_blank" rel="noopener noreferrer">Edit this page on GitHub</a><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path><polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></div><div class="last-updated"><span class="prefix">Last Updated: </span><span class="time">8/13/2019, 6:32:25 PM</span></div></div><div class="page-nav"><p class="inner"><span class="prev">
← <a href="/docs/api/device_manager.html" class="prev">
Device Manager
</a></span><span class="next"><a href="/docs/api/css_composer.html">
CSS Composer
</a> →
</span></p></div></div></div></div>
<script src="/docs/assets/js/app.e1f2d947.js" defer></script><script src="/docs/assets/js/28.df5c22ed.js" defer></script>
</code></pre></div><p>Returns <strong>(Model | <a href="https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Array" target="_blank" rel="noopener noreferrer">Array<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a>)</strong></p> <h2 id="getall"><a href="#getall" class="header-anchor">#</a> getAll</h2> <p>Get all selectors</p> <p>Returns <strong>Collection</strong></p> <h2 id="escapename"><a href="#escapename" class="header-anchor">#</a> escapeName</h2> <p>Return escaped selector name</p> <h3 id="parameters-5"><a href="#parameters-5" class="header-anchor">#</a> Parameters</h3> <ul><li><code>name</code> <strong><a href="https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String" target="_blank" rel="noopener noreferrer">String<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></strong> Selector name to escape</li></ul> <p>Returns <strong><a href="https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String" target="_blank" rel="noopener noreferrer">String<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></strong> Escaped name</p></div> <footer class="page-edit"><div class="edit-link"><a href="https://github.com/artf/grapesjs/edit/dev/docs/api/selector_manager.md" target="_blank" rel="noopener noreferrer">Edit this page on GitHub</a> <svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></div> <div class="last-updated"><span class="prefix">Last Updated:</span> <span class="time">4/23/2020, 1:46:38 AM</span></div></footer> <div class="page-nav"><p class="inner"><span class="prev">
←
<a href="/docs/api/device_manager.html" class="prev">
Device Manager
</a></span> <span class="next"><a href="/docs/api/css_composer.html">
CSS Composer
</a>
→
</span></p></div> </main></div><div class="global-ui"></div></div>
<script src="/docs/assets/js/app.4dd41b9b.js" defer></script><script src="/docs/assets/js/11.b2ac4984.js" defer></script><script src="/docs/assets/js/2.a342f4be.js" defer></script><script src="/docs/assets/js/34.07640632.js" defer></script>
</body>
</html>

70
docs/api/storage_manager.html

File diff suppressed because one or more lines are too long

128
docs/api/style_manager.html

File diff suppressed because one or more lines are too long

84
docs/api/undo_manager.html

@ -4,52 +4,64 @@
<meta charset="utf-8">
<meta name="viewport" content="width=device-width,initial-scale=1">
<title>GrapesJS</title>
<meta name="description" content="GrapesJS documentation">
<meta name="generator" content="VuePress 1.4.1">
<link rel="icon" href="/docs/logo-icon.png">
<link rel="stylesheet" href="../stylesheets/grapes.min.css?v0.16.12">
<script src="../js/grapes.min.js?v0.16.12"></script>
<link rel="preload" href="/docs/assets/css/styles.e1f2d947.css" as="style"><link rel="preload" href="/docs/assets/js/app.e1f2d947.js" as="script"><link rel="preload" href="/docs/assets/js/31.334d7953.js" as="script"><link rel="prefetch" href="/docs/assets/css/1.styles.b40e6662.css"><link rel="prefetch" href="/docs/assets/css/2.styles.896e948d.css"><link rel="prefetch" href="/docs/assets/css/3.styles.46968bd4.css"><link rel="prefetch" href="/docs/assets/css/4.styles.79691bb5.css"><link rel="prefetch" href="/docs/assets/css/5.styles.6013373a.css"><link rel="prefetch" href="/docs/assets/css/6.styles.467c19a2.css"><link rel="prefetch" href="/docs/assets/css/7.styles.ce9d181d.css"><link rel="prefetch" href="/docs/assets/css/8.styles.aae17ac6.css"><link rel="prefetch" href="/docs/assets/css/9.styles.e0170b17.css"><link rel="prefetch" href="/docs/assets/js/1.b40e6662.js"><link rel="prefetch" href="/docs/assets/js/10.e7cd7c26.js"><link rel="prefetch" href="/docs/assets/js/11.3f87b9b8.js"><link rel="prefetch" href="/docs/assets/js/12.269b5586.js"><link rel="prefetch" href="/docs/assets/js/13.e52ea678.js"><link rel="prefetch" href="/docs/assets/js/14.0606827a.js"><link rel="prefetch" href="/docs/assets/js/15.aa7f42f8.js"><link rel="prefetch" href="/docs/assets/js/16.959c0bd7.js"><link rel="prefetch" href="/docs/assets/js/17.bfba947e.js"><link rel="prefetch" href="/docs/assets/js/18.7f401ffb.js"><link rel="prefetch" href="/docs/assets/js/19.3e0ce3c8.js"><link rel="prefetch" href="/docs/assets/js/2.896e948d.js"><link rel="prefetch" href="/docs/assets/js/20.f4502040.js"><link rel="prefetch" href="/docs/assets/js/21.2babea6a.js"><link rel="prefetch" href="/docs/assets/js/22.26e5d9ed.js"><link rel="prefetch" href="/docs/assets/js/23.a2c9ec17.js"><link rel="prefetch" href="/docs/assets/js/24.f9675b16.js"><link rel="prefetch" href="/docs/assets/js/25.b52924ae.js"><link rel="prefetch" href="/docs/assets/js/26.81c00685.js"><link rel="prefetch" href="/docs/assets/js/27.7372785c.js"><link rel="prefetch" href="/docs/assets/js/28.df5c22ed.js"><link rel="prefetch" href="/docs/assets/js/29.b167a894.js"><link rel="prefetch" href="/docs/assets/js/3.46968bd4.js"><link rel="prefetch" href="/docs/assets/js/30.d165faf7.js"><link rel="prefetch" href="/docs/assets/js/32.f9daa2c8.js"><link rel="prefetch" href="/docs/assets/js/33.93f49bfa.js"><link rel="prefetch" href="/docs/assets/js/34.4865e6c3.js"><link rel="prefetch" href="/docs/assets/js/35.9d089775.js"><link rel="prefetch" href="/docs/assets/js/36.67cb8d1f.js"><link rel="prefetch" href="/docs/assets/js/37.708a94ac.js"><link rel="prefetch" href="/docs/assets/js/38.0f8df29b.js"><link rel="prefetch" href="/docs/assets/js/39.074f3faf.js"><link rel="prefetch" href="/docs/assets/js/4.79691bb5.js"><link rel="prefetch" href="/docs/assets/js/40.cef45f06.js"><link rel="prefetch" href="/docs/assets/js/41.c734b929.js"><link rel="prefetch" href="/docs/assets/js/42.1078a060.js"><link rel="prefetch" href="/docs/assets/js/43.7188da01.js"><link rel="prefetch" href="/docs/assets/js/44.1fd52e91.js"><link rel="prefetch" href="/docs/assets/js/45.69c67864.js"><link rel="prefetch" href="/docs/assets/js/5.6013373a.js"><link rel="prefetch" href="/docs/assets/js/6.467c19a2.js"><link rel="prefetch" href="/docs/assets/js/7.ce9d181d.js"><link rel="prefetch" href="/docs/assets/js/8.aae17ac6.js"><link rel="prefetch" href="/docs/assets/js/9.e0170b17.js">
<link rel="stylesheet" href="/docs/assets/css/styles.e1f2d947.css">
<link rel="stylesheet" href="../stylesheets/grapes.min.css?v0.16.12">
<script src="../js/grapes.min.js?v0.16.12"></script>
<meta name="description" content="GrapesJS documentation">
<link rel="preload" href="/docs/assets/css/0.styles.d44f2c14.css" as="style"><link rel="preload" href="/docs/assets/js/app.4dd41b9b.js" as="script"><link rel="preload" href="/docs/assets/js/11.b2ac4984.js" as="script"><link rel="preload" href="/docs/assets/js/2.a342f4be.js" as="script"><link rel="preload" href="/docs/assets/js/37.e2d50838.js" as="script"><link rel="prefetch" href="/docs/assets/js/10.6a518be5.js"><link rel="prefetch" href="/docs/assets/js/12.bf8ecce1.js"><link rel="prefetch" href="/docs/assets/js/13.d807997f.js"><link rel="prefetch" href="/docs/assets/js/14.0ba8a778.js"><link rel="prefetch" href="/docs/assets/js/15.52ce2afa.js"><link rel="prefetch" href="/docs/assets/js/16.47266d46.js"><link rel="prefetch" href="/docs/assets/js/17.9b7a7fa4.js"><link rel="prefetch" href="/docs/assets/js/18.66b0785d.js"><link rel="prefetch" href="/docs/assets/js/19.2f9692d0.js"><link rel="prefetch" href="/docs/assets/js/20.ab1e767c.js"><link rel="prefetch" href="/docs/assets/js/21.66fe8957.js"><link rel="prefetch" href="/docs/assets/js/22.cb6c233f.js"><link rel="prefetch" href="/docs/assets/js/23.dc99d7c7.js"><link rel="prefetch" href="/docs/assets/js/24.245fff8a.js"><link rel="prefetch" href="/docs/assets/js/25.d8c7e0b5.js"><link rel="prefetch" href="/docs/assets/js/26.ad7fc796.js"><link rel="prefetch" href="/docs/assets/js/27.169cfbf6.js"><link rel="prefetch" href="/docs/assets/js/28.f086d486.js"><link rel="prefetch" href="/docs/assets/js/29.5e2a7327.js"><link rel="prefetch" href="/docs/assets/js/3.7e642bff.js"><link rel="prefetch" href="/docs/assets/js/30.3a998b30.js"><link rel="prefetch" href="/docs/assets/js/31.5286fade.js"><link rel="prefetch" href="/docs/assets/js/32.0a0e4ae7.js"><link rel="prefetch" href="/docs/assets/js/33.0ba298a5.js"><link rel="prefetch" href="/docs/assets/js/34.07640632.js"><link rel="prefetch" href="/docs/assets/js/35.061f6dd5.js"><link rel="prefetch" href="/docs/assets/js/36.63462982.js"><link rel="prefetch" href="/docs/assets/js/38.1230aa70.js"><link rel="prefetch" href="/docs/assets/js/39.c8373102.js"><link rel="prefetch" href="/docs/assets/js/4.32ffd5a1.js"><link rel="prefetch" href="/docs/assets/js/40.0600f064.js"><link rel="prefetch" href="/docs/assets/js/41.9bbfe266.js"><link rel="prefetch" href="/docs/assets/js/42.63c51d25.js"><link rel="prefetch" href="/docs/assets/js/43.d69d8e57.js"><link rel="prefetch" href="/docs/assets/js/44.a981446c.js"><link rel="prefetch" href="/docs/assets/js/45.415ecb59.js"><link rel="prefetch" href="/docs/assets/js/46.75d7a27f.js"><link rel="prefetch" href="/docs/assets/js/47.a4983875.js"><link rel="prefetch" href="/docs/assets/js/48.0dd7e7e0.js"><link rel="prefetch" href="/docs/assets/js/49.166bd1fa.js"><link rel="prefetch" href="/docs/assets/js/5.a0a5a0aa.js"><link rel="prefetch" href="/docs/assets/js/50.4e76f723.js"><link rel="prefetch" href="/docs/assets/js/51.21d145d2.js"><link rel="prefetch" href="/docs/assets/js/52.43234198.js"><link rel="prefetch" href="/docs/assets/js/6.9461537e.js"><link rel="prefetch" href="/docs/assets/js/7.3158bea4.js"><link rel="prefetch" href="/docs/assets/js/8.625d63ee.js"><link rel="prefetch" href="/docs/assets/js/9.e856c4d3.js">
<link rel="stylesheet" href="/docs/assets/css/0.styles.d44f2c14.css">
</head>
<body>
<div id="app" data-server-rendered="true"><div class="theme-container"><header class="navbar"><div class="sidebar-button"><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" role="img" viewBox="0 0 448 512" class="icon"><path fill="currentColor" d="M436 124H12c-6.627 0-12-5.373-12-12V80c0-6.627 5.373-12 12-12h424c6.627 0 12 5.373 12 12v32c0 6.627-5.373 12-12 12zm0 160H12c-6.627 0-12-5.373-12-12v-32c0-6.627 5.373-12 12-12h424c6.627 0 12 5.373 12 12v32c0 6.627-5.373 12-12 12zm0 160H12c-6.627 0-12-5.373-12-12v-32c0-6.627 5.373-12 12-12h424c6.627 0 12 5.373 12 12v32c0 6.627-5.373 12-12 12z"></path></svg></div><a href="/docs/" class="home-link router-link-active"><img src="/docs/logo.png" class="logo"><span class="site-name can-hide">
GrapesJS
</span></a><div class="links"><div class="search-box"><input aria-label="Search" autocomplete="off" spellcheck="false" value=""><!----></div><nav class="nav-links can-hide"><div class="nav-item"><a href="/docs/" class="nav-link">Docs</a></div><div class="nav-item"><a href="/docs/api/" class="nav-link router-link-active">API Reference</a></div><div class="nav-item"><a href="https://opencollective.com/grapesjs" target="_blank" rel="noopener noreferrer" class="nav-link external">
<div id="app" data-server-rendered="true"><div class="theme-container"><header class="navbar"><div class="sidebar-button"><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" role="img" viewBox="0 0 448 512" class="icon"><path fill="currentColor" d="M436 124H12c-6.627 0-12-5.373-12-12V80c0-6.627 5.373-12 12-12h424c6.627 0 12 5.373 12 12v32c0 6.627-5.373 12-12 12zm0 160H12c-6.627 0-12-5.373-12-12v-32c0-6.627 5.373-12 12-12h424c6.627 0 12 5.373 12 12v32c0 6.627-5.373 12-12 12zm0 160H12c-6.627 0-12-5.373-12-12v-32c0-6.627 5.373-12 12-12h424c6.627 0 12 5.373 12 12v32c0 6.627-5.373 12-12 12z"></path></svg></div> <a href="/docs/" class="home-link router-link-active"><img src="/docs/logo.png" alt="GrapesJS" class="logo"> <span class="site-name can-hide">GrapesJS</span></a> <div class="links"><div class="search-box"><input aria-label="Search" autocomplete="off" spellcheck="false" value=""> <!----></div> <nav class="nav-links can-hide"><div class="nav-item"><a href="/docs/" class="nav-link">
Docs
</a></div><div class="nav-item"><a href="/docs/api/" class="nav-link router-link-active">
API Reference
</a></div><div class="nav-item"><a href="https://opencollective.com/grapesjs" target="_blank" rel="noopener noreferrer" class="nav-link external">
Support Us
<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path><polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></div><div class="nav-item"><a href="https://twitter.com/grapesjs" target="_blank" rel="noopener noreferrer" class="nav-link external">
<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></div><div class="nav-item"><a href="https://twitter.com/grapesjs" target="_blank" rel="noopener noreferrer" class="nav-link external">
Twitter
<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path><polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></div><a href="https://github.com/artf/grapesjs" target="_blank" rel="noopener noreferrer" class="repo-link">
<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></div> <a href="https://github.com/artf/grapesjs" target="_blank" rel="noopener noreferrer" class="repo-link">
GitHub
<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path><polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></nav></div></header><div class="sidebar-mask"></div><div class="sidebar"><nav class="nav-links"><div class="nav-item"><a href="/docs/" class="nav-link">Docs</a></div><div class="nav-item"><a href="/docs/api/" class="nav-link router-link-active">API Reference</a></div><div class="nav-item"><a href="https://opencollective.com/grapesjs" target="_blank" rel="noopener noreferrer" class="nav-link external">
<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></nav></div></header> <div class="sidebar-mask"></div> <aside class="sidebar"><nav class="nav-links"><div class="nav-item"><a href="/docs/" class="nav-link">
Docs
</a></div><div class="nav-item"><a href="/docs/api/" class="nav-link router-link-active">
API Reference
</a></div><div class="nav-item"><a href="https://opencollective.com/grapesjs" target="_blank" rel="noopener noreferrer" class="nav-link external">
Support Us
<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path><polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></div><div class="nav-item"><a href="https://twitter.com/grapesjs" target="_blank" rel="noopener noreferrer" class="nav-link external">
<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></div><div class="nav-item"><a href="https://twitter.com/grapesjs" target="_blank" rel="noopener noreferrer" class="nav-link external">
Twitter
<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path><polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></div><a href="https://github.com/artf/grapesjs" target="_blank" rel="noopener noreferrer" class="repo-link">
<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></div> <a href="https://github.com/artf/grapesjs" target="_blank" rel="noopener noreferrer" class="repo-link">
GitHub
<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path><polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></nav><div id="native-carbon" class="carbon-ads"></div><ul class="sidebar-links"><li><a href="/docs/api/" class="sidebar-link">API Reference</a></li><li><a href="/docs/api/editor.html" class="sidebar-link">Editor</a></li><li><a href="/docs/api/i18n.html" class="sidebar-link">I18n</a></li><li><a href="/docs/api/canvas.html" class="sidebar-link">Canvas</a></li><li><a href="/docs/api/assets.html" class="sidebar-link">Asset Manager</a></li><li><a href="/docs/api/block_manager.html" class="sidebar-link">Block Manager</a></li><li><a href="/docs/api/commands.html" class="sidebar-link">Commands</a></li><li><a href="/docs/api/components.html" class="sidebar-link">DOM Components</a></li><li><a href="/docs/api/component.html" class="sidebar-link"> - Component</a></li><li><a href="/docs/api/panels.html" class="sidebar-link">Panels</a></li><li><a href="/docs/api/style_manager.html" class="sidebar-link">Style Manager</a></li><li><a href="/docs/api/storage_manager.html" class="sidebar-link">Storage Manager</a></li><li><a href="/docs/api/device_manager.html" class="sidebar-link">Device Manager</a></li><li><a href="/docs/api/selector_manager.html" class="sidebar-link">Selector Manager</a></li><li><a href="/docs/api/css_composer.html" class="sidebar-link">CSS Composer</a></li><li><a href="/docs/api/modal_dialog.html" class="sidebar-link">Modal</a></li><li><a href="/docs/api/rich_text_editor.html" class="sidebar-link">Rich Text Editor</a></li><li><a href="/docs/api/keymaps.html" class="sidebar-link">Keymaps</a></li><li><a href="/docs/api/undo_manager.html" class="active sidebar-link">Undo Manager</a><ul class="sidebar-sub-headers"><li class="sidebar-sub-header"><a href="/docs/api/undo_manager.html#undomanager" class="sidebar-link">UndoManager</a></li><li class="sidebar-sub-header"><a href="/docs/api/undo_manager.html#getconfig" class="sidebar-link">getConfig</a></li><li class="sidebar-sub-header"><a href="/docs/api/undo_manager.html#add" class="sidebar-link">add</a></li><li class="sidebar-sub-header"><a href="/docs/api/undo_manager.html#remove" class="sidebar-link">remove</a></li><li class="sidebar-sub-header"><a href="/docs/api/undo_manager.html#removeall" class="sidebar-link">removeAll</a></li><li class="sidebar-sub-header"><a href="/docs/api/undo_manager.html#start" class="sidebar-link">start</a></li><li class="sidebar-sub-header"><a href="/docs/api/undo_manager.html#stop" class="sidebar-link">stop</a></li><li class="sidebar-sub-header"><a href="/docs/api/undo_manager.html#undo" class="sidebar-link">undo</a></li><li class="sidebar-sub-header"><a href="/docs/api/undo_manager.html#undoall" class="sidebar-link">undoAll</a></li><li class="sidebar-sub-header"><a href="/docs/api/undo_manager.html#redo" class="sidebar-link">redo</a></li><li class="sidebar-sub-header"><a href="/docs/api/undo_manager.html#redoall" class="sidebar-link">redoAll</a></li><li class="sidebar-sub-header"><a href="/docs/api/undo_manager.html#hasundo" class="sidebar-link">hasUndo</a></li><li class="sidebar-sub-header"><a href="/docs/api/undo_manager.html#hasredo" class="sidebar-link">hasRedo</a></li><li class="sidebar-sub-header"><a href="/docs/api/undo_manager.html#getstack" class="sidebar-link">getStack</a></li><li class="sidebar-sub-header"><a href="/docs/api/undo_manager.html#clear" class="sidebar-link">clear</a></li></ul></li></ul></div><div class="page"><div class="content"><h2 id="undomanager"><a href="#undomanager" aria-hidden="true" class="header-anchor">#</a> UndoManager</h2><p>This module allows to manage the stack of changes applied in canvas.
Once the editor is instantiated you can use its API. Before using these methods you should get the module from the instance</p><div class="language-js extra-class"><pre class="language-js"><code><span class="token keyword">const</span> um <span class="token operator">=</span> editor<span class="token punctuation">.</span>UndoManager<span class="token punctuation">;</span>
</code></pre></div><ul><li><a href="#getconfig">getConfig</a></li><li><a href="#add">add</a></li><li><a href="#remove">remove</a></li><li><a href="#removeall">removeAll</a></li><li><a href="#start">start</a></li><li><a href="#stop">stop</a></li><li><a href="#undo">undo</a></li><li><a href="#undoall">undoAll</a></li><li><a href="#redo">redo</a></li><li><a href="#redoall">redoAll</a></li><li><a href="#hasundo">hasUndo</a></li><li><a href="#hasredo">hasRedo</a></li><li><a href="#getstack">getStack</a></li><li><a href="#clear">clear</a></li></ul><h2 id="getconfig"><a href="#getconfig" aria-hidden="true" class="header-anchor">#</a> getConfig</h2><p>Get module configurations</p><h3 id="examples"><a href="#examples" aria-hidden="true" class="header-anchor">#</a> Examples</h3><div class="language-javascript extra-class"><pre class="language-javascript"><code><span class="token keyword">const</span> config <span class="token operator">=</span> um<span class="token punctuation">.</span><span class="token function">getConfig</span><span class="token punctuation">(</span><span class="token punctuation">)</span><span class="token punctuation">;</span>
<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></nav> <div id="native-carbon" class="carbon-ads"></div> <ul class="sidebar-links"><li><a href="/docs/api/" class="sidebar-link">API Reference</a></li><li><a href="/docs/api/editor.html" class="sidebar-link">Editor</a></li><li><a href="/docs/api/i18n.html" class="sidebar-link">I18n</a></li><li><a href="/docs/api/canvas.html" class="sidebar-link">Canvas</a></li><li><a href="/docs/api/assets.html" class="sidebar-link">Asset Manager</a></li><li><a href="/docs/api/block_manager.html" class="sidebar-link">Block Manager</a></li><li><a href="/docs/api/commands.html" class="sidebar-link">Commands</a></li><li><a href="/docs/api/components.html" class="sidebar-link">DOM Components</a></li><li><a href="/docs/api/component.html" class="sidebar-link"> - Component</a></li><li><a href="/docs/api/panels.html" class="sidebar-link">Panels</a></li><li><a href="/docs/api/style_manager.html" class="sidebar-link">Style Manager</a></li><li><a href="/docs/api/storage_manager.html" class="sidebar-link">Storage Manager</a></li><li><a href="/docs/api/device_manager.html" class="sidebar-link">Device Manager</a></li><li><a href="/docs/api/selector_manager.html" class="sidebar-link">Selector Manager</a></li><li><a href="/docs/api/css_composer.html" class="sidebar-link">CSS Composer</a></li><li><a href="/docs/api/modal_dialog.html" class="sidebar-link">Modal</a></li><li><a href="/docs/api/rich_text_editor.html" class="sidebar-link">Rich Text Editor</a></li><li><a href="/docs/api/keymaps.html" class="sidebar-link">Keymaps</a></li><li><a href="/docs/api/undo_manager.html" class="active sidebar-link">Undo Manager</a><ul class="sidebar-sub-headers"><li class="sidebar-sub-header"><a href="/docs/api/undo_manager.html#undomanager" class="sidebar-link">UndoManager</a></li><li class="sidebar-sub-header"><a href="/docs/api/undo_manager.html#getconfig" class="sidebar-link">getConfig</a></li><li class="sidebar-sub-header"><a href="/docs/api/undo_manager.html#add" class="sidebar-link">add</a></li><li class="sidebar-sub-header"><a href="/docs/api/undo_manager.html#remove" class="sidebar-link">remove</a></li><li class="sidebar-sub-header"><a href="/docs/api/undo_manager.html#removeall" class="sidebar-link">removeAll</a></li><li class="sidebar-sub-header"><a href="/docs/api/undo_manager.html#start" class="sidebar-link">start</a></li><li class="sidebar-sub-header"><a href="/docs/api/undo_manager.html#stop" class="sidebar-link">stop</a></li><li class="sidebar-sub-header"><a href="/docs/api/undo_manager.html#undo" class="sidebar-link">undo</a></li><li class="sidebar-sub-header"><a href="/docs/api/undo_manager.html#undoall" class="sidebar-link">undoAll</a></li><li class="sidebar-sub-header"><a href="/docs/api/undo_manager.html#redo" class="sidebar-link">redo</a></li><li class="sidebar-sub-header"><a href="/docs/api/undo_manager.html#redoall" class="sidebar-link">redoAll</a></li><li class="sidebar-sub-header"><a href="/docs/api/undo_manager.html#hasundo" class="sidebar-link">hasUndo</a></li><li class="sidebar-sub-header"><a href="/docs/api/undo_manager.html#hasredo" class="sidebar-link">hasRedo</a></li><li class="sidebar-sub-header"><a href="/docs/api/undo_manager.html#getstack" class="sidebar-link">getStack</a></li><li class="sidebar-sub-header"><a href="/docs/api/undo_manager.html#getstackgroup" class="sidebar-link">getStackGroup</a></li><li class="sidebar-sub-header"><a href="/docs/api/undo_manager.html#clear" class="sidebar-link">clear</a></li></ul></li></ul> </aside> <main class="page"> <div class="theme-default-content content__default"><h2 id="undomanager"><a href="#undomanager" class="header-anchor">#</a> UndoManager</h2> <p>This module allows to manage the stack of changes applied in canvas.
Once the editor is instantiated you can use its API. Before using these methods you should get the module from the instance</p> <div class="language-js extra-class"><pre class="language-js"><code><span class="token keyword">const</span> um <span class="token operator">=</span> editor<span class="token punctuation">.</span>UndoManager<span class="token punctuation">;</span>
</code></pre></div><ul><li><a href="#getconfig">getConfig</a></li> <li><a href="#add">add</a></li> <li><a href="#remove">remove</a></li> <li><a href="#removeall">removeAll</a></li> <li><a href="#start">start</a></li> <li><a href="#stop">stop</a></li> <li><a href="#undo">undo</a></li> <li><a href="#undoall">undoAll</a></li> <li><a href="#redo">redo</a></li> <li><a href="#redoall">redoAll</a></li> <li><a href="#hasundo">hasUndo</a></li> <li><a href="#hasredo">hasRedo</a></li> <li><a href="#getstack">getStack</a></li> <li><a href="#clear">clear</a></li></ul> <h2 id="getconfig"><a href="#getconfig" class="header-anchor">#</a> getConfig</h2> <p>Get module configurations</p> <h3 id="examples"><a href="#examples" class="header-anchor">#</a> Examples</h3> <div class="language-javascript extra-class"><pre class="language-javascript"><code><span class="token keyword">const</span> config <span class="token operator">=</span> um<span class="token punctuation">.</span><span class="token function">getConfig</span><span class="token punctuation">(</span><span class="token punctuation">)</span><span class="token punctuation">;</span>
<span class="token comment">// { ... }</span>
</code></pre></div><p>Returns <strong><a href="https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Object" target="_blank" rel="noopener noreferrer">Object<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path><polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></strong> Configuration object</p><h2 id="add"><a href="#add" aria-hidden="true" class="header-anchor">#</a> add</h2><p>Add an entity (Model/Collection) to track
Note: New Components and CSSRules will be added automatically</p><h3 id="parameters"><a href="#parameters" aria-hidden="true" class="header-anchor">#</a> Parameters</h3><ul><li><code>entity</code><strong>(Model | Collection)</strong> Entity to track</li></ul><h3 id="examples-2"><a href="#examples-2" aria-hidden="true" class="header-anchor">#</a> Examples</h3><div class="language-javascript extra-class"><pre class="language-javascript"><code>um<span class="token punctuation">.</span><span class="token function">add</span><span class="token punctuation">(</span>someModelOrCollection<span class="token punctuation">)</span><span class="token punctuation">;</span>
</code></pre></div><p>Returns <strong>this</strong></p><h2 id="remove"><a href="#remove" aria-hidden="true" class="header-anchor">#</a> remove</h2><p>Remove and stop tracking the entity (Model/Collection)</p><h3 id="parameters-2"><a href="#parameters-2" aria-hidden="true" class="header-anchor">#</a> Parameters</h3><ul><li><code>entity</code><strong>(Model | Collection)</strong> Entity to remove</li></ul><h3 id="examples-3"><a href="#examples-3" aria-hidden="true" class="header-anchor">#</a> Examples</h3><div class="language-javascript extra-class"><pre class="language-javascript"><code>um<span class="token punctuation">.</span><span class="token function">remove</span><span class="token punctuation">(</span>someModelOrCollection<span class="token punctuation">)</span><span class="token punctuation">;</span>
</code></pre></div><p>Returns <strong>this</strong></p><h2 id="removeall"><a href="#removeall" aria-hidden="true" class="header-anchor">#</a> removeAll</h2><p>Remove all entities</p><h3 id="examples-4"><a href="#examples-4" aria-hidden="true" class="header-anchor">#</a> Examples</h3><div class="language-javascript extra-class"><pre class="language-javascript"><code>um<span class="token punctuation">.</span><span class="token function">removeAll</span><span class="token punctuation">(</span><span class="token punctuation">)</span><span class="token punctuation">;</span>
</code></pre></div><p>Returns <strong>this</strong></p><h2 id="start"><a href="#start" aria-hidden="true" class="header-anchor">#</a> start</h2><p>Start/resume tracking changes</p><h3 id="examples-5"><a href="#examples-5" aria-hidden="true" class="header-anchor">#</a> Examples</h3><div class="language-javascript extra-class"><pre class="language-javascript"><code>um<span class="token punctuation">.</span><span class="token function">start</span><span class="token punctuation">(</span><span class="token punctuation">)</span><span class="token punctuation">;</span>
</code></pre></div><p>Returns <strong>this</strong></p><h2 id="stop"><a href="#stop" aria-hidden="true" class="header-anchor">#</a> stop</h2><p>Stop tracking changes</p><h3 id="examples-6"><a href="#examples-6" aria-hidden="true" class="header-anchor">#</a> Examples</h3><div class="language-javascript extra-class"><pre class="language-javascript"><code>um<span class="token punctuation">.</span><span class="token function">stop</span><span class="token punctuation">(</span><span class="token punctuation">)</span><span class="token punctuation">;</span>
</code></pre></div><p>Returns <strong>this</strong></p><h2 id="undo"><a href="#undo" aria-hidden="true" class="header-anchor">#</a> undo</h2><p>Undo last change</p><h3 id="examples-7"><a href="#examples-7" aria-hidden="true" class="header-anchor">#</a> Examples</h3><div class="language-javascript extra-class"><pre class="language-javascript"><code>um<span class="token punctuation">.</span><span class="token function">undo</span><span class="token punctuation">(</span><span class="token punctuation">)</span><span class="token punctuation">;</span>
</code></pre></div><p>Returns <strong>this</strong></p><h2 id="undoall"><a href="#undoall" aria-hidden="true" class="header-anchor">#</a> undoAll</h2><p>Undo all changes</p><h3 id="examples-8"><a href="#examples-8" aria-hidden="true" class="header-anchor">#</a> Examples</h3><div class="language-javascript extra-class"><pre class="language-javascript"><code>um<span class="token punctuation">.</span><span class="token function">undoAll</span><span class="token punctuation">(</span><span class="token punctuation">)</span><span class="token punctuation">;</span>
</code></pre></div><p>Returns <strong>this</strong></p><h2 id="redo"><a href="#redo" aria-hidden="true" class="header-anchor">#</a> redo</h2><p>Redo last change</p><h3 id="examples-9"><a href="#examples-9" aria-hidden="true" class="header-anchor">#</a> Examples</h3><div class="language-javascript extra-class"><pre class="language-javascript"><code>um<span class="token punctuation">.</span><span class="token function">redo</span><span class="token punctuation">(</span><span class="token punctuation">)</span><span class="token punctuation">;</span>
</code></pre></div><p>Returns <strong>this</strong></p><h2 id="redoall"><a href="#redoall" aria-hidden="true" class="header-anchor">#</a> redoAll</h2><p>Redo all changes</p><h3 id="examples-10"><a href="#examples-10" aria-hidden="true" class="header-anchor">#</a> Examples</h3><div class="language-javascript extra-class"><pre class="language-javascript"><code>um<span class="token punctuation">.</span><span class="token function">redoAll</span><span class="token punctuation">(</span><span class="token punctuation">)</span><span class="token punctuation">;</span>
</code></pre></div><p>Returns <strong>this</strong></p><h2 id="hasundo"><a href="#hasundo" aria-hidden="true" class="header-anchor">#</a> hasUndo</h2><p>Checks if exists an available undo</p><h3 id="examples-11"><a href="#examples-11" aria-hidden="true" class="header-anchor">#</a> Examples</h3><div class="language-javascript extra-class"><pre class="language-javascript"><code>um<span class="token punctuation">.</span><span class="token function">hasUndo</span><span class="token punctuation">(</span><span class="token punctuation">)</span><span class="token punctuation">;</span>
</code></pre></div><p>Returns <strong><a href="https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Boolean" target="_blank" rel="noopener noreferrer">Boolean<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path><polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></strong></p><h2 id="hasredo"><a href="#hasredo" aria-hidden="true" class="header-anchor">#</a> hasRedo</h2><p>Checks if exists an available redo</p><h3 id="examples-12"><a href="#examples-12" aria-hidden="true" class="header-anchor">#</a> Examples</h3><div class="language-javascript extra-class"><pre class="language-javascript"><code>um<span class="token punctuation">.</span><span class="token function">hasRedo</span><span class="token punctuation">(</span><span class="token punctuation">)</span><span class="token punctuation">;</span>
</code></pre></div><p>Returns <strong><a href="https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Boolean" target="_blank" rel="noopener noreferrer">Boolean<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path><polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></strong></p><h2 id="getstack"><a href="#getstack" aria-hidden="true" class="header-anchor">#</a> getStack</h2><p>Get stack of changes</p><h3 id="examples-13"><a href="#examples-13" aria-hidden="true" class="header-anchor">#</a> Examples</h3><div class="language-javascript extra-class"><pre class="language-javascript"><code><span class="token keyword">const</span> stack <span class="token operator">=</span> um<span class="token punctuation">.</span><span class="token function">getStack</span><span class="token punctuation">(</span><span class="token punctuation">)</span><span class="token punctuation">;</span>
</code></pre></div><p>Returns <strong><a href="https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Object" target="_blank" rel="noopener noreferrer">Object<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></strong> Configuration object</p> <h2 id="add"><a href="#add" class="header-anchor">#</a> add</h2> <p>Add an entity (Model/Collection) to track
Note: New Components and CSSRules will be added automatically</p> <h3 id="parameters"><a href="#parameters" class="header-anchor">#</a> Parameters</h3> <ul><li><code>entity</code> <strong>(Model | Collection)</strong> Entity to track</li></ul> <h3 id="examples-2"><a href="#examples-2" class="header-anchor">#</a> Examples</h3> <div class="language-javascript extra-class"><pre class="language-javascript"><code>um<span class="token punctuation">.</span><span class="token function">add</span><span class="token punctuation">(</span>someModelOrCollection<span class="token punctuation">)</span><span class="token punctuation">;</span>
</code></pre></div><p>Returns <strong>this</strong></p> <h2 id="remove"><a href="#remove" class="header-anchor">#</a> remove</h2> <p>Remove and stop tracking the entity (Model/Collection)</p> <h3 id="parameters-2"><a href="#parameters-2" class="header-anchor">#</a> Parameters</h3> <ul><li><code>entity</code> <strong>(Model | Collection)</strong> Entity to remove</li></ul> <h3 id="examples-3"><a href="#examples-3" class="header-anchor">#</a> Examples</h3> <div class="language-javascript extra-class"><pre class="language-javascript"><code>um<span class="token punctuation">.</span><span class="token function">remove</span><span class="token punctuation">(</span>someModelOrCollection<span class="token punctuation">)</span><span class="token punctuation">;</span>
</code></pre></div><p>Returns <strong>this</strong></p> <h2 id="removeall"><a href="#removeall" class="header-anchor">#</a> removeAll</h2> <p>Remove all entities</p> <h3 id="examples-4"><a href="#examples-4" class="header-anchor">#</a> Examples</h3> <div class="language-javascript extra-class"><pre class="language-javascript"><code>um<span class="token punctuation">.</span><span class="token function">removeAll</span><span class="token punctuation">(</span><span class="token punctuation">)</span><span class="token punctuation">;</span>
</code></pre></div><p>Returns <strong>this</strong></p> <h2 id="start"><a href="#start" class="header-anchor">#</a> start</h2> <p>Start/resume tracking changes</p> <h3 id="examples-5"><a href="#examples-5" class="header-anchor">#</a> Examples</h3> <div class="language-javascript extra-class"><pre class="language-javascript"><code>um<span class="token punctuation">.</span><span class="token function">start</span><span class="token punctuation">(</span><span class="token punctuation">)</span><span class="token punctuation">;</span>
</code></pre></div><p>Returns <strong>this</strong></p> <h2 id="stop"><a href="#stop" class="header-anchor">#</a> stop</h2> <p>Stop tracking changes</p> <h3 id="examples-6"><a href="#examples-6" class="header-anchor">#</a> Examples</h3> <div class="language-javascript extra-class"><pre class="language-javascript"><code>um<span class="token punctuation">.</span><span class="token function">stop</span><span class="token punctuation">(</span><span class="token punctuation">)</span><span class="token punctuation">;</span>
</code></pre></div><p>Returns <strong>this</strong></p> <h2 id="undo"><a href="#undo" class="header-anchor">#</a> undo</h2> <p>Undo last change</p> <h3 id="parameters-3"><a href="#parameters-3" class="header-anchor">#</a> Parameters</h3> <ul><li><code>all</code> (optional, default <code>true</code>)</li></ul> <h3 id="examples-7"><a href="#examples-7" class="header-anchor">#</a> Examples</h3> <div class="language-javascript extra-class"><pre class="language-javascript"><code>um<span class="token punctuation">.</span><span class="token function">undo</span><span class="token punctuation">(</span><span class="token punctuation">)</span><span class="token punctuation">;</span>
</code></pre></div><p>Returns <strong>this</strong></p> <h2 id="undoall"><a href="#undoall" class="header-anchor">#</a> undoAll</h2> <p>Undo all changes</p> <h3 id="examples-8"><a href="#examples-8" class="header-anchor">#</a> Examples</h3> <div class="language-javascript extra-class"><pre class="language-javascript"><code>um<span class="token punctuation">.</span><span class="token function">undoAll</span><span class="token punctuation">(</span><span class="token punctuation">)</span><span class="token punctuation">;</span>
</code></pre></div><p>Returns <strong>this</strong></p> <h2 id="redo"><a href="#redo" class="header-anchor">#</a> redo</h2> <p>Redo last change</p> <h3 id="parameters-4"><a href="#parameters-4" class="header-anchor">#</a> Parameters</h3> <ul><li><code>all</code> (optional, default <code>true</code>)</li></ul> <h3 id="examples-9"><a href="#examples-9" class="header-anchor">#</a> Examples</h3> <div class="language-javascript extra-class"><pre class="language-javascript"><code>um<span class="token punctuation">.</span><span class="token function">redo</span><span class="token punctuation">(</span><span class="token punctuation">)</span><span class="token punctuation">;</span>
</code></pre></div><p>Returns <strong>this</strong></p> <h2 id="redoall"><a href="#redoall" class="header-anchor">#</a> redoAll</h2> <p>Redo all changes</p> <h3 id="examples-10"><a href="#examples-10" class="header-anchor">#</a> Examples</h3> <div class="language-javascript extra-class"><pre class="language-javascript"><code>um<span class="token punctuation">.</span><span class="token function">redoAll</span><span class="token punctuation">(</span><span class="token punctuation">)</span><span class="token punctuation">;</span>
</code></pre></div><p>Returns <strong>this</strong></p> <h2 id="hasundo"><a href="#hasundo" class="header-anchor">#</a> hasUndo</h2> <p>Checks if exists an available undo</p> <h3 id="examples-11"><a href="#examples-11" class="header-anchor">#</a> Examples</h3> <div class="language-javascript extra-class"><pre class="language-javascript"><code>um<span class="token punctuation">.</span><span class="token function">hasUndo</span><span class="token punctuation">(</span><span class="token punctuation">)</span><span class="token punctuation">;</span>
</code></pre></div><p>Returns <strong><a href="https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Boolean" target="_blank" rel="noopener noreferrer">Boolean<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></strong></p> <h2 id="hasredo"><a href="#hasredo" class="header-anchor">#</a> hasRedo</h2> <p>Checks if exists an available redo</p> <h3 id="examples-12"><a href="#examples-12" class="header-anchor">#</a> Examples</h3> <div class="language-javascript extra-class"><pre class="language-javascript"><code>um<span class="token punctuation">.</span><span class="token function">hasRedo</span><span class="token punctuation">(</span><span class="token punctuation">)</span><span class="token punctuation">;</span>
</code></pre></div><p>Returns <strong><a href="https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Boolean" target="_blank" rel="noopener noreferrer">Boolean<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></strong></p> <h2 id="getstack"><a href="#getstack" class="header-anchor">#</a> getStack</h2> <p>Get stack of changes</p> <h3 id="examples-13"><a href="#examples-13" class="header-anchor">#</a> Examples</h3> <div class="language-javascript extra-class"><pre class="language-javascript"><code><span class="token keyword">const</span> stack <span class="token operator">=</span> um<span class="token punctuation">.</span><span class="token function">getStack</span><span class="token punctuation">(</span><span class="token punctuation">)</span><span class="token punctuation">;</span>
stack<span class="token punctuation">.</span><span class="token function">each</span><span class="token punctuation">(</span><span class="token parameter">item</span> <span class="token operator">=&gt;</span> <span class="token operator">...</span><span class="token punctuation">)</span><span class="token punctuation">;</span>
</code></pre></div><p>Returns <strong>Collection</strong></p><h2 id="clear"><a href="#clear" aria-hidden="true" class="header-anchor">#</a> clear</h2><p>Clear the stack</p><h3 id="examples-14"><a href="#examples-14" aria-hidden="true" class="header-anchor">#</a> Examples</h3><div class="language-javascript extra-class"><pre class="language-javascript"><code>um<span class="token punctuation">.</span><span class="token function">clear</span><span class="token punctuation">(</span><span class="token punctuation">)</span><span class="token punctuation">;</span>
</code></pre></div><p>Returns <strong>this</strong></p></div><div class="page-edit"><div class="edit-link"><a href="https://github.com/artf/grapesjs/edit/dev/docs/api/undo_manager.md" target="_blank" rel="noopener noreferrer">Edit this page on GitHub</a><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path><polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></div><div class="last-updated"><span class="prefix">Last Updated: </span><span class="time">7/9/2018, 12:11:12 AM</span></div></div><div class="page-nav"><p class="inner"><span class="prev">
← <a href="/docs/api/keymaps.html" class="prev">
Keymaps
</a></span><!----></p></div></div></div></div>
<script src="/docs/assets/js/app.e1f2d947.js" defer></script><script src="/docs/assets/js/31.334d7953.js" defer></script>
</code></pre></div><p>Returns <strong>Collection</strong></p> <h2 id="getstackgroup"><a href="#getstackgroup" class="header-anchor">#</a> getStackGroup</h2> <p>Get grouped undo manager stack.
The difference between <code>getStack</code> is when you do multiple operations at a time,
like appending multiple components:
<code>editor.getWrapper().append(</code></p><div>C1</div><div>C2</div><code>);</code> <code>getStack</code> will return a collection length of 2.
<code>getStackGroup</code> instead will group them as a single operation (the first
inserted component will be returned in the list) by returning an array length of 1.<p></p> <p>Returns <strong><a href="https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Array" target="_blank" rel="noopener noreferrer">Array<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></a></strong></p> <h2 id="clear"><a href="#clear" class="header-anchor">#</a> clear</h2> <p>Clear the stack</p> <h3 id="examples-14"><a href="#examples-14" class="header-anchor">#</a> Examples</h3> <div class="language-javascript extra-class"><pre class="language-javascript"><code>um<span class="token punctuation">.</span><span class="token function">clear</span><span class="token punctuation">(</span><span class="token punctuation">)</span><span class="token punctuation">;</span>
</code></pre></div><p>Returns <strong>this</strong></p></div> <footer class="page-edit"><div class="edit-link"><a href="https://github.com/artf/grapesjs/edit/dev/docs/api/undo_manager.md" target="_blank" rel="noopener noreferrer">Edit this page on GitHub</a> <svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg></div> <div class="last-updated"><span class="prefix">Last Updated:</span> <span class="time">4/23/2020, 1:46:38 AM</span></div></footer> <div class="page-nav"><p class="inner"><span class="prev">
←
<a href="/docs/api/keymaps.html" class="prev">
Keymaps
</a></span> <!----></p></div> </main></div><div class="global-ui"></div></div>
<script src="/docs/assets/js/app.4dd41b9b.js" defer></script><script src="/docs/assets/js/11.b2ac4984.js" defer></script><script src="/docs/assets/js/2.a342f4be.js" defer></script><script src="/docs/assets/js/37.e2d50838.js" defer></script>
</body>
</html>

1
docs/assets/css/0.styles.d44f2c14.css

File diff suppressed because one or more lines are too long

1
docs/assets/css/1.styles.b40e6662.css

@ -1 +0,0 @@
.gjs{border:3px solid #444}.gjs-block{width:auto;height:auto;min-height:auto}

1
docs/assets/css/2.styles.896e948d.css

@ -1 +0,0 @@
#gjs{border:3px solid #444}.gjs-cv-canvas{top:0;width:100%;height:100%}

1
docs/assets/css/3.styles.46968bd4.css

@ -1 +0,0 @@
.panel__top{padding:0;width:100%;display:-webkit-box;display:flex;-webkit-box-pack:center;justify-content:center;-webkit-box-pack:justify;justify-content:space-between}.panel__basic-actions,.panel__top{position:static}.content pre{padding-top:0;padding-bottom:0;margin-top:0;margin-bottom:0}

1
docs/assets/css/4.styles.79691bb5.css

@ -1 +0,0 @@
.panel__devices{position:static}

1
docs/assets/css/5.styles.6013373a.css

@ -1 +0,0 @@
.editor-row{display:-webkit-box;display:flex;-webkit-box-pack:start;justify-content:flex-start;-webkit-box-align:stretch;align-items:stretch;flex-wrap:nowrap;height:300px}.editor-canvas{-webkit-box-flex:1;flex-grow:1}.panel__right{flex-basis:230px;position:relative;overflow-y:auto}

1
docs/assets/css/6.styles.467c19a2.css

@ -1 +0,0 @@
.panel__switcher{position:static}

1
docs/assets/css/7.styles.ce9d181d.css

@ -1 +0,0 @@
.gjs__themed .gjs-one-bg{background-color:#78366a}.gjs__themed .gjs-two-color{color:hsla(0,0%,100%,.7)}.gjs__themed .gjs-three-bg{background-color:#ec5896;color:#fff}.gjs__themed .gjs-four-color,.gjs__themed .gjs-four-color-h:hover{color:#ec5896}.gjs__themed .gjs{border:none}

1
docs/assets/css/8.styles.aae17ac6.css

@ -1 +0,0 @@
.panel__switcher{position:static}

1
docs/assets/css/9.styles.e0170b17.css

@ -1 +0,0 @@
.demo-container[data-v-b3715568]{min-height:20px;border:1px solid #eee;border-radius:2px;padding:25px 35px}

1
docs/assets/css/styles.e1f2d947.css

File diff suppressed because one or more lines are too long

1
docs/assets/js/10.6a518be5.js

File diff suppressed because one or more lines are too long

1
docs/assets/js/10.e7cd7c26.js

@ -1 +0,0 @@
(window.webpackJsonp=window.webpackJsonp||[]).push([[10],{209:function(e,t,r){"use strict";r.r(t);var s={name:"DemoViewer",props:{value:{type:String,default:""},user:{type:String,default:"artur_arseniev"},width:{type:String,default:"100%"},height:{type:String,default:"300"}},computed:{src:function(){var e=this.value,t=this.user;return"//jsfiddle.net/".concat(t,"/").concat(e,"/embedded/js,html,css,result")}}},i=r(1),n=Object(i.a)(s,(function(){var e=this.$createElement;return(this._self._c||e)("iframe",{attrs:{width:this.width,height:this.height,src:this.src,allowfullscreen:"allowfullscreen",frameborder:"0"}})}),[],!1,null,null,null);t.default=n.exports}}]);

1
docs/assets/js/11.3f87b9b8.js

File diff suppressed because one or more lines are too long

1
docs/assets/js/11.b2ac4984.js

@ -0,0 +1 @@
(window.webpackJsonp=window.webpackJsonp||[]).push([[11,13],{275:function(t,n,e){},291:function(t,n,e){"use strict";var a=e(275);e.n(a).a},311:function(t,n,e){"use strict";e.r(n);var a={render:function(t){return t("div",{class:"carbon-ads",attrs:{id:"native-carbon"}})},mounted:function(){window.BSANativeCallback=function(t){if(!t.ads.length){var n=document.createElement("script");n.src="//cdn.carbonads.com/carbon.js?zoneid=1673&serve=C6AILKT&placement=grapesjscom",n.setAttribute("id","_carbonads_js");var e=document.getElementById("native-carbon");e&&e.appendChild(n)}},this.load()},watch:{$route:function(t,n){t.path!==n.path&&this.$el.querySelector("#carbonads")&&(this.$el.innerHTML="",this.load())}},methods:{initCarbon:function(){var t=window._bsa;void 0!==t&&t&&t.init("default","CK7I62QJ","placement:grapesjscomdocs",{target:"#native-carbon"})},load:function(){var t=this,n=document.createElement("script");n.src="//m.servedby-buysellads.com/monetization.js",n.onload=function(){return t.initCarbon()},this.$el.appendChild(n)}}},o=(e(291),e(33)),r=Object(o.a)(a,void 0,void 0,!1,null,null,null);n.default=r.exports},385:function(t,n,e){"use strict";e.r(n);var a=e(347),o=e(311),r={components:{Layout:a.a,CarbonAds:o.default}},i=e(33),s=Object(i.a)(r,(function(){var t=this.$createElement,n=this._self._c||t;return n("Layout",[n("CarbonAds",{attrs:{slot:"sidebar-top"},slot:"sidebar-top"})],1)}),[],!1,null,null,null);n.default=s.exports}}]);

1
docs/assets/js/12.269b5586.js

File diff suppressed because one or more lines are too long

1
docs/assets/js/12.bf8ecce1.js

@ -0,0 +1 @@
(window.webpackJsonp=window.webpackJsonp||[]).push([[12],{292:function(t,n,e){},337:function(t,n,e){"use strict";var s=e(292);e.n(s).a},395:function(t,n,e){"use strict";e.r(n);e(337);var s=e(33),i=Object(s.a)({},(function(){var t=this.$createElement;return(this._self._c||t)("div",{staticClass:"demo-container"},[this._t("default")],2)}),[],!1,null,"b3715568",null);n.default=i.exports}}]);

1
docs/assets/js/13.d807997f.js

@ -0,0 +1 @@
(window.webpackJsonp=window.webpackJsonp||[]).push([[13],{275:function(n,t,e){},291:function(n,t,e){"use strict";var a=e(275);e.n(a).a},311:function(n,t,e){"use strict";e.r(t);var a={render:function(n){return n("div",{class:"carbon-ads",attrs:{id:"native-carbon"}})},mounted:function(){window.BSANativeCallback=function(n){if(!n.ads.length){var t=document.createElement("script");t.src="//cdn.carbonads.com/carbon.js?zoneid=1673&serve=C6AILKT&placement=grapesjscom",t.setAttribute("id","_carbonads_js");var e=document.getElementById("native-carbon");e&&e.appendChild(t)}},this.load()},watch:{$route:function(n,t){n.path!==t.path&&this.$el.querySelector("#carbonads")&&(this.$el.innerHTML="",this.load())}},methods:{initCarbon:function(){var n=window._bsa;void 0!==n&&n&&n.init("default","CK7I62QJ","placement:grapesjscomdocs",{target:"#native-carbon"})},load:function(){var n=this,t=document.createElement("script");t.src="//m.servedby-buysellads.com/monetization.js",t.onload=function(){return n.initCarbon()},this.$el.appendChild(t)}}},o=(e(291),e(33)),i=Object(o.a)(a,void 0,void 0,!1,null,null,null);t.default=i.exports}}]);

1
docs/assets/js/13.e52ea678.js

@ -1 +0,0 @@
(window.webpackJsonp=window.webpackJsonp||[]).push([[13],{233:function(e,t,a){"use strict";a.r(t);var n=a(1),s=Object(n.a)({},(function(){var e=this.$createElement,t=this._self._c||e;return t("div",{staticClass:"content"},[this._m(0),t("p",[this._v("Here you can find the documentation about GrapesJS' APIs. Mainly, you would use them for your editor to extend the basic functionality of the framework or you could also "),t("router-link",{attrs:{to:"/modules/Plugins.html"}},[this._v("create a plugin")]),this._v(" and make those extensions reusable and available to others.")],1)])}),[function(){var e=this.$createElement,t=this._self._c||e;return t("h1",{attrs:{id:"api-reference"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#api-reference","aria-hidden":"true"}},[this._v("#")]),this._v(" API Reference")])}],!1,null,null,null);t.default=s.exports}}]);

1
docs/assets/js/14.0606827a.js

File diff suppressed because one or more lines are too long

1
docs/assets/js/14.0ba8a778.js

@ -0,0 +1 @@
(window.webpackJsonp=window.webpackJsonp||[]).push([[14],{301:function(t,e,n){},346:function(t,e,n){"use strict";var i=n(301);n.n(i).a},396:function(t,e,n){"use strict";n.r(e);var i={functional:!0,props:{type:{type:String,default:"tip"},text:String,vertical:{type:String,default:"top"}},render:function(t,e){var n=e.props,i=e.slots;return t("span",{class:["badge",n.type],style:{verticalAlign:n.vertical}},n.text||i().default)}},r=(n(346),n(33)),a=Object(r.a)(i,void 0,void 0,!1,null,"15b7b770",null);e.default=a.exports}}]);

1
docs/assets/js/15.52ce2afa.js

@ -0,0 +1 @@
(window.webpackJsonp=window.webpackJsonp||[]).push([[15],{386:function(e,t,r){"use strict";r.r(t);r(142);var s={name:"DemoViewer",props:{value:{type:String,default:""},user:{type:String,default:"artur_arseniev"},width:{type:String,default:"100%"},height:{type:String,default:"300"}},computed:{src:function(){var e=this.value,t=this.user;return"//jsfiddle.net/".concat(t,"/").concat(e,"/embedded/js,html,css,result")}}},i=r(33),n=Object(i.a)(s,(function(){var e=this.$createElement;return(this._self._c||e)("iframe",{attrs:{width:this.width,height:this.height,src:this.src,allowfullscreen:"allowfullscreen",frameborder:"0"}})}),[],!1,null,null,null);t.default=n.exports}}]);

1
docs/assets/js/15.aa7f42f8.js

File diff suppressed because one or more lines are too long

1
docs/assets/js/16.47266d46.js

@ -0,0 +1 @@
(window.webpackJsonp=window.webpackJsonp||[]).push([[16],{384:function(t,e,s){"use strict";s.r(e);var n=["There's nothing here.","How did we get here?","That's a Four-Oh-Four.","Looks like we've got some broken links."],o={methods:{getMsg:function(){return n[Math.floor(Math.random()*n.length)]}}},i=s(33),h=Object(i.a)(o,(function(){var t=this.$createElement,e=this._self._c||t;return e("div",{staticClass:"theme-container"},[e("div",{staticClass:"theme-default-content"},[e("h1",[this._v("404")]),this._v(" "),e("blockquote",[this._v(this._s(this.getMsg()))]),this._v(" "),e("RouterLink",{attrs:{to:"/"}},[this._v("\n Take me home.\n ")])],1)])}),[],!1,null,null,null);e.default=h.exports}}]);

1
docs/assets/js/16.959c0bd7.js

File diff suppressed because one or more lines are too long

1
docs/assets/js/17.9b7a7fa4.js

File diff suppressed because one or more lines are too long

1
docs/assets/js/17.bfba947e.js

File diff suppressed because one or more lines are too long

1
docs/assets/js/18.66b0785d.js

File diff suppressed because one or more lines are too long

1
docs/assets/js/18.7f401ffb.js

File diff suppressed because one or more lines are too long

1
docs/assets/js/19.2f9692d0.js

@ -0,0 +1 @@
(window.webpackJsonp=window.webpackJsonp||[]).push([[19],{410:function(t,e,s){"use strict";s.r(e);var a=s(33),o=Object(a.a)({},(function(){var t=this.$createElement,e=this._self._c||t;return e("ContentSlotsDistributor",{attrs:{"slot-key":this.$parent.slotKey}},[e("h1",{attrs:{id:"api-reference"}},[e("a",{staticClass:"header-anchor",attrs:{href:"#api-reference"}},[this._v("#")]),this._v(" API Reference")]),this._v(" "),e("p",[this._v("Here you can find the documentation about GrapesJS' APIs. Mainly, you would use them for your editor to extend the basic functionality of the framework or you could also "),e("RouterLink",{attrs:{to:"/modules/Plugins.html"}},[this._v("create a plugin")]),this._v(" and make those extensions reusable and available to others.")],1)])}),[],!1,null,null,null);e.default=o.exports}}]);

1
docs/assets/js/19.3e0ce3c8.js

File diff suppressed because one or more lines are too long

1
docs/assets/js/2.a342f4be.js

File diff suppressed because one or more lines are too long

1
docs/assets/js/20.ab1e767c.js

File diff suppressed because one or more lines are too long

1
docs/assets/js/20.f4502040.js

File diff suppressed because one or more lines are too long

1
docs/assets/js/21.2babea6a.js

File diff suppressed because one or more lines are too long

1
docs/assets/js/21.66fe8957.js

File diff suppressed because one or more lines are too long

1
docs/assets/js/22.26e5d9ed.js

File diff suppressed because one or more lines are too long

1
docs/assets/js/22.cb6c233f.js

File diff suppressed because one or more lines are too long

1
docs/assets/js/23.a2c9ec17.js

File diff suppressed because one or more lines are too long

1
docs/assets/js/23.dc99d7c7.js

File diff suppressed because one or more lines are too long

1
docs/assets/js/24.245fff8a.js

File diff suppressed because one or more lines are too long

1
docs/assets/js/24.f9675b16.js

File diff suppressed because one or more lines are too long

1
docs/assets/js/25.b52924ae.js

File diff suppressed because one or more lines are too long

1
docs/assets/js/25.d8c7e0b5.js

File diff suppressed because one or more lines are too long

1
docs/assets/js/26.81c00685.js

File diff suppressed because one or more lines are too long

1
docs/assets/js/26.ad7fc796.js

File diff suppressed because one or more lines are too long

1
docs/assets/js/27.169cfbf6.js

File diff suppressed because one or more lines are too long

1
docs/assets/js/27.7372785c.js

File diff suppressed because one or more lines are too long

1
docs/assets/js/28.df5c22ed.js

File diff suppressed because one or more lines are too long

1
docs/assets/js/28.f086d486.js

File diff suppressed because one or more lines are too long

1
docs/assets/js/29.5e2a7327.js

File diff suppressed because one or more lines are too long

1
docs/assets/js/29.b167a894.js

File diff suppressed because one or more lines are too long

2
docs/assets/js/1.b40e6662.js → docs/assets/js/3.7e642bff.js

File diff suppressed because one or more lines are too long

1
docs/assets/js/30.3a998b30.js

File diff suppressed because one or more lines are too long

1
docs/assets/js/30.d165faf7.js

File diff suppressed because one or more lines are too long

1
docs/assets/js/31.334d7953.js

File diff suppressed because one or more lines are too long

1
docs/assets/js/31.5286fade.js

File diff suppressed because one or more lines are too long

1
docs/assets/js/32.0a0e4ae7.js

File diff suppressed because one or more lines are too long

1
docs/assets/js/32.f9daa2c8.js

@ -1 +0,0 @@
(window.webpackJsonp=window.webpackJsonp||[]).push([[32],{215:function(t,s,e){"use strict";e.r(s);var n=e(1),a=Object(n.a)({},(function(){var t=this.$createElement;this._self._c;return this._m(0)}),[function(){var t=this.$createElement,s=this._self._c||t;return s("div",{staticClass:"content"},[s("h1",{attrs:{id:"faq"}},[s("a",{staticClass:"header-anchor",attrs:{href:"#faq","aria-hidden":"true"}},[this._v("#")]),this._v(" FAQ")]),s("p",[this._v("Coming soon")])])}],!1,null,null,null);s.default=a.exports}}]);

1
docs/assets/js/33.0ba298a5.js

File diff suppressed because one or more lines are too long

1
docs/assets/js/33.93f49bfa.js

File diff suppressed because one or more lines are too long

1
docs/assets/js/34.07640632.js

File diff suppressed because one or more lines are too long

1
docs/assets/js/34.4865e6c3.js

File diff suppressed because one or more lines are too long

1
docs/assets/js/35.061f6dd5.js

File diff suppressed because one or more lines are too long

1
docs/assets/js/35.9d089775.js

File diff suppressed because one or more lines are too long

1
docs/assets/js/36.63462982.js

File diff suppressed because one or more lines are too long

1
docs/assets/js/36.67cb8d1f.js

File diff suppressed because one or more lines are too long

1
docs/assets/js/37.708a94ac.js

File diff suppressed because one or more lines are too long

1
docs/assets/js/37.e2d50838.js

File diff suppressed because one or more lines are too long

1
docs/assets/js/38.0f8df29b.js

File diff suppressed because one or more lines are too long

1
docs/assets/js/38.1230aa70.js

@ -0,0 +1 @@
(window.webpackJsonp=window.webpackJsonp||[]).push([[38],{430:function(t,s,e){"use strict";e.r(s);var n=e(33),a=Object(n.a)({},(function(){var t=this.$createElement,s=this._self._c||t;return s("ContentSlotsDistributor",{attrs:{"slot-key":this.$parent.slotKey}},[s("h1",{attrs:{id:"faq"}},[s("a",{staticClass:"header-anchor",attrs:{href:"#faq"}},[this._v("#")]),this._v(" FAQ")]),this._v(" "),s("p",[this._v("Coming soon")])])}),[],!1,null,null,null);s.default=a.exports}}]);

1
docs/assets/js/39.074f3faf.js

File diff suppressed because one or more lines are too long

1
docs/assets/js/39.c8373102.js

File diff suppressed because one or more lines are too long

2
docs/assets/js/2.896e948d.js → docs/assets/js/4.32ffd5a1.js

File diff suppressed because one or more lines are too long

1
docs/assets/js/40.0600f064.js

File diff suppressed because one or more lines are too long

1
docs/assets/js/40.cef45f06.js

File diff suppressed because one or more lines are too long

1
docs/assets/js/41.9bbfe266.js

File diff suppressed because one or more lines are too long

1
docs/assets/js/41.c734b929.js

File diff suppressed because one or more lines are too long

1
docs/assets/js/42.1078a060.js

File diff suppressed because one or more lines are too long

Some files were not shown because too many files changed in this diff

Loading…
Cancel
Save