All Projects → dropbox → ts-transform-react-jsx-source

dropbox / ts-transform-react-jsx-source

Licence: Apache-2.0 license
TypeScript AST Transformer that adds source file and line number to JSX elements

Programming Languages

typescript
32286 projects
shell
77523 projects

Projects that are alternatives of or similar to ts-transform-react-jsx-source

Ts Transform Import Path Rewrite
TS AST transformer to rewrite import path
Stars: ✭ 104 (+766.67%)
Mutual labels:  ast, transform
lowcode
React Lowcode - prototype, develop and maintain internal apps easier
Stars: ✭ 32 (+166.67%)
Mutual labels:  jsx, ast
Ts Transform Css Modules
Extract css class names from required css module files for TypeScript
Stars: ✭ 75 (+525%)
Mutual labels:  ast, transform
Meriyah
A 100% compliant, self-hosted javascript parser - https://meriyah.github.io/meriyah
Stars: ✭ 690 (+5650%)
Mutual labels:  jsx, ast
Prettier
Prettier is an opinionated code formatter.
Stars: ✭ 41,411 (+344991.67%)
Mutual labels:  jsx, ast
typescript-transform-jsx
Typescript transform jsx to string
Stars: ✭ 22 (+83.33%)
Mutual labels:  jsx, transform
Gulp Strip Debug
Strip console, alert, and debugger statements from JavaScript code
Stars: ✭ 242 (+1916.67%)
Mutual labels:  ast, debug
Jsx Ast Utils
AST utility module for statically analyzing JSX
Stars: ✭ 89 (+641.67%)
Mutual labels:  jsx, ast
Babel Plugin React Persist
Automatically useCallback() & useMemo(); memoize inline functions
Stars: ✭ 91 (+658.33%)
Mutual labels:  jsx, ast
Nativejsx
JSX to native DOM API transpilation. 💛 <div> ⟹ document.createElement('div')!
Stars: ✭ 145 (+1108.33%)
Mutual labels:  jsx, ast
ts-transform-react-constant-elements
A TypeScript AST Transformer that can speed up reconciliation and reduce garbage collection pressure by hoisting React elements to the highest possible scope.
Stars: ✭ 44 (+266.67%)
Mutual labels:  ast, transform
predeclared
Find definitions and declarations in Go source code that shadow predeclared identifiers
Stars: ✭ 26 (+116.67%)
Mutual labels:  ast
XYFSnowAnimation
A category of NSTimer for showing 3D Fluttered animation for iOS, which is used very simply. Lightweight CALayer animation, core animation, 3D transform, performance safety. iOS 3D三维飘落下雪落花动画,轻量级CALayer图层动画,核心动画,3D形变,性能安全,定时器NSTimer分类,直接使用,很简单
Stars: ✭ 15 (+25%)
Mutual labels:  transform
dd
This package will add the dd and dump helpers to your Phalcon application.
Stars: ✭ 17 (+41.67%)
Mutual labels:  debug
laravel-ray
Debug with Ray to fix problems faster in Laravel apps
Stars: ✭ 225 (+1775%)
Mutual labels:  debug
react-native-debug-console
A network and console debug component and modal for react native purely in JavaScript
Stars: ✭ 17 (+41.67%)
Mutual labels:  debug
flutter ast
Flutter and Dart AST Analyzer/Parser
Stars: ✭ 87 (+625%)
Mutual labels:  ast
android-sdk
AppSpector is a debugging service for mobile apps
Stars: ✭ 39 (+225%)
Mutual labels:  debug
gatsby-reactstrap
Adding Bootstrap 4 to an Gatsby React App and serve generated the static site with Express.js
Stars: ✭ 25 (+108.33%)
Mutual labels:  jsx
robotframework-debuglibrary
A debug library for RobotFramework, which can be used as an interactive shell(REPL) also.
Stars: ✭ 96 (+700%)
Mutual labels:  debug

ts-transform-react-jsx-source

build status

This is a TypeScript AST Transformer that adds source file and line number to JSX elements, similar to babel-plugin-transform-react-jsx-source.

Usage

Custom compiler

First of all, you need some level of familiarity with the TypeScript Compiler API.

compile.ts & tests should have examples of how this works.

ts-loader

You can add this in your webpack config ts-loader.

import {transform} from 'ts-transform-react-jsx-source';
// webpack config
...
    rules: [
      {
        test: /\.tsx?$/,
        use: [
          {
            loader: 'ts-loader',
            options: {
              getCustomTransformers() {
                return {
                  before: [transform()],
                };
              },
            },
          },
        ],
        exclude: /node_modules/,
      },

License

Copyright (c) 2018 Dropbox, Inc.

Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].