Embedded Design Maker Documentation | Printful (1.8.0)

Download OpenAPI specification:Download

Printful Embedded Design Maker

Sample EDM screenshot

This is a tutorial for developers/maintainers of the web page that explains how to integrate Printful Embedded Design Maker in a website.

General workflow how to integrate Printful Design Maker in your website:

  1. Register your app in https://developers.printful.com and create authentication tokens to be able to access Printful resources.

  2. Authenticate from your app by calling API endpoints with these tokens to gather all needed data for Printful Design Maker.

  3. Include our JS file in your website and create Printful Design Maker instance.

  4. Get list of created designs, generate mockups and create orders from your website by calling Printful API endpoints.

Developer portal

Printful Developers portal

Printful Developers portal is the place where you can setup OAuth access tokens to be able to access Printful resources.

Log in Printful Developers portal using your Printful login credentials.

Create private tokens to get access to Printful API

You need a private OAuth access token to call most Printful API endpoints.

  • To create an access token click on "Add new token" button in the "Tokens" section.
  • Set the name, contact info and expiration date of the token.
  • Set access level depending on your needs - choose "Account (all stores)" to grant access for an account (all stores) or limit the access level to a single selected store.
  • Select scopes for the private token.

See detailed info in the Authentication section of Printful Developers portal to get more info about the scopes and access levels.

Creating OAuth token with Embedded Designer extension

To work with Embedded Design Maker, you will need at least one token with "Embedded Designer" extension. You will use this token to get the Nonce token that is needed to open Printful Design Maker instance.

In the "Extensions" section there should be a checkbox "Embedded Design Maker" - once you check it - The access level and Scopes section will set up automatically with the needed values for Embedded Design Maker.

Important - for the Embedded Desing Maker please create 2 separate private tokens for different purposes:

  • For development purposes, implementation, testing of new features and products:
    • Private token with the Embedd Desing Maker and “development purposes only” selected. Dev portal development section
  • For the live environment and production usage please use:
    • Private token with only the Embedd Desing Maker extension selected Dev portal development section

If you need additional Scopes for the token, to call some other API endpoints that need additional scopes, you can check them as well and have a single token for multiple needs, but it is possible to create a new token for every single API endpoint as well. More info on what scopes are needed for each endpoint can be found in the Embedded designer related API calls section.

Note - once the token is created the scopes list is fixed and cannot be edited. We suggest to enable all available scopes for the token.

To ensure that Printful will only listen to messages that comes from your domain names and ignore all other, enter your domain name in the "Domains" section.

Dev portal development section

Authentication

How to get Nonce token for Embedded Designer

To get the Nonce token which is used to access the designer iframe session for a specific template, send a POST request authenticated by the access token with the "Embedded Designer" extension to the following endpoint: https://api.printful.com/embedded-designer/nonces.

The endpoint accepts a JSON object with following fields:

Field Type Required Description
external_product_id String Yes External merchant-side product ID unique for the template
external_customer_id String or Null No External merchant-side identifier of the end-user
ip_address String or Null No The IP address that will be used to open the iframe for additional validation
user_agent String or Null No The user agent that will be used to open the iframe for additional validation

The ip_address and user_agent fields may be used to limit the usage of the nonce. If they are present and not null, only a request with a matching IP address/User agent will be permitted with the given nonce.

The response will be a JSON object with a following structure:

{
    "code": 200,
    "result": {
        "nonce": Nonce
    }
}

The Nonce object fields are described in the following table:

Field Type Description
nonce String The nonce value
template_id integer or null The ID of a Printful template associated with the nonce. If a new template is to be created, this will be null
expires_at integer The UNIX timestamp at which the nonce will expire

The endpoint generation request should be done from the back-end, to not expose the access token to the users.

The nonce will be used to authenticate the iframe session and all actions done in the embedded designer session. With each usage of the nonce, its duration will be extended.

Generating a new nonce for a given external product ID will invalidate the previous nonces generated for the same external product ID.

Saving the template will also invalidate the nonce. To edit the template, a new nonce will need to be generated.

Embed design maker

To open the Embedded DesignMaker and create new Embedded template you have to follow these steps.

Include embed.js library

First thing you need is to include file embed.js in your website. This file contains the Embedded Design Maker Manager PFDesignMaker class definition.
You need to use a script tag to load this class definition from a CDN server to your website:

<script src="https://files.cdn.printful.com/embed/embed.js"></script>

To get the latest version of this file use this URL: https://files.cdn.printful.com/embed/embed.js

Creating the Embedded Design Maker Manager class instance

After you have included embed.js file in your website, you can create Embedded Design Maker Manager class PFDesignMaker instance.
Here is a simple example, of how to create this instance with all the required params:

this.designMaker = new PFDesignMaker({
    elemId: 'my-designer',
    nonce: 'ec7kkhxcx6ykjlb2718kzzbgu353y7on',
    externalProductId: 'mug-123',
    initProduct: {
        productId: 438,
    },
});

Info about the all possible properties that can be passed while creating this instance object:

Data structures

Prop name Type Description
elemId String Required id of the DOM element in your webpage that will contain the iframe element with Printful Design Maker. You have to have an element with this id in your webpage.
nonce String Required nonce authentication token to prove that you are eligible to access Printful Design Maker. To get the nonce authentication token you have to follow the instructions of the How to get Nonce token for Embedded designer section
externalProductId String Required id of the embedded template that you are creating. Generate and manage this id on your own website according to your needs. When the design will be saved, use this id to edit the design, or make order from it. Make sure that this id is not used for any other already saved template item when passing this to create new embedded template design.
onTemplateSaved Function Required Function to be called when Embedded Template has been saved. templateId is passed as a param for this function. Store templateId and use it later to edit existing design
onDesignStatusUpdate Function Optional Function to be called when Embedded Designer design status has been changed. There is one object property with five values that gets passed. See section onDesignStatusUpdate method - call logic and returned data structure for more info
initProduct Object Required to open design maker in "Create new template" mode Object with information about the product from the Printful product catalog. See table below for more details. To get all the needed product data you have to follow the instructions of the Catalog API. See section initProduct data structure for more info
onIframeLoaded Function Optional Function to be called when iframe URL has been loaded and it is safe to make DOM element visible to the user.
onError Function Optional Function to be called when any kind of error has happened.
iframeClassName String Optional Add className for iframe DOM element, in case you need to add custom styling for it.
debug Boolean Optional Specify true for additional debugging output in form of console logs.
style Object Optional Specify custom styles to be passed to the Embedded Design Maker to style tha design maker UI according to your needs. See section "style" data structure for more info
featureConfig Object Optional Specify custom feature configuration for Embedded Design Maker to restrict some Design Maker features (layer types). See section "featureConfig" data structure for more info
disabledPlacements String[] Optional An array of placement ids that should not be available for designing. if param is ommitted or empty array is passed, then all placements will be available. Specify only in case you want to disable some of the placements, otherwise omit this parameter. . See section "disabledPlacements" array for more info
preselectedColors String[] Optional An array of Product color names that will be preselected when Embedded Design Maker is opened. If param is ommitted or empty array is passed, default logic will be used. See section "preselectedColors" array for more info
preselectedSizes String[] Optional An array of Product size names that will be preselected when Embedded Design Maker is opened. If param is ommitted or empty array is passed, default logic will be used. See section "preselectedSizes" array for more info
preselectedProductOptions Object Optional Specify preselected product options. If not specified, then default ones will be used. If no values are selected relevant error message is shown. See section "preselectedProductOptions" data structure for more info
disabledColors String[] Optional An array of Product color names that will be disabled for Embedded Design Maker. If param is ommitted or empty array is passed, default logic will be used. See section "disabledColors" array for more info
disabledSizes String[] Optional An array of Product size names that will be disabled for Embedded Design Maker. If param is ommitted or empty array is passed, default logic will be used. See section "disabledSizes" array for more info
applyImageFromUrl String Optional A string with URL of JPG or PNG image file that should be applied to new product. See section applyImageFromUrl parameter for more information.

Example of full EDM configuration

Example with basic setup and default configuration values:

    this.designMaker = new PFDesignMaker({
        elemId: 'my-designer',
        nonce: 'ec7kkhxcx6ykjlb2718kzzbgu353y7on',
        externalProductId: 'mug-123',
        initProduct: {
            productId: 438,
        },
        locale: 'en_US',
        disabledPlacements: [],
        isVariantSelectionDisabled: false,
        disabledColors: [],
        disabledSizes: [],
        preselectedColors: [],
        preselectedSizes: [],
        preselectedProductOptions: {},
        applyImageFromUrl: '',
        useUserConfirmationErrors: false,
        allowOnlyOneColorToBeSelected: false,
        allowOnlyOneSizeToBeSelected: false,
        useEmbroideryPreviewInDesign: false,
        featureConfig: {
            clipart_layers: true,
            file_layers: true,
            text_layers: true,
            embroidery_3d_puff: true,
            has_color_group_inside_labels: false,
            sub_technique_switcher: false,
            has_external_user_file_library: false,
            show_unavailability_info: false,
            custom_external_file_library: false,
            initial_open_view: ''
        },
        livePricingConfig: {
            useLivePricing: false,
            useAccountBasedPricing: false,
            showPricesInPlacementsTabs: true,
            livePricingCurrency: 'USD'
        }
    })

initProduct data structure

Product info object initProduct can have following properties:

Prop name Type Example values Description
productId number Required Product ID from the Product catalog API
technique String T-SHIRT, EMBROIDERY, etc. Optional Technique for the products that can have more than one default technique
forceOrientation String horizontal, vertical Optional Orientation for products that can have more than one orientation template types (socks, tote bags)

For some products that have 'Unlimited Colors' embroidery technique available (Product containing Unlimited Color option), it is possible to initialise product in designer in full_color mode by passing EMBROIDERY_FULL_COLOR as technique.

Due to the technical limitation the `technique` parameter needs to be defined. That means that the technique picker is not available in the EDM the same way as it is available in the Printful app. So currently specifying the technique is possible only outside the EDM before the EDM is opened.

style data structure

Custom styling object style can have following properties and data structure:

Prop name Type Description
variables Object List of key, value pairs, where the key is any valid CSS property and the value is any valid CSS value. All CSS declarations defined here will be applied to :root selector. There is a list of predefined custom CSS properties. See section Customization for more info
navigation.product.imageIcon String Desktop: Navigation button product icon, desktop Mobile: Navigation button product icon, mobile
URL for navigation button product icon, if image fails to load, default icon will be used. Image will be resized to 24x24px
navigation.design.imageIcon String Mobile: Navigation button design icon, mobile
URL for navigation button design icon, if image fails to load, default icon will be used. Image will be resized to 24x24px
navigation.layers.imageIcon String Desktop: Navigation button layers icon, desktop Mobile: Navigation button layers icon, mobile
URL for navigation button layers icon, if image fails to load, default icon will be used. Image will be resized to 24x24px
navigation.file.imageIcon String Desktop: Navigation button file icon, desktop Mobile: Navigation button file icon, mobile
URL for navigation button file icon, if image fails to load, default icon will be used. Image will be resized to 24x24px
navigation.text.imageIcon String Desktop: Navigation button text icon, desktop Mobile: Navigation button text icon, mobile
URL for navigation button text icon, if image fails to load, default icon will be used. Image will be resized to 24x24px
navigation.clipart.imageIcon String Desktop: Navigation button clipart icon, desktop Mobile: Navigation button clipart icon, mobile
URL for navigation button clipart icon, if image fails to load, default icon will be used. Image will be resized to 24x24px
navigation.fill.imageIcon String Desktop: Navigation button fill icon, desktop Mobile: Navigation button fill icon, mobile
URL for navigation button fill icon, if image fails to load, default icon will be used. Image will be resized to 24x24px
(deprecated) background String Use --pf-sys-background, see general background related tokens
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation
(deprecated) textColor String Use any "on-background" or "on-surface", see neutral colors on background
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation
(deprecated) iconColor String Use --pf-sys-icon-on-background, see general background related tokens
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation
(deprecated) link.color String Use --pf-sys-link-on-background, see general background related tokens
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation
(deprecated) picker.background String color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation
(deprecated) layer.background String Use --pf-comp-layer-item-surface, see layer
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation
(deprecated) layer.textColor String Use --pf-comp-layer-item-on-surface, see layer
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation
(deprecated) layer.iconColor String color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation

onDesignStatusUpdate method - call logic and returned data structure

If you have provided a method in onDesignStatusUpdate param - this method is called each time there are some updates regarding design status. To avoid calling this method too often when multiple things change at once - all method calls are debounced with time limit 1000ms - meaning that the design status update message will be sent 1000ms after the last design status change.

Possible events that trigger design status update are:

  • Design has been changed compared to how it was opened - in case already saved template is opened
  • There are some validation errors, that restrict user from saving the design with current configuration
  • List of selected sizes/colors for the product has changed
  • List of used placement has changed
  • Sub technique switch
