Skip to content
This plugin is new and currently in beta. For the stable version, please use the previous version of the plugin.

Icons Management

Icons are used to:

  • represent blocks in the blocks panel
  • display on buttons within UI elements

To define an icon, you can use any image in SVG, PNG, or JPG format with dimensions of 24×24 pixels.

Stripo provides both a built-in set of SVG icons and the ability to add your own custom icons.

Build-in Icons

Icon NamePreview
accordionaccordion
add-column-rightadd-column-right
actual-sizeactual-size
add-colum-leftadd-colum-left
add-row-bottomadd-row-bottom
add-row-topadd-row-top
align-icon-to-leftalign-icon-to-left
add-commentadd-comment
align-icon-to-rightalign-icon-to-right
align-icon-to-topalign-icon-to-top
align-to-bottomalign-to-bottom
align-to-leftalign-to-left
align-to-middlealign-to-middle
align-to-centeralign-to-center
align-to-rightalign-to-right
align-to-topalign-to-top
ampamp
animalanimal
appearanceappearance
arrow-bottomarrow-bottom
appleapple
arrow-backarrow-back
arrow-rightarrow-right
arrow-toparrow-top
aspect-ratio-1-1aspect-ratio-1-1
aspect-ratio-16-9aspect-ratio-16-9
aspect-ratio-4-3aspect-ratio-4-3
backwardbackward
ballball
bannerbanner
beachbeach
border-dashedborder-dashed
bitlybitly
border-dottedborder-dotted
border-colorborder-color
border-per-sideborder-per-side
border-radiusborder-radius
border-solidborder-solid
buttonbutton
cardcard
carouselcarousel
check-circlecheck-circle
calendarcalendar
borderborder
chatgptchatgpt
checkcheck
chevron-downchevron-down
circlecircle
cleanclean
codecode
clearclear
clockclock
combine-cellcombine-cell
cross-circlecross-circle
crosscross
cropcrop
commentcomment
customcustom
datadata
delete-columndelete-column
decrease-leveldecrease-level
delete-rowdelete-row
deletedelete
desktopdesktop
downloaddownload
drawdraw
drop-heredrop-here
drop-here-bigdrop-here-big
emoji-2emoji-2
emojiemoji
duplicateduplicate
emptinessemptiness
equalequal
eyeeye
exportexport
fillfill
fit-tofit-to
fontfont
flagflag
flip-vflip-v
folderfolder
flip-hflip-h
frameframe
formform
formatformat
forwardforward
geminigemini
heightheight
gridgrid
helphelp
hide-desktophide-desktop
hide-mobilehide-mobile
giphygiphy
historyhistory
hint-image-buttonhint-image-button
htmlhtml
image-editorimage-editor
imageimage
increase-levelincrease-level
inspectinspect
infoinfo
lamplamp
invite-memberinvite-member
level-uplevel-up
line-height-large line-height-large
layerslayers
line-height-largeline-height-large
line-height-smallline-height-small
line-height-mediumline-height-medium
line-height-normalline-height-normal
list-dotslist-dots
listlist
linklink
list-numberlist-number
loaderloader
logo-signlogo-sign
lock-button-lineslock-button-lines
lower-alphalower-alpha
locklock
mail-infomail-info
logoutlogout
menumenu
mail-templatemail-template
magicmagic
masonrymasonry
minusminus
modesmodes
mobilemobile
moremore
new-windownew-window
movemove
not-foundnot-found
optionsoptions
plusplus
popover-cornerpopover-corner
planeplane
modulesmodules
previewpreview
powered_by_stripopowered_by_stripo
powered_by_stripo copypowered_by_stripo copy
radius-corner-viewer-bottomradius-corner-viewer-bottom
redoredo
radius-corner-viewer-rightradius-corner-viewer-right
radius-corner-viewer-leftradius-corner-viewer-left
regexpregexp
radius-corner-viewer-topradius-corner-viewer-top
reorderreorder
renamerename
requiredrequired
replacereplace
restorerestore
rotaterotate
save-bigsave-big
savesave
searchsearch
selectorselector
socialsocial
shapeshape
spacer-linespacer-line
spacer-spacespacer-space
stabilitystability
spacerspacer
squaresquare
symbolsymbol
starstar
stripestripe
tagtag
text-bgcolortext-bgcolor
text-centertext-center
tabletable
text-boldtext-bold
text-h1text-h1
text-colortext-color
text-h2text-h2
text-italictext-italic
text-lefttext-left
text-specialtext-special
text-righttext-right
text-h3text-h3
text-h6text-h6
text-striketext-strike
text-suptext-sup
text-underlinetext-underline
text-unformattext-unformat
translatetranslate
texttext
timertimer
text-subtext-sub
uploadupload
undoundo
unlockunlock
user-profileuser-profile
upper-alphaupper-alpha
videovideo
widthwidth
text-h5text-h5
text-h4text-h4
unlinkunlink
warningwarning
text-ptext-p
conditioncondition
mime-typemime-type
syncsync
format-codeformat-code
focusfocus

To use a built-in icon, simply specify its name in the getIcon() method:

javascript
getIcon() {
    return 'new-window';
}

Adding Custom Icons

There are several methods to add custom icons:

This approach is recommended for block icons, especially when blocks appear as quick-add options in empty containers. Icons registered through IconsRegistry automatically adapt their colors to match the current theme and harmonize with other UI elements. Only SVG format is supported.

javascript
//-----------MyIconsRegistry.js--------------
import {IconsRegistry} from '@stripoinc/ui-editor-extensions';
import blockIcon from './icons/block.svg?raw';
import horizontal from './icons/horizontal.svg?raw';
import vertical from './icons/vertical.svg?raw';

export class MyIconsRegistry extends IconsRegistry {
    registerIconsSvg(iconsMap) {
        iconsMap['my-block'] = blockIcon;
        iconsMap['horizontal'] = horizontal;
        iconsMap['vertical'] = vertical;
    }
}

//-----------SimpleBlock.js--------------
import {Block} from '@stripoinc/ui-editor-extensions';

class SimpleBlock extends Block {
    getIcon() {
        return 'my-block';
    }

    // Other block configuration...
}

//-----------MyExtension.js--------------
import {ExtensionBuilder} from '@stripoinc/ui-editor-extensions';
import {SimpleBlock} from './blocks/SimpleBlock';
import {MyIconsRegistry} from './blocks/MyIconsRegistry';

export default new ExtensionBuilder()
    .addBlock(SimpleBlock)
    .withIconsRegistry(MyIconsRegistry)
    .build();

2. External URL

You can reference an external image URL:

javascript
import {Block} from '@stripoinc/ui-editor-extensions';

class SimpleBlock extends Block {
    getIcon() {
        return 'https://your.domain/icons/block.png';
    }

    // Other block configuration...
}

3. Static Asset Import

You can import icon files directly as static assets:

javascript
import {Block} from '@stripoinc/ui-editor-extensions';
import blockIcon from './icons/block.svg';

class SimpleBlock extends Block {
    getIcon() {
        return blockIcon;
    }

    // Other block configuration...
}