truffle
Version:
Truffle - Simple development framework for Ethereum
1,127 lines (1,047 loc) • 66.8 kB
JavaScript
#!/usr/bin/env node
exports.id = 2954;
exports.ids = [2954];
exports.modules = {
/***/ 22954:
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
module.exports = async options => {
const TruffleError = __webpack_require__(73321);
const { Plugins } = __webpack_require__(42113);
const { getConfig, constructRecipes } = __webpack_require__(61914);
const { preserve, ConsoleReporter } = __webpack_require__(63370);
const semver = __webpack_require__(81249);
if (!semver.satisfies(process.version, ">=12")) {
throw new TruffleError(
`The current version of Node (${process.version}) does not support \`truffle preserve\`, please update to Node >=12`
);
}
const config = getConfig(options);
const environments = config.environments || {};
if (config.environment && !(config.environment in environments)) {
throw new TruffleError(
`Unknown environment: ${config.environment}. Check your truffle-config.js?`
);
}
const plugins = Plugins.listAllRecipes(config);
const environment = environments[config.environment || "development"];
const recipes = constructRecipes(plugins, environment);
// check for tag in options (instead of config, for maybe extra safety)
const recipePlugin = plugins.find(plugin => plugin.tag in options);
if (!recipePlugin) {
throw new TruffleError("No (valid) recipe specified");
}
const [recipe] = constructRecipes([recipePlugin], environment);
if (config._.length === 0) {
throw new TruffleError("No preserve target specified");
}
for (const path of config._) {
config.logger.log();
const message = `Preserving target: ${path}`;
config.logger.log(message);
config.logger.log("=".repeat(message.length));
const reporter = new ConsoleReporter({ console: config.logger });
// The specified path and the truffle config are passed as initial inputs
// that can be used by any recipe.
const inputs = { path, config };
await reporter.report(
preserve({
recipes,
request: { recipe, inputs }
})
);
config.logger.log();
}
};
/***/ }),
/***/ 96606:
/***/ (function(__unused_webpack_module, exports, __webpack_require__) {
"use strict";
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
if (k2 === undefined) k2 = k;
var desc = Object.getOwnPropertyDescriptor(m, k);
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
desc = { enumerable: true, get: function() { return m[k]; } };
}
Object.defineProperty(o, k2, desc);
}) : (function(o, m, k, k2) {
if (k2 === undefined) k2 = k;
o[k2] = m[k];
}));
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
Object.defineProperty(o, "default", { enumerable: true, value: v });
}) : function(o, v) {
o["default"] = v;
});
var __importStar = (this && this.__importStar) || function (mod) {
if (mod && mod.__esModule) return mod;
var result = {};
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
__setModuleDefault(result, mod);
return result;
};
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
return new (P || (P = Promise))(function (resolve, reject) {
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
step((generator = generator.apply(thisArg, _arguments || [])).next());
});
};
var __asyncValues = (this && this.__asyncValues) || function (o) {
if (!Symbol.asyncIterator) throw new TypeError("Symbol.asyncIterator is not defined.");
var m = o[Symbol.asyncIterator], i;
return m ? m.call(o) : (o = typeof __values === "function" ? __values(o) : o[Symbol.iterator](), i = {}, verb("next"), verb("throw"), verb("return"), i[Symbol.asyncIterator] = function () { return this; }, i);
function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }
function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }
};
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", ({ value: true }));
exports.ConsoleReporter = void 0;
const chalk_1 = __importDefault(__webpack_require__(51579));
const spinners_1 = __webpack_require__(92189);
const Control = __importStar(__webpack_require__(62523));
class ConsoleReporter {
constructor(options) {
this.spinners = {};
this.console = options.console;
}
report(events) {
var _a, events_1, events_1_1;
var _b, e_1, _c, _d;
return __awaiter(this, void 0, void 0, function* () {
try {
for (_a = true, events_1 = __asyncValues(events); events_1_1 = yield events_1.next(), _b = events_1_1.done, !_b;) {
_d = events_1_1.value;
_a = false;
try {
const event = _d;
this[event.type].bind(this)(event);
}
finally {
_a = true;
}
}
}
catch (e_1_1) { e_1 = { error: e_1_1 }; }
finally {
try {
if (!_a && !_b && (_c = events_1.return)) yield _c.call(events_1);
}
finally { if (e_1) throw e_1.error; }
}
});
}
/*
* Error events
*/
fail(event) {
const { error } = event;
const { key } = eventProperties(event);
// get current text
const { text, indent } = this.spinners[key];
const errorMessage = error.message
? `Error: ${error.message}`
: error.toString();
const options = error
? {
text: `${text}\n${" ".repeat(indent)}${chalk_1.default.red(errorMessage)}`,
textColor: "white"
}
: {
textColor: "white"
};
this.spinners[key].fail(options);
}
abort(event) {
const { key } = eventProperties(event);
this.spinners[key].fail({ textColor: "white" });
}
stop(event) {
const { key } = eventProperties(event);
this.spinners[key].remove();
delete this.spinners[key];
}
/*
* Step events
*/
begin(event) {
this.console.log();
const { key, indent } = eventProperties(event);
if (this.spinners[key]) {
this.spinners[key].stop();
this.spinners[key].remove();
}
this.spinners[key] = new spinners_1.Spinner(key, {
text: "",
indent: indent
});
}
succeed(event) {
const { message } = event;
const { key } = eventProperties(event);
const options = {
text: message,
textColor: "white"
};
this.spinners[key].succeed(options);
}
step(event) {
const { key, indent } = eventProperties(event);
const { message } = event;
if (this.spinners[key]) {
this.spinners[key].text = message;
this.spinners[key].indent = indent;
}
else {
this.spinners[key] = new spinners_1.Spinner(key, {
text: message,
indent
});
}
}
/*
* Value resolution events
*/
declare(event) {
const { key, indent } = eventProperties(event);
const { message } = event;
if (this.spinners[key]) {
this.spinners[key].stop();
this.spinners[key].remove();
}
this.spinners[key] = new spinners_1.Spinner(key, {
text: message,
textColor: "cyan",
indent
});
}
resolve(event) {
const { payload } = event;
const { key } = eventProperties(event);
const { text } = this.spinners[key];
const [name] = text.split(":");
const options = payload ? { text: `${name}: ${payload}` } : { text };
this.spinners[key].stop(Object.assign(Object.assign({}, options), { status: "stopped" }));
}
update(event) {
const { payload, message } = event;
const { key } = eventProperties(event);
const { text } = this.spinners[key];
if (!payload && !message)
return;
const [name] = text.split(":");
// Update the value resolution with a payload or the step with message
this.spinners[key].text = message ? message : `${name}: ${payload}`;
}
}
exports.ConsoleReporter = ConsoleReporter;
const eventProperties = (event) => ({
key: Control.Scopes.toKey(event.scope),
indent: event.scope.length * 2
});
//# sourceMappingURL=ConsoleReporter.js.map
/***/ }),
/***/ 55830:
/***/ (function(__unused_webpack_module, exports, __webpack_require__) {
"use strict";
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
return new (P || (P = Promise))(function (resolve, reject) {
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
step((generator = generator.apply(thisArg, _arguments || [])).next());
});
};
var __asyncValues = (this && this.__asyncValues) || function (o) {
if (!Symbol.asyncIterator) throw new TypeError("Symbol.asyncIterator is not defined.");
var m = o[Symbol.asyncIterator], i;
return m ? m.call(o) : (o = typeof __values === "function" ? __values(o) : o[Symbol.iterator](), i = {}, verb("next"), verb("throw"), verb("return"), i[Symbol.asyncIterator] = function () { return this; }, i);
function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }
function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }
};
var __await = (this && this.__await) || function (v) { return this instanceof __await ? (this.v = v, this) : new __await(v); }
var __asyncDelegator = (this && this.__asyncDelegator) || function (o) {
var i, p;
return i = {}, verb("next"), verb("throw", function (e) { throw e; }), verb("return"), i[Symbol.iterator] = function () { return this; }, i;
function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === "return" } : f ? f(v) : v; } : f; }
};
var __asyncGenerator = (this && this.__asyncGenerator) || function (thisArg, _arguments, generator) {
if (!Symbol.asyncIterator) throw new TypeError("Symbol.asyncIterator is not defined.");
var g = generator.apply(thisArg, _arguments || []), i, q = [];
return i = {}, verb("next"), verb("throw"), verb("return"), i[Symbol.asyncIterator] = function () { return this; }, i;
function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }
function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }
function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }
function fulfill(value) { resume("next", value); }
function reject(value) { resume("throw", value); }
function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }
};
Object.defineProperty(exports, "__esModule", ({ value: true }));
exports.run = exports.control = void 0;
const controllers_1 = __webpack_require__(42914);
const types_1 = __webpack_require__(76816);
function control(controlOptions, methodOptions) {
return __asyncGenerator(this, arguments, function* control_1() {
const { name, method } = controlOptions;
const scope = [name || ""];
const controller = new controllers_1.StepsController({ scope });
const controls = {
update: controller.update,
declare: controller.declare,
step: controller.step
};
yield __await(yield* __asyncDelegator(__asyncValues(controller.begin())));
try {
const completeMethodOptions = Object.assign(Object.assign({}, methodOptions), { controls });
const result = yield __await(yield* __asyncDelegator(__asyncValues(method(completeMethodOptions))));
yield __await(yield* __asyncDelegator(__asyncValues(controller.succeed({ result }))));
// check for error state (in case of cascaded failures)
if (controller.state !== types_1.State.Done) {
return yield __await(void 0);
}
return yield __await(result);
}
catch (error) {
yield __await(yield* __asyncDelegator(__asyncValues(controller.fail({ error }))));
return yield __await(void 0);
}
});
}
exports.control = control;
const run = (controlOptions, methodOptions) => __awaiter(void 0, void 0, void 0, function* () {
const generator = control(controlOptions, methodOptions);
while (true) {
const { done, value } = yield generator.next();
if (done) {
return value;
}
}
});
exports.run = run;
//# sourceMappingURL=control.js.map
/***/ }),
/***/ 80354:
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
"use strict";
Object.defineProperty(exports, "__esModule", ({ value: true }));
exports.BaseController = void 0;
const types_1 = __webpack_require__(76816);
class BaseController {
get state() {
return this._state;
}
constructor(options) {
const { scope, state } = options;
this.scope = scope;
this._state = state !== null && state !== void 0 ? state : types_1.State.Pending;
}
emit(event) {
return Object.assign(Object.assign({}, Object.entries(event)
.filter(([_, value]) => value !== undefined)
.map(([key, value]) => ({ [key]: value }))
.reduce((a, b) => (Object.assign(Object.assign({}, a), b)))), { scope: this.scope });
}
}
exports.BaseController = BaseController;
//# sourceMappingURL=BaseController.js.map
/***/ }),
/***/ 55601:
/***/ (function(__unused_webpack_module, exports, __webpack_require__) {
"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;
};
var __rest = (this && this.__rest) || function (s, e) {
var t = {};
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
t[p] = s[p];
if (s != null && typeof Object.getOwnPropertySymbols === "function")
for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
t[p[i]] = s[p[i]];
}
return t;
};
var __asyncValues = (this && this.__asyncValues) || function (o) {
if (!Symbol.asyncIterator) throw new TypeError("Symbol.asyncIterator is not defined.");
var m = o[Symbol.asyncIterator], i;
return m ? m.call(o) : (o = typeof __values === "function" ? __values(o) : o[Symbol.iterator](), i = {}, verb("next"), verb("throw"), verb("return"), i[Symbol.asyncIterator] = function () { return this; }, i);
function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }
function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }
};
var __await = (this && this.__await) || function (v) { return this instanceof __await ? (this.v = v, this) : new __await(v); }
var __asyncDelegator = (this && this.__asyncDelegator) || function (o) {
var i, p;
return i = {}, verb("next"), verb("throw", function (e) { throw e; }), verb("return"), i[Symbol.iterator] = function () { return this; }, i;
function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === "return" } : f ? f(v) : v; } : f; }
};
var __asyncGenerator = (this && this.__asyncGenerator) || function (thisArg, _arguments, generator) {
if (!Symbol.asyncIterator) throw new TypeError("Symbol.asyncIterator is not defined.");
var g = generator.apply(thisArg, _arguments || []), i, q = [];
return i = {}, verb("next"), verb("throw"), verb("return"), i[Symbol.asyncIterator] = function () { return this; }, i;
function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }
function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }
function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }
function fulfill(value) { resume("next", value); }
function reject(value) { resume("throw", value); }
function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }
};
Object.defineProperty(exports, "__esModule", ({ value: true }));
exports.ErrorController = void 0;
const types_1 = __webpack_require__(76816);
const BaseController_1 = __webpack_require__(80354);
const decorators_1 = __webpack_require__(8225);
class ErrorController extends BaseController_1.BaseController {
constructor(options) {
const { parent } = options, superOptions = __rest(options, ["parent"]);
super(superOptions);
this.children = [];
if (parent) {
this.parent = parent;
}
// so we can pass these around as functions
this.fail = this.fail.bind(this);
this.abort = this.abort.bind(this);
this.stop = this.stop.bind(this);
}
fail({ error, cascade = true } = {}) {
return __asyncGenerator(this, arguments, function* fail_1() {
// stop all children
for (const child of this.children) {
yield __await(yield* __asyncDelegator(__asyncValues(child.stop())));
}
yield yield __await(this.emit({
type: "fail",
error
}));
this._state = types_1.State.Error;
// propagate to parent
if (this.parent && cascade) {
yield __await(yield* __asyncDelegator(__asyncValues(this.parent.abort({ cascade }))));
}
});
}
abort({ cascade = true } = {}) {
return __asyncGenerator(this, arguments, function* abort_1() {
// stop all children
for (const child of this.children) {
yield __await(yield* __asyncDelegator(__asyncValues(child.stop())));
}
yield yield __await(this.emit({
type: "abort"
}));
this._state = types_1.State.Error;
// propagate to parent
if (this.parent && cascade) {
yield __await(yield* __asyncDelegator(__asyncValues(this.parent.abort({ cascade }))));
}
});
}
stop({} = {}) {
return __asyncGenerator(this, arguments, function* stop_1() {
// stop all children
for (const child of this.children) {
yield __await(yield* __asyncDelegator(__asyncValues(child.stop())));
}
yield yield __await(this.emit({
type: "stop"
}));
});
}
}
__decorate([
(0, decorators_1.validStates)([types_1.State.Active])
], ErrorController.prototype, "fail", null);
__decorate([
(0, decorators_1.validStates)([types_1.State.Active])
], ErrorController.prototype, "abort", null);
__decorate([
(0, decorators_1.validStates)([types_1.State.Active]),
(0, decorators_1.transitionToState)(types_1.State.Error)
], ErrorController.prototype, "stop", null);
exports.ErrorController = ErrorController;
//# sourceMappingURL=ErrorController.js.map
/***/ }),
/***/ 68791:
/***/ (function(__unused_webpack_module, exports, __webpack_require__) {
"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;
};
var __rest = (this && this.__rest) || function (s, e) {
var t = {};
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
t[p] = s[p];
if (s != null && typeof Object.getOwnPropertySymbols === "function")
for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
t[p[i]] = s[p[i]];
}
return t;
};
var __await = (this && this.__await) || function (v) { return this instanceof __await ? (this.v = v, this) : new __await(v); }
var __asyncGenerator = (this && this.__asyncGenerator) || function (thisArg, _arguments, generator) {
if (!Symbol.asyncIterator) throw new TypeError("Symbol.asyncIterator is not defined.");
var g = generator.apply(thisArg, _arguments || []), i, q = [];
return i = {}, verb("next"), verb("throw"), verb("return"), i[Symbol.asyncIterator] = function () { return this; }, i;
function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }
function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }
function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }
function fulfill(value) { resume("next", value); }
function reject(value) { resume("throw", value); }
function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }
};
Object.defineProperty(exports, "__esModule", ({ value: true }));
exports.StepsController = void 0;
const ErrorController_1 = __webpack_require__(55601);
const ValueResolutionController_1 = __webpack_require__(79313);
const types_1 = __webpack_require__(76816);
const decorators_1 = __webpack_require__(8225);
class StepsController extends ErrorController_1.ErrorController {
constructor(options) {
const superOptions = __rest(options, []);
super(superOptions);
// so we can pass these around as functions
this.begin = this.begin.bind(this);
this.succeed = this.succeed.bind(this);
this.update = this.update.bind(this);
this.declare = this.declare.bind(this);
this.step = this.step.bind(this);
}
begin() {
return __asyncGenerator(this, arguments, function* begin_1() {
yield yield __await(this.emit({
type: "begin"
}));
});
}
succeed({ result, message } = {}) {
return __asyncGenerator(this, arguments, function* succeed_1() {
yield yield __await(this.emit({
type: "succeed",
result,
message
}));
});
}
update({ message }) {
return __asyncGenerator(this, arguments, function* update_1() {
yield yield __await(this.emit({
type: "update",
message
}));
});
}
declare({ identifier, message }) {
return __asyncGenerator(this, arguments, function* declare_1() {
const parent = this;
const child = new ValueResolutionController_1.ValueResolutionController({
scope: [...this.scope, identifier],
parent,
state: types_1.State.Active
});
this.children.push(child);
yield yield __await(child.emit({
type: "declare",
message: message || identifier
}));
return yield __await(child);
});
}
step({ identifier, message }) {
return __asyncGenerator(this, arguments, function* step_1() {
const parent = this;
const child = new StepsController({
scope: [...this.scope, identifier || message],
parent,
state: types_1.State.Active
});
this.children.push(child);
yield yield __await(child.emit({
type: "step",
message: message || identifier
}));
return yield __await(child);
});
}
}
__decorate([
(0, decorators_1.validStates)([types_1.State.Pending]),
(0, decorators_1.transitionToState)(types_1.State.Active)
], StepsController.prototype, "begin", null);
__decorate([
(0, decorators_1.validStates)([types_1.State.Active]),
(0, decorators_1.transitionToState)(types_1.State.Done)
], StepsController.prototype, "succeed", null);
__decorate([
(0, decorators_1.validStates)([types_1.State.Active])
], StepsController.prototype, "update", null);
__decorate([
(0, decorators_1.validStates)([types_1.State.Active])
], StepsController.prototype, "declare", null);
__decorate([
(0, decorators_1.validStates)([types_1.State.Active])
], StepsController.prototype, "step", null);
exports.StepsController = StepsController;
//# sourceMappingURL=StepsController.js.map
/***/ }),
/***/ 79313:
/***/ (function(__unused_webpack_module, exports, __webpack_require__) {
"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;
};
var __rest = (this && this.__rest) || function (s, e) {
var t = {};
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
t[p] = s[p];
if (s != null && typeof Object.getOwnPropertySymbols === "function")
for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
t[p[i]] = s[p[i]];
}
return t;
};
var __await = (this && this.__await) || function (v) { return this instanceof __await ? (this.v = v, this) : new __await(v); }
var __asyncGenerator = (this && this.__asyncGenerator) || function (thisArg, _arguments, generator) {
if (!Symbol.asyncIterator) throw new TypeError("Symbol.asyncIterator is not defined.");
var g = generator.apply(thisArg, _arguments || []), i, q = [];
return i = {}, verb("next"), verb("throw"), verb("return"), i[Symbol.asyncIterator] = function () { return this; }, i;
function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }
function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }
function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }
function fulfill(value) { resume("next", value); }
function reject(value) { resume("throw", value); }
function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }
};
Object.defineProperty(exports, "__esModule", ({ value: true }));
exports.ValueResolutionController = void 0;
const types_1 = __webpack_require__(76816);
const decorators_1 = __webpack_require__(8225);
const ErrorController_1 = __webpack_require__(55601);
class ValueResolutionController extends ErrorController_1.ErrorController {
constructor(options) {
const superOptions = __rest(options, []);
super(superOptions);
// so we can pass these around as functions
this.resolve = this.resolve.bind(this);
this.extend = this.extend.bind(this);
}
update({ payload } = {}) {
return __asyncGenerator(this, arguments, function* update_1() {
yield yield __await(this.emit({
type: "update",
payload
}));
});
}
resolve({ resolution, payload } = {}) {
return __asyncGenerator(this, arguments, function* resolve_1() {
yield yield __await(this.emit({
type: "resolve",
resolution,
payload
}));
});
}
extend({ identifier, message }) {
return __asyncGenerator(this, arguments, function* extend_1() {
const parent = this;
const child = new ValueResolutionController({
scope: [...this.scope, identifier],
parent,
state: types_1.State.Active
});
this.children.push(child);
yield yield __await(child.emit({
type: "declare",
message: message || identifier
}));
return yield __await(child);
});
}
}
__decorate([
(0, decorators_1.validStates)([types_1.State.Active])
], ValueResolutionController.prototype, "update", null);
__decorate([
(0, decorators_1.validStates)([types_1.State.Active]),
(0, decorators_1.transitionToState)(types_1.State.Done)
], ValueResolutionController.prototype, "resolve", null);
__decorate([
(0, decorators_1.validStates)([types_1.State.Active])
], ValueResolutionController.prototype, "extend", null);
exports.ValueResolutionController = ValueResolutionController;
//# sourceMappingURL=ValueResolutionController.js.map
/***/ }),
/***/ 8225:
/***/ (function(__unused_webpack_module, exports) {
"use strict";
var __await = (this && this.__await) || function (v) { return this instanceof __await ? (this.v = v, this) : new __await(v); }
var __asyncValues = (this && this.__asyncValues) || function (o) {
if (!Symbol.asyncIterator) throw new TypeError("Symbol.asyncIterator is not defined.");
var m = o[Symbol.asyncIterator], i;
return m ? m.call(o) : (o = typeof __values === "function" ? __values(o) : o[Symbol.iterator](), i = {}, verb("next"), verb("throw"), verb("return"), i[Symbol.asyncIterator] = function () { return this; }, i);
function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }
function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }
};
var __asyncDelegator = (this && this.__asyncDelegator) || function (o) {
var i, p;
return i = {}, verb("next"), verb("throw", function (e) { throw e; }), verb("return"), i[Symbol.iterator] = function () { return this; }, i;
function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === "return" } : f ? f(v) : v; } : f; }
};
var __asyncGenerator = (this && this.__asyncGenerator) || function (thisArg, _arguments, generator) {
if (!Symbol.asyncIterator) throw new TypeError("Symbol.asyncIterator is not defined.");
var g = generator.apply(thisArg, _arguments || []), i, q = [];
return i = {}, verb("next"), verb("throw"), verb("return"), i[Symbol.asyncIterator] = function () { return this; }, i;
function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }
function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }
function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }
function fulfill(value) { resume("next", value); }
function reject(value) { resume("throw", value); }
function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }
};
Object.defineProperty(exports, "__esModule", ({ value: true }));
exports.transitionToState = exports.validStates = void 0;
const validStates = (states) => (target, propertyKey, descriptor) => {
const originalMethod = descriptor.value;
descriptor.value = function (...args) {
return __asyncGenerator(this, arguments, function* () {
if (!states.includes(this._state))
return yield __await(void 0);
const result = yield __await(yield* __asyncDelegator(__asyncValues(originalMethod.apply(this, args))));
return yield __await(result);
});
};
return descriptor;
};
exports.validStates = validStates;
const transitionToState = (state) => (target, propertyKey, descriptor) => {
const originalMethod = descriptor.value;
descriptor.value = function (...args) {
return __asyncGenerator(this, arguments, function* () {
const result = yield __await(yield* __asyncDelegator(__asyncValues(originalMethod.apply(this, args))));
this._state = state;
return yield __await(result);
});
};
return descriptor;
};
exports.transitionToState = transitionToState;
//# sourceMappingURL=decorators.js.map
/***/ }),
/***/ 42914:
/***/ (function(__unused_webpack_module, exports, __webpack_require__) {
"use strict";
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
if (k2 === undefined) k2 = k;
var desc = Object.getOwnPropertyDescriptor(m, k);
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
desc = { enumerable: true, get: function() { return m[k]; } };
}
Object.defineProperty(o, k2, desc);
}) : (function(o, m, k, k2) {
if (k2 === undefined) k2 = k;
o[k2] = m[k];
}));
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
Object.defineProperty(o, "default", { enumerable: true, value: v });
}) : function(o, v) {
o["default"] = v;
});
var __importStar = (this && this.__importStar) || function (mod) {
if (mod && mod.__esModule) return mod;
var result = {};
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
__setModuleDefault(result, mod);
return result;
};
var __exportStar = (this && this.__exportStar) || function(m, exports) {
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
};
Object.defineProperty(exports, "__esModule", ({ value: true }));
exports.ValueResolution = exports.ValueResolutionController = exports.Steps = exports.StepsController = exports.Error = exports.ErrorController = exports.Base = exports.BaseController = void 0;
var BaseController_1 = __webpack_require__(80354);
Object.defineProperty(exports, "BaseController", ({ enumerable: true, get: function () { return BaseController_1.BaseController; } }));
const Base = __importStar(__webpack_require__(80354));
exports.Base = Base;
var ErrorController_1 = __webpack_require__(55601);
Object.defineProperty(exports, "ErrorController", ({ enumerable: true, get: function () { return ErrorController_1.ErrorController; } }));
const Error = __importStar(__webpack_require__(55601));
exports.Error = Error;
var StepsController_1 = __webpack_require__(68791);
Object.defineProperty(exports, "StepsController", ({ enumerable: true, get: function () { return StepsController_1.StepsController; } }));
const Steps = __importStar(__webpack_require__(68791));
exports.Steps = Steps;
var ValueResolutionController_1 = __webpack_require__(79313);
Object.defineProperty(exports, "ValueResolutionController", ({ enumerable: true, get: function () { return ValueResolutionController_1.ValueResolutionController; } }));
const ValueResolution = __importStar(__webpack_require__(79313));
exports.ValueResolution = ValueResolution;
__exportStar(__webpack_require__(8225), exports);
//# sourceMappingURL=index.js.map
/***/ }),
/***/ 31719:
/***/ ((__unused_webpack_module, exports) => {
"use strict";
Object.defineProperty(exports, "__esModule", ({ value: true }));
//# sourceMappingURL=events.js.map
/***/ }),
/***/ 62523:
/***/ (function(__unused_webpack_module, exports, __webpack_require__) {
"use strict";
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
if (k2 === undefined) k2 = k;
var desc = Object.getOwnPropertyDescriptor(m, k);
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
desc = { enumerable: true, get: function() { return m[k]; } };
}
Object.defineProperty(o, k2, desc);
}) : (function(o, m, k, k2) {
if (k2 === undefined) k2 = k;
o[k2] = m[k];
}));
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
Object.defineProperty(o, "default", { enumerable: true, value: v });
}) : function(o, v) {
o["default"] = v;
});
var __exportStar = (this && this.__exportStar) || function(m, exports) {
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
};
var __importStar = (this && this.__importStar) || function (mod) {
if (mod && mod.__esModule) return mod;
var result = {};
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
__setModuleDefault(result, mod);
return result;
};
Object.defineProperty(exports, "__esModule", ({ value: true }));
exports.Controllers = exports.ValueResolutionController = exports.StepsController = exports.ErrorController = exports.BaseController = exports.Scopes = void 0;
__exportStar(__webpack_require__(55830), exports);
__exportStar(__webpack_require__(31719), exports);
__exportStar(__webpack_require__(76816), exports);
const Scopes = __importStar(__webpack_require__(93859));
exports.Scopes = Scopes;
var controllers_1 = __webpack_require__(42914);
Object.defineProperty(exports, "BaseController", ({ enumerable: true, get: function () { return controllers_1.BaseController; } }));
Object.defineProperty(exports, "ErrorController", ({ enumerable: true, get: function () { return controllers_1.ErrorController; } }));
Object.defineProperty(exports, "StepsController", ({ enumerable: true, get: function () { return controllers_1.StepsController; } }));
Object.defineProperty(exports, "ValueResolutionController", ({ enumerable: true, get: function () { return controllers_1.ValueResolutionController; } }));
const Controllers = __importStar(__webpack_require__(42914));
exports.Controllers = Controllers;
//# sourceMappingURL=index.js.map
/***/ }),
/***/ 93859:
/***/ ((__unused_webpack_module, exports) => {
"use strict";
Object.defineProperty(exports, "__esModule", ({ value: true }));
exports.fromKey = exports.toKey = void 0;
const separator = "␟"; // ASCII delimiter: unit separator
const toKey = (scope) => scope.join(separator);
exports.toKey = toKey;
const fromKey = (key) => key.split(separator);
exports.fromKey = fromKey;
//# sourceMappingURL=scopes.js.map
/***/ }),
/***/ 76816:
/***/ ((__unused_webpack_module, exports) => {
"use strict";
Object.defineProperty(exports, "__esModule", ({ value: true }));
exports.State = void 0;
var State;
(function (State) {
State["Pending"] = "pending";
State["Active"] = "active";
State["Done"] = "done";
State["Error"] = "error";
})(State = exports.State || (exports.State = {}));
//# sourceMappingURL=types.js.map
/***/ }),
/***/ 63370:
/***/ (function(__unused_webpack_module, exports, __webpack_require__) {
"use strict";
/**
* @module @truffle/preserve
*/ /** */
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
if (k2 === undefined) k2 = k;
var desc = Object.getOwnPropertyDescriptor(m, k);
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
desc = { enumerable: true, get: function() { return m[k]; } };
}
Object.defineProperty(o, k2, desc);
}) : (function(o, m, k, k2) {
if (k2 === undefined) k2 = k;
o[k2] = m[k];
}));
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
Object.defineProperty(o, "default", { enumerable: true, value: v });
}) : function(o, v) {
o["default"] = v;
});
var __exportStar = (this && this.__exportStar) || function(m, exports) {
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
};
var __importStar = (this && this.__importStar) || function (mod) {
if (mod && mod.__esModule) return mod;
var result = {};
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
__setModuleDefault(result, mod);
return result;
};
Object.defineProperty(exports, "__esModule", ({ value: true }));
exports.Targets = exports.Control = void 0;
__exportStar(__webpack_require__(96606), exports);
__exportStar(__webpack_require__(54238), exports);
const Control = __importStar(__webpack_require__(62523));
exports.Control = Control;
const Targets = __importStar(__webpack_require__(44542));
exports.Targets = Targets;
//# sourceMappingURL=index.js.map
/***/ }),
/***/ 54238:
/***/ (function(__unused_webpack_module, exports, __webpack_require__) {
"use strict";
var __asyncValues = (this && this.__asyncValues) || function (o) {
if (!Symbol.asyncIterator) throw new TypeError("Symbol.asyncIterator is not defined.");
var m = o[Symbol.asyncIterator], i;
return m ? m.call(o) : (o = typeof __values === "function" ? __values(o) : o[Symbol.iterator](), i = {}, verb("next"), verb("throw"), verb("return"), i[Symbol.asyncIterator] = function () { return this; }, i);
function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }
function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }
};
var __await = (this && this.__await) || function (v) { return this instanceof __await ? (this.v = v, this) : new __await(v); }
var __asyncDelegator = (this && this.__asyncDelegator) || function (o) {
var i, p;
return i = {}, verb("next"), verb("throw", function (e) { throw e; }), verb("return"), i[Symbol.iterator] = function () { return this; }, i;
function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === "return" } : f ? f(v) : v; } : f; }
};
var __asyncGenerator = (this && this.__asyncGenerator) || function (thisArg, _arguments, generator) {
if (!Symbol.asyncIterator) throw new TypeError("Symbol.asyncIterator is not defined.");
var g = generator.apply(thisArg, _arguments || []), i, q = [];
return i = {}, verb("next"), verb("throw"), verb("return"), i[Symbol.asyncIterator] = function () { return this; }, i;
function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }
function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }
function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }
function fulfill(value) { resume("next", value); }
function reject(value) { resume("throw", value); }
function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }
};
Object.defineProperty(exports, "__esModule", ({ value: true }));
exports.preserve = void 0;
const control_1 = __webpack_require__(62523);
const TruffleError = __webpack_require__(73321);
function preserve(options) {
return __asyncGenerator(this, arguments, function* preserve_1() {
const { request, recipes } = options;
const { recipe } = request;
if (!("settings" in request)) {
request.settings = new Map([]);
}
if (!("inputs" in request)) {
request.inputs = {};
}
const inputLabels = Object.keys(request.inputs);
/*
* planning
* (use BFS)
*/
const queue = [recipe];
let plan = [];
while (queue.length > 0) {
const current = queue.shift();
plan.unshift(current);
for (const label of current.inputLabels) {
const plugin = getRecipeForLabel(label, inputLabels, recipes);
if (plugin)
queue.push(plugin);
}
}
// Filter out duplicates afterwards so that we only keep the first occurrence of the plugin
plan = plan.filter((plugin, index) => index === plan.findIndex(other => other.name === plugin.name));
/*
* execution
*/
// Populate initial preserve inputs with provided inputs
let inputs = Object.assign({}, request.inputs);
for (const recipe of plan) {
const settings = request.settings.get(recipe.name) || {};
const { name } = recipe;
const method = recipe.execute.bind(recipe);
const results = yield __await(yield* __asyncDelegator(__asyncValues((0, control_1.control)({ name, method }, { inputs, settings }))));
// Add all result key + values to the inputs object for the next plugin
for (const [key, value] of Object.entries(results || {})) {
inputs[key] = value;
}
}
});
}
exports.preserve = preserve;
const getRecipeForLabel = (label, inputLabels, plugins) => {
// If the label exists in the initial inputLabels it is provided without recipe
if (inputLabels.includes(label))
return;
const pluginsForLabel = plugins
.filter(plugin => plugin.outputLabels.includes(label));
if (pluginsForLabel.length === 0) {
throw new TruffleError(`No plugins found that output the label "${label}".`);
}
if (pluginsForLabel.length > 1) {
console.warn(`Warning: multiple plugins found that output the label "${label}".`);
}
const [plugin] = pluginsForLabel;
return plugin;
};
//# sourceMappingURL=preserve.js.map
/***/ }),
/***/ 44542:
/***/ (function(__unused_webpack_module, exports, __webpack_require__) {
"use strict";
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
if (k2 === undefined) k2 = k;
var desc = Object.getOwnPropertyDescriptor(m, k);
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
desc = { enumerable: true, get: function() { return m[k]; } };
}
Object.defineProperty(o, k2, desc);
}) : (function(o, m, k, k2) {
if (k2 === undefined) k2 = k;
o[k2] = m[k];
}));
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
Object.defineProperty(o, "default", { enumerable: true, value: v });
}) : function(o, v) {
o["default"] = v;
});
var __importStar = (this && this.__importStar) || function (mod) {
if (mod && mod.__esModule) return mod;
var result = {};
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
__setModuleDefault(result, mod);
return result;
};
var __exportStar = (this && this.__exportStar) || function(m, exports) {
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
};
Object.defineProperty(exports, "__esModule", ({ value: true }));
exports.Sources = void 0;
const Sources = __importStar(__webpack_require__(74515));
exports.Sources = Sources;
__exportStar(__webpack_require__(60702), exports);
__exportStar(__webpack_require__(54850), exports);
//# sourceMappingURL=index.js.map
/***/ }),
/***/ 82321:
/***/ (function(__unu