UNPKG

@atlaskit/editor-plugin-media

Version:

Media plugin for @atlaskit/editor-core

80 lines (79 loc) 2.91 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.findChangeFromLocation = findChangeFromLocation; exports.getMediaResizeAnalyticsEvent = exports.getMediaInputResizeAnalyticsEvent = exports.getChangeMediaAnalytics = void 0; var _analytics = require("@atlaskit/editor-common/analytics"); var _utils = require("@atlaskit/editor-prosemirror/utils"); var getMediaResizeAnalyticsEvent = exports.getMediaResizeAnalyticsEvent = function getMediaResizeAnalyticsEvent(type, attributes) { if (!attributes) { return; } var width = attributes.width, widthType = attributes.widthType, layout = attributes.layout, snapType = attributes.snapType, parentNode = attributes.parentNode, inputMethod = attributes.inputMethod; var actionSubject = type === 'embed' ? _analytics.ACTION_SUBJECT.EMBEDS : _analytics.ACTION_SUBJECT.MEDIA_SINGLE; return { action: _analytics.ACTION.EDITED, actionSubject: actionSubject, actionSubjectId: _analytics.ACTION_SUBJECT_ID.RESIZED, attributes: { width: width, layout: layout, widthType: widthType, snapType: snapType, parentNode: parentNode, inputMethod: inputMethod }, eventType: _analytics.EVENT_TYPE.UI }; }; var getMediaInputResizeAnalyticsEvent = exports.getMediaInputResizeAnalyticsEvent = function getMediaInputResizeAnalyticsEvent(type, attributes) { if (!attributes) { return; } var width = attributes.width, layout = attributes.layout, validation = attributes.validation, parentNode = attributes.parentNode, inputMethod = attributes.inputMethod; var actionSubject = type === 'embed' ? _analytics.ACTION_SUBJECT.EMBEDS : _analytics.ACTION_SUBJECT.MEDIA_SINGLE; return { action: _analytics.ACTION.EDITED, actionSubject: actionSubject, actionSubjectId: _analytics.ACTION_SUBJECT_ID.RESIZED, attributes: { width: width, layout: layout, validation: validation, parentNode: parentNode, inputMethod: inputMethod }, eventType: _analytics.EVENT_TYPE.UI }; }; var getChangeMediaAnalytics = exports.getChangeMediaAnalytics = function getChangeMediaAnalytics(previousType, newType, changeFromLocation) { return { action: _analytics.ACTION.CHANGED_TYPE, actionSubject: _analytics.ACTION_SUBJECT.MEDIA, eventType: _analytics.EVENT_TYPE.TRACK, attributes: { newType: newType, previousType: previousType, changeFromLocation: changeFromLocation } }; }; function findChangeFromLocation(selection) { var _selection$$from$doc$ = selection.$from.doc.type, schema = _selection$$from$doc$.schema, name = _selection$$from$doc$.name; var parentNodeInfo = (0, _utils.findParentNode)(function (node) { return node.type !== schema.nodes.paragraph; })(selection); return parentNodeInfo ? parentNodeInfo.node.type.name : name; }