@mdfriday/foundry
Version:
The core engine of MDFriday. Convert Markdown and shortcodes into fully themed static sites – Hugo-style, powered by TypeScript.
49 lines • 1.47 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.dimensionFlag = exports.DimensionFlagHelper = exports.DimensionFlag = void 0;
// DimensionFlag is a flag in the Hugo build matrix.
var DimensionFlag;
(function (DimensionFlag) {
DimensionFlag[DimensionFlag["DimensionLanguage"] = 1] = "DimensionLanguage";
DimensionFlag[DimensionFlag["DimensionNone"] = 2] = "DimensionNone";
})(DimensionFlag || (exports.DimensionFlag = DimensionFlag = {}));
class DimensionFlagHelper {
constructor(flag) {
this.flag = flag;
}
// Has returns whether the given flag is set.
has(o) {
return (this.flag & o) === o;
}
// Set sets the given flag.
set(o) {
return this.flag | o;
}
// Index returns this flag's index in the Dimensions array.
index() {
if (this.flag === 0) {
throw new Error("dimension flag not set");
}
return this.flag - 1;
}
valueOf() {
return this.flag;
}
}
exports.DimensionFlagHelper = DimensionFlagHelper;
// Helper functions for working with DimensionFlag
exports.dimensionFlag = {
has: (flag, other) => {
return (flag & other) === other;
},
set: (flag, other) => {
return flag | other;
},
index: (flag) => {
if (flag === 0) {
throw new Error("dimension flag not set");
}
return flag - 1;
}
};
//# sourceMappingURL=dimensions.js.map