Skip to content

Commit

Permalink
feat: export public API for register own plugins
Browse files Browse the repository at this point in the history
  • Loading branch information
yarastqt committed Aug 23, 2020
1 parent 20adf41 commit d331790
Show file tree
Hide file tree
Showing 2 changed files with 23 additions and 8 deletions.
16 changes: 8 additions & 8 deletions src/core/build.ts
Original file line number Diff line number Diff line change
@@ -1,9 +1,9 @@
import './yaml-interop'
import StyleDictionaryApi from 'style-dictionary'
import cssColorFn from 'css-color-function'
import { resolve } from 'path'
import { readFileSync, writeFileSync } from 'fs-extra'

import { Api, InternalApi } from '../index'
import { createStyleDictionaryConfig } from './style-dictionary-config'
import { variablesWithPrefix } from './variable-with-prefix'
import { loadMappers } from './mappers'
Expand All @@ -17,7 +17,7 @@ import { replaceAliasToVariable } from './replace-alias-to-variable'

const context = new Map()

StyleDictionaryApi.registerFormat({
Api.registerFormat({
name: 'css/whitepaper',
formatter(dictionary, config) {
const defaultOptions = { useAliasVariables: false }
Expand All @@ -38,7 +38,7 @@ StyleDictionaryApi.registerFormat({
})

// NOTE: Override default css/variables format.
StyleDictionaryApi.registerFormat({
Api.registerFormat({
name: 'css/variables',
formatter(dictionary, config) {
const defaultOptions = { selector: ':root', useAliasVariables: false }
Expand All @@ -59,7 +59,7 @@ StyleDictionaryApi.registerFormat({
},
})

StyleDictionaryApi.registerTransform({
Api.registerTransform({
name: 'name/mapper',
type: 'name',
transformer: (prop) => {
Expand All @@ -68,7 +68,7 @@ StyleDictionaryApi.registerTransform({
},
})

StyleDictionaryApi.registerFilter({
Api.registerFilter({
name: 'whitepaper/color',
matcher: (prop) => {
if (isColor(prop.value)) {
Expand All @@ -79,7 +79,7 @@ StyleDictionaryApi.registerFilter({
},
})

StyleDictionaryApi.registerFilter({
Api.registerFilter({
name: 'whitepaper/root',
matcher: (prop) => {
if (!isColor(prop.value)) {
Expand All @@ -90,7 +90,7 @@ StyleDictionaryApi.registerFilter({
},
})

StyleDictionaryApi.registerAction({
Api.registerAction({
name: 'process-color',
do: (_, config) => {
for (const file of config.files) {
Expand Down Expand Up @@ -118,7 +118,7 @@ export async function build(config: Config): Promise<void> {
context.set('mapper', await loadMappers(theme.mappers))
context.set('whitepaper', enhanceWhitepaperConfig(theme.whitepaper, platform))

const StyleDictionary = StyleDictionaryApi.extend(
const StyleDictionary = InternalApi.extend(
createStyleDictionaryConfig({
platform: platform,
sources: sources,
Expand Down
15 changes: 15 additions & 0 deletions src/index.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
import StyleDictionary from 'style-dictionary'

export const Api = {
registerFormat: StyleDictionary.registerFormat.bind(StyleDictionary),
registerTransform: StyleDictionary.registerTransform.bind(StyleDictionary),
registerAction: StyleDictionary.registerAction.bind(StyleDictionary),
registerFilter: StyleDictionary.registerFilter.bind(StyleDictionary),
}

/**
* @internal
*/
export const InternalApi = {
extend: StyleDictionary.extend.bind(StyleDictionary),
}

0 comments on commit d331790

Please sign in to comment.