Prop name Type Description
designChange Boolean Indicating if design has been changed if compared to how it was opened. True if the design has been changed, otherwise false.
designValid Boolean Indicating if it is possible to save the design currently. If the value is false - it means that there will be some validation error that will restrict user from saving the design
selectedVariantIds array An array of selected product variant ids. A product variant is combination of size/color for the product. For example if user has selected 2 colors and 5 sizes, then this array should contain 10 product variant ids (all the size/color combinations 2*5=10)
usedPlacements array An array of placement ids that have some design added.
subtechnique String Indicates which sub technique is active
errors array An array of error messages that decribe why design is not valid

featureConfig data structure

FeatureConfig data object 'featureConfig' can have following properties to control witch layer types/designer features are allowed in the Design Maker:

Prop name Type (Default) Description
clipart_layers Boolean (true) Set if the clipart layers can be added while creating the design (visibility of the "Add clipart" button)
file_layers Boolean (true) Set if the file layers can be added while creating the design (visibility of the "Choose file" button)
text_layers Boolean (true) Set if the text layers can be added while creating the design (Visibility of the "Add text" button)
embroidery_3d_puff Boolean (true) Set if the 3D puff can be added to file layers for certain embroidery products (Visibility of the "Embroidery type" picker)
has_color_group_inside_labels Boolean (false) Set if the insade label placement should have customization options for mandatory data design. Designs created with this option must be ordered specifying product template or external product ID, not by printfiles from mockup generation.
sub_technique_switcher Boolean (false) Set if sub technique switcher should be visible (if set true but product does not have sub technique option, switcher wont appear)
has_external_user_file_library Boolean (false) Set if users should be able to see their used files in file library modal window. (Has effect only if external_customer_id value is passed on the Nonce token creation that is used for EDM)
initial_open_view String ("file_layers") Set to change initial left side view for new design creation. Available options: "file_layers", "clipart_layers", "layers_view", "product_view".
show_unavailability_info Boolean (false) Set if unavailability list should appear for selected variants in case some of them are not available. Unavailability list
custom_external_file_library Boolean (false) Set if custom file library is required Custom external file library

In case has_external_user_file_library is used and ADMIN user needs to open other user designs, then for ADMIN user nonce creation:

  • external_customer_id is not used. That way ADMIN user can open and edit design, but file library won't be accessible because that needs external_customer_id.
  • external_customer_id is the same as the customer_id that was used to create design. That way ADMIN user is impersonating user and can edit design, and access user's file library.

disabledPlacements array

  • This param should be used in case you want to disable specific placements from Design Maker
  • disabledPlacements array should contain placementId String values, separated by comma.
  • If the param is omitted or is an empty array, then all placements will be available
    • example param values:
      • ['embroidery_chest_left']
      • ['back','sleeve_left','sleeve_right']
      • ['embroidery_left','embroidery_right']
    • If none of the provided Strings match any placementsId of the opened product then this param has no effect - all the placements will be available
  • This param will work for both modes "Create new template" and "Edit existing template" mode.
    • In "Edit existing template" mode, if opened template contains any design for the placement that is not hidden, then all the design in that placement will be deleted (after the Save action will be called)
  • For technical reasons placement 'embroidery_large_center' will always be hidden, if there is such a placement for the loaded product. This is just a temporary restriction - until the technical reasons will be solved

preselectedColors array

  • This param should be used in case you want to have specific Product colors preselected when opening Design Maker
  • preselectedColors array should contain Product color name string values, separated by comma.
  • If the param is omitted or is an empty array, default logic will be used.
    • example param values:
      • ['Black Heather','Autumn','Aqua','Mauve']
      • ['Oxblood Black','Heather Raspberry','Heather True Royal']
      • ['Heather True Royal']
    • If none of the provided Strings match any Product color names of the opened product available colors then this param has no effect - default logic will be used instead.
  • This param will only work for "Create new template" mode.
  • If passed color name is not found in current product config, it will be ignored

preselectedSizes array

  • This param should be used in case you want to have specific Product sizes preselected when opening Design Maker
  • preselectedSizes array should contain Product size name string values, separated by comma.
  • If the param is omitted or is an empty array, default logic will be used.
    • example param values:
      • ['XS','S','M']
      • ['XL']
      • ['2XL','3XL','4XL','5XL']
    • If none of the provided Strings match any Product size names of the opened product available sizes then this param has no effect - default logic will be used instead.
  • This param will only work for "Create new template" mode.
  • If passed size name is not found in current product config, it will be ignored

preselectedProductOptions data structure

  • This param should be used in case you want to have preselected product options. This works only if product supports these options and passed values.
  • Check Utilising Options to see if product has product options and what kind of values it supports.
  • Sometimes default values are null, if thats the case then end-user needs to select product options via Design Maker. End-user can't save design without values in product options. If no values are selected relevant error message is shown that stops user from saving template.
  • preselectedProductOptions object has key as product option name and value as product option value. See table for supported product options:
Prop name Type Description
stitchColor String Set stitch color for the product. Typically the value can be white, black, clear.
insidePocket Boolean
(false)
Set if product should have inside pocket. By default this is false.
customBorderColor String Set border color in hex for the product. This is for Stickers.
  • If wrong key gets passed, it will be ignored.
  • If wrong value gets passed, it will be ignored.

disabledColors array

  • This param should be used in case you want to have specific Product colors disabled for Embedded Design Maker
  • disabledColors array should contain Product color name string values, separated by comma.
  • If the param is omitted or is an empty array, default logic will be used.
    • example param values:
      • ['Black Heather','Autumn','Aqua','Mauve']
      • ['Oxblood Black','Heather Raspberry','Heather True Royal']
      • ['Heather True Royal']
    • If none of the provided Strings match any Product size names of the opened product available sizes then this param has no effect - default logic will be used instead.
  • If passed size name is not found in current product config, it will be ignored

disabledSizes array

  • This param should be used in case you want to have specific Product sizes disabled for Embedded Design Maker
  • disabledSizes array should contain Product size string values, separated by comma.
  • If the param is omitted or is an empty array, default logic will be used.
    • example param values:
      • ['XS','S','M']
      • ['XL']
      • ['2XL','3XL','4XL','5XL']
    • If none of the provided Strings match any Product sizes of the opened product available sizes then this param has no effect - default logic will be used instead.
  • If passed size name is not found in current product config, it will be ignored

applyImageFromUrl parameter

If applyImageFromUrl string was provided for the PFDesignMaker instance on new product creation, then image from URL will be added to first design placement without manual interactions from the end user.

  • This parameter will work only for new product design creation.
  • JPG or PNG image must be available from the passed URL so that can be processed and applied to design.
  • Restrictions for the image and URL are noted in Send message - Add image from URL trigger section.
  • Image can also be added to design placement while designer is open with setUrlImageLayer message.

Features

Unavailability overlay

When EDM opens up and selected product has no variants available, unavailability overlay with message appears. When this overlay appears, EDM becomes unusable.

When overlay triggers it will also pass an error to onDesignStatusUpdate with string This product isn’t available.

EDM unavailability overlay

Unavailability list

When user selects variant that is currently out of stock or is discontinued, list will appear with all the selected variants that have this issue.

By default, this option is disabled, to enable it set show_unavailability_info to true in Feature Config

EDM unavailability overlay

Custom external file library

With Add image from URL trigger its possible to add images to EDM, but it might be wierd to trigger this method with file selector that is outside EDM, with setting custom_external_file_library to true, when user clicks on any file upload option in EDM, it will trigger onFilePickerRequested hook instead of calling EDM file upload methods.

By combining onFilePickerRequested hook and setUrlImageLayer event, it's possible to show custom file library instead of showing EDM file library

Example usage:

    this.designMaker = new PFDesignMaker({
        elemId: 'my-design-maker',
        nonce: 'ec7kkhxcx6ykjlb2718kzzbgu353y7on',
        featureConfig: {
            custom_external_file_library: true,
        },
        onFilePickerRequested: () => {
            // Logic for opening custom file library
            // Method for picking file from that library
            this.designMaker.sendMessage({
                event: 'setUrlImageLayer',
                imageUrl, // chosen file url
            }); // Call this from the method that chooses the file
        },
    });

Setting a locale

To change a locale use locale: 'en_US'

It will translate the EDM UI to selected locale, will also translate warnings and errors returned from onDesignStatusUpdate hook. Possible values: en_US, it_IT, fr_FR, es_ES, de_DE, ja_JP.

Example usage:

    this.designMaker = new PFDesignMaker({
        elemId: 'my-design-maker',
        nonce: 'ec7kkhxcx6ykjlb2718kzzbgu353y7on',
        locale: 'en_US',
    });

Disable variant selection

To disable variant selection use isVariantSelectionDisabled: true Will still show all possible colors and sizes for a product, but will disable option to select any colors or sizes. Useful if it should not be possible to edit selected colors or sizes when editing previously saved design.

Example usage:

    this.designMaker = new PFDesignMaker({
        elemId: 'my-design-maker',
        nonce: 'ec7kkhxcx6ykjlb2718kzzbgu353y7on',
        isVariantSelectionDisabled: true,
    });

Limit color selection to one

To make it so that customer can select only one color use allowOnlyOneColorToBeSelected: true Useful for using EDM as an order creation tool.

Recommended to use along with "Limit size selection to one"

Example usage:

    this.designMaker = new PFDesignMaker({
        elemId: 'my-design-maker',
        nonce: 'ec7kkhxcx6ykjlb2718kzzbgu353y7on',
        allowOnlyOneColorToBeSelected: true,
    });

Limit size selection to one

To make it so that customer can select only one size use allowOnlyOneSizeToBeSelected: true Useful for using EDM as an order creation tool.

Recommended to use along with "Limit color selection to one"

Example usage:

    this.designMaker = new PFDesignMaker({
        elemId: 'my-design-maker',
        nonce: 'ec7kkhxcx6ykjlb2718kzzbgu353y7on',
        allowOnlyOneSizeToBeSelected: true,
    });

Error modals

There can be some errors that in regular Designmaker in Printful ask for user feedback to be resolved, for example modal for selecting AOP product stitch color if user did not select one.

In EDM such errors are just passed in onDesignStatusUpdate

But it's possible to enable the modal flow instead of just passing some error to onDesignStatusUpdate with useUserConfirmationErrors: true

Example usage:

    this.designMaker = new PFDesignMaker({
        elemId: 'my-design-maker',
        nonce: 'ec7kkhxcx6ykjlb2718kzzbgu353y7on',
        useUserConfirmationErrors: true,
    });

With useUserConfirmationErrors: false if user has not selected stitch color: Regular flow

With useUserConfirmationErrors: true if user has not selected stitch color and tries to save design: Error modal flow

Design pricing info

To get current design pricing range, use livePricingConfig and onPricingStatusUpdate hook. onPricingStatusUpdate will provide each selected variants price and even include additional placement price.

Available currencies: "USD", "EUR", "JPY", "GBP", "CAD", "AUD", "SEK", "DKK", "NZD", "CHF", "MXN", "HKD", "SGD", "NOK", "PLN", "KRW", "BRL";

Data format returned from onPricingStatusUpdate

export interface PricingInfo {
    discountPercent: number;
    discountedPrice: number;
    discountAmount: number;
    currency: string;
    currencySymbol: string;
    price: number;
    originalPrice: number;
    retailPrice: number;
    basePriceDiscount: number;
    growthPrice: number;
    color: string;
    size: string;
}

Example config:

    this.designMaker = new PFDesignMaker({
        elemId: 'my-design-maker',
        nonce: 'ec7kkhxcx6ykjlb2718kzzbgu353y7on',
        livePricingConfig: {
            useLivePricing: true, // Enables the feature
            useAccountBasedPricing: false, // If true, gets discounts if EDM owner account has Printful Growth enabled
            showPricesInPlacementsTabs: true, // If true, will show prices in placement tabs
            livePricingCurrency: "USD" // Currency to show and use
        },
        onPricingStatusUpdate: (variantPriceList) => { 
            // logic that handles pricing logic
        }
    });

Editing existing Embedded template

There are some limitations as to what kind of templates EDM can edit.

If a product template is created with https://printful.com, you will not be able to edit or open such templates in EDM.

Templates created with EDM, are not visible in https://printful.com dashboard.

