obsidian-dev-utils
Version:
This is the collection of useful functions that you can use for your Obsidian plugin development
65 lines (61 loc) • 5.11 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 { CssClass } from "../../../CssClass.mjs";
import { TypedRangeTextComponent } from "./TypedRangeTextComponent.mjs";
class TimeComponent extends TypedRangeTextComponent {
/**
* Creates a new time component.
*
* @param containerEl - The container element of the component.
*/
constructor(containerEl) {
super(containerEl, "time", CssClass.TimeComponent);
}
/**
* Converts a string to a time.
*
* @param str - The string to convert.
* @returns The date.
*/
valueFromString(str) {
return moment.duration(str);
}
/**
* Converts a time to a string.
*
* @param value - The time to convert.
* @returns The string.
*/
valueToString(value) {
let format;
if (value.milliseconds() > 0) {
format = "HH:mm:ss.SSS";
} else if (value.seconds() > 0) {
format = "HH:mm:ss";
} else {
format = "HH:mm";
}
return moment.utc(value.asMilliseconds()).format(format);
}
}
export {
TimeComponent
};
//# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vLi4vLi4vLi4vc3JjL29ic2lkaWFuL0NvbXBvbmVudHMvU2V0dGluZ0NvbXBvbmVudHMvVGltZUNvbXBvbmVudC50cyJdLAogICJzb3VyY2VzQ29udGVudCI6IFsiLyoqXG4gKiBAcGFja2FnZURvY3VtZW50YXRpb25cbiAqXG4gKiBDb250YWlucyBhIGNvbXBvbmVudCB0aGF0IGRpc3BsYXlzIGFuZCBlZGl0cyBhIHRpbWUuXG4gKi9cblxuaW1wb3J0IHsgbW9tZW50IH0gZnJvbSAnb2JzaWRpYW4nO1xuXG4vLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLXVudXNlZC12YXJzIC0tIFdlIG5lZWQgdG8gaW1wb3J0IGBpbml0UGx1Z2luQ29udGV4dGAgdG8gdXNlIGl0IGluIHRoZSB0c2RvY3MuXG5pbXBvcnQgdHlwZSB7IGluaXRQbHVnaW5Db250ZXh0IH0gZnJvbSAnLi4vLi4vUGx1Z2luL1BsdWdpbkNvbnRleHQudHMnO1xuLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby11bnVzZWQtdmFycyAtLSBXZSBuZWVkIHRvIGltcG9ydCBgU2V0dGluZ0V4YCB0byB1c2UgaXQgaW4gdGhlIHRzZG9jcy5cbmltcG9ydCB0eXBlIHsgU2V0dGluZ0V4IH0gZnJvbSAnLi4vLi4vU2V0dGluZ0V4LnRzJztcblxuaW1wb3J0IHsgQ3NzQ2xhc3MgfSBmcm9tICcuLi8uLi8uLi9Dc3NDbGFzcy50cyc7XG5pbXBvcnQgeyBUeXBlZFJhbmdlVGV4dENvbXBvbmVudCB9IGZyb20gJy4vVHlwZWRSYW5nZVRleHRDb21wb25lbnQudHMnO1xuXG4vKipcbiAqIEEgY29tcG9uZW50IHRoYXQgZGlzcGxheXMgYW5kIGVkaXRzIGEgdGltZS5cbiAqXG4gKiBZb3UgY2FuIGFkZCB0aGlzIGNvbXBvbmVudCB1c2luZyB7QGxpbmsgU2V0dGluZ0V4LmFkZFRpbWV9LlxuICpcbiAqIEluIG9yZGVyIHRvIGFkZCB0aGUgc3R5bGVzIGZvciB0aGUgY29tcG9uZW50LCB1c2Uge0BsaW5rIGluaXRQbHVnaW5Db250ZXh0fSBpbiB5b3VyIHBsdWdpbidzIGBvbmxvYWQoKWAgZnVuY3Rpb24uXG4gKlxuICogQWx0ZXJuYXRpdmVseSwgeW91IGNhbiBjb3B5IHN0eWxlcyBmcm9tIHtAbGluayBodHRwczovL2dpdGh1Yi5jb20vbW5hb3Vtb3Yvb2JzaWRpYW4tZGV2LXV0aWxzL3JlbGVhc2VzL2xhdGVzdC9kb3dubG9hZC9zdHlsZXMuY3NzfS5cbiAqL1xuZXhwb3J0IGNsYXNzIFRpbWVDb21wb25lbnQgZXh0ZW5kcyBUeXBlZFJhbmdlVGV4dENvbXBvbmVudDxtb21lbnQuRHVyYXRpb24+IHtcbiAgLyoqXG4gICAqIENyZWF0ZXMgYSBuZXcgdGltZSBjb21wb25lbnQuXG4gICAqXG4gICAqIEBwYXJhbSBjb250YWluZXJFbCAtIFRoZSBjb250YWluZXIgZWxlbWVudCBvZiB0aGUgY29tcG9uZW50LlxuICAgKi9cbiAgcHVibGljIGNvbnN0cnVjdG9yKGNvbnRhaW5lckVsOiBIVE1MRWxlbWVudCkge1xuICAgIHN1cGVyKGNvbnRhaW5lckVsLCAndGltZScsIENzc0NsYXNzLlRpbWVDb21wb25lbnQpO1xuICB9XG5cbiAgLyoqXG4gICAqIENvbnZlcnRzIGEgc3RyaW5nIHRvIGEgdGltZS5cbiAgICpcbiAgICogQHBhcmFtIHN0ciAtIFRoZSBzdHJpbmcgdG8gY29udmVydC5cbiAgICogQHJldHVybnMgVGhlIGRhdGUuXG4gICAqL1xuICBwdWJsaWMgb3ZlcnJpZGUgdmFsdWVGcm9tU3RyaW5nKHN0cjogc3RyaW5nKTogbW9tZW50LkR1cmF0aW9uIHtcbiAgICByZXR1cm4gbW9tZW50LmR1cmF0aW9uKHN0cik7XG4gIH1cblxuICAvKipcbiAgICogQ29udmVydHMgYSB0aW1lIHRvIGEgc3RyaW5nLlxuICAgKlxuICAgKiBAcGFyYW0gdmFsdWUgLSBUaGUgdGltZSB0byBjb252ZXJ0LlxuICAgKiBAcmV0dXJucyBUaGUgc3RyaW5nLlxuICAgKi9cbiAgcHVibGljIG92ZXJyaWRlIHZhbHVlVG9TdHJpbmcodmFsdWU6IG1vbWVudC5EdXJhdGlvbik6IHN0cmluZyB7XG4gICAgbGV0IGZvcm1hdDogc3RyaW5nO1xuICAgIGlmICh2YWx1ZS5taWxsaXNlY29uZHMoKSA+IDApIHtcbiAgICAgIGZvcm1hdCA9ICdISDptbTpzcy5TU1MnO1xuICAgIH0gZWxzZSBpZiAodmFsdWUuc2Vjb25kcygpID4gMCkge1xuICAgICAgZm9ybWF0ID0gJ0hIOm1tOnNzJztcbiAgICB9IGVsc2Uge1xuICAgICAgZm9ybWF0ID0gJ0hIOm1tJztcbiAgICB9XG5cbiAgICByZXR1cm4gbW9tZW50LnV0Yyh2YWx1ZS5hc01pbGxpc2Vjb25kcygpKS5mb3JtYXQoZm9ybWF0KTtcbiAgfVxufVxuIl0sCiAgIm1hcHBpbmdzIjogIjs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBTUEsU0FBUyxjQUFjO0FBT3ZCLFNBQVMsZ0JBQWdCO0FBQ3pCLFNBQVMsK0JBQStCO0FBV2pDLE1BQU0sc0JBQXNCLHdCQUF5QztBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxFQU1uRSxZQUFZLGFBQTBCO0FBQzNDLFVBQU0sYUFBYSxRQUFRLFNBQVMsYUFBYTtBQUFBLEVBQ25EO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsRUFRZ0IsZ0JBQWdCLEtBQThCO0FBQzVELFdBQU8sT0FBTyxTQUFTLEdBQUc7QUFBQSxFQUM1QjtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLEVBUWdCLGNBQWMsT0FBZ0M7QUFDNUQsUUFBSTtBQUNKLFFBQUksTUFBTSxhQUFhLElBQUksR0FBRztBQUM1QixlQUFTO0FBQUEsSUFDWCxXQUFXLE1BQU0sUUFBUSxJQUFJLEdBQUc7QUFDOUIsZUFBUztBQUFBLElBQ1gsT0FBTztBQUNMLGVBQVM7QUFBQSxJQUNYO0FBRUEsV0FBTyxPQUFPLElBQUksTUFBTSxlQUFlLENBQUMsRUFBRSxPQUFPLE1BQU07QUFBQSxFQUN6RDtBQUNGOyIsCiAgIm5hbWVzIjogW10KfQo=