Git Product home page Git Product logo

broccoli-node-api's Introduction

broccoli-node-api

TypeScript types for the Broccoli Node Api

Exports

Node

type Node = TransformNode | SourceNode;

Node Documentation


InputNode

type InputNode = Node | string;

NodeCommon

interface NodeCommon<T extends NodeInfo> {
  __broccoliFeatures__: FeatureSet;
  __broccoliGetInfo__: (builderFeatures: FeatureSet) => T;
}

NodeMap

interface NodeMap = {
  transform: TransformNode;
  source: SourceNode;
};

TransformNode

interface TransformNode extends NodeCommon<TransformNodeInfo> {}

SourceNode

interface SourceNode extends NodeCommon<SourceNodeInfo> {}

FeatureSet

interface FeatureSet {
  [feature: string]: boolean;
}

NodeInfo

type NodeInfo = TransformNodeInfo | SourceNodeInfo;

NodeInfo Documentation


NodeType

type NodeType = "transform" | "source";

NodeInfoMap

interface NodeInfoMap = {
  transform: TransformNodeInfo;
  source: SourceNodeInfo;
};

NodeInfoCommon

interface NodeInfoCommon<T extends NodeType> {
  nodeType: T;
  name: string;
  annotation: string | null | undefined;
  instantiationStack: string;
}

TransformNodeInfo

interface TransformNodeInfo extends NodeInfoCommon<"transform"> {
  inputNodes: Node[];
  setup(
    features: FeatureSet,
    options: { inputPaths: string[]; outputPath: string; cachePath: string }
  ): void;
  getCallbackObject(): CallbackObject;
  persistentOutput: boolean;
  needsCache: boolean;
  volatile: boolean;
  trackInputChanges: boolean;
}

TransformNodeInfo Documentation


CallbackObject

interface CallbackObject {
  build(buildChangeObject?: BuildChangeObject): Promise<void> | void;
}

BuildChangeObject

interface BuildChangeObject {
  changedNodes: boolean[];
}

SourceNodeInfo

interface SourceNodeInfo extends NodeInfoCommon<"source"> {
  sourceDirectory: string;
  watched: boolean;
}

SourceNodeInfo Documentation

broccoli-node-api's People

Contributors

krisselden avatar stefanpenner avatar thoov avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.