To edit a template follow this flow:

  1. Create a template reference on your side (external_product_id)
  2. Create a nonce with said externalProductId (More details here), example request:
    POST https://api.printful.com/embedded-designer/nonces
    Authorization: Bearer {token}
    
    Content-Type: application/json
    
    {
        "external_product_id": "myRandomlyGeneratedId1"
    }
    
  3. Create the EDM instance, example code:
        this.designMaker = new PFDesignMaker({
         elemId: 'my-designer',
         nonce: 'ec7kkhxcx6ykjlb2718kzzbgu353y7on', // nonce returned from step 2
         externalProductId: 'myRandomlyGeneratedId1', // Your generated ID
         initProduct: {
             productId: 438, // Whatever product you wish to open
         },
     });
    
  4. Save design
  5. To edit the saved design, create nonce again, but instead of generating new external_product_id, use the same one that was used when initial nonce was created
  6. Create a new EDM instance, but now don't add initProduct, example code:
        this.designMaker = new PFDesignMaker({
         elemId: 'my-designer',
         nonce: 'uMZHeuNEYM8nsjqzf0JAFUsglvurf5EA', // nonce returned from step 5
         externalProductId: 'myRandomlyGeneratedId1', // Your previously used id from step 1 ID
     });
    

Now if everything went correctly, EDM should open design that was saved during step 4.

Public methods of PFDesignMaker class instance object

Send message

To be able to trigger events in Embedded Design Maker, use public method sendMessage of the PFDesignMaker instance object. Method has only one parameter message type Object. See the example usage of this method - to trigger save design action in Embedded Design Maker:

 this.designMaker.sendMessage({ event: 'saveDesign' });

Send message - Save design trigger

saveDesign - Call this event to trigger save action on Embedded Design Maker.

  • If Design Maker is opened in "Create new template" mode, then save action will create new Embedded Template
  • if Design Maker is opened in "Edit existing template" mode then save action will update design for existing template.

Example code

this.designMaker.sendMessage({ event: 'saveDesign' });

Notes

If onTemplateSaved function was provided for the PFDesignMaker instance, and the save action was successful, then onTemplateSaved callback function will be called after triggering saveDesign event.

Send message - Add image from URL trigger

setUrlImageLayer - Call this event to trigger image adding to active placement on Embedded Design Maker.

  • There are limitations to passed URL:
    • URL must point to PNG/JPG image that can be processed from passed string,
    • Max URL length is 1000 characters,
    • Recommended max size for one image dimension is 15k pixels,
    • Image size must be smaller than 50MB,
    • Maximum of 5 file image layers can be applied to one placement.
  • Image will be applied to the opened design placement.
  • If file can not be processed, a console error will be shown.

Example code

this.designMaker.sendMessage({ event: 'setUrlImageLayer', imageUrl: 'https://picsum.photos/2000' });

Notes

To add image from URL automatically after new product is opened applyImageFromUrl parameter can be used.

The first time image is retrieved it will be saved for future use. When using the same URL for future requests the cached image will be used.

If has_external_user_file_library parameter ("featureConfig" data structure) is used, end user will see file in library.

UI customization

Considerations

  • Accessibility
    • Color contrast
      • Consideration: When modifying predefined custom CSS properties that are listed below, Printful is not responsible for meeting the accessible color contrast values
      • Solution: Ensure that the custom design system colors meet minimum accessible color contrast. More information about Text has minimum contrast WCAG rule (external link)
  • Custom SVG illustrations
    • Consideration: Custom SVG illustrations (e.g. in "not results found" search views) are not customizable and may not look good on every background color
    • Solution: Custom SVG illustrations will work best with a light theme
On light background On dark background
"No results found" illustration on light background "No results found" illustration on dark background
  • Changing container component specific surface color with unpredictable content (e.g. dropdown and popover)
    • Consideration: Almost all container components (e.g. dropdowns and popovers) use the same surface color as the page background, white by default. If you want to change surface color for a specific component (e.g. popover) to be different from page background color, depending on content inside popover, the colors inside popover might not be customizable. In most cases it should be fine, but there could be cases where customization options are limited on component level.
    • Solution: For container components (e.g. dropdowns and popovers) most reliable results will be if the container component surface is the same color as page background color

In the example below, the popover surface and text colors are changed. The toggle switch can't be adjusted for popover specifically

Popover with white surface Popover with custom surface
Popover with white surface Popover with custom surface
  • Loading spinner customization
    • Consideration: Currently it's not possible to change colors for the loading spinner
    • Solution: The loading spinner will work best with a light theme
Loading spinner on white background Loading spinner on dark background
Loading spinner on white background Loading spinner on dark background
  • Non-customizable cliparts
    • Consideration: When changing page background color, some clipart colors may clash with the background
    • Solution: Cliparts will work best with a light theme
Non-customizable cliparts on white background Non-customizable cliparts on dark background
Loading spinner on white background Loading spinner on dark background

Tips & tricks

Dark mode

When changing to dark mode, use dark color scheme in CSS to make the operating system adjust the user interface (e.g. make scrollbars and native form controls dark)

More info on CSS color-scheme property - https://developer.mozilla.org/en-US/docs/Web/CSS/color-scheme

new PFDesignMaker({
    style: {
        variables: {
            'color-scheme': 'dark',
        },
    },
});

Accent color

Change the accent color of user-interface controls (e.g. checkboxes, radio buttons)

More info on CSS accent-color property - https://developer.mozilla.org/en-US/docs/Web/CSS/accent-color

new PFDesignMaker({
    style: {
        variables: {
            'accent-color': '#222222',
        },
    },
});

Predefined custom CSS properties

Example usage

new PFDesignMaker({
    style: {
        variables: {
            '--pf-sys-background': '#222222',
        },
    },
});

If the custom CSS property value references another custom CSS property, you can omit the declaration and the value will be inherited from the referenced property. However, you can override those properties to be more specific.

Example

Note: Following example is not comprehensive and complete and is meant to be used as a starting point to build upon

Light mode Dark mode
Light mode example Dark mode example
new PFDesignMaker({
    style: {
        variables: {
            '--pf-sys-background': '#0f172a',
            '--pf-sys-background-hsl': '222.22, 47.37%, 11.18%',
            '--pf-sys-neutral-300-on-background': '#64748b',
            '--pf-sys-neutral-400-on-background': '#94a3b8',
            '--pf-sys-neutral-700-on-background': '#e2e8f0',
            '--pf-sys-neutral-800-on-background': '#f1f5f9',
            '--pf-sys-neutral-900-on-background': '#f8fafc',
            '--pf-sys-primary-400-on-background': '#059669',
            '--pf-sys-primary-700-on-background': '#6ee7b7',
            '--pf-sys-border-on-background': '#64748b',
            '--pf-sys-link-on-background': '#93c5fd',
            '--pf-sys-icon-on-background': '#94a3b8',
            '--pf-sys-icon-info-on-background': '#94a3b8',
            '--pf-sys-icon-hover-neutral-700-on-background': '#e2e8f0',
            '--pf-sys-icon-hover-neutral-900-on-background': '#f8fafc',
            '--pf-sys-error-on-background': '#f87171',
            '--pf-sys-success-on-background': '#22c55e',
            '--pf-sys-warning-on-background': '#fcd34d',
            '--pf-sys-hover-border-color-on-background': '#64748b',
            '--pf-sys-hover-box-shadow-on-background': '',
            '--pf-sys-neutral-surface-50': '#1e293b',
            '--pf-sys-neutral-surface-50-hsl': '217.24, 32.58%, 17.45%',
            '--pf-sys-neutral-300-on-surface-50': '#64748b',
            '--pf-sys-neutral-400-on-surface-50': '#94a3b8',
            '--pf-sys-neutral-700-on-surface-50': '#e2e8f0',
            '--pf-sys-neutral-900-on-surface-50': '#f8fafc',
            '--pf-sys-neutral-surface-100': '#334155',
            '--pf-sys-neutral-700-on-surface-100': '#e2e8f0',
            '--pf-sys-neutral-900-on-surface-100': '#f8fafc',
            '--pf-sys-neutral-surface-200': '#475569',
            '--pf-sys-neutral-400-on-surface-200': '#94a3b8',
            '--pf-sys-neutral-900-on-surface-200': '#f8fafc',
            '--pf-sys-neutral-surface-300': '#64748b',
            '--pf-sys-neutral-400-on-surface-300': '#94a3b8',
            '--pf-sys-neutral-900-on-surface-300': '#f8fafc',
            '--pf-sys-neutral-surface-400': '#94a3b8',
            '--pf-sys-neutral-900-on-surface-400': '#f8fafc',
            '--pf-sys-primary-surface-400': '#059669',
            '--pf-sys-primary-surface-700': '#6ee7b7',
            '--pf-sys-primary-on-surface-700': '#134e4a',
            '--pf-sys-error-surface': '#991b1b',
            '--pf-sys-error-on-surface': '#fef2f2',
            '--pf-sys-form-control-indicator-active-surface': '#93c5fd',
            '--pf-sys-form-control-indicator-active-on-surface': '#1e3a8a',
            '--pf-sys-action-button-surface': '',
            '--pf-sys-action-button-on-surface': '#f8fafc',
            '--pf-sys-action-button-hover-surface': '#64748b',
            '--pf-sys-action-button-hover-on-surface': '#f8fafc',
            '--pf-sys-action-button-focus-surface': '',
            '--pf-sys-action-button-focus-on-surface': '#f8fafc',
            '--pf-sys-action-button-selected-surface': '#155e75',
            '--pf-sys-action-button-selected-on-surface': '#ecfeff',
            '--pf-sys-action-button-disabled-surface': '',
            '--pf-sys-action-button-disabled-on-surface': '#94a3b8', 
        },
    },
});

System tokens

Most of the user interface changes with system tokens

Neutral colors on background

From lightest (least contrast) to darkest (most contrast) in light theme

These values are also used for all neutrally colored content on all neutral surfaces, if not overridden

Name Default value Value type Description
--pf-sys-neutral-300-on-background
gray-300-on-white hsl(0, 0%, 89.8%)
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Neutral color on background. Used border on background color
--pf-sys-neutral-400-on-background
gray-400-on-white hsl(0, 0%, 69.41%)
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Neutral color on background
--pf-sys-neutral-700-on-background
gray-700-on-white hsl(0, 0%, 33.33%)
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Neutral color on background
--pf-sys-neutral-800-on-background
gray-800-on-white hsl(0, 0%, 21.57%)
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Neutral color on background
--pf-sys-neutral-900-on-background
gray-900-on-white hsl(0, 0%, 13.33%)
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Neutral color on background. Page text color
--pf-sys-neutral-900-on-background-hsl
gray-900-on-white 0, 0%, 13.33%
valid HSL color values, but without hsl() wrapper function Neutral color on background. Used for CSS color values that require a new value to be generated. Value should derive from --pf-sys-neutral-900-on-background

Neutral colors on neutral 50 surface

From lightest (least contrast) to darkest (most contrast) in light theme

Name Default value Value type Description
--pf-sys-neutral-surface-50
gray-50 hsl(0, 0%, 97.25%)
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Neutral surface color
--pf-sys-neutral-surface-50-hsl
gray-50 0, 0%, 97.25%
valid HSL color values, but without hsl() wrapper function Neutral surface color for some elements in separate HSL values. Used for CSS color values that require a new value to be generated. Value should derive from --pf-sys-neutral-surface-50
--pf-sys-neutral-300-on-surface-50
gray-300-on-gray-50 --pf-sys-neutral-300-on-background
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Neutral color on neutral surface
--pf-sys-neutral-400-on-surface-50
gray-400-on-gray-50 --pf-sys-neutral-400-on-background
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Neutral color on neutral surface
--pf-sys-neutral-700-on-surface-50
gray-700-on-gray-50 --pf-sys-neutral-700-on-background
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Neutral color on neutral surface
--pf-sys-neutral-900-on-surface-50
gray-900-on-gray-50 --pf-sys-neutral-900-on-background
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Neutral color on neutral surface

Neutral colors on neutral 100 surface

From lightest (least contrast) to darkest (most contrast) in light theme

Name Default value Value type Description
--pf-sys-neutral-surface-100
gray-100 hsl(0, 0%, 95.29%)
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Neutral surface color
--pf-sys-neutral-700-on-surface-100
gray-700-on-gray-100 --pf-sys-neutral-700-on-background
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Neutral color on neutral surface
--pf-sys-neutral-900-on-surface-100
gray-900-on-gray-100 --pf-sys-neutral-900-on-background
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Neutral color on neutral surface

Neutral colors on neutral 200 surface

Name Default value Value type Description
--pf-sys-neutral-surface-200
gray-200 hsl(0, 0%, 92.55%)
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Neutral surface color
--pf-sys-neutral-400-on-surface-200
gray-400-on-gray-200 --pf-sys-neutral-400-on-background
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Neutral color on neutral surface

Neutral colors on neutral 300 surface

From lightest (least contrast) to darkest (most contrast) in light theme

Name Default value Value type Description
--pf-sys-neutral-surface-300
gray-300 hsl(0, 0%, 89.8%)
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Neutral surface color
--pf-sys-neutral-400-on-surface-300
gray-400-on-gray-300 --pf-sys-neutral-400-on-background
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Neutral color on neutral surface
--pf-sys-neutral-900-on-surface-300
gray-900-on-gray-300 --pf-sys-neutral-900-on-background
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Neutral color on neutral surface

