🚨 Active Supply Chain Attack:node-ipc Package Compromised.Learn More
Socket
Book a DemoSign in
Socket

rtl-css-transform-webpack-plugin

Package Overview
Dependencies
Maintainers
1
Versions
7
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

rtl-css-transform-webpack-plugin

Webpack plugin for transforming CSS from LTR to RTL.

latest
Source
npmnpm
Version
1.0.6
Version published
Weekly downloads
221
24.16%
Maintainers
1
Weekly downloads
 
Created
Source

RTL CSS Transform Webpack Plugin 💎

npm version Dependency Status Build Status

Webpack plugin that implements RTLCSS framework for transforming Left-To-Right (LTR) Cascading Style Sheets (CSS) to Right-To-Left (RTL).

Before you should use a CSS extraction plugin. For Webpack v4 we use mini-css-extract-plugin to extract CSS from JS.

rtl-css-transform-webpack-plugin creates RTL CSS file per LTR CSS file:

style.css

.example {
   direction: ltr;
   margin: 0;
   padding: 1em 2em .5em 1em;
   background-color: #353639;
   font-family: "Droid Sans", sans-serif/*rtl:prepend:"Droid Arabic Kufi",*/;
   font-size: 16px/*rtl:14px*/;
}

style.rtl.css

.example {
   direction: rtl;
   margin: 0;
   padding: 1em 1em .5em 2em;
   background-color: #353639;
   font-family: "Droid Arabic Kufi","Droid Sans", sans-serif;
   font-size: 14px;
}

Features 😛

  • Full RTLCSS options, plugins & hooks support
  • CSS modules & Code splitting compatible
  • Source map for debugging
  • Support Webpack v4

Install

npm install rtl-css-transform-webpack-plugin --save-dev

Usage

const MiniCssExtractPlugin = require("mini-css-extract-plugin");
const RtlCssPlugin = require("rtl-css-transform-webpack-plugin");

module.exports = {
    entry: path.resolve(__dirname, "src", "index.js"),
    output: {
        path: path.resolve(__dirname, "dist"),
        filename: "[name].js",
        chunkFilename: "[name].js" // only for code splitting
    },
    plugins: [
        new MiniCssExtractPlugin(),
        new RtlCssPlugin()
    ],
    module: {
        rules: [
            {
                test: /\.css$/,
                use: [
                    MiniCssExtractPlugin.loader,
                    "css-loader"
                ]
            }
        ]
    }
}

Filename

This option determines the name of each output bundle.

The default file name is [name].rtl.css.

See webpack output filename for more details.

new RtlCssPlugin({
    filename: "rtl/[chunkhash].css"
})

Sourcemap

Produces inline source map. Disabled by default.

Source mapping can be enabled via sourcemap option.

new RtlCssPlugin({
    sourcemap: true
})

Alternatively it can be enabled using webpack devtool option.

webpack --devtool source-map

Minimize

Using built-in webpack optimization via production option.

webpack -p

Alternatively see mini-css-extract-plugin optimization recommendation.

RTLCSS options

RTLCSS usage can be customized using object config.

Options are same as RTLCSS options.
Plugins are same as RTLCSS plugins.
Hooks are same as RTLCSS hooks.

new RtlCssPlugin({
    config: {
        options: {},
        plugins: [],
        hooks: {}
    }
})

💐 Special thanks to @MohammadYounes for RTLCSS.

Keywords

rtl

FAQs

Package last updated on 20 Jul 2018

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts