@contentstack/live-preview-utils 3.2.2 → 3.2.4
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/README.md +2 -2
- package/dist/legacy/index.cjs +2 -44
- package/dist/legacy/index.cjs.map +1 -1
- package/dist/legacy/index.d.cts +3 -15
- package/dist/legacy/index.d.ts +3 -15
- package/dist/legacy/index.js +1 -43
- package/dist/legacy/index.js.map +1 -1
- package/dist/legacy/light-sdk.cjs +70 -0
- package/dist/legacy/light-sdk.cjs.map +1 -0
- package/dist/legacy/light-sdk.d.cts +19 -0
- package/dist/legacy/light-sdk.d.ts +19 -0
- package/dist/legacy/light-sdk.js +51 -0
- package/dist/legacy/light-sdk.js.map +1 -0
- package/dist/legacy/livePreview/eventManager/postMessageEvent.hooks.cjs +1 -1
- package/dist/legacy/livePreview/eventManager/postMessageEvent.hooks.js +1 -1
- package/dist/legacy/preview/contentstack-live-preview-HOC.cjs +1 -1
- package/dist/legacy/preview/contentstack-live-preview-HOC.js +1 -1
- package/dist/legacy/visualBuilder/components/Collab/ThreadPopup/CommentTextArea.cjs +23 -20
- package/dist/legacy/visualBuilder/components/Collab/ThreadPopup/CommentTextArea.cjs.map +1 -1
- package/dist/legacy/visualBuilder/components/Collab/ThreadPopup/CommentTextArea.js +23 -20
- package/dist/legacy/visualBuilder/components/Collab/ThreadPopup/CommentTextArea.js.map +1 -1
- package/dist/legacy/visualBuilder/eventManager/useCollab.cjs +6 -2
- package/dist/legacy/visualBuilder/eventManager/useCollab.cjs.map +1 -1
- package/dist/legacy/visualBuilder/eventManager/useCollab.js +6 -2
- package/dist/legacy/visualBuilder/eventManager/useCollab.js.map +1 -1
- package/dist/legacy/visualBuilder/generators/generateThread.cjs +1 -0
- package/dist/legacy/visualBuilder/generators/generateThread.cjs.map +1 -1
- package/dist/legacy/visualBuilder/generators/generateThread.js +1 -0
- package/dist/legacy/visualBuilder/generators/generateThread.js.map +1 -1
- package/dist/modern/index.cjs +2 -44
- package/dist/modern/index.cjs.map +1 -1
- package/dist/modern/index.d.cts +2 -14
- package/dist/modern/index.d.ts +2 -14
- package/dist/modern/index.js +1 -43
- package/dist/modern/index.js.map +1 -1
- package/dist/modern/light-sdk.cjs +70 -0
- package/dist/modern/light-sdk.cjs.map +1 -0
- package/dist/modern/light-sdk.d.cts +19 -0
- package/dist/modern/light-sdk.d.ts +19 -0
- package/dist/modern/light-sdk.js +51 -0
- package/dist/modern/light-sdk.js.map +1 -0
- package/dist/modern/livePreview/eventManager/postMessageEvent.hooks.cjs +1 -1
- package/dist/modern/livePreview/eventManager/postMessageEvent.hooks.js +1 -1
- package/dist/modern/preview/contentstack-live-preview-HOC.cjs +1 -1
- package/dist/modern/preview/contentstack-live-preview-HOC.js +1 -1
- package/dist/modern/visualBuilder/components/Collab/ThreadPopup/CommentTextArea.cjs +7 -1
- package/dist/modern/visualBuilder/components/Collab/ThreadPopup/CommentTextArea.cjs.map +1 -1
- package/dist/modern/visualBuilder/components/Collab/ThreadPopup/CommentTextArea.js +7 -1
- package/dist/modern/visualBuilder/components/Collab/ThreadPopup/CommentTextArea.js.map +1 -1
- package/dist/modern/visualBuilder/eventManager/useCollab.cjs +4 -0
- package/dist/modern/visualBuilder/eventManager/useCollab.cjs.map +1 -1
- package/dist/modern/visualBuilder/eventManager/useCollab.js +4 -0
- package/dist/modern/visualBuilder/eventManager/useCollab.js.map +1 -1
- package/dist/modern/visualBuilder/generators/generateThread.cjs +1 -0
- package/dist/modern/visualBuilder/generators/generateThread.cjs.map +1 -1
- package/dist/modern/visualBuilder/generators/generateThread.js +1 -0
- package/dist/modern/visualBuilder/generators/generateThread.js.map +1 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -15,8 +15,8 @@ npm install @contentstack/live-preview-utils
|
|
|
15
15
|
Alternatively, if you want to include the package directly in your website HTML code, use the following command:
|
|
16
16
|
|
|
17
17
|
```html
|
|
18
|
-
<script type='module' integrity='sha384-
|
|
19
|
-
import ContentstackLivePreview from 'https://esm.sh/@contentstack/live-preview-utils@3.2.
|
|
18
|
+
<script type='module' integrity='sha384-b6G+ggU20rGxqCqsgaS6zludFgj5N11xsuXhMEIARMuQY2PtyDS04TU0H5goP+32' crossorigin="anonymous">
|
|
19
|
+
import ContentstackLivePreview from 'https://esm.sh/@contentstack/live-preview-utils@3.2.4';
|
|
20
20
|
|
|
21
21
|
ContentstackLivePreview.init({
|
|
22
22
|
stackDetails: {
|
package/dist/legacy/index.cjs
CHANGED
|
@@ -35,50 +35,8 @@ __export(index_exports, {
|
|
|
35
35
|
});
|
|
36
36
|
module.exports = __toCommonJS(index_exports);
|
|
37
37
|
var import_contentstack_live_preview_HOC = __toESM(require("./preview/contentstack-live-preview-HOC.cjs"), 1);
|
|
38
|
-
var
|
|
39
|
-
|
|
40
|
-
if (typeof window === "undefined") {
|
|
41
|
-
return Promise.resolve(_LightLivePreviewHoC.previewConstructors);
|
|
42
|
-
}
|
|
43
|
-
return _LightLivePreviewHoC.initializePreview();
|
|
44
|
-
}
|
|
45
|
-
static initializePreview() {
|
|
46
|
-
_LightLivePreviewHoC.previewConstructors = {
|
|
47
|
-
livePreview: {},
|
|
48
|
-
visualBuilder: {}
|
|
49
|
-
};
|
|
50
|
-
_LightLivePreviewHoC.onEntryChangeCallbacks = {};
|
|
51
|
-
return Promise.resolve(_LightLivePreviewHoC.previewConstructors);
|
|
52
|
-
}
|
|
53
|
-
static get hash() {
|
|
54
|
-
return "";
|
|
55
|
-
}
|
|
56
|
-
static get config() {
|
|
57
|
-
return {};
|
|
58
|
-
}
|
|
59
|
-
static isInitialized() {
|
|
60
|
-
return false;
|
|
61
|
-
}
|
|
62
|
-
static onEntryChange(callback, config = {}) {
|
|
63
|
-
const { skipInitialRender = false } = config;
|
|
64
|
-
if (!skipInitialRender) {
|
|
65
|
-
callback();
|
|
66
|
-
}
|
|
67
|
-
return "live-preview-id";
|
|
68
|
-
}
|
|
69
|
-
static onLiveEdit(callback) {
|
|
70
|
-
return "live-preview-id";
|
|
71
|
-
}
|
|
72
|
-
static unsubscribeOnEntryChange() {
|
|
73
|
-
}
|
|
74
|
-
static getSdkVersion() {
|
|
75
|
-
return "3.2.2";
|
|
76
|
-
}
|
|
77
|
-
};
|
|
78
|
-
_LightLivePreviewHoC.previewConstructors = {};
|
|
79
|
-
_LightLivePreviewHoC.onEntryChangeCallbacks = {};
|
|
80
|
-
var LightLivePreviewHoC = _LightLivePreviewHoC;
|
|
81
|
-
var ContentstackLivePreview = typeof process !== "undefined" && (process.env.PURGE_PREVIEW_SDK === "true" || process.env.REACT_APP_PURGE_PREVIEW_SDK === "true") ? LightLivePreviewHoC : import_contentstack_live_preview_HOC.default;
|
|
38
|
+
var import_light_sdk = __toESM(require("./light-sdk.cjs"), 1);
|
|
39
|
+
var ContentstackLivePreview = typeof process !== "undefined" && (process.env.PURGE_PREVIEW_SDK === "true" || process.env.REACT_APP_PURGE_PREVIEW_SDK === "true") ? import_light_sdk.default : import_contentstack_live_preview_HOC.default;
|
|
82
40
|
var VB_EmptyBlockParentClass = "visual-builder__empty-block-parent";
|
|
83
41
|
var index_default = ContentstackLivePreview;
|
|
84
42
|
// Annotate the CommonJS export names for ESM import in node:
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/index.ts"],"sourcesContent":["import ContentstackLivePreviewHOC from \"./preview/contentstack-live-preview-HOC\";\nimport { IStackSdk as ExternalStackSdkType } from \"./types/types\";\n\nimport
|
|
1
|
+
{"version":3,"sources":["../../src/index.ts"],"sourcesContent":["import ContentstackLivePreviewHOC from \"./preview/contentstack-live-preview-HOC\";\nimport { IStackSdk as ExternalStackSdkType } from \"./types/types\";\n\nimport LightLivePreviewHoC from \"./light-sdk\";\n\nexport type IStackSdk = ExternalStackSdkType;\n\n\nconst ContentstackLivePreview =\n typeof process !== \"undefined\" &&\n (process?.env?.PURGE_PREVIEW_SDK === \"true\" ||\n process?.env?.REACT_APP_PURGE_PREVIEW_SDK === \"true\")\n ? LightLivePreviewHoC\n : ContentstackLivePreviewHOC;\n\nexport const VB_EmptyBlockParentClass = \"visual-builder__empty-block-parent\";\nexport default ContentstackLivePreview;\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,2CAAuC;AAGvC,uBAAgC;AAKhC,IAAM,0BACF,OAAO,YAAY,gBAClB,kCAAoC,UACjC,4CAA8C,UAC5C,iBAAAA,UACA,qCAAAC;AAEH,IAAM,2BAA2B;AACxC,IAAO,gBAAQ;","names":["LightLivePreviewHoC","ContentstackLivePreviewHOC"]}
|
package/dist/legacy/index.d.cts
CHANGED
|
@@ -1,23 +1,11 @@
|
|
|
1
1
|
import ContentstackLivePreview$1 from './preview/contentstack-live-preview-HOC.cjs';
|
|
2
2
|
import { IStackSdk as IStackSdk$1 } from './types/types.cjs';
|
|
3
|
-
import
|
|
3
|
+
import LightLivePreviewHoC from './light-sdk.cjs';
|
|
4
|
+
import './livePreview/types/onEntryChangeCallback.type.cjs';
|
|
4
5
|
import './visualBuilder/types/collab.types.cjs';
|
|
5
6
|
|
|
6
7
|
type IStackSdk = IStackSdk$1;
|
|
7
|
-
declare
|
|
8
|
-
private static previewConstructors;
|
|
9
|
-
private static onEntryChangeCallbacks;
|
|
10
|
-
static init(): Promise<{}>;
|
|
11
|
-
private static initializePreview;
|
|
12
|
-
static get hash(): string;
|
|
13
|
-
static get config(): {};
|
|
14
|
-
static isInitialized(): boolean;
|
|
15
|
-
static onEntryChange(callback: OnEntryChangeCallback, config?: OnEntryChangeConfig): OnEntryChangeCallbackUID;
|
|
16
|
-
static onLiveEdit(callback: OnEntryChangeCallback): string;
|
|
17
|
-
static unsubscribeOnEntryChange(): void;
|
|
18
|
-
static getSdkVersion(): string;
|
|
19
|
-
}
|
|
20
|
-
declare const ContentstackLivePreview: typeof LightLivePreviewHoC | typeof ContentstackLivePreview$1;
|
|
8
|
+
declare const ContentstackLivePreview: typeof ContentstackLivePreview$1 | typeof LightLivePreviewHoC;
|
|
21
9
|
declare const VB_EmptyBlockParentClass = "visual-builder__empty-block-parent";
|
|
22
10
|
|
|
23
11
|
export { type IStackSdk, VB_EmptyBlockParentClass, ContentstackLivePreview as default };
|
package/dist/legacy/index.d.ts
CHANGED
|
@@ -1,23 +1,11 @@
|
|
|
1
1
|
import ContentstackLivePreview$1 from './preview/contentstack-live-preview-HOC.js';
|
|
2
2
|
import { IStackSdk as IStackSdk$1 } from './types/types.js';
|
|
3
|
-
import
|
|
3
|
+
import LightLivePreviewHoC from './light-sdk.js';
|
|
4
|
+
import './livePreview/types/onEntryChangeCallback.type.js';
|
|
4
5
|
import './visualBuilder/types/collab.types.js';
|
|
5
6
|
|
|
6
7
|
type IStackSdk = IStackSdk$1;
|
|
7
|
-
declare
|
|
8
|
-
private static previewConstructors;
|
|
9
|
-
private static onEntryChangeCallbacks;
|
|
10
|
-
static init(): Promise<{}>;
|
|
11
|
-
private static initializePreview;
|
|
12
|
-
static get hash(): string;
|
|
13
|
-
static get config(): {};
|
|
14
|
-
static isInitialized(): boolean;
|
|
15
|
-
static onEntryChange(callback: OnEntryChangeCallback, config?: OnEntryChangeConfig): OnEntryChangeCallbackUID;
|
|
16
|
-
static onLiveEdit(callback: OnEntryChangeCallback): string;
|
|
17
|
-
static unsubscribeOnEntryChange(): void;
|
|
18
|
-
static getSdkVersion(): string;
|
|
19
|
-
}
|
|
20
|
-
declare const ContentstackLivePreview: typeof LightLivePreviewHoC | typeof ContentstackLivePreview$1;
|
|
8
|
+
declare const ContentstackLivePreview: typeof ContentstackLivePreview$1 | typeof LightLivePreviewHoC;
|
|
21
9
|
declare const VB_EmptyBlockParentClass = "visual-builder__empty-block-parent";
|
|
22
10
|
|
|
23
11
|
export { type IStackSdk, VB_EmptyBlockParentClass, ContentstackLivePreview as default };
|
package/dist/legacy/index.js
CHANGED
|
@@ -2,49 +2,7 @@ import "./chunk-5WRI5ZAA.js";
|
|
|
2
2
|
|
|
3
3
|
// src/index.ts
|
|
4
4
|
import ContentstackLivePreviewHOC from "./preview/contentstack-live-preview-HOC.js";
|
|
5
|
-
|
|
6
|
-
static init() {
|
|
7
|
-
if (typeof window === "undefined") {
|
|
8
|
-
return Promise.resolve(_LightLivePreviewHoC.previewConstructors);
|
|
9
|
-
}
|
|
10
|
-
return _LightLivePreviewHoC.initializePreview();
|
|
11
|
-
}
|
|
12
|
-
static initializePreview() {
|
|
13
|
-
_LightLivePreviewHoC.previewConstructors = {
|
|
14
|
-
livePreview: {},
|
|
15
|
-
visualBuilder: {}
|
|
16
|
-
};
|
|
17
|
-
_LightLivePreviewHoC.onEntryChangeCallbacks = {};
|
|
18
|
-
return Promise.resolve(_LightLivePreviewHoC.previewConstructors);
|
|
19
|
-
}
|
|
20
|
-
static get hash() {
|
|
21
|
-
return "";
|
|
22
|
-
}
|
|
23
|
-
static get config() {
|
|
24
|
-
return {};
|
|
25
|
-
}
|
|
26
|
-
static isInitialized() {
|
|
27
|
-
return false;
|
|
28
|
-
}
|
|
29
|
-
static onEntryChange(callback, config = {}) {
|
|
30
|
-
const { skipInitialRender = false } = config;
|
|
31
|
-
if (!skipInitialRender) {
|
|
32
|
-
callback();
|
|
33
|
-
}
|
|
34
|
-
return "live-preview-id";
|
|
35
|
-
}
|
|
36
|
-
static onLiveEdit(callback) {
|
|
37
|
-
return "live-preview-id";
|
|
38
|
-
}
|
|
39
|
-
static unsubscribeOnEntryChange() {
|
|
40
|
-
}
|
|
41
|
-
static getSdkVersion() {
|
|
42
|
-
return "3.2.2";
|
|
43
|
-
}
|
|
44
|
-
};
|
|
45
|
-
_LightLivePreviewHoC.previewConstructors = {};
|
|
46
|
-
_LightLivePreviewHoC.onEntryChangeCallbacks = {};
|
|
47
|
-
var LightLivePreviewHoC = _LightLivePreviewHoC;
|
|
5
|
+
import LightLivePreviewHoC from "./light-sdk.js";
|
|
48
6
|
var ContentstackLivePreview = typeof process !== "undefined" && (process.env.PURGE_PREVIEW_SDK === "true" || process.env.REACT_APP_PURGE_PREVIEW_SDK === "true") ? LightLivePreviewHoC : ContentstackLivePreviewHOC;
|
|
49
7
|
var VB_EmptyBlockParentClass = "visual-builder__empty-block-parent";
|
|
50
8
|
var index_default = ContentstackLivePreview;
|
package/dist/legacy/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/index.ts"],"sourcesContent":["import ContentstackLivePreviewHOC from \"./preview/contentstack-live-preview-HOC\";\nimport { IStackSdk as ExternalStackSdkType } from \"./types/types\";\n\nimport
|
|
1
|
+
{"version":3,"sources":["../../src/index.ts"],"sourcesContent":["import ContentstackLivePreviewHOC from \"./preview/contentstack-live-preview-HOC\";\nimport { IStackSdk as ExternalStackSdkType } from \"./types/types\";\n\nimport LightLivePreviewHoC from \"./light-sdk\";\n\nexport type IStackSdk = ExternalStackSdkType;\n\n\nconst ContentstackLivePreview =\n typeof process !== \"undefined\" &&\n (process?.env?.PURGE_PREVIEW_SDK === \"true\" ||\n process?.env?.REACT_APP_PURGE_PREVIEW_SDK === \"true\")\n ? LightLivePreviewHoC\n : ContentstackLivePreviewHOC;\n\nexport const VB_EmptyBlockParentClass = \"visual-builder__empty-block-parent\";\nexport default ContentstackLivePreview;\n"],"mappings":";;;AAAA,OAAO,gCAAgC;AAGvC,OAAO,yBAAyB;AAKhC,IAAM,0BACF,OAAO,YAAY,gBAClB,kCAAoC,UACjC,4CAA8C,UAC5C,sBACA;AAEH,IAAM,2BAA2B;AACxC,IAAO,gBAAQ;","names":[]}
|
|
@@ -0,0 +1,70 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __defProp = Object.defineProperty;
|
|
3
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
4
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
5
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
6
|
+
var __export = (target, all) => {
|
|
7
|
+
for (var name in all)
|
|
8
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
|
9
|
+
};
|
|
10
|
+
var __copyProps = (to, from, except, desc) => {
|
|
11
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
12
|
+
for (let key of __getOwnPropNames(from))
|
|
13
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
14
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
15
|
+
}
|
|
16
|
+
return to;
|
|
17
|
+
};
|
|
18
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
19
|
+
|
|
20
|
+
// src/light-sdk.ts
|
|
21
|
+
var light_sdk_exports = {};
|
|
22
|
+
__export(light_sdk_exports, {
|
|
23
|
+
default: () => light_sdk_default
|
|
24
|
+
});
|
|
25
|
+
module.exports = __toCommonJS(light_sdk_exports);
|
|
26
|
+
var _LightLivePreviewHoC = class _LightLivePreviewHoC {
|
|
27
|
+
static init() {
|
|
28
|
+
if (typeof window === "undefined") {
|
|
29
|
+
return Promise.resolve(_LightLivePreviewHoC.previewConstructors);
|
|
30
|
+
}
|
|
31
|
+
return _LightLivePreviewHoC.initializePreview();
|
|
32
|
+
}
|
|
33
|
+
static initializePreview() {
|
|
34
|
+
_LightLivePreviewHoC.previewConstructors = {
|
|
35
|
+
livePreview: {},
|
|
36
|
+
visualBuilder: {}
|
|
37
|
+
};
|
|
38
|
+
_LightLivePreviewHoC.onEntryChangeCallbacks = {};
|
|
39
|
+
return Promise.resolve(_LightLivePreviewHoC.previewConstructors);
|
|
40
|
+
}
|
|
41
|
+
static get hash() {
|
|
42
|
+
return "";
|
|
43
|
+
}
|
|
44
|
+
static get config() {
|
|
45
|
+
return {};
|
|
46
|
+
}
|
|
47
|
+
static isInitialized() {
|
|
48
|
+
return false;
|
|
49
|
+
}
|
|
50
|
+
static onEntryChange(callback, config = {}) {
|
|
51
|
+
const { skipInitialRender = false } = config;
|
|
52
|
+
if (!skipInitialRender) {
|
|
53
|
+
callback();
|
|
54
|
+
}
|
|
55
|
+
return "live-preview-id";
|
|
56
|
+
}
|
|
57
|
+
static onLiveEdit(callback) {
|
|
58
|
+
return "live-preview-id";
|
|
59
|
+
}
|
|
60
|
+
static unsubscribeOnEntryChange() {
|
|
61
|
+
}
|
|
62
|
+
static getSdkVersion() {
|
|
63
|
+
return "3.2.4";
|
|
64
|
+
}
|
|
65
|
+
};
|
|
66
|
+
_LightLivePreviewHoC.previewConstructors = {};
|
|
67
|
+
_LightLivePreviewHoC.onEntryChangeCallbacks = {};
|
|
68
|
+
var LightLivePreviewHoC = _LightLivePreviewHoC;
|
|
69
|
+
var light_sdk_default = LightLivePreviewHoC;
|
|
70
|
+
//# sourceMappingURL=light-sdk.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../src/light-sdk.ts"],"sourcesContent":["import { OnEntryChangeCallbackUID, OnEntryChangeConfig } from \"./livePreview/types/onEntryChangeCallback.type\";\n\nimport { OnEntryChangeCallback } from \"./livePreview/types/onEntryChangeCallback.type\";\nimport { IExportedConfig } from \"./types/types\";\n\nclass LightLivePreviewHoC {\n private static previewConstructors = {};\n private static onEntryChangeCallbacks = {};\n\n static init() {\n if (typeof window === \"undefined\") {\n return Promise.resolve(LightLivePreviewHoC.previewConstructors);\n }\n\n return LightLivePreviewHoC.initializePreview();\n }\n\n private static initializePreview() {\n LightLivePreviewHoC.previewConstructors = {\n livePreview: {},\n visualBuilder: {},\n };\n\n LightLivePreviewHoC.onEntryChangeCallbacks = {};\n\n return Promise.resolve(LightLivePreviewHoC.previewConstructors);\n }\n\n static get hash() {\n return \"\";\n }\n\n static get config() {\n return {} as IExportedConfig;\n }\n\n static isInitialized() {\n return false;\n }\n\n static onEntryChange(\n callback: OnEntryChangeCallback,\n config: OnEntryChangeConfig = {}\n ): OnEntryChangeCallbackUID {\n const { skipInitialRender = false } = config;\n\n if (!skipInitialRender) {\n callback();\n }\n\n return \"live-preview-id\";\n }\n\n static onLiveEdit(callback: OnEntryChangeCallback) {\n return \"live-preview-id\";\n }\n\n static unsubscribeOnEntryChange() {\n // intentionally empty\n }\n\n static getSdkVersion(): string {\n return process?.env?.PACKAGE_VERSION!;\n }\n}\n\nexport default LightLivePreviewHoC;"],"mappings":";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAKA,IAAM,uBAAN,MAAM,qBAAoB;AAAA,EAItB,OAAO,OAAO;AACV,QAAI,OAAO,WAAW,aAAa;AAC/B,aAAO,QAAQ,QAAQ,qBAAoB,mBAAmB;AAAA,IAClE;AAEA,WAAO,qBAAoB,kBAAkB;AAAA,EACjD;AAAA,EAEA,OAAe,oBAAoB;AAC/B,yBAAoB,sBAAsB;AAAA,MACtC,aAAa,CAAC;AAAA,MACd,eAAe,CAAC;AAAA,IACpB;AAEA,yBAAoB,yBAAyB,CAAC;AAE9C,WAAO,QAAQ,QAAQ,qBAAoB,mBAAmB;AAAA,EAClE;AAAA,EAEA,WAAW,OAAO;AACd,WAAO;AAAA,EACX;AAAA,EAEA,WAAW,SAAS;AAChB,WAAO,CAAC;AAAA,EACZ;AAAA,EAEA,OAAO,gBAAgB;AACnB,WAAO;AAAA,EACX;AAAA,EAEA,OAAO,cACH,UACA,SAA8B,CAAC,GACP;AACxB,UAAM,EAAE,oBAAoB,MAAM,IAAI;AAEtC,QAAI,CAAC,mBAAmB;AACpB,eAAS;AAAA,IACb;AAEA,WAAO;AAAA,EACX;AAAA,EAEA,OAAO,WAAW,UAAiC;AAC/C,WAAO;AAAA,EACX;AAAA,EAEA,OAAO,2BAA2B;AAAA,EAElC;AAAA,EAEA,OAAO,gBAAwB;AAC3B,WAAO;AAAA,EACX;AACJ;AA3DM,qBACa,sBAAsB,CAAC;AADpC,qBAEa,yBAAyB,CAAC;AAF7C,IAAM,sBAAN;AA6DA,IAAO,oBAAQ;","names":[]}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { OnEntryChangeCallback, OnEntryChangeConfig, OnEntryChangeCallbackUID } from './livePreview/types/onEntryChangeCallback.type.cjs';
|
|
2
|
+
import { IExportedConfig } from './types/types.cjs';
|
|
3
|
+
import './visualBuilder/types/collab.types.cjs';
|
|
4
|
+
|
|
5
|
+
declare class LightLivePreviewHoC {
|
|
6
|
+
private static previewConstructors;
|
|
7
|
+
private static onEntryChangeCallbacks;
|
|
8
|
+
static init(): Promise<{}>;
|
|
9
|
+
private static initializePreview;
|
|
10
|
+
static get hash(): string;
|
|
11
|
+
static get config(): IExportedConfig;
|
|
12
|
+
static isInitialized(): boolean;
|
|
13
|
+
static onEntryChange(callback: OnEntryChangeCallback, config?: OnEntryChangeConfig): OnEntryChangeCallbackUID;
|
|
14
|
+
static onLiveEdit(callback: OnEntryChangeCallback): string;
|
|
15
|
+
static unsubscribeOnEntryChange(): void;
|
|
16
|
+
static getSdkVersion(): string;
|
|
17
|
+
}
|
|
18
|
+
|
|
19
|
+
export { LightLivePreviewHoC as default };
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { OnEntryChangeCallback, OnEntryChangeConfig, OnEntryChangeCallbackUID } from './livePreview/types/onEntryChangeCallback.type.js';
|
|
2
|
+
import { IExportedConfig } from './types/types.js';
|
|
3
|
+
import './visualBuilder/types/collab.types.js';
|
|
4
|
+
|
|
5
|
+
declare class LightLivePreviewHoC {
|
|
6
|
+
private static previewConstructors;
|
|
7
|
+
private static onEntryChangeCallbacks;
|
|
8
|
+
static init(): Promise<{}>;
|
|
9
|
+
private static initializePreview;
|
|
10
|
+
static get hash(): string;
|
|
11
|
+
static get config(): IExportedConfig;
|
|
12
|
+
static isInitialized(): boolean;
|
|
13
|
+
static onEntryChange(callback: OnEntryChangeCallback, config?: OnEntryChangeConfig): OnEntryChangeCallbackUID;
|
|
14
|
+
static onLiveEdit(callback: OnEntryChangeCallback): string;
|
|
15
|
+
static unsubscribeOnEntryChange(): void;
|
|
16
|
+
static getSdkVersion(): string;
|
|
17
|
+
}
|
|
18
|
+
|
|
19
|
+
export { LightLivePreviewHoC as default };
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
import "./chunk-5WRI5ZAA.js";
|
|
2
|
+
|
|
3
|
+
// src/light-sdk.ts
|
|
4
|
+
var _LightLivePreviewHoC = class _LightLivePreviewHoC {
|
|
5
|
+
static init() {
|
|
6
|
+
if (typeof window === "undefined") {
|
|
7
|
+
return Promise.resolve(_LightLivePreviewHoC.previewConstructors);
|
|
8
|
+
}
|
|
9
|
+
return _LightLivePreviewHoC.initializePreview();
|
|
10
|
+
}
|
|
11
|
+
static initializePreview() {
|
|
12
|
+
_LightLivePreviewHoC.previewConstructors = {
|
|
13
|
+
livePreview: {},
|
|
14
|
+
visualBuilder: {}
|
|
15
|
+
};
|
|
16
|
+
_LightLivePreviewHoC.onEntryChangeCallbacks = {};
|
|
17
|
+
return Promise.resolve(_LightLivePreviewHoC.previewConstructors);
|
|
18
|
+
}
|
|
19
|
+
static get hash() {
|
|
20
|
+
return "";
|
|
21
|
+
}
|
|
22
|
+
static get config() {
|
|
23
|
+
return {};
|
|
24
|
+
}
|
|
25
|
+
static isInitialized() {
|
|
26
|
+
return false;
|
|
27
|
+
}
|
|
28
|
+
static onEntryChange(callback, config = {}) {
|
|
29
|
+
const { skipInitialRender = false } = config;
|
|
30
|
+
if (!skipInitialRender) {
|
|
31
|
+
callback();
|
|
32
|
+
}
|
|
33
|
+
return "live-preview-id";
|
|
34
|
+
}
|
|
35
|
+
static onLiveEdit(callback) {
|
|
36
|
+
return "live-preview-id";
|
|
37
|
+
}
|
|
38
|
+
static unsubscribeOnEntryChange() {
|
|
39
|
+
}
|
|
40
|
+
static getSdkVersion() {
|
|
41
|
+
return "3.2.4";
|
|
42
|
+
}
|
|
43
|
+
};
|
|
44
|
+
_LightLivePreviewHoC.previewConstructors = {};
|
|
45
|
+
_LightLivePreviewHoC.onEntryChangeCallbacks = {};
|
|
46
|
+
var LightLivePreviewHoC = _LightLivePreviewHoC;
|
|
47
|
+
var light_sdk_default = LightLivePreviewHoC;
|
|
48
|
+
export {
|
|
49
|
+
light_sdk_default as default
|
|
50
|
+
};
|
|
51
|
+
//# sourceMappingURL=light-sdk.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../src/light-sdk.ts"],"sourcesContent":["import { OnEntryChangeCallbackUID, OnEntryChangeConfig } from \"./livePreview/types/onEntryChangeCallback.type\";\n\nimport { OnEntryChangeCallback } from \"./livePreview/types/onEntryChangeCallback.type\";\nimport { IExportedConfig } from \"./types/types\";\n\nclass LightLivePreviewHoC {\n private static previewConstructors = {};\n private static onEntryChangeCallbacks = {};\n\n static init() {\n if (typeof window === \"undefined\") {\n return Promise.resolve(LightLivePreviewHoC.previewConstructors);\n }\n\n return LightLivePreviewHoC.initializePreview();\n }\n\n private static initializePreview() {\n LightLivePreviewHoC.previewConstructors = {\n livePreview: {},\n visualBuilder: {},\n };\n\n LightLivePreviewHoC.onEntryChangeCallbacks = {};\n\n return Promise.resolve(LightLivePreviewHoC.previewConstructors);\n }\n\n static get hash() {\n return \"\";\n }\n\n static get config() {\n return {} as IExportedConfig;\n }\n\n static isInitialized() {\n return false;\n }\n\n static onEntryChange(\n callback: OnEntryChangeCallback,\n config: OnEntryChangeConfig = {}\n ): OnEntryChangeCallbackUID {\n const { skipInitialRender = false } = config;\n\n if (!skipInitialRender) {\n callback();\n }\n\n return \"live-preview-id\";\n }\n\n static onLiveEdit(callback: OnEntryChangeCallback) {\n return \"live-preview-id\";\n }\n\n static unsubscribeOnEntryChange() {\n // intentionally empty\n }\n\n static getSdkVersion(): string {\n return process?.env?.PACKAGE_VERSION!;\n }\n}\n\nexport default LightLivePreviewHoC;"],"mappings":";;;AAKA,IAAM,uBAAN,MAAM,qBAAoB;AAAA,EAItB,OAAO,OAAO;AACV,QAAI,OAAO,WAAW,aAAa;AAC/B,aAAO,QAAQ,QAAQ,qBAAoB,mBAAmB;AAAA,IAClE;AAEA,WAAO,qBAAoB,kBAAkB;AAAA,EACjD;AAAA,EAEA,OAAe,oBAAoB;AAC/B,yBAAoB,sBAAsB;AAAA,MACtC,aAAa,CAAC;AAAA,MACd,eAAe,CAAC;AAAA,IACpB;AAEA,yBAAoB,yBAAyB,CAAC;AAE9C,WAAO,QAAQ,QAAQ,qBAAoB,mBAAmB;AAAA,EAClE;AAAA,EAEA,WAAW,OAAO;AACd,WAAO;AAAA,EACX;AAAA,EAEA,WAAW,SAAS;AAChB,WAAO,CAAC;AAAA,EACZ;AAAA,EAEA,OAAO,gBAAgB;AACnB,WAAO;AAAA,EACX;AAAA,EAEA,OAAO,cACH,UACA,SAA8B,CAAC,GACP;AACxB,UAAM,EAAE,oBAAoB,MAAM,IAAI;AAEtC,QAAI,CAAC,mBAAmB;AACpB,eAAS;AAAA,IACb;AAEA,WAAO;AAAA,EACX;AAAA,EAEA,OAAO,WAAW,UAAiC;AAC/C,WAAO;AAAA,EACX;AAAA,EAEA,OAAO,2BAA2B;AAAA,EAElC;AAAA,EAEA,OAAO,gBAAwB;AAC3B,WAAO;AAAA,EACX;AACJ;AA3DM,qBACa,sBAAsB,CAAC;AADpC,qBAEa,yBAAyB,CAAC;AAF7C,IAAM,sBAAN;AA6DA,IAAO,oBAAQ;","names":[]}
|
|
@@ -89,7 +89,7 @@ function sendInitializeLivePreviewPostMessageEvent() {
|
|
|
89
89
|
config: {
|
|
90
90
|
shouldReload: import_configManager.default.get().ssr,
|
|
91
91
|
href: window.location.href,
|
|
92
|
-
sdkVersion: "3.2.
|
|
92
|
+
sdkVersion: "3.2.4",
|
|
93
93
|
mode: import_configManager.default.get().mode
|
|
94
94
|
}
|
|
95
95
|
}
|
|
@@ -227,7 +227,7 @@ var _ContentstackLivePreview = class _ContentstackLivePreview {
|
|
|
227
227
|
* @returns The version of the SDK as a string.
|
|
228
228
|
*/
|
|
229
229
|
static getSdkVersion() {
|
|
230
|
-
return "3.2.
|
|
230
|
+
return "3.2.4";
|
|
231
231
|
}
|
|
232
232
|
};
|
|
233
233
|
_ContentstackLivePreview.previewConstructors = {};
|
|
@@ -195,7 +195,7 @@ var _ContentstackLivePreview = class _ContentstackLivePreview {
|
|
|
195
195
|
* @returns The version of the SDK as a string.
|
|
196
196
|
*/
|
|
197
197
|
static getSdkVersion() {
|
|
198
|
-
return "3.2.
|
|
198
|
+
return "3.2.4";
|
|
199
199
|
}
|
|
200
200
|
};
|
|
201
201
|
_ContentstackLivePreview.previewConstructors = {};
|
|
@@ -94,26 +94,29 @@ var MentionSuggestionsList = ({
|
|
|
94
94
|
}
|
|
95
95
|
},
|
|
96
96
|
ref: listRef,
|
|
97
|
-
children: filteredUsers.map((user, index) =>
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
97
|
+
children: filteredUsers.map((user, index) => /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
98
|
+
"li",
|
|
99
|
+
{
|
|
100
|
+
onClick: () => insertMention(user),
|
|
101
|
+
className: (0, import_classnames.default)(
|
|
102
|
+
"collab-thread-body--input--textarea--suggestionsList--item",
|
|
103
|
+
(0, import_collab.collabStyles)()["collab-thread-body--input--textarea--suggestionsList--item"],
|
|
104
|
+
index === selectedIndex ? (0, import_collab.collabStyles)()["collab-thread-body--input--textarea--suggestionsList--item-selected"] : ""
|
|
105
|
+
),
|
|
106
|
+
ref: (el) => itemRefs.current[index] = el,
|
|
107
|
+
onKeyDown: (e) => e.key === "Enter" ? insertMention(user) : handleKeyDown(e),
|
|
108
|
+
tabIndex: -1,
|
|
109
|
+
"aria-selected": index === selectedIndex,
|
|
110
|
+
children: user.display === user.email ? user.display.length > 20 ? /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_Tooltip.default, { content: user.display || "", children: (user.display || "").substring(0, 18) + "..." }) : user.display : /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
111
|
+
import_Tooltip.default,
|
|
112
|
+
{
|
|
113
|
+
content: user.display + " - " + user.email || "",
|
|
114
|
+
children: user.display.length > 20 ? (user.display || "").substring(0, 18) + "..." : user.display
|
|
115
|
+
}
|
|
116
|
+
)
|
|
117
|
+
},
|
|
118
|
+
user.uid
|
|
119
|
+
))
|
|
117
120
|
}
|
|
118
121
|
);
|
|
119
122
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../../../src/visualBuilder/components/Collab/ThreadPopup/CommentTextArea.tsx"],"sourcesContent":["/** @jsxImportSource preact */\nimport React from \"preact/compat\";\nimport { useEffect } from \"preact/hooks\";\nimport { useCommentTextArea } from \"../../../hooks/useCommentTextArea\";\nimport { collabStyles, flexAlignCenter } from \"../../../collab.style\";\nimport {\n ICommentTextAreaProps,\n IMentionList,\n} from \"../../../types/collab.types\";\nimport classNames from \"classnames\";\nimport Tooltip from \"../Tooltip/Tooltip\";\n\nconst ErrorIndicator: React.FC<{ errorMessage: string }> = ({\n errorMessage,\n}) => (\n <div\n className={classNames(\n \"collab-thread-input-indicator--error\",\n collabStyles()[\"collab-thread-input-indicator--error\"]\n )}\n >\n {errorMessage}\n </div>\n);\n\nconst CharacterCounter: React.FC<{\n currentLength: number;\n maxLength: number;\n}> = ({ currentLength, maxLength }) => (\n <div\n className={classNames(\n \"collab-thread-input-indicator--count\",\n collabStyles()[\"collab-thread-input-indicator--count\"]\n )}\n >\n {currentLength}/{maxLength}\n </div>\n);\n\nconst MentionSuggestionsList: React.FC<{\n filteredUsers: IMentionList[];\n selectedIndex: number;\n cursorPosition: { top: number; showAbove: boolean };\n inputRef: React.RefObject<HTMLTextAreaElement>;\n listRef: React.RefObject<HTMLUListElement>;\n itemRefs: React.MutableRefObject<(HTMLLIElement | null)[]>;\n insertMention: (user: IMentionList) => void;\n handleKeyDown: (event: KeyboardEvent) => void;\n}> = ({\n filteredUsers,\n selectedIndex,\n cursorPosition,\n inputRef,\n listRef,\n itemRefs,\n insertMention,\n handleKeyDown,\n}) => {\n if (filteredUsers.length === 0) return null;\n\n return (\n <ul\n className={classNames(\n \"collab-thread-body--input--textarea--suggestionsList\",\n collabStyles()[\n \"collab-thread-body--input--textarea--suggestionsList\"\n ]\n )}\n style={{\n ...(cursorPosition.showAbove\n ? {\n bottom: `${window.innerHeight - (inputRef.current?.getBoundingClientRect().top || 0) - cursorPosition.top}px`,\n top: \"auto\",\n }\n : {\n top: `${(inputRef.current?.getBoundingClientRect().top || 0) + cursorPosition.top}px`,\n }),\n }}\n ref={listRef}\n >\n {filteredUsers.map((user, index) => (\n <li\n key={user.uid}\n onClick={() => insertMention(user)}\n className={classNames(\n \"collab-thread-body--input--textarea--suggestionsList--item\",\n collabStyles()[\n \"collab-thread-body--input--textarea--suggestionsList--item\"\n ],\n index === selectedIndex\n ? collabStyles()[\n \"collab-thread-body--input--textarea--suggestionsList--item-selected\"\n ]\n : \"\"\n )}\n ref={(el) => (itemRefs.current[index] = el)}\n onKeyDown={(e) =>\n e.key === \"Enter\"\n ? insertMention(user)\n : handleKeyDown(e as KeyboardEvent)\n }\n tabIndex={-1}\n aria-selected={index === selectedIndex}\n >\n {(user.display?.length || 0) > 20 ? (\n <Tooltip content={user.display || \"\"}>\n {(user.display || \"\").substring(0, 18) + \"...\"}\n </Tooltip>\n ) : (\n user.display || \"\"\n )}\n </li>\n ))}\n </ul>\n );\n};\n\nconst CommentTextArea: React.FC<ICommentTextAreaProps> = React.memo(\n ({ userState, handleOnSaveRef, comment, onClose }) => {\n const {\n state,\n error,\n showSuggestions,\n cursorPosition,\n selectedIndex,\n filteredUsers,\n inputRef,\n listRef,\n itemRefs,\n handleInputChange,\n handleKeyDown,\n handleSubmit,\n insertMention,\n maxMessageLength,\n } = useCommentTextArea(userState, comment, onClose);\n\n const onChangeHandler = (event: Event) =>\n handleInputChange(event as any);\n const onKeyDownHandler = (event: KeyboardEvent) =>\n handleKeyDown(event as any);\n\n useEffect(() => {\n handleOnSaveRef.current = handleSubmit;\n }, [handleSubmit, handleOnSaveRef]);\n\n return (\n <div\n className={classNames(\n \"collab-thread-body--input--wrapper\",\n collabStyles()[\"collab-thread-body--input--wrapper\"]\n )}\n >\n <div\n className={classNames(\n \"collab-thread-body--input\",\n collabStyles()[\"collab-thread-body--input\"]\n )}\n >\n <div\n className={classNames(\n \"collab-thread-body--input--textarea--wrapper\",\n collabStyles()[\n \"collab-thread-body--input--textarea--wrapper\"\n ]\n )}\n >\n <textarea\n name=\"collab-thread-body--input--textarea\"\n id=\"collab-thread-body--input--textarea\"\n rows={1}\n className={classNames(\n \"collab-thread-body--input--textarea\",\n collabStyles()[\n \"collab-thread-body--input--textarea\"\n ]\n )}\n value={state.message}\n onChange={onChangeHandler}\n onKeyDown={onKeyDownHandler}\n maxLength={maxMessageLength}\n placeholder=\"Enter a comment or tag others using “@”\"\n ref={inputRef}\n />\n {showSuggestions && (\n <MentionSuggestionsList\n filteredUsers={filteredUsers}\n selectedIndex={selectedIndex}\n cursorPosition={cursorPosition}\n inputRef={inputRef}\n listRef={listRef}\n itemRefs={itemRefs}\n insertMention={insertMention}\n handleKeyDown={handleKeyDown}\n />\n )}\n </div>\n </div>\n\n <div\n className={classNames(\n \"collab-thread-input-indicator--wrapper\",\n \"flex-v-center\",\n collabStyles()[\n \"collab-thread-input-indicator--wrapper\"\n ],\n flexAlignCenter\n )}\n >\n <ErrorIndicator errorMessage={error.message} />\n <CharacterCounter\n currentLength={state.message.length}\n maxLength={maxMessageLength}\n />\n </div>\n </div>\n );\n }\n);\n\nexport default CommentTextArea;\n"],"mappings":"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","names":["classNames","_a","Tooltip","React"]}
|
|
1
|
+
{"version":3,"sources":["../../../../../../src/visualBuilder/components/Collab/ThreadPopup/CommentTextArea.tsx"],"sourcesContent":["/** @jsxImportSource preact */\nimport React from \"preact/compat\";\nimport { useEffect } from \"preact/hooks\";\nimport { useCommentTextArea } from \"../../../hooks/useCommentTextArea\";\nimport { collabStyles, flexAlignCenter } from \"../../../collab.style\";\nimport {\n ICommentTextAreaProps,\n IMentionList,\n} from \"../../../types/collab.types\";\nimport classNames from \"classnames\";\nimport Tooltip from \"../Tooltip/Tooltip\";\n\nconst ErrorIndicator: React.FC<{ errorMessage: string }> = ({\n errorMessage,\n}) => (\n <div\n className={classNames(\n \"collab-thread-input-indicator--error\",\n collabStyles()[\"collab-thread-input-indicator--error\"]\n )}\n >\n {errorMessage}\n </div>\n);\n\nconst CharacterCounter: React.FC<{\n currentLength: number;\n maxLength: number;\n}> = ({ currentLength, maxLength }) => (\n <div\n className={classNames(\n \"collab-thread-input-indicator--count\",\n collabStyles()[\"collab-thread-input-indicator--count\"]\n )}\n >\n {currentLength}/{maxLength}\n </div>\n);\n\nconst MentionSuggestionsList: React.FC<{\n filteredUsers: IMentionList[];\n selectedIndex: number;\n cursorPosition: { top: number; showAbove: boolean };\n inputRef: React.RefObject<HTMLTextAreaElement>;\n listRef: React.RefObject<HTMLUListElement>;\n itemRefs: React.MutableRefObject<(HTMLLIElement | null)[]>;\n insertMention: (user: IMentionList) => void;\n handleKeyDown: (event: KeyboardEvent) => void;\n}> = ({\n filteredUsers,\n selectedIndex,\n cursorPosition,\n inputRef,\n listRef,\n itemRefs,\n insertMention,\n handleKeyDown,\n}) => {\n if (filteredUsers.length === 0) return null;\n\n return (\n <ul\n className={classNames(\n \"collab-thread-body--input--textarea--suggestionsList\",\n collabStyles()[\n \"collab-thread-body--input--textarea--suggestionsList\"\n ]\n )}\n style={{\n ...(cursorPosition.showAbove\n ? {\n bottom: `${window.innerHeight - (inputRef.current?.getBoundingClientRect().top || 0) - cursorPosition.top}px`,\n top: \"auto\",\n }\n : {\n top: `${(inputRef.current?.getBoundingClientRect().top || 0) + cursorPosition.top}px`,\n }),\n }}\n ref={listRef}\n >\n {filteredUsers.map((user, index) => (\n <li\n key={user.uid}\n onClick={() => insertMention(user)}\n className={classNames(\n \"collab-thread-body--input--textarea--suggestionsList--item\",\n collabStyles()[\n \"collab-thread-body--input--textarea--suggestionsList--item\"\n ],\n index === selectedIndex\n ? collabStyles()[\n \"collab-thread-body--input--textarea--suggestionsList--item-selected\"\n ]\n : \"\"\n )}\n ref={(el) => (itemRefs.current[index] = el)}\n onKeyDown={(e) =>\n e.key === \"Enter\"\n ? insertMention(user)\n : handleKeyDown(e as KeyboardEvent)\n }\n tabIndex={-1}\n aria-selected={index === selectedIndex}\n >\n {user.display === user.email ? (\n user.display.length > 20 ? (\n <Tooltip content={user.display || \"\"}>\n {(user.display || \"\").substring(0, 18) + \"...\"}\n </Tooltip>\n ) : (\n user.display\n )\n ) : (\n <Tooltip\n content={user.display + \" - \" + user.email || \"\"}\n >\n {user.display.length > 20\n ? (user.display || \"\").substring(0, 18) + \"...\"\n : user.display}\n </Tooltip>\n )}\n </li>\n ))}\n </ul>\n );\n};\n\nconst CommentTextArea: React.FC<ICommentTextAreaProps> = React.memo(\n ({ userState, handleOnSaveRef, comment, onClose }) => {\n const {\n state,\n error,\n showSuggestions,\n cursorPosition,\n selectedIndex,\n filteredUsers,\n inputRef,\n listRef,\n itemRefs,\n handleInputChange,\n handleKeyDown,\n handleSubmit,\n insertMention,\n maxMessageLength,\n } = useCommentTextArea(userState, comment, onClose);\n\n const onChangeHandler = (event: Event) =>\n handleInputChange(event as any);\n const onKeyDownHandler = (event: KeyboardEvent) =>\n handleKeyDown(event as any);\n\n useEffect(() => {\n handleOnSaveRef.current = handleSubmit;\n }, [handleSubmit, handleOnSaveRef]);\n\n return (\n <div\n className={classNames(\n \"collab-thread-body--input--wrapper\",\n collabStyles()[\"collab-thread-body--input--wrapper\"]\n )}\n >\n <div\n className={classNames(\n \"collab-thread-body--input\",\n collabStyles()[\"collab-thread-body--input\"]\n )}\n >\n <div\n className={classNames(\n \"collab-thread-body--input--textarea--wrapper\",\n collabStyles()[\n \"collab-thread-body--input--textarea--wrapper\"\n ]\n )}\n >\n <textarea\n name=\"collab-thread-body--input--textarea\"\n id=\"collab-thread-body--input--textarea\"\n rows={1}\n className={classNames(\n \"collab-thread-body--input--textarea\",\n collabStyles()[\n \"collab-thread-body--input--textarea\"\n ]\n )}\n value={state.message}\n onChange={onChangeHandler}\n onKeyDown={onKeyDownHandler}\n maxLength={maxMessageLength}\n placeholder=\"Enter a comment or tag others using “@”\"\n ref={inputRef}\n />\n {showSuggestions && (\n <MentionSuggestionsList\n filteredUsers={filteredUsers}\n selectedIndex={selectedIndex}\n cursorPosition={cursorPosition}\n inputRef={inputRef}\n listRef={listRef}\n itemRefs={itemRefs}\n insertMention={insertMention}\n handleKeyDown={handleKeyDown}\n />\n )}\n </div>\n </div>\n\n <div\n className={classNames(\n \"collab-thread-input-indicator--wrapper\",\n \"flex-v-center\",\n collabStyles()[\n \"collab-thread-input-indicator--wrapper\"\n ],\n flexAlignCenter\n )}\n >\n <ErrorIndicator errorMessage={error.message} />\n <CharacterCounter\n currentLength={state.message.length}\n maxLength={maxMessageLength}\n />\n </div>\n </div>\n );\n }\n);\n\nexport default CommentTextArea;\n"],"mappings":"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","names":["classNames","Tooltip","React"]}
|
|
@@ -62,26 +62,29 @@ var MentionSuggestionsList = ({
|
|
|
62
62
|
}
|
|
63
63
|
},
|
|
64
64
|
ref: listRef,
|
|
65
|
-
children: filteredUsers.map((user, index) =>
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
65
|
+
children: filteredUsers.map((user, index) => /* @__PURE__ */ jsx(
|
|
66
|
+
"li",
|
|
67
|
+
{
|
|
68
|
+
onClick: () => insertMention(user),
|
|
69
|
+
className: classNames(
|
|
70
|
+
"collab-thread-body--input--textarea--suggestionsList--item",
|
|
71
|
+
collabStyles()["collab-thread-body--input--textarea--suggestionsList--item"],
|
|
72
|
+
index === selectedIndex ? collabStyles()["collab-thread-body--input--textarea--suggestionsList--item-selected"] : ""
|
|
73
|
+
),
|
|
74
|
+
ref: (el) => itemRefs.current[index] = el,
|
|
75
|
+
onKeyDown: (e) => e.key === "Enter" ? insertMention(user) : handleKeyDown(e),
|
|
76
|
+
tabIndex: -1,
|
|
77
|
+
"aria-selected": index === selectedIndex,
|
|
78
|
+
children: user.display === user.email ? user.display.length > 20 ? /* @__PURE__ */ jsx(Tooltip, { content: user.display || "", children: (user.display || "").substring(0, 18) + "..." }) : user.display : /* @__PURE__ */ jsx(
|
|
79
|
+
Tooltip,
|
|
80
|
+
{
|
|
81
|
+
content: user.display + " - " + user.email || "",
|
|
82
|
+
children: user.display.length > 20 ? (user.display || "").substring(0, 18) + "..." : user.display
|
|
83
|
+
}
|
|
84
|
+
)
|
|
85
|
+
},
|
|
86
|
+
user.uid
|
|
87
|
+
))
|
|
85
88
|
}
|
|
86
89
|
);
|
|
87
90
|
};
|