Neutral colors on neutral 400 surface

Name Default value Value type Description
--pf-sys-neutral-surface-400
gray-400 hsl(0, 0%, 69.41%)
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Neutral surface color
--pf-sys-neutral-900-on-surface-400
gray-900-on-gray-400 --pf-sys-neutral-900-on-background
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Neutral color on neutral surface

Primary (brand) colors on background

From lightest (least contrast) to darkest (most contrast) in light theme

Name Default value Value type Description
--pf-sys-primary-400-on-background
red-400-on-white hsl(1.4, 82.61%, 59.41%)
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Primary (brand) color on background
--pf-sys-primary-700-on-background
red-700-on-white hsl(1.38, 91.6%, 46.67%)
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Primary (brand) color on background

Primary (brand) 400 surface

Name Default value Value type Description
--pf-sys-primary-surface-400
red-400 hsl(1.4, 82.61%, 59.41%)
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Primary (brand) surface color. Used for selection surface color

Primary (brand) 700 surface

Name Default value Value type Description
--pf-sys-primary-surface-700
red-700 hsl(1.38, 91.6%, 46.67%)
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Primary (brand) surface color. Used for primary buttons
--pf-sys-primary-surface-700-hs
red-700 1.38, 91.6%
valid HS color values, but without hsl() wrapper function Used for CSS color values that require a new value to be generated. Value should derive from --pf-sys-primary-surface-700
--pf-sys-primary-surface-700-l
red-700 46.67%
valid L color values, but without hsl() wrapper function Used for CSS color values that require a new value to be generated. Value should derive from --pf-sys-primary-surface-700
--pf-sys-primary-on-surface-700
white-on-red-700 hsl(0, 0%, 100%)
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Color on primary (brand) surface. Used for primary buttons

Selection

Name Default value Value type Description
--pf-sys-selection-surface
red-400 --pf-sys-primary-surface-400
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Selection surface color
--pf-sys-selection-on-surface
white-on-red-400 --pf-sys-background
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Color on selection surface

Success colors on background

Name Default value Value type Description
--pf-sys-success-on-background
green-800-on-white hsl(122.98, 83.45%, 28.43%)
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Success color on background

Warning colors on background

Name Default value Value type Description
--pf-sys-warning-on-background
yellow-600-on-white hsl(43.97, 100%, 48.43%)
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Warning color on background

Error colors on background

Name Default value Value type Description
--pf-sys-error-on-background
red-800-on-white hsl(1.28, 82.38%, 44.51%)
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Error color on background. Used for error messages

Error surface

Name Default value Value type Description
--pf-sys-error-surface
red-800 hsl(1.28, 82.38%, 44.51%)
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Error surface color
--pf-sys-error-on-surface
white-on-red-800 hsl(0, 0%, 100%)
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Color on error surface

Form control

Used for interactive form elements - checkbox, radio button, toggle switch

Name Default value Value type Description
--pf-sys-form-control-indicator-active-surface
blue-800 hsl(207.24, 81.72%, 36.47%)
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Active form control indicator surface color
--pf-sys-form-control-indicator-active-on-surface
white-on-blue-800 hsl(0, 0%, 100%)
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Color on active form control indicator surface

Action button

Name Default value Value type Description
--pf-sys-action-button-surface transparent color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Action button surface color
--pf-sys-action-button-on-surface
gray-900-on-white --pf-sys-neutral-900-on-background
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Color on action button surface
--pf-sys-action-button-hover-surface
gray-300 --pf-sys-neutral-surface-300
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Hovered action button surface color
--pf-sys-action-button-hover-on-surface
gray-900-on-gray-300 --pf-sys-neutral-900-on-surface-300
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Color on hovered action button surface
--pf-sys-action-button-focus-surface
gray-CECECE hsla(0, 0%, 0%, 0.192)
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Focused action button surface color
--pf-sys-action-button-focus-on-surface
gray-900-on-gray-CECECE --pf-sys-neutral-900-on-surface-300
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Color on focused action button surface
--pf-sys-action-button-selected-surface
blue-50 hsl(195.48, 75.61%, 91.96%)
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Selected action button surface color
--pf-sys-action-button-selected-on-surface
blue-800-on-blue-50 hsl(207.24, 81.72%, 36.47%)
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Color on selected action button surface
--pf-sys-action-button-disabled-surface transparent color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Disabled action button surface color
--pf-sys-action-button-disabled-on-surface
gray-400-on-white --pf-sys-neutral-400-on-background
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Color on disabled action button surface

Border radius

Name Default value Value type Description
--pf-sys-border-radius-xxs 2px border radius, valid one, two, three, or four or values Generic border radius. Used for checkboxes, range sliders
--pf-sys-border-radius-xs 3px border radius, valid one, two, three, or four or values Generic border radius. Used for snackbars
--pf-sys-border-radius-sm 4px border radius, valid one, two, three, or four or values Generic border radius. Used for tooltips
--pf-sys-border-radius 5px border radius, valid one, two, three, or four or values Generic border radius. Used for cards, form inputs, dropdowns, buttons, popovers, color swatches ...
--pf-sys-border-radius-md 7px border radius, valid one, two, three, or four or values Generic border radius. Used for active color swatch
--pf-sys-border-radius-lg 10px border radius, valid one, two, three, or four or values Generic border radius. Used for banners
--pf-sys-border-radius-xl 16px border radius, valid one, two, three, or four or values Generic border radius. Used for modals
--pf-sys-border-radius-pill 100vmax border radius, valid one, two, three, or four or values Generic border radius. Used for pill shaped elements like badges, chips, toggle switches, placement tabs ...
--pf-sys-border-radius-circle 50% border radius, valid one, two, three, or four or values Generic border radius. Used for circle shaped elements like designer info buttons
--pf-comp-badge-border-radius --pf-sys-border-radius-pill border radius, valid one, two, three, or four or values Badge border radius
--pf-comp-badge-circle-border-radius --pf-sys-border-radius-circle border radius, valid one, two, three, or four or values Circle badge border radius
--pf-comp-banner-border-radius --pf-sys-border-radius-lg border radius, valid one, two, three, or four or values Banner border radius. Same border radius for all banner type
--pf-comp-button-border-radius --pf-sys-border-radius border radius, valid one, two, three, or four or values Button border radius. Same border radius for all button types
--pf-comp-checkbox-border-radius --pf-sys-border-radius-xxs border radius, valid one, two, three, or four or values Checkbox border radius
--pf-comp-chip-border-radius --pf-sys-border-radius-pill border radius, valid one, two, three, or four or values Chip border radius
--pf-comp-designer-area-action-buttons-border-radius --pf-sys-border-radius border radius, valid one, two, three, or four or values Designer action button container border radius
--pf-comp-designer-icon-button-action-border-radius --pf-sys-border-radius border radius, valid one, two, three, or four or values Designer action icon button border radius
--pf-comp-designer-icon-button-info-border-radius --pf-sys-border-radius-circle border radius, valid one, two, three, or four or values Designer info icon button border radius
--pf-comp-designer-mobile-footer-border-radius --pf-sys-border-radius-xl border radius, valid one, two, three, or four or values Mobile footer border radius
--pf-comp-designer-mobile-footer-handle-border-radius --pf-sys-border-radius-pill border radius, valid one, two, three, or four or values Mobile footer handle border radius
--pf-comp-designer-toolbar-button-border-radius --pf-sys-border-radius border radius, valid one, two, three, or four or values Designer toolbar button border radius
--pf-comp-input-border-radius --pf-sys-border-radius border radius, valid one, two, three, or four or values Input border radius
--pf-comp-layer-item-border-radius --pf-sys-border-radius border radius, valid one, two, three, or four or values Layer item border radius
--pf-comp-layer-item-control-border-radius --pf-sys-border-radius border radius, valid one, two, three, or four or values Control button border radius
--pf-comp-layer-item-adjusted-badge-border-radius --pf-sys-border-radius-xxs border radius, valid one, two, three, or four or values Adjusted badge border radius
--pf-comp-layer-parent-border-radius --pf-sys-border-radius border radius, valid one, two, three, or four or values Layer group parent layer border radius
--pf-comp-modal-border-radius --pf-sys-border-radius-xl border radius, valid one, two, three, or four or values Modal border radius
--pf-comp-placement-grid-border-radius --pf-sys-border-radius-lg border radius, valid one, two, three, or four or values Placement grid border radius
--pf-comp-placement-tab-border-radius --pf-sys-border-radius-pill border radius, valid one, two, three, or four or values Placement tab border radius
--pf-comp-popover-border-radius --pf-sys-border-radius border radius, valid one, two, three, or four or values Popover border radius
--pf-comp-range-slider-border-radius --pf-sys-border-radius-pill border radius, valid one, two, three, or four or values Range slider border radius
--pf-comp-toggle-switch-border-radius --pf-sys-border-radius-pill border radius, valid one, two, three, or four or values Toggle switch border radius
--pf-comp-toggle-switch-indicator-border-radius --pf-sys-border-radius-circle border radius, valid one, two, three, or four or values Toggle switch indicator border radius
--pf-comp-tooltip-border-radius --pf-sys-border-radius-sm border radius, valid one, two, three, or four or values Tooltip border radius

Component tokens

Use component tokens if the system tokens aren't enough and you want to fine tune the look of a specific component

Badge

Default badge

Primary badge

Name Default value Value type Description
--pf-comp-badge-on-surface
white --pf-sys-background
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Default fallback color on badge surface
--pf-comp-badge-default-surface
gray-300 --pf-sys-neutral-surface-300
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Default badge surface color
--pf-comp-badge-default-on-surface
gray-900-on-gray-300 --pf-sys-neutral-900-on-surface-300
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Color on default badge surface
--pf-comp-badge-primary-surface
red-700 --pf-sys-primary-surface-700
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Primary badge surface color
--pf-comp-badge-primary-on-surface
white-on-red-700 --pf-sys-primary-on-surface-700
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Color on primary badge surface
--pf-comp-badge-info-surface
blue-700 hsl(195.71, 98.82%, 33.33%)
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Info badge surface color
--pf-comp-badge-info-on-surface
white-on-blue-700 --pf-sys-background
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Color on info badge surface
--pf-comp-badge-success-surface
green-800 hsl(122.98, 83.45%, 28.43%)
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Success badge surface color
--pf-comp-badge-success-on-surface
white-on-green-800 --pf-sys-background
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Color on success badge surface
--pf-comp-badge-warning-surface
orange-800 hsl(23.03, 98.02%, 39.61%)
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Warning badge surface color
--pf-comp-badge-warning-on-surface
white-on-orange-800 --pf-sys-background
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Color on warning badge surface
--pf-comp-badge-error-surface
red-800 --pf-sys-error-surface
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Error badge surface color
--pf-comp-badge-error-on-surface
white-on-red-800 --pf-sys-error-on-surface
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Color on error badge surface
--pf-comp-badge-new-surface
cyan-800 hsl(180.45, 100%, 25.88%)
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation New badge surface color
--pf-comp-badge-new-on-surface
white-on-cyan-800 --pf-sys-background
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Color on new badge surface
--pf-comp-badge-beta-surface
orange-800 hsl(23.03, 98.02%, 39.61%)
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Beta badge surface color
--pf-comp-badge-beta-on-surface
white-on-orange-800 --pf-sys-background
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Color on beta badge surface
--pf-comp-badge-top-surface
yellow-200 hsl(33.83, 78.33%, 76.47%)
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Top badge surface color
--pf-comp-badge-top-on-surface
white-on-yellow-200 --pf-sys-background
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Color on top badge surface

Banner

Default banner

Warning banner

Name Default value Value type Description
--pf-comp-banner-default-surface
white --pf-sys-background
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Default banner surface color
--pf-comp-banner-default-on-surface
gray-900-on-white --pf-sys-neutral-900-on-background
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Color on default banner surface
--pf-comp-banner-default-border-color
gray-300-on-white --pf-sys-border-on-background
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Default banner border color on background
--pf-comp-banner-gray-surface
gray-50 --pf-sys-neutral-surface-50
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Gray banner surface color
--pf-comp-banner-gray-on-surface
gray-900-on-gray-50 --pf-sys-neutral-900-on-surface-50
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Color on gray banner surface
--pf-comp-banner-gray-border-color transparent color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Gray banner border color on background
--pf-comp-banner-info-surface
blue-50 hsl(195.48, 75.61%, 91.96%)
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Info banner surface color
--pf-comp-banner-info-on-surface
gray-900-on-blue-50 --pf-sys-neutral-900-on-background
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Color on info banner surface
--pf-comp-banner-info-border-color transparent color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Info banner border color on background
--pf-comp-banner-success-surface
green-50 hsl(116.47, 45.95%, 92.75%)
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Success banner surface color
--pf-comp-banner-success-on-surface
gray-900-on-green-50 --pf-sys-neutral-900-on-background
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Color on success banner surface
--pf-comp-banner-success-border-color transparent color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Success banner border color on background
--pf-comp-banner-warning-surface
yellow-75 hsl(41, 100%, 93%)
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Warning banner surface color
--pf-comp-banner-warning-on-surface
gray-900-on-yellow-75 --pf-sys-neutral-900-on-background
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Color on warning banner surface
--pf-comp-banner-warning-border-color transparent color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Warning banner border color on background
--pf-comp-banner-danger-surface
red-50 hsl(3.33, 90%, 96.08%)
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Danger banner surface color
--pf-comp-banner-danger-on-surface
gray-900-on-red-50 --pf-sys-neutral-900-on-background
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Color on danger banner surface
--pf-comp-banner-danger-border-color transparent color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Danger banner border color on background
--pf-comp-banner-close-icon-on-surface
gray-600-on-white hsl(0, 0%, 40.00%)
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Close icon color on banner surface. Same color for all banner types
--pf-comp-banner-close-icon-hover-on-surface
gray-700-on-white --pf-sys-icon-hover-neutral-700-on-background
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Hovered close icon color on banner surface. Same color for all banner types

