Back
diff --git a/src/config/component-config.js b/src/config/component-config.js
index f705bca638..eeb27648d9 100644
--- a/src/config/component-config.js
+++ b/src/config/component-config.js
@@ -17,6 +17,7 @@ export function ComponentConfig(componentCssName) {
static classes() {
Config.classProperties || (Config.classProperties = [])
Config.classProperties.push.apply(Config.classProperties, arguments)
+ return Config
}
static delegate(delegateName) {
let self = {
@@ -27,6 +28,13 @@ export function ComponentConfig(componentCssName) {
}
return self
}
+ static platform(name, Class) {
+ Config.platformFns = Config.platformFns || []
+ if (name === platformName) {
+ Config.platformFns.unshift(Class)
+ }
+ return Config
+ }
static addCase(delegateName, condition, DelegateConstructor) {
Config.registry || (Config.registry = {})
var array = (Config.registry[delegateName] || (Config.registry[delegateName] = []))
@@ -53,6 +61,9 @@ export function ComponentConfig(componentCssName) {
let propertyValue = instance[Config.classProperties[i]]
instance.domElement.classList.add(`${componentCssName}-${propertyValue}`)
}
+ for (let i = 0; i < (Config.platformFns || []).length; i++) {
+ new Config.platformFns[i](instance)
+ }
return {
getDelegate(delegateName) {
let registry = Config.registry && Config.registry[delegateName] || []