UNPKG

@aurigma/design-atoms

Version:

Design Atoms is a part of Customer's Canvas SDK which allows for manipulating individual design elements through your code.

145 lines 5.83 kB
import { Uuid } from "@aurigma/design-atoms-model/Product"; export var Utils; (function (Utils) { Utils.round3 = function (value) { return Math.round(value * 1000) / 1000; }; function makeSingle(generator) { let globalNonce; return async function (...args) { const localNonce = globalNonce = new Object(); const iter = generator(...args); let resumeValue; for (;;) { const n = iter.next(resumeValue); if (n.done) { return n.value; // final return value of passed generator } // whatever the generator yielded, _now_ run await on it resumeValue = await n.value; if (localNonce !== globalNonce) { return; // a new call was made } // next loop, we give resumeValue back to the generator } }; } Utils.makeSingle = makeSingle; function makeCancelable(promise) { var hasCanceled_ = false; var wrappedPromise = new Promise(function (resolve, reject) { promise.then(function (val) { return hasCanceled_ ? reject({ isCanceled: true }) : resolve(val); }); promise.catch(function (error) { return hasCanceled_ ? reject({ isCanceled: true }) : reject(error); }); }); return { promise: wrappedPromise, id: new Uuid().toString(), cancel: function () { hasCanceled_ = true; } }; } Utils.makeCancelable = makeCancelable; ; /** * @param {UIEvent} uiEvent * @return {Element[]} */ Utils.getEventPath = function (uiEvent) { if (uiEvent.view == null || !(uiEvent instanceof uiEvent.view.UIEvent)) throw new Error("Unexpected event type"); if (uiEvent.path != null) { var nativePath = Array.isArray(uiEvent.path) ? uiEvent.path : Array.prototype.slice.call(uiEvent.path); return nativePath.filter(function (el) { return el instanceof Element; }); } var rv = []; var element = uiEvent.target; if (!(element instanceof uiEvent.view.Element) && console != null) console.log("unexpected event target", element); do { rv.push(element); element = element.parentElement; } while (element != null && element !== uiEvent.currentTarget); return rv; }; /** * @param {UIEvent | JqueryEventObject } event */ Utils.isEventPathContainsClass = function (event, cssClass) { var uiEvent; if (event instanceof UIEvent) { uiEvent = event; } else if (event.originalEvent instanceof UIEvent) { uiEvent = event.originalEvent; } else { throw new Error("Unexpected event type"); } var path = Utils.getEventPath(uiEvent); if (path.some(function (element) { return element.classList.contains(cssClass); })) return true; return false; }; function getListSettingFromConfig(config) { return config ? { maxNestingListLevel: config.maxLevel, defOrderedListLevelGap: config.levelIndent, defUnorderedListLevelGap: config.levelIndent, defOrderedListStyle: { firstLineIndent: config.firstLineIndent, leftIndent: config.listIndent, tabOffset: config.tabOffset, numberingFormat: config.numberingFormat }, defUnorderedListStyle: { firstLineIndent: config.firstLineIndent, leftIndent: config.listIndent, tabOffset: config.tabOffset, bulletCharCode: config.bulletChar ? config.bulletChar.charCodeAt(0) : null }, styleNameKey: "", styleNamePrefix: "" } : null; } Utils.getListSettingFromConfig = getListSettingFromConfig; })(Utils || (Utils = {})); export var Cursor; (function (Cursor) { Cursor[Cursor["defaultCursor"] = 0] = "defaultCursor"; Cursor[Cursor["sizeNW"] = 1] = "sizeNW"; Cursor[Cursor["sizeNE"] = 2] = "sizeNE"; Cursor[Cursor["sizeSW"] = 3] = "sizeSW"; Cursor[Cursor["sizeSE"] = 4] = "sizeSE"; Cursor[Cursor["sizeN"] = 5] = "sizeN"; Cursor[Cursor["sizeS"] = 6] = "sizeS"; Cursor[Cursor["sizeW"] = 7] = "sizeW"; Cursor[Cursor["sizeE"] = 8] = "sizeE"; Cursor[Cursor["move"] = 9] = "move"; Cursor[Cursor["cross"] = 10] = "cross"; Cursor[Cursor["pointer"] = 11] = "pointer"; Cursor[Cursor["sizeEW"] = 12] = "sizeEW"; Cursor[Cursor["sizeNS"] = 13] = "sizeNS"; Cursor[Cursor["sizeNESW"] = 14] = "sizeNESW"; Cursor[Cursor["sizeNWSE"] = 15] = "sizeNWSE"; Cursor[Cursor["text"] = 16] = "text"; Cursor[Cursor["grab"] = 17] = "grab"; Cursor[Cursor["grabbing"] = 18] = "grabbing"; })(Cursor || (Cursor = {})); export var ColorSpace; (function (ColorSpace) { ColorSpace[ColorSpace["rgb"] = 16777216] = "rgb"; ColorSpace[ColorSpace["cmyk"] = 335544320] = "cmyk"; ColorSpace[ColorSpace["grayScale"] = 301989888] = "grayScale"; ColorSpace[ColorSpace["unknown"] = 0] = "unknown"; })(ColorSpace || (ColorSpace = {})); export var WebServiceCallType; (function (WebServiceCallType) { WebServiceCallType[WebServiceCallType["Item"] = 0] = "Item"; WebServiceCallType[WebServiceCallType["Color"] = 1] = "Color"; })(WebServiceCallType || (WebServiceCallType = {})); //# sourceMappingURL=Common.js.map