From 893be22f104d8596fa25109268dae7cdcbd52c9b Mon Sep 17 00:00:00 2001 From: Steven Turner Date: Tue, 29 May 2018 03:50:57 +1000 Subject: [PATCH] Added support for nesting --- src/generate.js | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) diff --git a/src/generate.js b/src/generate.js index bf0f9f4..589a725 100644 --- a/src/generate.js +++ b/src/generate.js @@ -89,6 +89,30 @@ export const defaultSelectorHandlers /* : SelectorHandler[] */ = [ const generated = generateSubtreeStyles(baseSelector); return [`${selector}{${generated.join('')}}`]; }, + + // Handle targeting all descendands i.e. .myForm_ae213c .my-descendant-class + function allDescendants(selector, baseSelector, generateSubtreeStyles) { + if (selector[0] !== ' ') { + return null; + } + return generateSubtreeStyles(`${baseSelector}${selector}`); + }, + + // Handle targeting direct child descendands i.e. .myForm_ae213c > .my-descendant-class + function allDescendants(selector, baseSelector, generateSubtreeStyles) { + if (selector[0] !== '>') { + return null; + } + return generateSubtreeStyles(`${baseSelector}${selector}`); + }, + + // Handle targeting baseSelector when it has specific class + function specificClass(selector, baseSelector, generateSubtreeStyles) { + if (selector[0] !== '.') { + return null; + } + return generateSubtreeStyles(`${baseSelector}${selector}`); + } ]; /**