obsidian-dev-utils
Version:
This is the collection of useful functions that you can use for your Obsidian plugin development
66 lines (62 loc) • 4.46 kB
JavaScript
/*
THIS IS A GENERATED/BUNDLED FILE BY ESBUILD
if you want to view the source, please visit the github repository of this plugin
*/
(function initEsm() {
if (globalThis.process) {
return;
}
const browserProcess = {
browser: true,
cwd() {
return '/';
},
env: {},
platform: 'android'
};
globalThis.process = browserProcess;
})();
import { moment } from "obsidian";
import { TypedTransformer } from "./TypedTransformer.mjs";
class DurationTransformer extends TypedTransformer {
/**
* An id of the transformer.
*
* @returns The id of the transformer.
*/
get id() {
return "duration";
}
/**
* Checks if the value is a Duration.
*
* @param value - The value to check.
* @returns True if the value is a Duration, false otherwise.
*/
canTransform(value) {
const maybeDuration = value ?? {};
return !!maybeDuration.asHours && !!maybeDuration.asMinutes && !!maybeDuration.asSeconds && !!maybeDuration.asMilliseconds;
}
/**
* Restores the value from a string.
*
* @param transformedValue - The string to restore the value from.
* @returns The restored value.
*/
restoreValue(transformedValue) {
return moment.duration(transformedValue);
}
/**
* Transforms the value to a string.
*
* @param value - The value to transform.
* @returns The transformed value.
*/
transformValue(value) {
return value.toISOString();
}
}
export {
DurationTransformer
};
//# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vLi4vc3JjL1RyYW5zZm9ybWVycy9EdXJhdGlvblRyYW5zZm9ybWVyLnRzIl0sCiAgInNvdXJjZXNDb250ZW50IjogWyIvKipcbiAqIEBwYWNrYWdlRG9jdW1lbnRhdGlvblxuICpcbiAqIEEgdHJhbnNmb3JtZXIgdGhhdCBjYW4gdHJhbnNmb3JtIER1cmF0aW9uIHRvIGFuIElTTyBzdHJpbmcgYW5kIGJhY2suXG4gKi9cblxuaW1wb3J0IHsgbW9tZW50IH0gZnJvbSAnb2JzaWRpYW4nO1xuXG5pbXBvcnQgeyBUeXBlZFRyYW5zZm9ybWVyIH0gZnJvbSAnLi9UeXBlZFRyYW5zZm9ybWVyLnRzJztcblxuLyoqXG4gKiBBIHRyYW5zZm9ybWVyIHRoYXQgY29udmVydHMgYSBEdXJhdGlvbiB0byBhbiBJU08gc3RyaW5nIGFuZCBiYWNrLlxuICovXG5leHBvcnQgY2xhc3MgRHVyYXRpb25UcmFuc2Zvcm1lciBleHRlbmRzIFR5cGVkVHJhbnNmb3JtZXI8bW9tZW50LkR1cmF0aW9uLCBzdHJpbmc+IHtcbiAgLyoqXG4gICAqIEFuIGlkIG9mIHRoZSB0cmFuc2Zvcm1lci5cbiAgICpcbiAgICogQHJldHVybnMgVGhlIGlkIG9mIHRoZSB0cmFuc2Zvcm1lci5cbiAgICovXG4gIHB1YmxpYyBvdmVycmlkZSBnZXQgaWQoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gJ2R1cmF0aW9uJztcbiAgfVxuXG4gIC8qKlxuICAgKiBDaGVja3MgaWYgdGhlIHZhbHVlIGlzIGEgRHVyYXRpb24uXG4gICAqXG4gICAqIEBwYXJhbSB2YWx1ZSAtIFRoZSB2YWx1ZSB0byBjaGVjay5cbiAgICogQHJldHVybnMgVHJ1ZSBpZiB0aGUgdmFsdWUgaXMgYSBEdXJhdGlvbiwgZmFsc2Ugb3RoZXJ3aXNlLlxuICAgKi9cbiAgcHVibGljIG92ZXJyaWRlIGNhblRyYW5zZm9ybSh2YWx1ZTogdW5rbm93bik6IHZhbHVlIGlzIG1vbWVudC5EdXJhdGlvbiB7XG4gICAgY29uc3QgbWF5YmVEdXJhdGlvbiA9ICh2YWx1ZSA/PyB7fSkgYXMgUGFydGlhbDxtb21lbnQuRHVyYXRpb24+O1xuICAgIHJldHVybiAhIW1heWJlRHVyYXRpb24uYXNIb3VycyAmJiAhIW1heWJlRHVyYXRpb24uYXNNaW51dGVzICYmICEhbWF5YmVEdXJhdGlvbi5hc1NlY29uZHMgJiYgISFtYXliZUR1cmF0aW9uLmFzTWlsbGlzZWNvbmRzO1xuICB9XG5cbiAgLyoqXG4gICAqIFJlc3RvcmVzIHRoZSB2YWx1ZSBmcm9tIGEgc3RyaW5nLlxuICAgKlxuICAgKiBAcGFyYW0gdHJhbnNmb3JtZWRWYWx1ZSAtIFRoZSBzdHJpbmcgdG8gcmVzdG9yZSB0aGUgdmFsdWUgZnJvbS5cbiAgICogQHJldHVybnMgVGhlIHJlc3RvcmVkIHZhbHVlLlxuICAgKi9cbiAgcHVibGljIG92ZXJyaWRlIHJlc3RvcmVWYWx1ZSh0cmFuc2Zvcm1lZFZhbHVlOiBzdHJpbmcpOiBtb21lbnQuRHVyYXRpb24ge1xuICAgIHJldHVybiBtb21lbnQuZHVyYXRpb24odHJhbnNmb3JtZWRWYWx1ZSk7XG4gIH1cblxuICAvKipcbiAgICogVHJhbnNmb3JtcyB0aGUgdmFsdWUgdG8gYSBzdHJpbmcuXG4gICAqXG4gICAqIEBwYXJhbSB2YWx1ZSAtIFRoZSB2YWx1ZSB0byB0cmFuc2Zvcm0uXG4gICAqIEByZXR1cm5zIFRoZSB0cmFuc2Zvcm1lZCB2YWx1ZS5cbiAgICovXG4gIHB1YmxpYyBvdmVycmlkZSB0cmFuc2Zvcm1WYWx1ZSh2YWx1ZTogbW9tZW50LkR1cmF0aW9uKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdmFsdWUudG9JU09TdHJpbmcoKTtcbiAgfVxufVxuIl0sCiAgIm1hcHBpbmdzIjogIjs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBTUEsU0FBUyxjQUFjO0FBRXZCLFNBQVMsd0JBQXdCO0FBSzFCLE1BQU0sNEJBQTRCLGlCQUEwQztBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxFQU1qRixJQUFvQixLQUFhO0FBQy9CLFdBQU87QUFBQSxFQUNUO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsRUFRZ0IsYUFBYSxPQUEwQztBQUNyRSxVQUFNLGdCQUFpQixTQUFTLENBQUM7QUFDakMsV0FBTyxDQUFDLENBQUMsY0FBYyxXQUFXLENBQUMsQ0FBQyxjQUFjLGFBQWEsQ0FBQyxDQUFDLGNBQWMsYUFBYSxDQUFDLENBQUMsY0FBYztBQUFBLEVBQzlHO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsRUFRZ0IsYUFBYSxrQkFBMkM7QUFDdEUsV0FBTyxPQUFPLFNBQVMsZ0JBQWdCO0FBQUEsRUFDekM7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxFQVFnQixlQUFlLE9BQWdDO0FBQzdELFdBQU8sTUFBTSxZQUFZO0FBQUEsRUFDM0I7QUFDRjsiLAogICJuYW1lcyI6IFtdCn0K