Configurator Core API Reference
Complete reference for the ConfiguratorCoreAPI class -- the primary interface for controlling the Epigraph Configurator web component programmatically
Accessing the API
The Core API is a singleton exposed on the web component element. Wait for the coreApi:ready event before calling any methods.
const configurator = document.getElementById("wcEpigraphConfigurator");
configurator.addEventListener("coreApi:ready", () => {
const coreApi = configurator.api.core;
// API is ready to use
});Properties
| Property | Type | Writable | Description |
|---|---|---|---|
isReady | boolean | No | Whether the Core API is initialized and ready for use |
categoryData | object | No | All category information for loaded products |
productData | object | No | Full product dataset used by the configurator |
lookData | object | No | All look/appearance data for loaded products |
hotspotsData | object | No | Full hotspot data used by the configurator |
sceneSettings | object | No | Scene settings provided via configurator inputs |
assetsData | object | No | Asset information for loaded products |
isMobile | boolean | No | Whether the current device is mobile |
isScreenPortrait | boolean | No | Whether the screen orientation is portrait |
hasSceneChanged | boolean | Yes | Whether the scene has changed since the last save |
EVENTS | object | No | Type-safe event name constants (see Events) |
Methods
Asset Resolution
getResolvedAssetUrl(url) → string
getResolvedAssetUrl(url) → stringResolves a relative asset path from the API to its full URL. Use this for all asset paths returned by productData (e.g. thumbnail paths).
| Parameter | Type | Description |
|---|---|---|
url | string | Relative asset path |
Scene Management
clearScene()
clearScene()Removes all items from the scene.
restartScene()
restartScene()Resets the scene to its initial state (shared configuration or empty).
getSceneItems() → object
getSceneItems() → objectReturns the current items in the scene, or undefined on error.
getSceneItemCount() → number
getSceneItemCount() → numberReturns the number of items currently in the scene, or undefined on error.
getSceneStructure() → object
getSceneStructure() → objectReturns the complete scene configuration as a JSON object. The returned structure can be passed to loadSceneFromConfiguration() to restore the scene.
getSceneStructureRaw() → object
getSceneStructureRaw() → objectReturns the raw scene structure without any processing.
getAllConnectionsInScene() → Map
getAllConnectionsInScene() → MapReturns all structure connections in a map for debugging purposes.
loadSceneFromConfiguration(structureToLoad)
loadSceneFromConfiguration(structureToLoad)Loads a scene from a JSON configuration object.
| Parameter | Type | Description |
|---|---|---|
structureToLoad | object | A scene structure object (as returned by getSceneStructure()) |
loadSceneFromConfigurationID(idToLoad, updateDefaultStructure)
loadSceneFromConfigurationID(idToLoad, updateDefaultStructure)Loads a scene from a configuration stored in Epigraph's database.
| Parameter | Type | Default | Description |
|---|---|---|---|
idToLoad | string | The configuration ID | |
updateDefaultStructure | boolean | true | Whether the loaded configuration becomes the default when restarting the scene |
getSceneAsGlbUrl() → string
getSceneAsGlbUrl() → stringReturns a blob URL containing the current scene as a GLB file. Results are cached until the scene changes.
getSceneAsUsdzUrl() → string
getSceneAsUsdzUrl() → stringReturns a blob URL containing the current scene as a USDZ file. Results are cached until the scene changes.
Spawning and Removing Items
spawnItemBySkuID(skuId, spawnGhostsFirst) → object
spawnItemBySkuID(skuId, spawnGhostsFirst) → objectSpawns an item into the scene. Only SKU IDs present in productData are valid.
| Parameter | Type | Default | Description |
|---|---|---|---|
skuId | string | A valid product SKU identifier | |
spawnGhostsFirst | boolean | false | If true, show ghost previews before placing |
Returns the spawned item's GUID.
spawnItemBySkuIDAndGhostIndex(skuId, ghostIndex) → object
spawnItemBySkuIDAndGhostIndex(skuId, ghostIndex) → objectSpawns an item using an already-spawned ghost at the given index.
| Parameter | Type | Default | Description |
|---|---|---|---|
skuId | string | A valid product SKU identifier | |
ghostIndex | number | 0 | The index of the ghost to use for placement |
Returns the spawned item's GUID, or null if the index is invalid.
forceSpawnItem(skuId, guid)
forceSpawnItem(skuId, guid)Spawns an item at the root level of the scene.
| Parameter | Type | Description |
|---|---|---|
skuId | string | Product identifier |
guid | string | Instance identifier |
removeItemByGUID(guid, force)
removeItemByGUID(guid, force)Removes the item matching the provided GUID from the scene.
| Parameter | Type | Default | Description |
|---|---|---|---|
guid | string | Item instance identifier | |
force | boolean | false | If true, skips root-swapping logic |
removeSelectedItem() → object
removeSelectedItem() → objectRemoves the currently selected item. Returns the deleted item data, or null if nothing is selected.
replaceItemBySkuId(guid, skuId) → object
replaceItemBySkuId(guid, skuId) → objectReplaces a specific item in the scene with a different SKU. Only works if all plugs are compatible between both SKUs.
| Parameter | Type | Description |
|---|---|---|
guid | string | GUID of the item to replace |
skuId | string | SKU ID of the replacement item |
replaceItemsBySkuId(guids, skuId) → boolean
replaceItemsBySkuId(guids, skuId) → booleanReplaces multiple items in the scene with the same SKU. Only works if all plugs are compatible between both SKUs.
| Parameter | Type | Description |
|---|---|---|
guids | string[] | Array of GUIDs of items to replace |
skuId | string | SKU ID of the replacement item |
Returns true if all replacements succeed. Throws an error if any replacement fails.
replaceAllItemsBySkuId(replaceSkuId, newSkuId) → boolean
replaceAllItemsBySkuId(replaceSkuId, newSkuId) → booleanReplaces all items of a particular SKU in the scene with a different SKU. Only works if all plugs are compatible between both SKUs.
| Parameter | Type | Description |
|---|---|---|
replaceSkuId | string | SKU ID of items to replace |
newSkuId | string | SKU ID of the replacement item |
Returns true if all replacements succeed.
getSpawningRequirementForSkuID(skuID) → array
getSpawningRequirementForSkuID(skuID) → arrayReturns an array of prerequisite SKU IDs required before the given SKU can be spawned.
| Parameter | Type | Description |
|---|---|---|
skuID | string | Product identifier |
getAllSkusThatCanReplaceGuid(guid) → array
getAllSkusThatCanReplaceGuid(guid) → arrayReturns an array of SKU IDs that can replace the item with the given GUID.
| Parameter | Type | Description |
|---|---|---|
guid | string | Item instance identifier |
getFittingSkuIds() → array
getFittingSkuIds() → arrayReturns SKU IDs that are compatible with the current scene configuration.
updateFittingSkuIds()
updateFittingSkuIds()Manually triggers a recalculation of fitting SKU IDs.
triggerItemRemoveModal(guid)
triggerItemRemoveModal(guid)Fires the EVENTS.SCENE.ItemRemoveModalTriggered event with information about the item and its dependencies, allowing you to show a custom removal confirmation dialog.
| Parameter | Type | Description |
|---|---|---|
guid | string | GUID of the item to remove |
Ghost Previews
spawnGhostsForSkuID(skuId, ignoreCollision, count)
spawnGhostsForSkuID(skuId, ignoreCollision, count)Displays ghost (semi-transparent) previews showing where an item can be placed.
| Parameter | Type | Default | Description |
|---|---|---|---|
skuId | string | Product identifier | |
ignoreCollision | boolean | false | Whether to ignore collision detection |
count | number | Number of ghost previews to show |
removeAllGhosts()
removeAllGhosts()Removes all ghost previews from the scene.
getActiveGhostData() → object
getActiveGhostData() → objectReturns data about the currently spawned ghosts, or null if no ghosts are active.
Drag and Drop
itemDragStart(skuId)
itemDragStart(skuId)Activates drag mode for the given SKU. Call this when a thumbnail drag enters the configurator canvas. Automatically spawns ghost previews.
| Parameter | Type | Description |
|---|---|---|
skuId | string | Product identifier being dragged |
itemDragEnd()
itemDragEnd()Deactivates drag mode. If the cursor is over a valid ghost position, the item is placed. Otherwise, ghosts are removed. Call this when the drag leaves the canvas or the user releases.
Selection and Interaction
selectItemWithGUID(guid)
selectItemWithGUID(guid)Programmatically selects an item in the scene for material customization or inspection.
| Parameter | Type | Description |
|---|---|---|
guid | string | Item instance identifier |
exitSelectedItem()
exitSelectedItem()Clears the current item selection.
getSelectedItemData() → object
getSelectedItemData() → objectReturns attribute data for the currently selected item, or null if nothing is selected.
rotateItemByGUID(guid)
rotateItemByGUID(guid)Rotates the item with the given GUID.
rotateSelectedItem() → object
rotateSelectedItem() → objectRotates the currently selected item. Returns the rotated item data, or null if nothing is selected.
canSelectedItemRotate() → boolean
canSelectedItemRotate() → booleanReturns whether the currently selected item supports rotation.
canSelectedItemBeRemoved() → boolean
canSelectedItemBeRemoved() → booleanReturns whether the currently selected item can be removed.
canSelectedItemDrag() → boolean
canSelectedItemDrag() → booleanReturns whether the currently selected item supports dragging.
doesGuidItemHaveAnAttachedDependency(guid) → boolean
doesGuidItemHaveAnAttachedDependency(guid) → booleanReturns whether the item with the given GUID has other items attached to it as dependencies.
| Parameter | Type | Description |
|---|---|---|
guid | string | Item instance identifier |
getGuidItemAttachedDependencies(guid) → object
getGuidItemAttachedDependencies(guid) → objectReturns data for all items attached as dependencies to the given GUID. Useful for showing a removal confirmation dialog.
| Parameter | Type | Description |
|---|---|---|
guid | string | Item instance identifier |
doesSelectedItemHasAttachedDependency() → boolean
doesSelectedItemHasAttachedDependency() → booleanReturns whether the currently selected item has attached dependencies.
isSelectedItemAnEndNode() → boolean
isSelectedItemAnEndNode() → booleanReturns whether the currently selected item is a terminal node (no outgoing plugs).
Materials and Variants
switchGlobalVariant(lookCategory, lookVariant)
switchGlobalVariant(lookCategory, lookVariant)Changes the active material variant for an entire look category across all items in the scene.
| Parameter | Type | Description |
|---|---|---|
lookCategory | string | Category name (e.g. "wood", "hardware") |
lookVariant | string | Variant name (e.g. "walnut", "black") |
switchGlobalGeometryVariant(geometryCategory, geometryVariant)
switchGlobalGeometryVariant(geometryCategory, geometryVariant)Changes the active geometry variant for an entire geometry category across all items in the scene.
| Parameter | Type | Description |
|---|---|---|
geometryCategory | string | Geometry category name |
geometryVariant | string | Geometry variant name |
overrideSelectedItemMaterial(colorID)
overrideSelectedItemMaterial(colorID)Applies a material override to the currently selected item.
| Parameter | Type | Description |
|---|---|---|
colorID | string | A valid variant identifier |
overrideItemMaterialByGuid(guid, colorID)
overrideItemMaterialByGuid(guid, colorID)Applies a material override to a specific item by its GUID.
| Parameter | Type | Description |
|---|---|---|
guid | string | Item instance identifier |
colorID | string | A valid variant identifier |
getSelectedItemColors() → array
getSelectedItemColors() → arrayReturns the available color/variant options for the currently selected item.
removeAllVariantOverrides()
removeAllVariantOverrides()Clears all material overrides from the scene, reverting to global variant defaults.
Context Menu
closeContextMenu()
closeContextMenu()Programmatically closes the active context menu and deselects the item.
Camera
getCurrentCameraDetails() → object
getCurrentCameraDetails() → objectReturns the complete camera state including position, rotation, and focus point.
moveCamera(viewPointPosition, focusPointPosition, resetToLastPosition)
moveCamera(viewPointPosition, focusPointPosition, resetToLastPosition)Moves the camera to a specific view point and focus point position.
| Parameter | Type | Default | Description |
|---|---|---|---|
viewPointPosition | array | Camera position as [x, y, z] | |
focusPointPosition | array | Focus point as [x, y, z] | |
resetToLastPosition | boolean | true | Whether to return to the previous camera position when exiting |
// Example: Move camera to look at the scene from above
coreApi.moveCamera([1, 2, 2], [0, 0, 0], false);setCameraFocusPointPosition(focusPointPosition)
setCameraFocusPointPosition(focusPointPosition)Manually sets the camera's focus point.
| Parameter | Type | Description |
|---|---|---|
focusPointPosition | object | A Vector3 object: { x, y, z } |
getCameraFocusPointPosition() → object
getCameraFocusPointPosition() → objectReturns the current focus point as a { x, y, z } object.
getCanvasSize() → object
getCanvasSize() → objectReturns the dimensions of the 3D canvas.
Environment
setEnvLightMap(newEnvMap)
setEnvLightMap(newEnvMap)Changes the scene's environment/lighting map.
| Parameter | Type | Description |
|---|---|---|
newEnvMap | string | URL of the new environment map |
getCurrentSceneEnvMap() → string
getCurrentSceneEnvMap() → stringReturns the URL of the currently active environment map.
Screenshots
getScreenshotForCurrentCamera(imgSize) → string
getScreenshotForCurrentCamera(imgSize) → stringCaptures the current view as a base64-encoded image URL.
| Parameter | Type | Default | Description |
|---|---|---|---|
imgSize | object | Canvas size | Image dimensions, e.g. { width: 128, height: 128 } |
getScreenshotForCamera(camSettings, imgSize) → string
getScreenshotForCamera(camSettings, imgSize) → stringCaptures a screenshot from a specific camera position.
| Parameter | Type | Default | Description |
|---|---|---|---|
camSettings | object | Camera settings, e.g. { position: Vector3, rotation: Vector3 } | |
imgSize | object | Canvas size | Image dimensions, e.g. { width: 128, height: 128 } |
getAllPredefinedScreenshots(imgSize) → array
getAllPredefinedScreenshots(imgSize) → arrayCaptures screenshots from all predefined camera positions configured in the scene settings. Returns an array of base64-encoded image URLs.
| Parameter | Type | Default | Description |
|---|---|---|---|
imgSize | object | Canvas size | Image dimensions, e.g. { width: 128, height: 128 } |
Dimensions and Hotspots
areDimensionsVisible() → boolean
areDimensionsVisible() → booleanReturns whether dimension overlays are currently shown.
getCurrentDimensions() → object
getCurrentDimensions() → objectReturns the bounding box information for the entire scene.
showDimensions()
showDimensions()Shows dimension overlays on the scene.
hideDimensions()
hideDimensions()Hides dimension overlays.
areHotspotsVisible() → boolean
areHotspotsVisible() → booleanReturns whether hotspots are currently visible.
areHotspotsTemporarilyVisible() → boolean
areHotspotsTemporarilyVisible() → booleanReturns the temporary visibility state of hotspots (distinct from the global setting).
showAllHotspots(temporary)
showAllHotspots(temporary)Shows all hotspots in the scene.
| Parameter | Type | Default | Description |
|---|---|---|---|
temporary | boolean | false | If true, visibility is temporary and separate from the global state |
hideAllHotspots(temporary)
hideAllHotspots(temporary)Hides all hotspots in the scene.
| Parameter | Type | Default | Description |
|---|---|---|---|
temporary | boolean | false | If true, hides temporarily without changing the global state |
getActiveHotspot() → object
getActiveHotspot() → objectReturns the currently active hotspot, if any.
clickHotspot(domID)
clickHotspot(domID)Programmatically activates a hotspot by its DOM ID.
| Parameter | Type | Description |
|---|---|---|
domID | string | DOM element ID of the hotspot |
exitHotspot()
exitHotspot()Deactivates the currently active hotspot.
AR and Sharing
viewInYourSpace()
viewInYourSpace()Launches an AR session, allowing users to place the configured product in their physical environment. Includes device capability detection.
shareScene() → string
shareScene() → stringGenerates and returns a shareable URL for the current configuration.
generateShareableLink(viewInYourSpaceLink) → string
generateShareableLink(viewInYourSpaceLink) → stringReturns a shareable URL with the configuration ID appended.
| Parameter | Type | Default | Description |
|---|---|---|---|
viewInYourSpaceLink | boolean | false | If true, adds AR launch parameters to the URL |
Cart and Commerce
enableCart()
enableCart()Activates shopping cart functionality.
disableCart()
disableCart()Deactivates shopping cart functionality.
getCartItemsAsync() → object
getCartItemsAsync() → objectReturns the current cart contents asynchronously.
checkoutAsync(forceCheckout) → object
checkoutAsync(forceCheckout) → objectClears the scene, fires EVENTS.SCENE.Cart_Checkout, and returns the cart items. If any items are out of stock and forceCheckout is false, fires EVENTS.SCENE.Cart_OutOfStock instead.
| Parameter | Type | Default | Description |
|---|---|---|---|
forceCheckout | boolean | false | If true, bypasses stock validation |
reloadCheckedoutScene()
reloadCheckedoutScene()Restores the scene and repopulates the cart with items from the last checkout.
setCartMessage(msg)
setCartMessage(msg)Displays a message in the cart (e.g. lead times, promotions). Fires EVENTS.SCENE.CartMessage_Update.
| Parameter | Type | Description |
|---|---|---|
msg | string | The message to display |
getCurrentItemsInReplaceableCategory() → object
getCurrentItemsInReplaceableCategory() → objectReturns the selected items within replaceable categories.
getCartItems() → object (deprecated)
getCartItems() → object (deprecated)Deprecated: Use
getCartItemsAsync()instead.
Returns the current cart contents synchronously.
checkout(forceCheckout) → object (deprecated)
checkout(forceCheckout) → object (deprecated)Deprecated: Use
checkoutAsync()instead.
Synchronous version of checkoutAsync().
Pricing and Inventory
getCurrentPricingInfo() → object
getCurrentPricingInfo() → objectReturns all products with their variants and current prices.
getCurrentCompareAtPricingInfo() → object
getCurrentCompareAtPricingInfo() → objectReturns all products with their variants and compare-at prices.
updatePricingForAllProducts(newPricingObj) → object
updatePricingForAllProducts(newPricingObj) → objectUpdates pricing for all products at once. Returns updated pricing info.
| Parameter | Type | Description |
|---|---|---|
newPricingObj | object | Pricing data keyed by SKU and variant |
updatePricingForAllProductsAsync(newPricingObj) → object
updatePricingForAllProductsAsync(newPricingObj) → objectAsync version of updatePricingForAllProducts().
updatePricingForProduct(skuId, materialVariant, newPrice) → object
updatePricingForProduct(skuId, materialVariant, newPrice) → objectUpdates the price for a single product-variant combination. Returns updated pricing info.
| Parameter | Type | Description |
|---|---|---|
skuId | string | Product identifier |
materialVariant | string | Variant name |
newPrice | string | New price value |
updatePricingForProductAsync(skuId, materialVariant, newPrice) → object
updatePricingForProductAsync(skuId, materialVariant, newPrice) → objectAsync version of updatePricingForProduct().
updateCompareAtPricingForAllProducts(newPricingObj) → object
updateCompareAtPricingForAllProducts(newPricingObj) → objectUpdates compare-at pricing for all products. Returns updated compare-at pricing info.
| Parameter | Type | Description |
|---|---|---|
newPricingObj | object | Compare-at pricing data keyed by SKU and variant |
updateCompareAtPricingForAllProductsAsync(newPricingObj) → object
updateCompareAtPricingForAllProductsAsync(newPricingObj) → objectAsync version of updateCompareAtPricingForAllProducts().
updateCompareAtPricingForProduct(skuId, materialVariant, newPrice) → object
updateCompareAtPricingForProduct(skuId, materialVariant, newPrice) → objectUpdates the compare-at price for a single product-variant combination.
| Parameter | Type | Description |
|---|---|---|
skuId | string | Product identifier |
materialVariant | string | Variant name |
newPrice | string | New compare-at price value |
updateCompareAtPricingForProductAsync(skuId, materialVariant, newPrice) → object
updateCompareAtPricingForProductAsync(skuId, materialVariant, newPrice) → objectAsync version of updateCompareAtPricingForProduct().
getInventoryInfo() → object
getInventoryInfo() → objectReturns all products with their inventory quantities.
updateInventoryForAllProducts(updatedInventoryObj) → object
updateInventoryForAllProducts(updatedInventoryObj) → objectUpdates inventory for all products. Returns updated inventory info.
| Parameter | Type | Description |
|---|---|---|
updatedInventoryObj | object | Inventory data keyed by SKU and variant |
Preconfiguration
getPreconfigurationModuleData() → object
getPreconfigurationModuleData() → objectReturns the data of the preconfiguration module present in the Build Tab, or undefined if preconfiguration doesn't exist.
Analytics
initializeAnalytics(analyticsIdentifiers, isDevEnvironment)
initializeAnalytics(analyticsIdentifiers, isDevEnvironment)Sets up Epigraph Analytics. Overrides any existing analytics instance.
| Parameter | Type | Default | Description |
|---|---|---|---|
analyticsIdentifiers | object | Object with gaMeasurementId and optionally epgExperienceID | |
isDevEnvironment | boolean | false | Whether running in development mode |
sendAnalyticsPageViewedEvent()
sendAnalyticsPageViewedEvent()Sends a "Page Viewed" event to all active analytics platforms.
sendAnalyticsEvent(eventData)
sendAnalyticsEvent(eventData)Sends a custom analytics event.
| Parameter | Type | Description |
|---|---|---|
eventData | AnalyticsEvent | Custom event object |
Utility
fireEvent(name, payload)
fireEvent(name, payload)Dispatches a custom event on the configurator web component element.
| Parameter | Type | Description |
|---|---|---|
name | string | Event name |
payload | * | Event data |
setEmptySceneText(text)
setEmptySceneText(text)Sets the text displayed when the scene is empty.
| Parameter | Type | Description |
|---|---|---|
text | string | Display text |
alert(options)
alert(options)Shows a non-blocking alert within the configurator.
| Parameter | Type | Default | Description |
|---|---|---|---|
options.alertMsg | string | Message content | |
options.alertTime | number | Display duration in milliseconds | |
options.alertType | string | Alert classification (e.g. "success") | |
options.alertLabel | string | Alert title | |
options.persistant | boolean | false | Whether the alert icon persists after timeout |
options.alertId | string | Unique identifier for the alert |
coreApi.alert({
alertMsg: "Configuration saved successfully.",
alertTime: 3000,
alertType: "success",
alertLabel: "Saved",
alertId: "configSaved",
});removePersistantAlert()
removePersistantAlert()Removes any persistent alert from the scene.
showInstructions()
showInstructions()Opens the instructions modal. Fires EVENTS.UI.Instructions_Show.
isSystemBusy() → boolean
isSystemBusy() → booleanReturns whether the system is currently processing a previous action. Useful for preventing duplicate operations.
getDeviceState() → object
getDeviceState() → objectReturns the current device state information.
isIosDevice() → boolean
isIosDevice() → booleanReturns whether the current device is running iOS.
Events
Lifecycle Events
These events are listened for directly on the web component element using string names:
| Event | Description |
|---|---|
coreApi:ready | The Core API has initialized successfully |
coreApi:failed | The Core API failed to initialize |
configurator.addEventListener("coreApi:ready", () => { /* ... */ });Preload Events
These string-based events track asset loading progress. Useful for building a custom loading indicator.
| Event | Description |
|---|---|
preload:begin | Asset preloading has started |
preload:update | Preloading progress update (carries a progress percentage, 0--100) |
preload:end | Asset preloading is complete |
Core Events (Type-Safe)
All other events are accessed via the EVENTS object on the Core API. This avoids string literals and lets your editor catch typos.
configurator.addEventListener(
coreApi.EVENTS.UI.ContextMenu_Show,
(event) => { /* ... */ }
);UI Events
| Accessor | Internal Value | Description |
|---|---|---|
EVENTS.UI.PreloadScreen_Show | preload:show | Loading screen should be shown |
EVENTS.UI.PreloadScreen_Hide | preload:hide | Loading screen should be hidden |
EVENTS.UI.ContextMenu_Show | contextMenu:show | An item was clicked; show the context menu |
EVENTS.UI.ContextMenu_Hide | contextMenu:hide | The context menu should be dismissed |
EVENTS.UI.ContextMenu_InfoBtnClicked | infoButtonClicked_ContextMenu | Info button in context menu was clicked |
EVENTS.UI.UtilityMenu_Show | utilityMenu:show | Utility menu should be shown |
EVENTS.UI.UtilityMenu_Hide | utilityMenu:hide | Utility menu should be hidden |
EVENTS.UI.ShareButton_Show | shareButton:show | Share button should be shown |
EVENTS.UI.ShareButton_Hide | shareButton:hide | Share button should be hidden |
EVENTS.UI.ViewInYourSpaceButton_Show | viewInYourSpace:show | AR button should be shown |
EVENTS.UI.ViewInYourSpaceButton_Hide | viewInYourSpace:hide | AR button should be hidden |
EVENTS.UI.ResetButton_Show | resetBtn:show | Reset button should be shown |
EVENTS.UI.ResetButton_Hide | resetBtn:hide | Reset button should be hidden |
EVENTS.UI.DimensionsButton_Show | dimensionsBtn:show | Dimensions button should be shown |
EVENTS.UI.DimensionsButton_Hide | dimensionsBtn:hide | Dimensions button should be hidden |
EVENTS.UI.Instructions_Show | instructions:show | Instructions modal should be shown |
EVENTS.UI.ReviewCart_Shown | review-cart-shown | The review cart panel was shown |
EVENTS.UI.ReviewCart_Hidden | review-cart-hidden | The review cart panel was hidden |
Scene Events
| Accessor | Internal Value | Description |
|---|---|---|
EVENTS.SCENE.Item_Added | item:added | An item was added to the scene |
EVENTS.SCENE.Item_Removed | item:removed | An item was removed from the scene |
EVENTS.SCENE.Items_Updated | items:updated | Item data was updated |
EVENTS.SCENE.FittingSkuIds_Updated | fittingSkuIds:updated | Compatible SKU IDs were recalculated |
EVENTS.SCENE.CartItems_Updated | cartItems:updated | Cart contents changed |
EVENTS.SCENE.Hotspot_Enter | hotspot:enter | User entered a hotspot |
EVENTS.SCENE.Hotspot_Exit | hotspot:exit | User exited a hotspot |
EVENTS.SCENE.SavedConfiguration_Loaded | loaded-saved-configuration | A saved configuration was loaded |
EVENTS.SCENE.MaterialOverrides_Exists | materialOverrideExists | A material override was applied |
EVENTS.SCENE.Cart_Checkout | cart:checkout | Checkout was initiated |
EVENTS.SCENE.Cart_OutOfStock | cart:outOfStock | Checkout blocked due to out-of-stock items |
EVENTS.SCENE.Cart_StatusUpdated | cart:statusUpdated | Cart status was updated |
EVENTS.SCENE.ReplaceableCategory_Updated | replaceableCategory:updated | A replaceable category was changed |
EVENTS.SCENE.GlobalVariant_Updated | globalVariant:updated | A global material variant was switched |
EVENTS.SCENE.CategoryData_Updated | categoryData:updated | Category data was updated |
EVENTS.SCENE.GlobalGeometryVariant_Updated | globalGeometryVariant:updated | A global geometry variant was switched |
EVENTS.SCENE.Ghost_Loaded | ghost:loaded | Ghost previews finished loading |
EVENTS.SCENE.Model_Loaded | model:loaded | A 3D model finished loading |
EVENTS.SCENE.Model_Removed | model:removed | A 3D model was removed |
EVENTS.SCENE.Scene_Cleared | scene:cleared | The scene was cleared |
EVENTS.SCENE.Inventory_Updated | inventory:updated | Inventory data was updated |
EVENTS.SCENE.DraggingOnDrop_CollisionDetected | draggingOnDrop:collisionDetected | A collision was detected during drag-and-drop |
EVENTS.SCENE.ItemRemoveModalTriggered | itemRemoveModal:triggered | Item removal confirmation was requested |
EVENTS.SCENE.ActionButton_Clicked | actionButton:clicked | An action button was clicked |
EVENTS.SCENE.CartMessage_Update | cartMessage:updated | Cart message was updated |
Configuration Events
| Accessor | Internal Value | Description |
|---|---|---|
EVENTS.CONFIGURATION.OnClickItem | onClickItem | An item was clicked in the scene |
EVENTS.CONFIGURATION.CameraDetails_Update | cameraDetails:Update | Camera details were updated |
Further Reading
- Building a Custom UI -- Headless mode setup and basic API usage
- Implementing Drag and Drop -- Drag-and-drop and custom context menus
- [Core Events](https://docs.myepigraph.com/docs/configurator-core-events
Updated about 1 month ago
