@ar.io/sdk
Version:
[](https://codecov.io/gh/ar-io/ar-io-sdk)
52 lines (51 loc) • 1.95 kB
JavaScript
Object.defineProperty(exports, "__esModule", { value: true });
exports.isValidFundFrom = exports.fundFromOptions = exports.isValidIntent = exports.intentsUsingYears = exports.validIntents = exports.isDistributedEpoch = exports.isDistributedEpochData = void 0;
exports.isProcessConfiguration = isProcessConfiguration;
exports.isProcessIdConfiguration = isProcessIdConfiguration;
exports.isLeasedArNSRecord = isLeasedArNSRecord;
const arweave_js_1 = require("../utils/arweave.js");
const isDistributedEpochData = (data) => {
return data.distributedTimestamp !== undefined;
};
exports.isDistributedEpochData = isDistributedEpochData;
const isDistributedEpoch = (data) => {
return (data.distributions !== undefined &&
(0, exports.isDistributedEpochData)(data.distributions));
};
exports.isDistributedEpoch = isDistributedEpoch;
exports.validIntents = [
'Buy-Name',
'Buy-Record', // for backwards compatibility
'Extend-Lease',
'Increase-Undername-Limit',
'Upgrade-Name',
'Primary-Name-Request',
];
exports.intentsUsingYears = [
'Buy-Record', // for backwards compatibility
'Buy-Name',
'Extend-Lease',
];
const isValidIntent = (intent) => {
return exports.validIntents.indexOf(intent) !== -1;
};
exports.isValidIntent = isValidIntent;
exports.fundFromOptions = ['balance', 'stakes', 'any', 'turbo'];
const isValidFundFrom = (fundFrom) => {
return exports.fundFromOptions.indexOf(fundFrom) !== -1;
};
exports.isValidFundFrom = isValidFundFrom;
// Type-guard functions
function isProcessConfiguration(config) {
return config !== undefined && 'process' in config;
}
function isProcessIdConfiguration(config) {
return (config !== undefined &&
'processId' in config &&
typeof config.processId === 'string' &&
(0, arweave_js_1.validateArweaveId)(config.processId) === true);
}
function isLeasedArNSRecord(record) {
return record.type === 'lease';
}
;