Button

Primary button

Secondary button

Outline button

Empty buttons

Empty buttons

Name Default value Value type Description
--pf-comp-button-border-color transparent color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Button border color on background. Same color for all button types
--pf-comp-button-outline none valid full outline value Button outline. Same outline for all button types
--pf-comp-button-hover-box-shadow 0 2px 4px 0 hsla(0, 0%, 0%, 0.25) valid full box-shadow value Hovered button shadow. Same shadow for all button types
--pf-comp-button-interaction-outline none valid full outline value Hovered, focused and activated (pressed) button outline. Same outline for all button types
--pf-comp-button-active-box-shadow inset 0 2px 5px 0 hsla(0, 0%, 0%, 0.5) valid full box-shadow value Activated (pressed) button shadow. Same shadow for all button types
--pf-comp-button-primary-surface
red-700 --pf-sys-primary-surface-700
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Primary button surface color
--pf-comp-button-primary-on-surface
white-on-red-700 --pf-sys-primary-on-surface-700
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Color on primary button surface
--pf-comp-button-primary-hover-border-color hsl(--pf-sys-primary-surface-700-hs, calc(--pf-sys-primary-surface-700-l - 25%)) color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Hovered, focused, activated (pressed) primary button border color on background
--pf-comp-button-primary-focus-box-shadow inset 0 0 0 1px --pf-comp-button-primary-hover-border-color valid full box-shadow value Focused primary button shadow on background
--pf-comp-button-primary-hover-focus-all-on-surface
white-on-red-700 --pf-comp-button-primary-on-surface
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Color on hovered, focused, activated (pressed) primary button surface
--pf-comp-button-secondary-surface
gray-300 --pf-sys-neutral-surface-300
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Secondary button surface color
--pf-comp-button-secondary-on-surface
gray-900-on-gray-300 --pf-sys-neutral-900-on-surface-300
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Color on secondary button surface
--pf-comp-button-secondary-hover-border-color
gray-400-on-white --pf-sys-neutral-400-on-background
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Hovered, focused, activated (pressed) secondary button border color on background
--pf-comp-button-secondary-focus-box-shadow inset 0 0 0 1px --pf-comp-button-secondary-hover-border-color valid full box-shadow value Focused secondary button shadow on background
--pf-comp-button-secondary-hover-focus-all-on-surface
gray-900-on-gray-300 --pf-comp-button-secondary-on-surface
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Color on hovered, focused, activated (pressed) secondary button surface
--pf-comp-button-secondary-disabled-surface
gray-200 --pf-sys-neutral-surface-200
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Disabled secondary button surface color
--pf-comp-button-secondary-disabled-on-surface
gray-400-on-gray-200 --pf-sys-neutral-400-on-surface-200
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Color on disabled secondary button surface
--pf-comp-button-tertiary-surface transparent color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Outline button surface color
--pf-comp-button-tertiary-on-surface
gray-900-on-white --pf-sys-neutral-900-on-background
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Color on outline button surface
--pf-comp-button-tertiary-border-color
gray-900-on-white --pf-sys-neutral-900-on-background
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Outline button border color on background
--pf-comp-button-tertiary-hover-surface hsla(--pf-sys-neutral-900-on-background-hsl, .1) color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Hovered outline button surface color
--pf-comp-button-tertiary-hover-on-surface
gray-900-on-white --pf-comp-button-tertiary-on-surface
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Color on hovered outline button surface
--pf-comp-button-tertiary-hover-border-color
gray-900-on-white --pf-comp-button-tertiary-border-color
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Hovered, focused, activated (pressed) outline button border color on background
--pf-comp-button-tertiary-focus-box-shadow inset 0 0 0 1px --pf-comp-button-tertiary-hover-border-color valid full box-shadow value Focused outline button shadow on background
--pf-comp-button-tertiary-disabled-on-surface
gray-400-on-white --pf-sys-neutral-400-on-background
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Color on disabled outline button surface
--pf-comp-button-tertiary-selected-surface --pf-comp-button-tertiary-surface color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Selected outline button surface color
--pf-comp-button-tertiary-selected-border-color
gray-900-on-white --pf-sys-neutral-900-on-background
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Selected outline button border color on background
--pf-comp-button-tertiary-selected-box-shadow inset 0 0 0 1px --pf-comp-button-tertiary-selected-border-color valid full box-shadow value Selected outline button shadow on background
--pf-comp-button-empty-surface
white --pf-sys-background
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Card like button surface color
--pf-comp-button-empty-on-surface
gray-900-on-white --pf-sys-neutral-900-on-background
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Color on card like button surface
--pf-comp-button-empty-border-color
gray-300-on-white --pf-sys-border-on-background
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Card like button border color on background
--pf-comp-button-empty-icon-surface
gray-300 --pf-sys-neutral-surface-300
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Icon surface color on card like button surface
--pf-comp-button-empty-pocket-icon-on-surface
gray-900-on-gray-300 --pf-sys-neutral-900-on-surface-300
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Pocket icon color on card like button icon surface
--pf-comp-button-empty-pocket-icon-none-on-surface
gray-900-on-gray-300 --pf-sys-neutral-900-on-surface-300
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Pocket icon color on card like button icon surface
--pf-comp-button-empty-stitch-clear-icon-on-surface
gray-400-on-gray-300 --pf-sys-icon-on-background
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Clear stitch icon color on card like button icon surface
--pf-comp-button-empty-hover-box-shadow --pf-comp-button-hover-box-shadow valid full box-shadow value Hovered card like button shadow on background
--pf-comp-button-empty-active-box-shadow --pf-comp-button-active-box-shadow valid full box-shadow value Activated (pressed) card like button shadow on background
--pf-comp-button-empty-interaction-surface
white --pf-comp-button-empty-surface
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Hovered, focused, activated (pressed) card like button surface color
--pf-comp-button-empty-interaction-on-surface
gray-900-on-white --pf-comp-button-empty-on-surface
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Color on hovered, focused, activated (pressed) card like button surface
--pf-comp-button-empty-interaction-border-color
gray-300-on-white --pf-comp-button-empty-border-color
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Hovered, focused, activated (pressed) card like button border color on background

Checkbox

Checkboxes

Name Default value Value type Description
--pf-comp-checkbox-indicator-surface
white --pf-comp-form-control-indicator-surface
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Checkbox indicator surface color
--pf-comp-checkbox-indicator-border-color
gray-400-on-white --pf-comp-form-control-indicator-border-color
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Checkbox indicator border color on background
--pf-comp-checkbox-checked-indicator-surface
blue-800 --pf-comp-form-control-checked-indicator-surface
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Checked checkbox indicator surface color
--pf-comp-checkbox-checked-indicator-on-surface
white-on-blue-800 --pf-comp-form-control-checked-indicator-on-surface
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Color on checked checkbox indicator surface
--pf-comp-checkbox-checked-indicator-border-color
blue-800-on-white --pf-comp-checkbox-checked-indicator-surface
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Checked checkbox indicator border color on background
--pf-comp-checkbox-checked-disabled-indicator-surface --pf-comp-form-control-checked-disabled-indicator-surface color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Checked disabled checkbox indicator surface color
--pf-comp-checkbox-checked-disabled-indicator-border-color transparent color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Checked disabled checkbox indicator border color on background
--pf-comp-checkbox-indeterminate-indicator-surface
blue-800 --pf-sys-form-control-indicator-active-surface
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Indeterminate checkbox indicator surface color
--pf-comp-checkbox-indeterminate-indicator-on-surface
white-on-blue-800 --pf-sys-form-control-indicator-active-on-surface
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Color on indeterminate checkbox indicator surface
--pf-comp-checkbox-indeterminate-indicator-border-color
blue-800-on-white --pf-comp-checkbox-indeterminate-indicator-surface
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Indeterminate checkbox indicator border color on background
--pf-comp-checkbox-disabled-indicator-surface
white --pf-comp-checkbox-indicator-surface
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Disabled checkbox indicator surface color
--pf-comp-checkbox-disabled-indicator-border-color
gray-300-on-white --pf-comp-form-control-disabled-indicator-border-color
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Disabled checkbox indicator border color on background
--pf-comp-checkbox-hover-indicator-box-shadow --pf-comp-form-control-hover-indicator-box-shadow valid full box-shadow value Hovered checkbox indicator shadow on background
--pf-comp-checkbox-not-unchecked-hover-indicator-box-shadow --pf-comp-form-control-not-unchecked-hover-indicator-box-shadow valid full box-shadow value Checked, indeterminate hovered checkbox indicator shadow on background

Chip

Chips

Name Default value Value type Description
--pf-comp-chip-surface
gray-50 --pf-sys-neutral-surface-50
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Chip surface color
--pf-comp-chip-on-surface
gray-700-on-gray-50 --pf-sys-neutral-700-on-surface-50
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Color on chip surface
--pf-comp-chip-border-color
gray-300-on-white --pf-sys-border-on-background
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Chip border color on background
--pf-comp-chip-selected-surface
gray-50 --pf-comp-chip-surface
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Selected chip surface color
--pf-comp-chip-selected-on-surface
gray-700-on-gray-50 --pf-comp-chip-on-surface
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Color on selection chip surface
--pf-comp-chip-selected-border-color
gray-800-on-white --pf-sys-neutral-800-on-background
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Selected chip border color on background
--pf-comp-chip-resting-surface
gray-50 --pf-comp-chip-surface
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Resting chip surface color
--pf-comp-chip-resting-on-surface
gray-400-on-gray-50 --pf-sys-neutral-400-on-surface-50
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Color on resting chip surface
--pf-comp-chip-resting-border-color
gray-300-on-white --pf-comp-chip-border-color
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Resting chip border color on background
--pf-comp-chip-hover-surface
gray-50 --pf-comp-chip-surface
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Hovered chip surface color
--pf-comp-chip-hover-on-surface
gray-700-on-gray-50 --pf-comp-chip-on-surface
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Color on hovered chip surface
--pf-comp-chip-hover-border-color
gray-800-on-white --pf-sys-neutral-800-on-background
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Hovered chip surface border color on background

Clipart

Clipart

Name Default value Value type Description
--pf-comp-clipart-item-hover-border-color transparent color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Hovered clipart item border color on background

Designer area action buttons

Designer area action buttons

Name Default value Value type Description
--pf-comp-designer-area-action-buttons-container-surface
white --pf-sys-background
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Designer action button container surface color
--pf-comp-designer-area-action-buttons-border-color
gray-300-on-white --pf-sys-border-on-background
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Designer action button container border color on background

Designer icon button

Designer icon info button

Name Default value Value type Description
--pf-comp-designer-icon-button-info-border-color
gray-300-on-white --pf-sys-border-on-background
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Designer info icon button border color on background

Designer mockup area

Designer mockup area - design view

Designer mockup area - 3D view

Name Default value Value type Description
--pf-comp-designer-mockup-area-surface
gray-50 --pf-sys-neutral-surface-50
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Designer mockup area surface color

Designer toolbar

Designer toolbar

Designer toolbar

