Skip to content

Issue with TypeScript 2.9.1 #787

@manu-st

Description

@manu-st

Expected Behaviour

Code should include a require to run properly.

Actual Behaviour

require is missing in generated code

Steps to Reproduce the Problem

Not sure.

Location of a Minimal Repository that Demonstrates the Issue.

I have a file and when I'm compiling using TypeScript 2.9 I get the following:

var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
    var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
    if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
    else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
    return c > 3 && r && Object.defineProperty(target, key, r), r;
};
Object.defineProperty(exports, "__esModule", { value: true });
const graph_1 = __webpack_require__(50);
class CollectionGraphStore extends graph_1.GraphStore {
    constructor() {
        super(new ProcedureGraphOptions_1.ProcedureGraphOptions());
....

As you can see ProcedureGraphOptions_1 is not included.

If I generate the same code using TypeScript 2.8.3, then I get:


var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
    var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
    if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
    else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
    return c > 3 && r && Object.defineProperty(target, key, r), r;
};
Object.defineProperty(exports, "__esModule", { value: true });
const graph_1 = __webpack_require__(51);
const ProcedureGraphOptions_1 = __webpack_require__(122);
class CollectionGraphStore extends graph_1.GraphStore {
    constructor() {
        super(new ProcedureGraphOptions_1.ProcedureGraphOptions());
....

Unfortunately I'm at loss at why it is not generating the missing require. If I use tsc 2.9.1 from the command line to generate the JavaScript code, the code is properly generated:

"use strict";
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
    var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
    if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
    else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
    return c > 3 && r && Object.defineProperty(target, key, r), r;
};
Object.defineProperty(exports, "__esModule", { value: true });
const graph_1 = require("Controls/graph");
const ProcedureGraphOptions_1 = require("Experiment/procedures/ProcedureGraphOptions");
class CollectionGraphStore extends graph_1.GraphStore {
    constructor() {
        super(new ProcedureGraphOptions_1.ProcedureGraphOptions());
...

Any idea?

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions