@atlaskit/renderer 124.16.9 → 124.17.0
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/CHANGELOG.md +8 -0
- package/dist/cjs/react/index.js +8 -2
- package/dist/cjs/react/marks/link.js +13 -2
- package/dist/cjs/ui/Renderer/index.js +1 -0
- package/dist/es2019/react/index.js +7 -0
- package/dist/es2019/react/marks/link.js +13 -2
- package/dist/es2019/ui/Renderer/index.js +1 -0
- package/dist/esm/react/index.js +8 -2
- package/dist/esm/react/marks/link.js +13 -2
- package/dist/esm/ui/Renderer/index.js +1 -0
- package/dist/types/react/index.d.ts +2 -0
- package/dist/types/react/marks/link.d.ts +1 -0
- package/dist/types/ui/renderer-props.d.ts +9 -0
- package/dist/types-ts4.5/react/index.d.ts +2 -0
- package/dist/types-ts4.5/react/marks/link.d.ts +1 -0
- package/dist/types-ts4.5/ui/renderer-props.d.ts +9 -0
- package/package.json +9 -6
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,13 @@
|
|
|
1
1
|
# @atlaskit/renderer
|
|
2
2
|
|
|
3
|
+
## 124.17.0
|
|
4
|
+
|
|
5
|
+
### Minor Changes
|
|
6
|
+
|
|
7
|
+
- [`9679f0410e434`](https://bitbucket.org/atlassian/atlassian-frontend-monorepo/commits/9679f0410e434) -
|
|
8
|
+
[ux] Add support for onSetLinkTarget prop for Renderer, allowing consumers of Renderer like Rovo
|
|
9
|
+
chat to instruct which links should render as external links.
|
|
10
|
+
|
|
3
11
|
## 124.16.9
|
|
4
12
|
|
|
5
13
|
### Patch Changes
|
package/dist/cjs/react/index.js
CHANGED
|
@@ -161,11 +161,16 @@ var ReactSerializer = exports.default = /*#__PURE__*/function () {
|
|
|
161
161
|
// the rendering in the mobile Native Renderer.
|
|
162
162
|
codeBidiWarningTooltipEnabled: false
|
|
163
163
|
} : {};
|
|
164
|
-
|
|
164
|
+
|
|
165
|
+
// Add deepLinkTarget for link marks
|
|
166
|
+
var linkSpecificProps = mark.type.name === 'link' ? {
|
|
167
|
+
onSetLinkTarget: _this.onSetLinkTarget
|
|
168
|
+
} : {};
|
|
169
|
+
var props = _objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread({
|
|
165
170
|
eventHandlers: _this.eventHandlers,
|
|
166
171
|
fireAnalyticsEvent: _this.fireAnalyticsEvent,
|
|
167
172
|
markKey: key
|
|
168
|
-
}, otherAttrs), extraProps), markSpecificProps), {}, {
|
|
173
|
+
}, otherAttrs), extraProps), markSpecificProps), linkSpecificProps), {}, {
|
|
169
174
|
dataAttributes: {
|
|
170
175
|
'data-renderer-mark': true
|
|
171
176
|
}
|
|
@@ -215,6 +220,7 @@ var ReactSerializer = exports.default = /*#__PURE__*/function () {
|
|
|
215
220
|
this.allowTableResizing = init.allowTableResizing;
|
|
216
221
|
this.isPresentational = init.isPresentational;
|
|
217
222
|
this.disableTableOverflowShadow = init.disableTableOverflowShadow;
|
|
223
|
+
this.onSetLinkTarget = init.onSetLinkTarget;
|
|
218
224
|
}
|
|
219
225
|
return (0, _createClass2.default)(ReactSerializer, [{
|
|
220
226
|
key: "resetState",
|
|
@@ -10,6 +10,7 @@ var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends")
|
|
|
10
10
|
var _react = _interopRequireWildcard(require("react"));
|
|
11
11
|
var _react2 = require("@emotion/react");
|
|
12
12
|
var _colors = require("@atlaskit/theme/colors");
|
|
13
|
+
var _platformFeatureFlags = require("@atlaskit/platform-feature-flags");
|
|
13
14
|
var _utils = require("../../utils");
|
|
14
15
|
var _events = require("../../analytics/events");
|
|
15
16
|
var _analytics = require("@atlaskit/editor-common/analytics");
|
|
@@ -36,16 +37,26 @@ var anchorStyles = (0, _react2.css)({
|
|
|
36
37
|
function Link(props) {
|
|
37
38
|
var href = props.href,
|
|
38
39
|
target = props.target,
|
|
40
|
+
onSetLinkTarget = props.onSetLinkTarget,
|
|
39
41
|
eventHandlers = props.eventHandlers,
|
|
40
42
|
fireAnalyticsEvent = props.fireAnalyticsEvent,
|
|
41
43
|
isMediaLink = props.isMediaLink,
|
|
42
44
|
dataAttributes = props.dataAttributes;
|
|
45
|
+
var actualTarget = target;
|
|
46
|
+
if (onSetLinkTarget && href && (0, _platformFeatureFlags.fg)('rovo_chat_deep_linking_enabled')) {
|
|
47
|
+
try {
|
|
48
|
+
var _onSetLinkTarget;
|
|
49
|
+
actualTarget = (_onSetLinkTarget = onSetLinkTarget(href)) !== null && _onSetLinkTarget !== void 0 ? _onSetLinkTarget : actualTarget;
|
|
50
|
+
} catch (error) {
|
|
51
|
+
// If URL parsing fails, use the original target
|
|
52
|
+
}
|
|
53
|
+
}
|
|
43
54
|
var anchorProps = {
|
|
44
55
|
href: href,
|
|
45
|
-
target:
|
|
56
|
+
target: actualTarget,
|
|
46
57
|
title: href
|
|
47
58
|
};
|
|
48
|
-
if (
|
|
59
|
+
if (actualTarget === '_blank') {
|
|
49
60
|
anchorProps.rel = 'noreferrer noopener';
|
|
50
61
|
}
|
|
51
62
|
var handler = (0, _utils.getEventHandler)(eventHandlers, 'link');
|
|
@@ -238,6 +238,7 @@ var RendererFunctionalComponent = exports.RendererFunctionalComponent = function
|
|
|
238
238
|
}, props.rendererContext),
|
|
239
239
|
appearance: props.appearance,
|
|
240
240
|
contentMode: props.contentMode,
|
|
241
|
+
onSetLinkTarget: props.onSetLinkTarget,
|
|
241
242
|
disableHeadingIDs: props.disableHeadingIDs,
|
|
242
243
|
disableActions: props.disableActions,
|
|
243
244
|
allowHeadingAnchorLinks: props.allowHeadingAnchorLinks,
|
|
@@ -145,6 +145,11 @@ export default class ReactSerializer {
|
|
|
145
145
|
// the rendering in the mobile Native Renderer.
|
|
146
146
|
codeBidiWarningTooltipEnabled: false
|
|
147
147
|
} : {};
|
|
148
|
+
|
|
149
|
+
// Add deepLinkTarget for link marks
|
|
150
|
+
const linkSpecificProps = mark.type.name === 'link' ? {
|
|
151
|
+
onSetLinkTarget: this.onSetLinkTarget
|
|
152
|
+
} : {};
|
|
148
153
|
const props = {
|
|
149
154
|
eventHandlers: this.eventHandlers,
|
|
150
155
|
fireAnalyticsEvent: this.fireAnalyticsEvent,
|
|
@@ -152,6 +157,7 @@ export default class ReactSerializer {
|
|
|
152
157
|
...otherAttrs,
|
|
153
158
|
...extraProps,
|
|
154
159
|
...markSpecificProps,
|
|
160
|
+
...linkSpecificProps,
|
|
155
161
|
dataAttributes: {
|
|
156
162
|
'data-renderer-mark': true
|
|
157
163
|
}
|
|
@@ -201,6 +207,7 @@ export default class ReactSerializer {
|
|
|
201
207
|
this.allowTableResizing = init.allowTableResizing;
|
|
202
208
|
this.isPresentational = init.isPresentational;
|
|
203
209
|
this.disableTableOverflowShadow = init.disableTableOverflowShadow;
|
|
210
|
+
this.onSetLinkTarget = init.onSetLinkTarget;
|
|
204
211
|
}
|
|
205
212
|
resetState() {
|
|
206
213
|
this.headingIds = [];
|
|
@@ -7,6 +7,7 @@ import React, { Fragment } from 'react';
|
|
|
7
7
|
// eslint-disable-next-line @atlaskit/ui-styling-standard/use-compiled -- Ignored via go/DSP-18766
|
|
8
8
|
import { css, jsx } from '@emotion/react';
|
|
9
9
|
import { B400, B300, B500 } from '@atlaskit/theme/colors';
|
|
10
|
+
import { fg } from '@atlaskit/platform-feature-flags';
|
|
10
11
|
import { getEventHandler } from '../../utils';
|
|
11
12
|
import { PLATFORM, MODE } from '../../analytics/events';
|
|
12
13
|
import { ACTION, ACTION_SUBJECT, EVENT_TYPE } from '@atlaskit/editor-common/analytics';
|
|
@@ -26,17 +27,27 @@ export default function Link(props) {
|
|
|
26
27
|
const {
|
|
27
28
|
href,
|
|
28
29
|
target,
|
|
30
|
+
onSetLinkTarget,
|
|
29
31
|
eventHandlers,
|
|
30
32
|
fireAnalyticsEvent,
|
|
31
33
|
isMediaLink,
|
|
32
34
|
dataAttributes
|
|
33
35
|
} = props;
|
|
36
|
+
let actualTarget = target;
|
|
37
|
+
if (onSetLinkTarget && href && fg('rovo_chat_deep_linking_enabled')) {
|
|
38
|
+
try {
|
|
39
|
+
var _onSetLinkTarget;
|
|
40
|
+
actualTarget = (_onSetLinkTarget = onSetLinkTarget(href)) !== null && _onSetLinkTarget !== void 0 ? _onSetLinkTarget : actualTarget;
|
|
41
|
+
} catch (error) {
|
|
42
|
+
// If URL parsing fails, use the original target
|
|
43
|
+
}
|
|
44
|
+
}
|
|
34
45
|
const anchorProps = {
|
|
35
46
|
href,
|
|
36
|
-
target,
|
|
47
|
+
target: actualTarget,
|
|
37
48
|
title: href
|
|
38
49
|
};
|
|
39
|
-
if (
|
|
50
|
+
if (actualTarget === '_blank') {
|
|
40
51
|
anchorProps.rel = 'noreferrer noopener';
|
|
41
52
|
}
|
|
42
53
|
const handler = getEventHandler(eventHandlers, 'link');
|
|
@@ -232,6 +232,7 @@ export const RendererFunctionalComponent = props => {
|
|
|
232
232
|
},
|
|
233
233
|
appearance: props.appearance,
|
|
234
234
|
contentMode: props.contentMode,
|
|
235
|
+
onSetLinkTarget: props.onSetLinkTarget,
|
|
235
236
|
disableHeadingIDs: props.disableHeadingIDs,
|
|
236
237
|
disableActions: props.disableActions,
|
|
237
238
|
allowHeadingAnchorLinks: props.allowHeadingAnchorLinks,
|
package/dist/esm/react/index.js
CHANGED
|
@@ -154,11 +154,16 @@ var ReactSerializer = /*#__PURE__*/function () {
|
|
|
154
154
|
// the rendering in the mobile Native Renderer.
|
|
155
155
|
codeBidiWarningTooltipEnabled: false
|
|
156
156
|
} : {};
|
|
157
|
-
|
|
157
|
+
|
|
158
|
+
// Add deepLinkTarget for link marks
|
|
159
|
+
var linkSpecificProps = mark.type.name === 'link' ? {
|
|
160
|
+
onSetLinkTarget: _this.onSetLinkTarget
|
|
161
|
+
} : {};
|
|
162
|
+
var props = _objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread({
|
|
158
163
|
eventHandlers: _this.eventHandlers,
|
|
159
164
|
fireAnalyticsEvent: _this.fireAnalyticsEvent,
|
|
160
165
|
markKey: key
|
|
161
|
-
}, otherAttrs), extraProps), markSpecificProps), {}, {
|
|
166
|
+
}, otherAttrs), extraProps), markSpecificProps), linkSpecificProps), {}, {
|
|
162
167
|
dataAttributes: {
|
|
163
168
|
'data-renderer-mark': true
|
|
164
169
|
}
|
|
@@ -208,6 +213,7 @@ var ReactSerializer = /*#__PURE__*/function () {
|
|
|
208
213
|
this.allowTableResizing = init.allowTableResizing;
|
|
209
214
|
this.isPresentational = init.isPresentational;
|
|
210
215
|
this.disableTableOverflowShadow = init.disableTableOverflowShadow;
|
|
216
|
+
this.onSetLinkTarget = init.onSetLinkTarget;
|
|
211
217
|
}
|
|
212
218
|
return _createClass(ReactSerializer, [{
|
|
213
219
|
key: "resetState",
|
|
@@ -7,6 +7,7 @@ import React, { Fragment } from 'react';
|
|
|
7
7
|
// eslint-disable-next-line @atlaskit/ui-styling-standard/use-compiled -- Ignored via go/DSP-18766
|
|
8
8
|
import { css, jsx } from '@emotion/react';
|
|
9
9
|
import { B400, B300, B500 } from '@atlaskit/theme/colors';
|
|
10
|
+
import { fg } from '@atlaskit/platform-feature-flags';
|
|
10
11
|
import { getEventHandler } from '../../utils';
|
|
11
12
|
import { PLATFORM, MODE } from '../../analytics/events';
|
|
12
13
|
import { ACTION, ACTION_SUBJECT, EVENT_TYPE } from '@atlaskit/editor-common/analytics';
|
|
@@ -25,16 +26,26 @@ var anchorStyles = css({
|
|
|
25
26
|
export default function Link(props) {
|
|
26
27
|
var href = props.href,
|
|
27
28
|
target = props.target,
|
|
29
|
+
onSetLinkTarget = props.onSetLinkTarget,
|
|
28
30
|
eventHandlers = props.eventHandlers,
|
|
29
31
|
fireAnalyticsEvent = props.fireAnalyticsEvent,
|
|
30
32
|
isMediaLink = props.isMediaLink,
|
|
31
33
|
dataAttributes = props.dataAttributes;
|
|
34
|
+
var actualTarget = target;
|
|
35
|
+
if (onSetLinkTarget && href && fg('rovo_chat_deep_linking_enabled')) {
|
|
36
|
+
try {
|
|
37
|
+
var _onSetLinkTarget;
|
|
38
|
+
actualTarget = (_onSetLinkTarget = onSetLinkTarget(href)) !== null && _onSetLinkTarget !== void 0 ? _onSetLinkTarget : actualTarget;
|
|
39
|
+
} catch (error) {
|
|
40
|
+
// If URL parsing fails, use the original target
|
|
41
|
+
}
|
|
42
|
+
}
|
|
32
43
|
var anchorProps = {
|
|
33
44
|
href: href,
|
|
34
|
-
target:
|
|
45
|
+
target: actualTarget,
|
|
35
46
|
title: href
|
|
36
47
|
};
|
|
37
|
-
if (
|
|
48
|
+
if (actualTarget === '_blank') {
|
|
38
49
|
anchorProps.rel = 'noreferrer noopener';
|
|
39
50
|
}
|
|
40
51
|
var handler = getEventHandler(eventHandlers, 'link');
|
|
@@ -229,6 +229,7 @@ export var RendererFunctionalComponent = function RendererFunctionalComponent(pr
|
|
|
229
229
|
}, props.rendererContext),
|
|
230
230
|
appearance: props.appearance,
|
|
231
231
|
contentMode: props.contentMode,
|
|
232
|
+
onSetLinkTarget: props.onSetLinkTarget,
|
|
232
233
|
disableHeadingIDs: props.disableHeadingIDs,
|
|
233
234
|
disableActions: props.disableActions,
|
|
234
235
|
allowHeadingAnchorLinks: props.allowHeadingAnchorLinks,
|
|
@@ -41,6 +41,7 @@ export interface ReactSerializerInit {
|
|
|
41
41
|
media?: MediaOptions;
|
|
42
42
|
nodeComponents?: NodeComponentsProps;
|
|
43
43
|
objectContext?: RendererContext;
|
|
44
|
+
onSetLinkTarget?: (url: string) => '_blank' | undefined;
|
|
44
45
|
portal?: HTMLElement;
|
|
45
46
|
providers?: ProviderFactory;
|
|
46
47
|
shouldOpenMediaViewer?: boolean;
|
|
@@ -110,6 +111,7 @@ export default class ReactSerializer implements Serializer<JSX.Element> {
|
|
|
110
111
|
private isPresentational?;
|
|
111
112
|
private disableTableOverflowShadow?;
|
|
112
113
|
private standaloneBackgroundColorMarks;
|
|
114
|
+
private onSetLinkTarget?;
|
|
113
115
|
constructor(init: ReactSerializerInit);
|
|
114
116
|
private resetState;
|
|
115
117
|
private getNodeProps;
|
|
@@ -3,6 +3,7 @@ import type { LinkAttributes } from '@atlaskit/adf-schema';
|
|
|
3
3
|
import type { MarkProps } from '../types';
|
|
4
4
|
interface LinkProps extends LinkAttributes {
|
|
5
5
|
isMediaLink?: boolean;
|
|
6
|
+
onSetLinkTarget?: (url: string) => '_blank' | undefined;
|
|
6
7
|
target?: string;
|
|
7
8
|
}
|
|
8
9
|
export default function Link(props: MarkProps<LinkProps>): jsx.JSX.Element;
|
|
@@ -123,6 +123,15 @@ export interface RendererProps {
|
|
|
123
123
|
noOpSSRInlineScript?: boolean;
|
|
124
124
|
onComplete?: (stat: RenderOutputStat) => void;
|
|
125
125
|
onError?: (error: any) => void;
|
|
126
|
+
/**
|
|
127
|
+
* Optional callback to programatically determine the link target for rendered links. Controls whether a link should render as external or not.
|
|
128
|
+
* Return _blank if the url should render as an external link.
|
|
129
|
+
* Return undefined to use the links default behavior and target.
|
|
130
|
+
*
|
|
131
|
+
* @param url - The URL of the link being rendered
|
|
132
|
+
* @returns '_blank' to render as an external link or undefined to not change the link
|
|
133
|
+
*/
|
|
134
|
+
onSetLinkTarget?: (url: string) => '_blank' | undefined;
|
|
126
135
|
portal?: HTMLElement;
|
|
127
136
|
rendererContext?: RendererContext;
|
|
128
137
|
schema?: Schema;
|
|
@@ -41,6 +41,7 @@ export interface ReactSerializerInit {
|
|
|
41
41
|
media?: MediaOptions;
|
|
42
42
|
nodeComponents?: NodeComponentsProps;
|
|
43
43
|
objectContext?: RendererContext;
|
|
44
|
+
onSetLinkTarget?: (url: string) => '_blank' | undefined;
|
|
44
45
|
portal?: HTMLElement;
|
|
45
46
|
providers?: ProviderFactory;
|
|
46
47
|
shouldOpenMediaViewer?: boolean;
|
|
@@ -110,6 +111,7 @@ export default class ReactSerializer implements Serializer<JSX.Element> {
|
|
|
110
111
|
private isPresentational?;
|
|
111
112
|
private disableTableOverflowShadow?;
|
|
112
113
|
private standaloneBackgroundColorMarks;
|
|
114
|
+
private onSetLinkTarget?;
|
|
113
115
|
constructor(init: ReactSerializerInit);
|
|
114
116
|
private resetState;
|
|
115
117
|
private getNodeProps;
|
|
@@ -3,6 +3,7 @@ import type { LinkAttributes } from '@atlaskit/adf-schema';
|
|
|
3
3
|
import type { MarkProps } from '../types';
|
|
4
4
|
interface LinkProps extends LinkAttributes {
|
|
5
5
|
isMediaLink?: boolean;
|
|
6
|
+
onSetLinkTarget?: (url: string) => '_blank' | undefined;
|
|
6
7
|
target?: string;
|
|
7
8
|
}
|
|
8
9
|
export default function Link(props: MarkProps<LinkProps>): jsx.JSX.Element;
|
|
@@ -123,6 +123,15 @@ export interface RendererProps {
|
|
|
123
123
|
noOpSSRInlineScript?: boolean;
|
|
124
124
|
onComplete?: (stat: RenderOutputStat) => void;
|
|
125
125
|
onError?: (error: any) => void;
|
|
126
|
+
/**
|
|
127
|
+
* Optional callback to programatically determine the link target for rendered links. Controls whether a link should render as external or not.
|
|
128
|
+
* Return _blank if the url should render as an external link.
|
|
129
|
+
* Return undefined to use the links default behavior and target.
|
|
130
|
+
*
|
|
131
|
+
* @param url - The URL of the link being rendered
|
|
132
|
+
* @returns '_blank' to render as an external link or undefined to not change the link
|
|
133
|
+
*/
|
|
134
|
+
onSetLinkTarget?: (url: string) => '_blank' | undefined;
|
|
126
135
|
portal?: HTMLElement;
|
|
127
136
|
rendererContext?: RendererContext;
|
|
128
137
|
schema?: Schema;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@atlaskit/renderer",
|
|
3
|
-
"version": "124.
|
|
3
|
+
"version": "124.17.0",
|
|
4
4
|
"description": "Renderer component",
|
|
5
5
|
"publishConfig": {
|
|
6
6
|
"registry": "https://registry.npmjs.org/"
|
|
@@ -49,15 +49,15 @@
|
|
|
49
49
|
"@atlaskit/media-common": "^12.3.0",
|
|
50
50
|
"@atlaskit/media-filmstrip": "^51.1.0",
|
|
51
51
|
"@atlaskit/media-ui": "^28.7.0",
|
|
52
|
-
"@atlaskit/media-viewer": "^52.
|
|
52
|
+
"@atlaskit/media-viewer": "^52.5.0",
|
|
53
53
|
"@atlaskit/platform-feature-flags": "^1.1.0",
|
|
54
54
|
"@atlaskit/platform-feature-flags-react": "^0.4.0",
|
|
55
55
|
"@atlaskit/react-ufo": "^4.15.0",
|
|
56
|
-
"@atlaskit/smart-card": "^43.
|
|
56
|
+
"@atlaskit/smart-card": "^43.12.0",
|
|
57
57
|
"@atlaskit/status": "^3.0.0",
|
|
58
58
|
"@atlaskit/task-decision": "^19.2.0",
|
|
59
59
|
"@atlaskit/theme": "^21.0.0",
|
|
60
|
-
"@atlaskit/tmp-editor-statsig": "^14.
|
|
60
|
+
"@atlaskit/tmp-editor-statsig": "^14.4.0",
|
|
61
61
|
"@atlaskit/tokens": "^8.4.0",
|
|
62
62
|
"@atlaskit/tooltip": "^20.10.0",
|
|
63
63
|
"@atlaskit/visually-hidden": "^3.0.0",
|
|
@@ -71,7 +71,7 @@
|
|
|
71
71
|
"uuid": "^3.1.0"
|
|
72
72
|
},
|
|
73
73
|
"peerDependencies": {
|
|
74
|
-
"@atlaskit/editor-common": "^110.
|
|
74
|
+
"@atlaskit/editor-common": "^110.37.0",
|
|
75
75
|
"@atlaskit/link-provider": "^4.0.0",
|
|
76
76
|
"@atlaskit/media-core": "^37.0.0",
|
|
77
77
|
"react": "^18.2.0",
|
|
@@ -90,7 +90,7 @@
|
|
|
90
90
|
"@atlaskit/mention": "^24.4.0",
|
|
91
91
|
"@atlaskit/modal-dialog": "^14.7.0",
|
|
92
92
|
"@atlaskit/navigation-next": "patch:@atlaskit/navigation-next@npm%3A9.0.17#~/.yarn/patches/@atlaskit-navigation-next-npm-9.0.17-958ca0ab9d.patch",
|
|
93
|
-
"@atlaskit/profilecard": "^24.
|
|
93
|
+
"@atlaskit/profilecard": "^24.23.0",
|
|
94
94
|
"@atlaskit/util-data-test": "^18.3.0",
|
|
95
95
|
"@atlassian/feature-flags-test-utils": "^1.0.0",
|
|
96
96
|
"@testing-library/react": "^13.4.0",
|
|
@@ -243,6 +243,9 @@
|
|
|
243
243
|
"platform_editor_ai_adf_prompts_in_all_products": {
|
|
244
244
|
"type": "boolean"
|
|
245
245
|
},
|
|
246
|
+
"rovo_chat_deep_linking_enabled": {
|
|
247
|
+
"type": "boolean"
|
|
248
|
+
},
|
|
246
249
|
"jfp-magma-ssr-iv-editor-codeblock": {
|
|
247
250
|
"type": "boolean"
|
|
248
251
|
}
|