Name Default value Value type Description
--pf-comp-designer-toolbar-surface
white --pf-sys-background
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Designer toolbar surface color
--pf-comp-designer-toolbar-button-new-indicator-on-surface
red-400-on-white --pf-sys-primary-400-on-background
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation New indicator color on designer toolbar button surface
--pf-comp-designer-toolbar-button-hover-new-indicator-on-surface
red-400-on-white --pf-comp-designer-toolbar-button-new-indicator-on-surface
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation New indicator color on hovered designer toolbar button surface
--pf-comp-designer-toolbar-button-focus-new-indicator-on-surface
red-400-on-white --pf-comp-designer-toolbar-button-new-indicator-on-surface
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation New indicator color on focused designer toolbar button surface
--pf-comp-designer-toolbar-button-selected-new-indicator-on-surface
red-400-on-white --pf-comp-designer-toolbar-button-new-indicator-on-surface
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation New indicator color on selected designer toolbar button surface
--pf-comp-designer-toolbar-button-disabled-new-indicator-on-surface
red-400-on-white --pf-comp-designer-toolbar-button-new-indicator-on-surface
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation New indicator color on disabled designer toolbar button surface
--pf-comp-designer-toolbar-more-button-popover-surface
white --pf-sys-background
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Designer toolbar more button popover surface color
--pf-comp-designer-toolbar-more-button-popover-border-color
gray-300-on-white --pf-sys-border-on-background
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Designer toolbar more button popover border color on background
--pf-comp-designer-toolbar-more-button-popover-box-shadow --pf-comp-dropdown-input-menu-box-shadow valid full box-shadow value Designer toolbar more button popover shadow on background

Dropdown input

Dropdown input

Name Default value Value type Description
--pf-comp-dropdown-input-placeholder-on-surface
gray-700-on-white --pf-comp-input-placeholder-on-surface
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Placeholder color on dropdown input surface
--pf-comp-dropdown-input-button-surface
white --pf-sys-background
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Dropdown input button surface color
--pf-comp-dropdown-input-button-on-surface
gray-900-on-white --pf-comp-input-on-surface
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Color on dropdown input button surface
--pf-comp-dropdown-input-button-border-color
gray-300-on-white --pf-comp-input-border-color
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Dropdown input button border color on background
--pf-comp-dropdown-input-button-icon-on-surface
gray-400-on-white --pf-sys-icon-on-background
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Icon color on dropdown input button surface
--pf-comp-dropdown-input-button-search-input-border-color
gray-300-on-white --pf-comp-dropdown-input-button-border-color
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Dropdown input button search input border color on background
--pf-comp-dropdown-input-open-button-surface
white --pf-comp-dropdown-input-button-surface
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Opened dropdown input button surface color
--pf-comp-dropdown-input-disabled-button-surface
gray-50 --pf-comp-input-disabled-surface
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Disabled dropdown input button surface color
--pf-comp-dropdown-input-disabled-button-on-surface
gray-700-on-gray-50 --pf-comp-input-disabled-on-surface
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Color on disabled dropdown input button surface
--pf-comp-dropdown-input-dropdown-border-color
gray-300-on-white --pf-comp-dropdown-input-button-border-color
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Dropdown input dropdown border color on background
--pf-comp-dropdown-input-menu-box-shadow 0 3px 8px 0 hsla(0, 0%, 0%, 0.19) valid full box-shadow value Dropdown input menu shadow on background
--pf-comp-dropdown-input-menu-up-border-top-color hsla(0, 0%, 0%, .15) color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Top border color on upward dropdown input menu surface
--pf-comp-dropdown-input-menu-up-box-shadow 0 -3px 8px 0 hsla(0, 0%, 0%, 0.19) valid full box-shadow value Dropdown input up menu shadow on background
--pf-comp-dropdown-input-menu-list-surface
white --pf-comp-dropdown-input-button-surface
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Dropdown input menu list surface color
--pf-comp-dropdown-input-menu-list-on-surface
gray-900-on-white --pf-comp-dropdown-input-button-on-surface
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Color on dropdown input menu list surface
--pf-comp-dropdown-input-menu-group-title-on-surface
gray-700-on-white --pf-sys-neutral-700-on-background
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Group title color on dropdown input menu surface
--pf-comp-dropdown-input-menu-item-surface
white --pf-comp-dropdown-input-menu-list-surface
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Dropdown input menu item surface color
--pf-comp-dropdown-input-menu-item-on-surface
gray-900-on-white --pf-comp-dropdown-input-menu-list-on-surface
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Color on dropdown input menu item surface
--pf-comp-dropdown-input-menu-item-icon-on-surface
gray-400-on-white --pf-sys-icon-on-background
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Icon color on dropdown input menu item surface
--pf-comp-dropdown-input-menu-item-description-on-surface
gray-700-on-white --pf-sys-neutral-700-on-background
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Description color on dropdown input menu item surface
--pf-comp-dropdown-input-menu-item-hover-surface
gray-300 --pf-sys-neutral-surface-300
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Hovered dropdown input menu item surface color
--pf-comp-dropdown-input-menu-item-hover-on-surface
gray-900-on-gray-300 --pf-sys-neutral-900-on-surface-300
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Color on hovered dropdown input menu item surface
--pf-comp-dropdown-input-menu-item-hover-icon-on-surface
gray-700-on-gray-300 --pf-sys-icon-hover-neutral-700-on-background
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Icon color on hovered dropdown input menu item surface
--pf-comp-dropdown-input-menu-item-focus-surface
gray-300 --pf-comp-dropdown-input-menu-item-hover-surface
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Focused dropdown input menu item surface color
--pf-comp-dropdown-input-menu-item-focus-on-surface
gray-900-on-gray-300 --pf-comp-dropdown-input-menu-item-hover-on-surface
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Color on focused dropdown input menu item surface
--pf-comp-dropdown-input-menu-item-selected-surface
gray-50 --pf-sys-neutral-surface-50
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Selected dropdown input menu item surface color
--pf-comp-dropdown-input-menu-item-selected-on-surface
gray-900-on-gray-50 --pf-sys-neutral-900-on-surface-50
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Color on selected dropdown input menu item surface
--pf-comp-dropdown-input-menu-item-selected-icon-on-surface
gray-700-on-gray-50 --pf-sys-icon-hover-neutral-700-on-background
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Icon color on selected dropdown input menu item surface
--pf-comp-dropdown-input-menu-date-surface
white --pf-comp-dropdown-input-button-surface
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Dropdown input date menu surface color
--pf-comp-dropdown-input-menu-date-border-color --pf-comp-dropdown-input-menu-up-border-top-color color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Border color on dropdown input date menu surface
--pf-comp-dropdown-input-menu-date-box-shadow 0 6px 12px hsla(0, 0%, 0%, .175) valid full box-shadow value Dropdown input date menu shadow on background
--pf-comp-dropdown-input-tags-border-top-color
gray-300-on-white --pf-comp-dropdown-input-button-border-color
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Tags top border color on dropdown input surface
--pf-comp-dropdown-input-close-search-icon-on-surface
gray-400-on-white --pf-sys-icon-on-background
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Close search icon color on dropdown input surface
--pf-comp-dropdown-input-close-search-icon-hover-on-surface
gray-700-on-white --pf-sys-icon-hover-neutral-700-on-background
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Hovered close search icon color on dropdown input surface

Form control

Used for interactive form elements - checkbox, radio button, toggle switch

Checkboxes

Radios

Toggle switch

Name Default value Value type Description
--pf-comp-form-control-indicator-surface
white --pf-comp-input-surface
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Form control indicator surface color
--pf-comp-form-control-indicator-border-color
gray-400-on-white --pf-sys-neutral-400-on-background
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Form control indicator border color on background
--pf-comp-form-control-checked-indicator-surface
blue-800 --pf-sys-form-control-indicator-active-surface
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Checked form control indicator surface color
--pf-comp-form-control-checked-indicator-on-surface
white-on-blue-800 --pf-sys-form-control-indicator-active-on-surface
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Color on checked form control indicator surface
--pf-comp-form-control-checked-indicator-border-color
blue-800-on-white --pf-comp-form-control-checked-indicator-surface
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Checked form control indicator border color on background
--pf-comp-form-control-checked-disabled-indicator-surface hsla(207.24, 81.72%, 36.47%, 0.5) color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Checked disabled form control indicator surface color
--pf-comp-form-control-active-indicator-surface lighten(hsl(207.24, 81.72%, 36.47%), 35%) color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Activated (pressed) form control indicator surface color
--pf-comp-form-control-active-indicator-on-surface --pf-comp-form-control-checked-indicator-on-surface color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Color on activated (pressed) form control indicator surface
--pf-comp-form-control-active-indicator-border-color
blue-800-on-white --pf-comp-form-control-checked-indicator-surface
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Activated (pressed) form control indicator border color on background
--pf-comp-form-control-disabled-indicator-surface
white --pf-comp-form-control-indicator-surface
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Disabled form control indicator surface color
--pf-comp-form-control-disabled-indicator-border-color
gray-300-on-white --pf-comp-input-border-color
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Color on disabled form control indicator surface
--pf-comp-form-control-disabled-label-on-surface
gray-700-on-white --pf-comp-input-disabled-on-surface
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Disabled form control label color on background
--pf-comp-form-control-hover-indicator-box-shadow inset 0 0 0 3px --pf-comp-input-border-color valid full box-shadow value Hovered form control inside border color on form control indicator surface
--pf-comp-form-control-not-unchecked-hover-indicator-box-shadow inset 0 0 0 0 --pf-comp-input-border-color valid full box-shadow value Checked, indeterminate hovered form control inside border color on form control indicator surface
--pf-comp-form-control-error-indicator-border-color
red-800-on-white --pf-comp-input-error-border-color
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Errored form control indicator border color on background

Header

Header

Name Default value Value type Description
--pf-comp-header-surface
white --pf-sys-background
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Header surface color
--pf-comp-header-vertical-divider
gray-300-on-white --pf-sys-border-on-background
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Header vertical divider color. Separates header from main design area
--pf-comp-header-horizontal-divider
gray-300-on-white --pf-sys-border-on-background
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Header horizontal divider color. Separates grouped buttons

Input

Input

Textarea

Input group

Range slider

Name Default value Value type Description
--pf-comp-input-placeholder-on-surface
gray-700-on-white --pf-sys-neutral-700-on-background
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Placeholder color on input surface
--pf-comp-input-surface
white --pf-sys-background
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Input surface color
--pf-comp-input-on-surface
gray-900-on-white --pf-sys-neutral-900-on-background
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Color on input surface
--pf-comp-input-border-color
gray-300-on-white --pf-sys-border-on-background
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Input border color on background
--pf-comp-input-inset-box-shadow inset 0 1px 1px hsla(0, 0%, 0%, 0.075) valid full box-shadow value Inner shadow on input surface
--pf-comp-input-outline none valid full outline value Input outline
--pf-comp-input-focus-surface
white --pf-comp-input-surface
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Focused input surface color
--pf-comp-input-focus-on-surface
gray-900-on-white --pf-comp-input-on-surface
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Color on focused input surface
--pf-comp-input-focus-border-color
gray-400-on-white --pf-sys-neutral-400-on-background
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Focused input border color on background
--pf-comp-input-focus-box-shadow 0 2px 4px 0 hsla(0, 0%, 0%, 0.25) valid full box-shadow value Focused input shadow on background
--pf-comp-input-focus-outline none valid full outline value Focused input outline
--pf-comp-input-disabled-surface
gray-50 --pf-sys-neutral-surface-50
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Disabled input surface
--pf-comp-input-disabled-on-surface
gray-700-on-gray-50 --pf-sys-neutral-700-on-surface-50
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Color on disabled input surface
--pf-comp-input-disabled-focus-border-color
gray-300-on-white --pf-comp-input-border-color
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Disabled focused input border color on background
--pf-comp-input-disabled-focus-box-shadow none valid full box-shadow value Disabled focused input shadow on background
--pf-comp-input-plaintext-surface transparent color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Plaintext input surface color
--pf-comp-input-plaintext-on-surface
gray-900-on-white --pf-comp-input-on-surface
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Color on plaintext input surface
--pf-comp-input-plaintext-border-color --pf-comp-input-plaintext-surface color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Plaintext input border color on background
--pf-comp-input-error-border-color
red-800-on-white --pf-comp-input-error-message-on-surface
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Errored input border color on background
--pf-comp-input-error-message-on-surface
red-800-on-white --pf-sys-error-on-background
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Errored input message color on background
--pf-comp-input-clear-button-icon-on-surface
gray-400-on-white --pf-sys-icon-on-background
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Clear icon color on input surface
--pf-comp-input-clear-button-icon-hover-on-surface
gray-700-on-white --pf-sys-icon-hover-neutral-700-on-background
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Hovered clear icon color on input surface

Input group

Input group

Name Default value Value type Description
--pf-comp-input-group-inc-dec-button-surface
white --pf-comp-input-surface
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Input group increment and decrement button surface color
--pf-comp-input-group-inc-dec-button-on-surface
gray-400-on-white --pf-sys-icon-on-background
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Color on input group increment and decrement button surface
--pf-comp-input-group-inc-dec-button-border-color
gray-300-on-white --pf-comp-input-border-color
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Input group increment and decrement button border color on background
--pf-comp-input-group-inc-dec-button-box-shadow 0 2px 4px 0 hsla(0, 0%, 0%, 0.25) valid full box-shadow value Focused input group increment and decrement button shadow on background

Layer

Layers

