@veltdev/react 1.0.71 → 1.0.72
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/cjs/index.js +95 -4
- package/cjs/index.js.map +1 -1
- package/cjs/types/components/SnippylyComments/SnippylyComments.d.ts +1 -0
- package/cjs/types/constants.d.ts +2 -1
- package/cjs/types/index.d.ts +1 -0
- package/cjs/types/redux/index.d.ts +1 -0
- package/cjs/types/redux/veltLiveStateSynceMiddleware.d.ts +8 -0
- package/esm/index.js +95 -5
- package/esm/index.js.map +1 -1
- package/esm/types/components/SnippylyComments/SnippylyComments.d.ts +1 -0
- package/esm/types/constants.d.ts +2 -1
- package/esm/types/index.d.ts +1 -0
- package/esm/types/redux/index.d.ts +1 -0
- package/esm/types/redux/veltLiveStateSynceMiddleware.d.ts +8 -0
- package/index.d.ts +10 -1
- package/package.json +1 -1
package/esm/index.js
CHANGED
|
@@ -15,6 +15,17 @@ OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
|
|
|
15
15
|
PERFORMANCE OF THIS SOFTWARE.
|
|
16
16
|
***************************************************************************** */
|
|
17
17
|
|
|
18
|
+
var __assign = function() {
|
|
19
|
+
__assign = Object.assign || function __assign(t) {
|
|
20
|
+
for (var s, i = 1, n = arguments.length; i < n; i++) {
|
|
21
|
+
s = arguments[i];
|
|
22
|
+
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];
|
|
23
|
+
}
|
|
24
|
+
return t;
|
|
25
|
+
};
|
|
26
|
+
return __assign.apply(this, arguments);
|
|
27
|
+
};
|
|
28
|
+
|
|
18
29
|
function __awaiter(thisArg, _arguments, P, generator) {
|
|
19
30
|
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
20
31
|
return new (P || (P = Promise))(function (resolve, reject) {
|
|
@@ -86,7 +97,8 @@ var loadVelt = function (callback, version, staging) {
|
|
|
86
97
|
}
|
|
87
98
|
};
|
|
88
99
|
|
|
89
|
-
var VELT_SDK_VERSION = '1.0.
|
|
100
|
+
var VELT_SDK_VERSION = '1.0.89';
|
|
101
|
+
var VELT_SDK_INIT_EVENT = 'onVeltInit';
|
|
90
102
|
|
|
91
103
|
var SnippylyProvider = function (props) {
|
|
92
104
|
var apiKey = props.apiKey, user = props.user, config = props.config, documentId = props.documentId, language = props.language, translations = props.translations, autoTranslation = props.autoTranslation, onClientLoad = props.onClientLoad, children = props.children;
|
|
@@ -99,7 +111,7 @@ var SnippylyProvider = function (props) {
|
|
|
99
111
|
}
|
|
100
112
|
}, []);
|
|
101
113
|
var initVelt = function () { return __awaiter(void 0, void 0, void 0, function () {
|
|
102
|
-
var velt;
|
|
114
|
+
var velt, event;
|
|
103
115
|
var _a, _b;
|
|
104
116
|
return __generator(this, function (_c) {
|
|
105
117
|
switch (_c.label) {
|
|
@@ -156,6 +168,8 @@ var SnippylyProvider = function (props) {
|
|
|
156
168
|
if (documentId) {
|
|
157
169
|
velt === null || velt === void 0 ? void 0 : velt.setDocumentId(documentId);
|
|
158
170
|
}
|
|
171
|
+
event = new CustomEvent(VELT_SDK_INIT_EVENT, { detail: velt });
|
|
172
|
+
window.dispatchEvent(event);
|
|
159
173
|
return [2 /*return*/];
|
|
160
174
|
}
|
|
161
175
|
});
|
|
@@ -170,7 +184,7 @@ var SnippylyCommentBubble = function (props) {
|
|
|
170
184
|
};
|
|
171
185
|
|
|
172
186
|
var SnippylyComments = function (props) {
|
|
173
|
-
var autoCategorize = props.autoCategorize, streamViewContainerId = props.streamViewContainerId, onSignIn = props.onSignIn, onUpgrade = props.onUpgrade, textMode = props.textMode, popoverMode = props.popoverMode, popoverTriangleComponent = props.popoverTriangleComponent, floatingCommentDialog = props.floatingCommentDialog, moderatorMode = props.moderatorMode, streamMode = props.streamMode, signInButton = props.signInButton, upgradeButton = props.upgradeButton, attachments = props.attachments, recordings = props.recordings, reactions = props.reactions, deviceInfo = props.deviceInfo, commentIndex = props.commentIndex, dialogOnHover = props.dialogOnHover, dialogOnTargetElementClick = props.dialogOnTargetElementClick, priority = props.priority, inboxMode = props.inboxMode, suggestionMode = props.suggestionMode, mobileMode = props.mobileMode, inlineCommentMode = props.inlineCommentMode, privateCommentMode = props.privateCommentMode, minimap = props.minimap, persistentCommentMode = props.persistentCommentMode, ghostComments = props.ghostComments, ghostCommentsIndicator = props.ghostCommentsIndicator, commentsOnDom = props.commentsOnDom, commentTool = props.commentTool, sidebarButtonOnCommentDialog = props.sidebarButtonOnCommentDialog, scrollToComponent = props.scrollToComponent, userMentions = props.userMentions, deleteOnBackspace = props.deleteOnBackspace, allowedElementIds = props.allowedElementIds, onCommentAdd = props.onCommentAdd, onCommentUpdate = props.onCommentUpdate, onCommentAccept = props.onCommentAccept, onCommentReject = props.onCommentReject, onSidebarButtonOnCommentDialogClick = props.onSidebarButtonOnCommentDialogClick, customStatus = props.customStatus, customPriority = props.customPriority, customCategory = props.customCategory, status = props.status, resolveButton = props.resolveButton, darkMode = props.darkMode, onCustomPinInject = props.onCustomPinInject, children = props.children;
|
|
187
|
+
var autoCategorize = props.autoCategorize, streamViewContainerId = props.streamViewContainerId, onSignIn = props.onSignIn, onUpgrade = props.onUpgrade, textMode = props.textMode, popoverMode = props.popoverMode, popoverTriangleComponent = props.popoverTriangleComponent, floatingCommentDialog = props.floatingCommentDialog, moderatorMode = props.moderatorMode, streamMode = props.streamMode, signInButton = props.signInButton, upgradeButton = props.upgradeButton, attachments = props.attachments, recordings = props.recordings, reactions = props.reactions, deviceInfo = props.deviceInfo, commentIndex = props.commentIndex, dialogOnHover = props.dialogOnHover, dialogOnTargetElementClick = props.dialogOnTargetElementClick, priority = props.priority, inboxMode = props.inboxMode, suggestionMode = props.suggestionMode, mobileMode = props.mobileMode, inlineCommentMode = props.inlineCommentMode, privateCommentMode = props.privateCommentMode, minimap = props.minimap, persistentCommentMode = props.persistentCommentMode, ghostComments = props.ghostComments, ghostCommentsIndicator = props.ghostCommentsIndicator, commentsOnDom = props.commentsOnDom, commentTool = props.commentTool, sidebarButtonOnCommentDialog = props.sidebarButtonOnCommentDialog, scrollToComponent = props.scrollToComponent, userMentions = props.userMentions, deleteOnBackspace = props.deleteOnBackspace, hotkey = props.hotkey, allowedElementIds = props.allowedElementIds, onCommentAdd = props.onCommentAdd, onCommentUpdate = props.onCommentUpdate, onCommentAccept = props.onCommentAccept, onCommentReject = props.onCommentReject, onSidebarButtonOnCommentDialogClick = props.onSidebarButtonOnCommentDialogClick, customStatus = props.customStatus, customPriority = props.customPriority, customCategory = props.customCategory, status = props.status, resolveButton = props.resolveButton, darkMode = props.darkMode, onCustomPinInject = props.onCustomPinInject, children = props.children;
|
|
174
188
|
var ref = useRef();
|
|
175
189
|
useEffect(function () {
|
|
176
190
|
if (ref.current) {
|
|
@@ -217,7 +231,7 @@ var SnippylyComments = function (props) {
|
|
|
217
231
|
});
|
|
218
232
|
}
|
|
219
233
|
}, []);
|
|
220
|
-
return (React.createElement("velt-comments", { ref: ref, "auto-categorize": [true, false].includes(autoCategorize) ? (autoCategorize ? 'true' : 'false') : undefined, "data-stream-view-container-id": streamViewContainerId, "text-mode": [true, false].includes(textMode) ? (textMode ? 'true' : 'false') : undefined, "popover-mode": [true, false].includes(popoverMode) ? (popoverMode ? 'true' : 'false') : undefined, "popover-triangle-component": [true, false].includes(popoverTriangleComponent) ? (popoverTriangleComponent ? 'true' : 'false') : undefined, "floating-comment-dialog": [true, false].includes(floatingCommentDialog) ? (floatingCommentDialog ? 'true' : 'false') : undefined, "moderator-mode": [true, false].includes(moderatorMode) ? (moderatorMode ? 'true' : 'false') : undefined, "stream-mode": [true, false].includes(streamMode) ? (streamMode ? 'true' : 'false') : undefined, "sign-in-button": [true, false].includes(signInButton) ? (signInButton ? 'true' : 'false') : undefined, "upgrade-button": [true, false].includes(upgradeButton) ? (upgradeButton ? 'true' : 'false') : undefined, attachments: [true, false].includes(attachments) ? (attachments ? 'true' : 'false') : undefined, recordings: recordings, reactions: [true, false].includes(reactions) ? (reactions ? 'true' : 'false') : undefined, "device-info": [true, false].includes(deviceInfo) ? (deviceInfo ? 'true' : 'false') : undefined, "comment-index": [true, false].includes(commentIndex) ? (commentIndex ? 'true' : 'false') : undefined, "dialog-on-hover": [true, false].includes(dialogOnHover) ? (dialogOnHover ? 'true' : 'false') : undefined, "dialog-on-target-element-click": [true, false].includes(dialogOnTargetElementClick) ? (dialogOnTargetElementClick ? 'true' : 'false') : undefined, priority: [true, false].includes(priority) ? (priority ? 'true' : 'false') : undefined, status: [true, false].includes(status) ? (status ? 'true' : 'false') : undefined, "resolve-button": [true, false].includes(resolveButton) ? (resolveButton ? 'true' : 'false') : undefined, "inbox-mode": [true, false].includes(inboxMode) ? (inboxMode ? 'true' : 'false') : undefined, "suggestion-mode": [true, false].includes(suggestionMode) ? (suggestionMode ? 'true' : 'false') : undefined, "mobile-mode": [true, false].includes(mobileMode) ? (mobileMode ? 'true' : 'false') : undefined, "inline-comment-mode": [true, false].includes(inlineCommentMode) ? (inlineCommentMode ? 'true' : 'false') : undefined, "private-comment-mode": [true, false].includes(privateCommentMode) ? (privateCommentMode ? 'true' : 'false') : undefined, minimap: [true, false].includes(minimap) ? (minimap ? 'true' : 'false') : undefined, "persistent-comment-mode": [true, false].includes(persistentCommentMode) ? (persistentCommentMode ? 'true' : 'false') : undefined, "ghost-comments": [true, false].includes(ghostComments) ? (ghostComments ? 'true' : 'false') : undefined, "ghost-comments-indicator": [true, false].includes(ghostCommentsIndicator) ? (ghostCommentsIndicator ? 'true' : 'false') : undefined, "comments-on-dom": [true, false].includes(commentsOnDom) ? (commentsOnDom ? 'true' : 'false') : undefined, "comment-tool": [true, false].includes(commentTool) ? (commentTool ? 'true' : 'false') : undefined, "sidebar-button-on-comment-dialog": [true, false].includes(sidebarButtonOnCommentDialog) ? (sidebarButtonOnCommentDialog ? 'true' : 'false') : undefined, "scroll-to-component": [true, false].includes(scrollToComponent) ? (scrollToComponent ? 'true' : 'false') : undefined, "user-mentions": [true, false].includes(userMentions) ? (userMentions ? 'true' : 'false') : undefined, "delete-on-backspace": [true, false].includes(deleteOnBackspace) ? (deleteOnBackspace ? 'true' : 'false') : undefined, "allowed-element-ids": JSON.stringify(allowedElementIds), "custom-status": JSON.stringify(customStatus), "custom-priority": JSON.stringify(customPriority), "custom-category": JSON.stringify(customCategory), "dark-mode": [true, false].includes(darkMode) ? (darkMode ? 'true' : 'false') : undefined }, children));
|
|
234
|
+
return (React.createElement("velt-comments", { ref: ref, "auto-categorize": [true, false].includes(autoCategorize) ? (autoCategorize ? 'true' : 'false') : undefined, "data-stream-view-container-id": streamViewContainerId, "text-mode": [true, false].includes(textMode) ? (textMode ? 'true' : 'false') : undefined, "popover-mode": [true, false].includes(popoverMode) ? (popoverMode ? 'true' : 'false') : undefined, "popover-triangle-component": [true, false].includes(popoverTriangleComponent) ? (popoverTriangleComponent ? 'true' : 'false') : undefined, "floating-comment-dialog": [true, false].includes(floatingCommentDialog) ? (floatingCommentDialog ? 'true' : 'false') : undefined, "moderator-mode": [true, false].includes(moderatorMode) ? (moderatorMode ? 'true' : 'false') : undefined, "stream-mode": [true, false].includes(streamMode) ? (streamMode ? 'true' : 'false') : undefined, "sign-in-button": [true, false].includes(signInButton) ? (signInButton ? 'true' : 'false') : undefined, "upgrade-button": [true, false].includes(upgradeButton) ? (upgradeButton ? 'true' : 'false') : undefined, attachments: [true, false].includes(attachments) ? (attachments ? 'true' : 'false') : undefined, recordings: recordings, reactions: [true, false].includes(reactions) ? (reactions ? 'true' : 'false') : undefined, "device-info": [true, false].includes(deviceInfo) ? (deviceInfo ? 'true' : 'false') : undefined, "comment-index": [true, false].includes(commentIndex) ? (commentIndex ? 'true' : 'false') : undefined, "dialog-on-hover": [true, false].includes(dialogOnHover) ? (dialogOnHover ? 'true' : 'false') : undefined, "dialog-on-target-element-click": [true, false].includes(dialogOnTargetElementClick) ? (dialogOnTargetElementClick ? 'true' : 'false') : undefined, priority: [true, false].includes(priority) ? (priority ? 'true' : 'false') : undefined, status: [true, false].includes(status) ? (status ? 'true' : 'false') : undefined, "resolve-button": [true, false].includes(resolveButton) ? (resolveButton ? 'true' : 'false') : undefined, "inbox-mode": [true, false].includes(inboxMode) ? (inboxMode ? 'true' : 'false') : undefined, "suggestion-mode": [true, false].includes(suggestionMode) ? (suggestionMode ? 'true' : 'false') : undefined, "mobile-mode": [true, false].includes(mobileMode) ? (mobileMode ? 'true' : 'false') : undefined, "inline-comment-mode": [true, false].includes(inlineCommentMode) ? (inlineCommentMode ? 'true' : 'false') : undefined, "private-comment-mode": [true, false].includes(privateCommentMode) ? (privateCommentMode ? 'true' : 'false') : undefined, minimap: [true, false].includes(minimap) ? (minimap ? 'true' : 'false') : undefined, "persistent-comment-mode": [true, false].includes(persistentCommentMode) ? (persistentCommentMode ? 'true' : 'false') : undefined, "ghost-comments": [true, false].includes(ghostComments) ? (ghostComments ? 'true' : 'false') : undefined, "ghost-comments-indicator": [true, false].includes(ghostCommentsIndicator) ? (ghostCommentsIndicator ? 'true' : 'false') : undefined, "comments-on-dom": [true, false].includes(commentsOnDom) ? (commentsOnDom ? 'true' : 'false') : undefined, "comment-tool": [true, false].includes(commentTool) ? (commentTool ? 'true' : 'false') : undefined, "sidebar-button-on-comment-dialog": [true, false].includes(sidebarButtonOnCommentDialog) ? (sidebarButtonOnCommentDialog ? 'true' : 'false') : undefined, "scroll-to-component": [true, false].includes(scrollToComponent) ? (scrollToComponent ? 'true' : 'false') : undefined, "user-mentions": [true, false].includes(userMentions) ? (userMentions ? 'true' : 'false') : undefined, "delete-on-backspace": [true, false].includes(deleteOnBackspace) ? (deleteOnBackspace ? 'true' : 'false') : undefined, hotkey: [true, false].includes(hotkey) ? (hotkey ? 'true' : 'false') : undefined, "allowed-element-ids": JSON.stringify(allowedElementIds), "custom-status": JSON.stringify(customStatus), "custom-priority": JSON.stringify(customPriority), "custom-category": JSON.stringify(customCategory), "dark-mode": [true, false].includes(darkMode) ? (darkMode ? 'true' : 'false') : undefined }, children));
|
|
221
235
|
};
|
|
222
236
|
|
|
223
237
|
var SnippylyCommentsSidebar = function (props) {
|
|
@@ -885,5 +899,81 @@ function useTagAnnotations(documentId, location) {
|
|
|
885
899
|
return data;
|
|
886
900
|
}
|
|
887
901
|
|
|
888
|
-
|
|
902
|
+
var sessionId = Math.random().toString(36).substring(2, 15) + Math.random().toString(36).substring(2, 15);
|
|
903
|
+
var getSessionId = function () {
|
|
904
|
+
return sessionId;
|
|
905
|
+
};
|
|
906
|
+
var VELT_DEFAULT_LIVE_STATE_ID = 'velt-default-redux-live-state';
|
|
907
|
+
var createLiveStateMiddleware = function (config) {
|
|
908
|
+
if (config === void 0) { config = {}; }
|
|
909
|
+
var _a = config.allowedActionTypes, allowedActionTypes = _a === void 0 ? new Set() : _a, // Set of allowed action types for sync
|
|
910
|
+
_b = config.disabledActionTypes, // Set of allowed action types for sync
|
|
911
|
+
disabledActionTypes = _b === void 0 ? new Set() : _b, // Set of disabled action types for sync
|
|
912
|
+
_c = config.allowAction, // Set of disabled action types for sync
|
|
913
|
+
allowAction = _c === void 0 ? function () { return true; } : _c, // Callback to decide if an action should sync with live state
|
|
914
|
+
_d = config.liveStateDataId, // Callback to decide if an action should sync with live state
|
|
915
|
+
liveStateDataId = _d === void 0 ? VELT_DEFAULT_LIVE_STATE_ID : _d;
|
|
916
|
+
if (!liveStateDataId) {
|
|
917
|
+
liveStateDataId = VELT_DEFAULT_LIVE_STATE_ID;
|
|
918
|
+
}
|
|
919
|
+
return function (store) {
|
|
920
|
+
var isSdkInitialized = false;
|
|
921
|
+
var getDataSubscriptionSet = false;
|
|
922
|
+
var setupGetDataSubscription = function () {
|
|
923
|
+
var _a;
|
|
924
|
+
if (!getDataSubscriptionSet) {
|
|
925
|
+
getDataSubscriptionSet = true;
|
|
926
|
+
var liveStateSyncElement = (_a = window.Velt) === null || _a === void 0 ? void 0 : _a.getLiveStateSyncElement();
|
|
927
|
+
liveStateSyncElement.getLiveStateData(liveStateDataId).subscribe(function (data) {
|
|
928
|
+
// Dispatch action to update local state, marking it as remote
|
|
929
|
+
if (data) {
|
|
930
|
+
var sessionId_1 = getSessionId();
|
|
931
|
+
if (data.id === sessionId_1) {
|
|
932
|
+
return;
|
|
933
|
+
}
|
|
934
|
+
else {
|
|
935
|
+
store.dispatch(__assign(__assign({}, data.action), { isRemote: true }));
|
|
936
|
+
}
|
|
937
|
+
}
|
|
938
|
+
});
|
|
939
|
+
}
|
|
940
|
+
};
|
|
941
|
+
var veltSdkInitializedListener = function () {
|
|
942
|
+
isSdkInitialized = true;
|
|
943
|
+
setupGetDataSubscription();
|
|
944
|
+
// Remove the event listener after it's triggered
|
|
945
|
+
window.removeEventListener(VELT_SDK_INIT_EVENT, veltSdkInitializedListener);
|
|
946
|
+
};
|
|
947
|
+
// Add the event listener for the veltSdkInitialized event
|
|
948
|
+
window.addEventListener(VELT_SDK_INIT_EVENT, veltSdkInitializedListener);
|
|
949
|
+
return function (next) { return function (action) {
|
|
950
|
+
// Always process the action locally
|
|
951
|
+
var result = next(action);
|
|
952
|
+
// Decide whether to sync this action with Firebase
|
|
953
|
+
if (isSdkInitialized && !action.isRemote && allowAction(action) && !disabledActionTypes.has(action.type) && (allowedActionTypes.size === 0 || allowedActionTypes.has(action.type))) {
|
|
954
|
+
logLiveState(action, liveStateDataId);
|
|
955
|
+
}
|
|
956
|
+
return result;
|
|
957
|
+
}; };
|
|
958
|
+
};
|
|
959
|
+
};
|
|
960
|
+
var logLiveState = function (action, liveStateDataId) {
|
|
961
|
+
var _a;
|
|
962
|
+
if (window.Velt) {
|
|
963
|
+
var sessionId_2 = getSessionId();
|
|
964
|
+
var liveStateElement = (_a = window === null || window === void 0 ? void 0 : window.Velt) === null || _a === void 0 ? void 0 : _a.getLiveStateSyncElement();
|
|
965
|
+
if (liveStateElement === null || liveStateElement === void 0 ? void 0 : liveStateElement.setLiveStateData) {
|
|
966
|
+
liveStateElement.setLiveStateData(liveStateDataId, {
|
|
967
|
+
id: sessionId_2,
|
|
968
|
+
action: action
|
|
969
|
+
});
|
|
970
|
+
}
|
|
971
|
+
liveStateElement.setLiveStateData(liveStateDataId, {
|
|
972
|
+
id: sessionId_2,
|
|
973
|
+
action: action
|
|
974
|
+
});
|
|
975
|
+
}
|
|
976
|
+
};
|
|
977
|
+
|
|
978
|
+
export { SnippylyArrowTool as VeltArrowTool, SnippylyArrows as VeltArrows, SnippylyCommentBubble as VeltCommentBubble, VeltCommentPlayerTimeline, SnippylyCommentTool as VeltCommentTool, SnippylyComments as VeltComments, SnippylyCommentsSidebar as VeltCommentsSidebar, SnippylyCursor as VeltCursor, SnippylyHuddle as VeltHuddle, SnippylyHuddleTool as VeltHuddleTool, SnippylyPresence as VeltPresence, SnippylyProvider as VeltProvider, SnippylyRecorderControlPanel as VeltRecorderControlPanel, SnippylyRecorderNotes as VeltRecorderNotes, SnippylyRecorderPlayer as VeltRecorderPlayer, SnippylyRecorderTool as VeltRecorderTool, SnippylySidebarButton as VeltSidebarButton, SnippylyTagTool as VeltTagTool, SnippylyTags as VeltTags, SnippylyUserInviteTool as VeltUserInviteTool, SnippylyUserRequestTool as VeltUserRequestTool, VeltVideoPlayer, createLiveStateMiddleware, useAIRewriterUtils, useAddLocation, useClient, useCommentAddHandler, useCommentAnnotations, useCommentDialogSidebarClickHandler, useCommentModeState, useCommentUpdateHandler, useCommentUtils, useCursorUsers, useCursorUtils, useEditor, useEditorAccessRequestHandler, useHuddleUtils, useIdentify, useLiveSelectionUtils, useLiveState, useLiveStateData, useLiveStateSyncUtils, usePresenceUsers, usePresenceUtils, useRecorderAddHandler, useRecorderUtils, useSetDocumentId, useSetLiveStateData, useSetLocation, useTagAnnotations, useTagUtils, useUserEditorState, useVeltClient };
|
|
889
979
|
//# sourceMappingURL=index.js.map
|