UNPKG

h5p-utils

Version:

A set of utility classes and functions to be used when creating H5P widgets and content types.

104 lines (98 loc) 3.15 kB
"use strict"; var __defProp = Object.defineProperty; var __getOwnPropDesc = Object.getOwnPropertyDescriptor; var __getOwnPropNames = Object.getOwnPropertyNames; var __hasOwnProp = Object.prototype.hasOwnProperty; var __export = (target, all) => { for (var name in all) __defProp(target, name, { get: all[name], enumerable: true }); }; var __copyProps = (to, from, except, desc) => { if (from && typeof from === "object" || typeof from === "function") { for (let key of __getOwnPropNames(from)) if (!__hasOwnProp.call(to, key) && key !== except) __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable }); } return to; }; var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod); // index.ts var h5p_utils_exports = {}; __export(h5p_utils_exports, { H5P: () => H5P, H5PContentType: () => H5PContentType, H5PEditor: () => H5PEditor, H5PResumableContentType: () => H5PResumableContentType, H5PWidget: () => H5PWidget, getAbsoluteUrlFromRelativePath: () => getAbsoluteUrlFromRelativePath, getImageUrl: () => getImageUrl, registerContentType: () => registerContentType, registerWidget: () => registerWidget }); module.exports = __toCommonJS(h5p_utils_exports); // src/utils/H5P.utils.ts var H5P = window.H5P ?? {}; var H5PEditor = window.H5PEditor ?? {}; var getAbsoluteUrlFromRelativePath = (path) => { return H5P.getPath(path, H5PEditor.contentId); }; var getImageUrl = (imagePath) => { if (!imagePath) { return null; } const imagePathIsAbsolute = imagePath.startsWith("http://") || imagePath.startsWith("https://"); const imageUrl = imagePathIsAbsolute ? imagePath : getAbsoluteUrlFromRelativePath(imagePath); return imageUrl; }; var registerContentType = (name, contentType) => { H5P[name] = contentType; }; var registerWidget = (h5pName, widgetName, widget) => { H5PEditor[h5pName] = widget; H5PEditor.widgets[widgetName] = widget; }; // src/models/H5PContentType.ts var H5PContentType = class extends H5P.EventDispatcher { constructor(params, contentId, extras) { super(); this.params = params; this.contentId = contentId; this.extras = extras; this.wrapper = document.createElement("div"); } wrapper; }; // src/models/H5PWidget.ts var H5PWidget = class extends H5P.EventDispatcher { constructor(parent, field, params, setValue) { super(); this.parent = parent; this.field = field; this.params = params; this.setValue = setValue; this.wrapper = document.createElement("div"); } wrapper; }; // src/models/H5PResumableContentType.ts var H5PResumableContentType = class extends H5PContentType { extras; state; constructor(params, contentId, extras) { super(params, contentId, extras); this.extras = extras; this.state = extras?.previousState; } }; // Annotate the CommonJS export names for ESM import in node: 0 && (module.exports = { H5P, H5PContentType, H5PEditor, H5PResumableContentType, H5PWidget, getAbsoluteUrlFromRelativePath, getImageUrl, registerContentType, registerWidget });