Name Default value Value type Description
--pf-comp-layer-item-surface
white --pf-sys-background
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Layer item surface color
--pf-comp-layer-item-on-surface
gray-900-on-white --pf-sys-neutral-900-on-background
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Color on layer item surface
--pf-comp-layer-item-border-color transparent color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Layer item border color on background
--pf-comp-layer-item-hover-border-color
gray-400-on-white --pf-sys-neutral-400-on-background
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Hovered layer item border color on background
--pf-comp-layer-item-selected-surface
gray-50 --pf-sys-neutral-surface-50
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Selected layer item surface color
--pf-comp-layer-item-control-hover-surface
gray-50 --pf-sys-neutral-surface-50
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Hovered control button surface color on layer item surface
--pf-comp-layer-item-control-hover-on-surface
gray-900-on-gray-50 --pf-sys-neutral-900-on-surface-50
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Color on hovered control button surface
--pf-comp-layer-item-selected-control-hover-surface
gray-300 --pf-sys-neutral-surface-300
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Hovered control button surface color on selected layer item surface
--pf-comp-layer-item-selected-control-hover-on-surface
gray-900-on-gray-300 --pf-sys-neutral-900-on-surface-300
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Color on selected hovered control button surface
--pf-comp-layer-item-delete-button-surface
red-700 hsl(1.38, 91.6%, 46.67%)
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Delete button surface color. Can be seen on mobile when swiping layer item
--pf-comp-layer-item-delete-button-on-surface
white-on-red-700 hsl(0, 0%, 100%)
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Color on delete button surface. Can be seen on mobile when swiping layer item
--pf-comp-layer-item-personalization-indicator-surface
cyan-300 hsl(177.45, 78.2%, 41.37%)
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Personalization indicator surface color on layer item surface
--pf-comp-layer-item-personalization-indicator-on-surface
white-on-cyan-300 hsl(0, 0%, 100%)
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Color on personalization indicator surface
--pf-comp-layer-item-adjusted-badge-surface
brown-800 hsl(24, 8.93%, 21.96%)
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Adjusted badge surface color on layer item surface
--pf-comp-layer-item-adjusted-badge-on-surface
white-on-brown-800 hsl(0, 0%, 100%)
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Color on adjusted badge surface
--pf-comp-layer-item-transparency-info-on-surface
yellow-600-on-white hsl(43.97, 100%, 48.43%)
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Transparency info color on layer item surface
--pf-comp-layer-item-icon-info-on-surface
gray-400-on-white --pf-sys-icon-info-on-background
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Info icon (used for tooltips) color on layer item surface
--pf-comp-layer-group-surface
white --pf-comp-layer-item-surface
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Layer group surface color
--pf-comp-layer-group-border-color --pf-comp-layer-item-border-color color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Layer group border color on background
--pf-comp-layer-group-selected-layer-parent-surface
gray-50 --pf-comp-layer-item-selected-surface
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Selected layer group parent item surface color
--pf-comp-layer-parent-border-color --pf-comp-layer-item-border-color color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Layer group parent layer border color on background
--pf-comp-layer-parent-hover-border-color
gray-400-on-white --pf-comp-layer-item-hover-border-color
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Hovered layer group parent layer border color on background

Mobile header

Mobile header

Name Default value Value type Description
--pf-comp-mobile-header-surface
white --pf-sys-background
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Mobile header surface color
--pf-comp-mobile-header-on-surface
gray-900-on-white --pf-sys-neutral-900-on-background
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Color on mobile header
--pf-comp-mobile-header-horizontal-divider
gray-300-on-white --pf-sys-border-on-background
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Mobile header horizontal divider color. Separates mobile header from main design area

Modal

Name Default value Value type Description
--pf-comp-modal-surface
white --pf-sys-background
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Modal surface color
--pf-comp-modal-on-surface
gray-900-on-white --pf-sys-neutral-900-on-background
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Color on modal surface
--pf-comp-modal-divider-on-surface
gray-300-on-white --pf-sys-border-on-background
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Divider line color on modal surface
--pf-comp-modal-close-icon-on-surface
gray-400-on-white --pf-sys-icon-on-background
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Close icon color on modal surface
--pf-comp-modal-close-icon-hover-on-surface
gray-700-on-white --pf-sys-icon-hover-neutral-700-on-background
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Hovered close icon color on modal surface

Overlay

Overlay

Name Default value Value type Description
--pf-comp-overlay-surface hsla(--pf-sys-background-hsl, 0.5) color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Overlay color (meant to have color value with opacity)

Placement grid

Placement grid

Name Default value Value type Description
--pf-comp-placement-grid-surface
gray-50 --pf-sys-neutral-surface-50
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Placement grid surface color
--pf-comp-placement-grid-on-surface
gray-900-on-gray-50 --pf-sys-neutral-900-on-surface-50
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Color on placement grid surface
--pf-comp-placement-grid-card-thumbnail-border-color
gray-300-on-gray-50 --pf-sys-neutral-300-on-surface-50
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Card thumbnail border color on placement grid surface
--pf-comp-placement-grid-card-hover-thumbnail-box-shadow 0 1px 5px rgba(90, 90, 90, 0.5) valid full box-shadow value Hovered card thumbnail shadow on placement grid surface
--pf-comp-placement-grid-card-title-on-surface
gray-700-on-gray-50 --pf-sys-neutral-700-on-surface-50
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Card title color on placement grid surface
--pf-comp-placement-grid-card-hover-title-on-surface
gray-900-on-gray-50 --pf-sys-neutral-900-on-surface-50
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Hovered card title color on placement grid surface
--pf-comp-placement-grid-card-disabled-title-on-surface
gray-400-on-gray-50 --pf-sys-neutral-400-on-surface-50
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Disabled card title color on placement grid surface

Placement tab

Placement tab badges

Name Default value Value type Description
--pf-comp-placement-tab-badge-default-surface
gray-300 --pf-comp-badge-default-surface
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Default badge surface on placement tab surface
--pf-comp-placement-tab-badge-default-on-surface
gray-900-on-gray-300 --pf-comp-badge-default-on-surface
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Color on default badge surface on placement tab surface
--pf-comp-placement-tab-badge-primary-surface
red-700 --pf-comp-badge-primary-surface
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Primary badge surface on placement tab surface
--pf-comp-placement-tab-badge-primary-on-surface
white-on-red-700 --pf-comp-badge-primary-on-surface
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Color on primary badge surface on placement tab surface
--pf-comp-placement-tab-badge-beta-surface
orange-800 --pf-comp-badge-beta-surface
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Beta badge surface on placement tab surface
--pf-comp-placement-tab-badge-beta-on-surface
white-on-orange-800 --pf-comp-badge-beta-on-surface
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Color on beta badge surface on placement tab surface
--pf-comp-placement-tab-hover-badge-default-surface
gray-400 --pf-sys-neutral-surface-400
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Default badge surface on hovered placement tab surface
--pf-comp-placement-tab-hover-badge-default-on-surface
gray-900-on-gray-400 --pf-sys-neutral-900-on-surface-400
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Color on default badge surface on hovered placement tab surface
--pf-comp-placement-tab-hover-badge-primary-surface
red-700 --pf-comp-placement-tab-badge-primary-surface
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Primary badge surface on hovered placement tab surface
--pf-comp-placement-tab-hover-badge-primary-on-surface
white-on-red-700 --pf-comp-placement-tab-badge-primary-on-surface
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Color on primary badge surface on hovered placement tab surface
--pf-comp-placement-tab-hover-badge-beta-surface
orange-800 --pf-comp-placement-tab-badge-beta-surface
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Beta badge surface on hovered placement tab surface
--pf-comp-placement-tab-hover-badge-beta-on-surface
white-on-orange-800 --pf-comp-placement-tab-badge-beta-on-surface
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Color on beta badge surface on hovered placement tab surface
--pf-comp-placement-tab-selected-badge-default-surface
blue-100 hsl(194.4, 53.19%, 81.57%)
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Default badge surface on selected placement tab surface
--pf-comp-placement-tab-selected-badge-default-on-surface
blue-800-on-blue-100 hsl(207.24, 81.72%, 36.47%)
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Color on default badge surface on selected placement tab surface
--pf-comp-placement-tab-selected-badge-primary-surface
red-700 --pf-comp-placement-tab-badge-primary-surface
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Primary badge surface on selected placement tab surface
--pf-comp-placement-tab-selected-badge-primary-on-surface
white-on-red-700 --pf-comp-placement-tab-badge-primary-on-surface
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Color on primary badge surface on selected placement tab surface
--pf-comp-placement-tab-selected-badge-beta-surface
orange-800 --pf-comp-placement-tab-badge-beta-surface
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Beta badge surface on selected placement tab surface
--pf-comp-placement-tab-selected-badge-beta-on-surface
white-on-orange-800 --pf-comp-placement-tab-badge-beta-on-surface
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Color on beta badge surface on selected placement tab surface

Popover

Popover

Name Default value Value type Description
--pf-comp-popover-surface
white --pf-sys-background
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Popover surface color
--pf-comp-popover-on-surface
gray-900-on-white --pf-sys-neutral-900-on-background
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Color on popover surface
--pf-comp-popover-subdued-on-surface
gray-700-on-white --pf-sys-neutral-700-on-background
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Subdued color on popover surface
--pf-comp-popover-border-color
gray-300-on-white --pf-sys-border-on-background
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Popover border color on background
--pf-comp-popover-box-shadow 0 2px 4px 0 hsla(0, 0%, 0%, 0.07) valid full box-shadow value Popover shadow on background
--pf-comp-popover-close-icon-on-surface
gray-400-on-white --pf-sys-icon-on-background
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Close icon color on popover surface
--pf-comp-popover-close-icon-hover-on-surface
gray-700-on-white --pf-sys-icon-hover-neutral-700-on-background
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Hovered close icon color on popover surface

Radio

Radios

Name Default value Value type Description
--pf-comp-radio-checked-indicator-surface
blue-800 --pf-comp-form-control-checked-indicator-surface
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Checked radio indicator surface color
--pf-comp-radio-checked-indicator-on-surface
white-on-blue-800 --pf-sys-form-control-indicator-active-on-surface
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Color on checked radio indicator surface
--pf-comp-radio-checked-disabled-indicator-surface --pf-comp-form-control-checked-disabled-indicator-surface color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Checked disabled radio indicator surface color
--pf-comp-radio-not-unchecked-hover-indicator-box-shadow --pf-comp-form-control-not-unchecked-hover-indicator-box-shadow valid full box-shadow value Disabled, checked, hovered radio inside border color on radio indicator surface

Range slider

Range slider

Range slider

Name Default value Value type Description
--pf-comp-range-slider-track-surface
gray-300-on-white --pf-sys-neutral-300-on-background
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Range slider track surface color
--pf-comp-range-slider-focus-track-surface rgba(13, 13, 13, 0.2) color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Focused range slider track surface color
--pf-comp-range-slider-thumb-surface
white --pf-sys-background
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Range slider thumb surface color
--pf-comp-range-slider-thumb-border-color
gray-CCCCCC #CCCCCC
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Range slider thumb border color on background
--pf-comp-range-slider-thumb-box-shadow 0 2px 4px 0 hsla(0, 0%, 0%, 0.07) valid full box-shadow value Range slider thumb shadow on background

Sidebar content

Sidebar content

Name Default value Value type Description
--pf-comp-sidebar-content-surface
white --pf-sys-background
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Sidebar content surface color
--pf-comp-sidebar-content-vertical-divider
gray-300-on-white --pf-sys-border-on-background
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Sidebar content vertical divider color. Separates sidebar content from main design area

Sidebar navigation

Sidebar navigation

Name Default value Value type Description
--pf-comp-sidebar-navigation-surface
white --pf-sys-background
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Sidebar navigation surface color
--pf-comp-sidebar-navigation-horizontal-divider
gray-300-on-white --pf-sys-border-on-background
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Sidebar navigation horizontal divider color
--pf-comp-sidebar-navigation-vertical-divider
gray-300-on-white --pf-sys-border-on-background
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Sidebar navigation vertical divider color
--pf-comp-sidebar-navigation-item-border-radius --pf-sys-border-radius-lg border radius, valid one, two, three, or four or values Sidebar navigation item border radius
--pf-comp-sidebar-navigation-item-surface
white --pf-sys-background
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Sidebar navigation item surface color
--pf-comp-sidebar-navigation-item-on-surface
gray-700-on-white --pf-sys-neutral-700-on-background
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Color on sidebar navigation item
--pf-comp-sidebar-navigation-item-hover-surface
gray-100 --pf-sys-neutral-surface-100
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Sidebar navigation hovered item surface color
--pf-comp-sidebar-navigation-item-hover-on-surface
gray-700-on-white --pf-sys-neutral-700-on-background
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Color on hovered sidebar navigation item
--pf-comp-sidebar-navigation-item-focus-surface
gray-100 --pf-sys-neutral-surface-100
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Sidebar navigation focused item surface color
--pf-comp-sidebar-navigation-item-focus-on-surface
gray-700-on-white --pf-sys-neutral-700-on-background
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation color on focused sidebar navigation item
--pf-comp-sidebar-navigation-item-selected-surface
gray-100 --pf-sys-neutral-surface-100
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Sidebar navigation selected item surface color
--pf-comp-sidebar-navigation-item-selected-on-surface
gray-900-on-white --pf-sys-neutral-900-on-background
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Color on selected sidebar navigation item

