@bem-transform/ts-computed-name

1.0.0 • Public • Published

@bem-transform/ts-computed-name

Compute name of block and elem for BEM components.

Requirement

typescript >= 2.9.0

Installation

npm i -D @bem-transform/ts-computed-name

Configuration

This transform correctly work with ts-loader and awesome-typescript-loader.

const { computeClassBemName } = require('@bem-transform/ts-computed-name')

Need add this transform into getCustomTransformers in before section.

{
  test: /\.tsx?$/,
  use: [
    {
      loader: require.resolve('awesome-typescript-loader'),
      options: {
        getCustomTransformers: () => ({
          before: [
            computeClassBemName(options),
          ],
        }),
      },
    },
},

Options

Property Type Default Description
availableClassParent string[] ['Block', 'Elem'] Will add properties only to classes who have the parents from list.
availibleBemName boolean true Will add the properties of block and elem based on the location in the fs.
availibleDisplayName boolean true Will add the static property of displayName based on the location in the fs. (Recommended add only in development mode for debugging)
naming string 'origin' naming convention that uses at the project, should be origin or react.
overrideExistingProperties boolean true Overrides existing properties block, elem and displayName.

Package Sidebar

Install

npm i @bem-transform/ts-computed-name

Weekly Downloads

1

Version

1.0.0

License

MIT

Unpacked Size

8.23 kB

Total Files

3

Last publish

Collaborators

  • yarastqt