• 
      

    Set up the initial build infrastructure for Ink.

    Review Request #13562 — Created Feb. 20, 2024 and submitted

    Information

    Ink
    master

    Reviewers

    Ink is built as a combination of LessCSS and TypeScript, providing
    component styles, implementations, and themes.

    Upcoming changes will begin to set up more of the infrastructure for
    building and testing Ink, and begin implementing components. To get
    started, this change sets up the initial build infrastructure to support
    that.

    We're using Rollup, Babel, and TypeScript to manage all the JavaScript.
    This approach is similar to what we uses in Spina 3. We provide exports
    for ESM modules, CommonJS modules, and UMD modules, with a top-level
    Ink namespace made available for ESM and UMD.

    Babel takes care of transpiling the TypeScript, and TypeScript is set up
    to do the type checking.

    We use ESLint with our standard Beanbag rules to keep code consistent.

    Initial stubs for the LessCSS and TypeScript modules are all provided.
    They're currently essentially blank, and will be populated in upcoming
    changes.

    By itself, this change doesn't do much. It build, but will fail to
    copy to lib, since relevant directories don't yet exist. However,
    this has been tested with in-progress changes.

    Summary ID
    Set up the initial build infrastructure for Ink.
    Ink is built as a combination of LessCSS and TypeScript, providing component styles, implementations, and themes. Upcoming changes will begin to set up more of the infrastructure for building and testing Ink, and begin implementing components. To get started, this change sets up the initial build infrastructure to support that. We're using Rollup, Babel, and TypeScript to manage all the JavaScript. This approach is similar to what we uses in Spina 3. We provide exports for ESM modules, CommonJS modules, and UMD modules, with a top-level `Ink` namespace made available for ESM and UMD. Babel takes care of transpiling the TypeScript, and TypeScript is set up to do the type checking. We use ESLint with our standard Beanbag rules to keep code consistent. Initial stubs for the LessCSS and TypeScript modules are all provided. They're currently essentially blank, and will be populated in upcoming changes.
    ac16a5a13478b7fac82a5a0b604b4ea9aeebeb43
    chipx86
    david
    1. Ship It!
    2. 
        
    maubin
    1. Ship It!
    2. 
        
    chipx86
    Review request changed
    Status:
    Completed