Tab

Primary tab

Secondary tab

Placement tabs

Designer mobile tabs

Name Default value Value type Description
--pf-comp-tab-container-nav-arrow-surface
white --pf-sys-background
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Tab container navigation arrow surface color
--pf-comp-tab-container-nav-arrow-on-surface
gray-400-on-white --pf-sys-icon-on-background
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Color on tab container navigation arrow surface
--pf-comp-tab-container-nav-arrow-hover-on-surface
gray-700-on-white --pf-sys-icon-hover-neutral-700-on-background
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Color on hovered tab container navigation arrow surface
--pf-comp-tab-on-surface
gray-700-on-white --pf-sys-neutral-700-on-background
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Tab surface color
--pf-comp-tab-border-color transparent color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Tab border color on background
--pf-comp-tab-active-on-surface
gray-900-on-white --pf-sys-neutral-900-on-background
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Active tab surface color
--pf-comp-tab-subtitle-on-surface
gray-700-on-white --pf-comp-tab-on-surface
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Subtitle color on tab surface
--pf-comp-tab-mobile-surface
white --pf-sys-background
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Mobile tab surface color
--pf-comp-tab-mobile-border-color
gray-300-on-white --pf-sys-border-on-background
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Mobile tab border color on background
--pf-comp-tab-mobile-active-surface
white --pf-comp-tab-mobile-surface
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Active mobile tab surface color
--pf-comp-tab-mobile-active-border-color
gray-300-on-white --pf-comp-tab-mobile-border-color
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Active mobile tab border color on background
--pf-comp-tab-mobile-active-box-shadow none valid full box-shadow value Active mobile tab shadow on background
--pf-comp-tab-primary-container-box-shadow inset 0 -1px 0px 0px --pf-comp-tab-primary-border-bottom-color valid full box-shadow value Bottom connector line color between primary tabs
--pf-comp-tab-primary-surface
gray-50 --pf-sys-neutral-surface-50
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Primary tab surface color
--pf-comp-tab-primary-border-color
gray-50-on-white --pf-comp-tab-primary-surface
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Primary tab border color on background
--pf-comp-tab-primary-border-bottom-color
gray-300-on-white --pf-sys-border-on-background
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Primary tab bottom border color on background
--pf-comp-tab-primary-active-surface
white --pf-sys-background
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Active primary tab surface color
--pf-comp-tab-primary-active-border-color
gray-300-on-white --pf-comp-tab-primary-border-bottom-color
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Active primary tab border color on background
--pf-comp-tab-primary-active-border-top-color
red-400-on-white --pf-sys-primary-400-on-background
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Active primary tab top border color on background (colorful accent)
--pf-comp-tab-primary-active-border-bottom-color
white --pf-comp-tab-primary-active-surface
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Active primary tab bottom border color on background
--pf-comp-tab-primary-subtitle-on-surface
gray-700-on-white --pf-comp-tab-subtitle-on-surface
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Primary tab subtitle color on surface
--pf-comp-tab-primary-subtitle-desktop-surface transparent color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Desktop primary tab with subtitle color on surface
--pf-comp-tab-primary-subtitle-desktop-border-color --pf-comp-tab-primary-subtitle-desktop-surface color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Desktop primary tab with subtitle border color on background
--pf-comp-tab-primary-subtitle-desktop-active-border-color --pf-comp-tab-primary-subtitle-desktop-surface color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Active desktop primary tab with subtitle border color on background
--pf-comp-tab-primary-subtitle-desktop-active-box-shadow inset 0 -3px 0 --pf-comp-tab-primary-active-border-top-color valid full box-shadow value Active desktop primary tab with subtitle bottom border color on background (colorful accent)
--pf-comp-tab-secondary-container-box-shadow inset 0 -1px 0px 0px --pf-sys-border-on-background valid full box-shadow value Secondary tab container bottom border color on background
--pf-comp-tab-secondary-active-box-shadow inset 0 -3px --pf-sys-neutral-900-on-background valid full box-shadow value Active secondary tab bottom border color on background
--pf-comp-tab-secondary-subtitle-on-surface
gray-700-on-white --pf-comp-tab-subtitle-on-surface
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Subtitle color on secondary tab surface
--pf-comp-tab-designer-mobile-surface
gray-50-on-white --pf-comp-tab-primary-surface
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Mobile designer tab surface color
--pf-comp-tab-designer-mobile-border-color --pf-comp-tab-border-color color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Mobile designer tab border color on background

Toggle switch

Toggle switch

Name Default value Value type Description
--pf-comp-toggle-switch-surface
gray-400 --pf-sys-neutral-surface-400
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Toggle switch surface color
--pf-comp-toggle-switch-border-color
gray-400-on-white --pf-sys-neutral-400-on-background
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Toggle switch border color on background
--pf-comp-toggle-switch-indicator-on-surface
white-on-blue-800 --pf-sys-form-control-indicator-active-on-surface
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Toggle switch indicator color on surface
--pf-comp-toggle-switch-hover-indicator-box-shadow 0 0 0 4px hsla(0, 0%, 0%, 0.16) valid full box-shadow value Hovered toggle switch indicator shadow on background
--pf-comp-toggle-switch-checked-indicator-surface
blue-800 --pf-comp-form-control-checked-indicator-surface
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Checked toggle switch indicator surface color
--pf-comp-toggle-switch-checked-indicator-on-surface
white-on-blue-800 --pf-sys-form-control-indicator-active-on-surface
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Indicator color on checked toggle switch surface
--pf-comp-toggle-switch-checked-indicator-border-color
blue-800-on-white --pf-comp-form-control-checked-indicator-surface
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Checked toggle switch border color on background
--pf-comp-toggle-switch-checked-hover-indicator-box-shadow 0 0 0 4px hsla(207.24, 81.72%, 36.47%, 0.16) valid full box-shadow value Checked hovered toggle switch indicator shadow on background
--pf-comp-toggle-switch-active-hover-indicator-box-shadow 0 0 0 8px hsla(0, 0%, 0%, 0.16) valid full box-shadow value Activated (pressed) hovered toggle switch indicator shadow on background
--pf-comp-toggle-switch-checked-active-hover-indicator-box-shadow 0 0 0 8px hsla(207.24, 81.72%, 36.47%, 0.16) valid full box-shadow value Checked activated (pressed) hovered toggle switch indicator shadow on background
--pf-comp-toggle-switch-disabled-surface
gray-300 --pf-sys-neutral-surface-300
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Disabled toggle switch surface color
--pf-comp-toggle-switch-disabled-border-color
gray-300-on-white --pf-sys-border-on-background
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Disabled toggle switch border color on background
--pf-comp-toggle-switch-disabled-indicator-on-surface
gray-400-on-gray-300 --pf-comp-toggle-switch-surface
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Disabled toggle switch indicator color on surface
--pf-comp-toggle-switch-disabled-checked-surface
blue-800 --pf-comp-form-control-checked-indicator-surface
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Disabled checked toggle switch surface color
--pf-comp-toggle-switch-disabled-checked-border-color
blue-800-on-white --pf-comp-toggle-switch-disabled-checked-surface
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Disabled checked toggle switch border color on background
--pf-comp-toggle-switch-disabled-hover-indicator-box-shadow --pf-comp-form-control-checked-disabled-indicator-surface valid full box-shadow value Disabled hovered toggle switch indicator shadow on background
--pf-comp-toggle-switch-disabled-checked-indicator-on-surface --pf-comp-form-control-checked-disabled-indicator-surface color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Disabled checked toggle switch indicator color on surface

Toolbar

Toolbar

Name Default value Value type Description
--pf-comp-toolbar-surface
gray-50 --pf-sys-neutral-surface-50
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Toolbar surface color
--pf-comp-toolbar-on-surface
gray-900-on-gray-50 --pf-sys-neutral-900-on-surface-50
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Color on toolbar
--pf-comp-toolbar-vertical-divider
gray-300-on-white --pf-sys-border-on-background
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Toolbar vertical divider color. Separates actions buttons from placement tabs

Tooltip

Tooltip

Name Default value Value type Description
--pf-comp-tooltip-surface
black hsl(0, 0%, 0%)
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Tooltip surface color
--pf-comp-tooltip-on-surface
white-on-black hsl(0, 0%, 100%)
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Color on tooltip surface
--pf-comp-tooltip-opacity 0.9 valid opacity value from 0.0 (invisible) to 1.0 (fully visible) Tooltip opacity

Variant area

Toolbar

Name Default value Value type Description
--pf-comp-variant-area-item-selected-border-color rgba(17, 100, 169, 0.6) color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Selected item border color
--pf-comp-variant-area-item-border-color
gray-300-on-white --pf-sys-neutral-300-on-background
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Item border color
--pf-comp-variant-area-item-hover-text-box-surface
gray-200 --pf-sys-neutral-surface-200
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Item text box color on hover
--pf-comp-variant-area-item-hover-text-box-on-surface
pf-sys-neutral-900-on-surface-200 --pf-sys-neutral-900-on-surface-200
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Selected item text color on hover
--pf-comp-variant-area-item-selected-text-box-surface
blue-50 hsl(195.48, 75.61%, 91.96%)
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Selected item textbox color
--pf-comp-variant-area-item-selected-text-box-on-surface
blue-800-on-blue-50 --pf-sys-action-button-selected-on-surface
color, valid RGB, RGBA, HSL, HSLA color values and CSS4 Hex notation Selected item text color

Change log

[1.9.1] - 2025-04-30

  • Added preselectedProductOptions option that allows to define which Product Options are going to be preselected when Embedded design maker opens. If Product has these Product Options available.

[1.9.0] - 2025-04-02

[1.8.3] - 2024-06-17

[1.8.2] - 2024-05-24

[1.8.1] - 2023-07-31

  • Added Mockup view section

[1.8.1] - 2023-07-31

  • Added Mockup view section

[1.8.0] - 2023-06-20

[1.7.5] - 2023-06-18

[1.7.4] - 2023-05-30

[1.7.2] - 2023-05-16

[1.7.1] - 2023-05-11

  • Added information about case where order is put on hold due to printfiles being generated.

[1.7.0] - 2023-05-10

[1.6.5] - 2023-05-09

  • Changed pf-comp-button-tertiary-border-color (border color change)

[1.6.4] - 2023-04-24

[1.6.3] - 2023-04-17

[1.6.2] - 2023-04-17

[1.6.1] - 2023-04-05

[1.5.0] - 2023-03-06

  • Added external_customer_id parameter to the /embedded-designer/nonces endpoint

[1.4.0] - 2023-03-01

[1.3.0] - 2023-02-10

  • Added styling options
  • [1.2.1] - 2023-02-06

  • Added has_color_group_inside_labels option to FeatureConfig

[1.2.0] - 2022-11-24

  • Updated sample order flow to mention order item creation from Product Templates.
  • Updated the initial expiration period of a nonce.
  • Documented getting a product template information by Product Template ID.

[1.1.6] - 2022-10-10

  • Added preselectedColors option that allows to define which Product colors are going to be preselected when Embedded design maker opens
  • Added preselectedSizes option that allows to define which Product sizes are going to be preselected when Embedded design maker opens
  • Added disabledColors option that allows to define which Product colors are going to be disabled for Embedded design maker
  • Added disabledSizes option that allows to define which Product sizes are going to be disabled for Embedded design maker
  • Added tabs.productTab.imageIcon styling option that allows to change Product tabs icon to a specific image
  • Added tabs.designTab.imageIcon styling option that allows to change Design tabs icon to a specific image
  • Added tabs.active.borderTop styling option
  • Added tabs.hover.borderTop styling option

[1.1.5] - 2022-10-06

  • Added technique_key, technique_display_name fields to PlacementType

[1.1.4] - 2022-09-27

  • Added embroidery_3d_puff option to FeatureConfig

[1.1.3] - 2022-09-21

[1.1.2] - 2022-07-27

  • featureConfig property is now optional - by default all features will be enabled
  • Added section "featureConfig" data structure
  • Small updates in the documentation

[1.1.1] - 2022-06-30

[1.1.0] - 2022-06-16

  • Added onDesignStatusUpdate init property for PFDesignMaker class

[1.0.2] - 2022-06-02

  • Added a sample EDM screenshot

[1.0.1] - 2022-06-02

  • Fixed Mockup Generator endpoints

[1.0.0] - 2022-05-17

  • Initial version of the Embedded Design Maker documentation