@atlaskit/editor-common 111.34.1 → 111.35.1

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.
Files changed (55) hide show
  1. package/CHANGELOG.md +20 -0
  2. package/dist/cjs/ai-messages/ai-quick-prompt.js +14 -0
  3. package/dist/cjs/ai-messages/index.js +7 -0
  4. package/dist/cjs/extensibility/ExtensionComponent.js +6 -5
  5. package/dist/cjs/extensions/UnknownMacroPlaceholder.compiled.css +28 -0
  6. package/dist/cjs/extensions/UnknownMacroPlaceholder.js +70 -0
  7. package/dist/cjs/extensions/extension-fields-helpers.js +34 -133
  8. package/dist/cjs/extensions/extension-handlers.js +16 -0
  9. package/dist/cjs/extensions/messages.js +10 -0
  10. package/dist/cjs/extensions/module-helpers.js +25 -44
  11. package/dist/cjs/floating-toolbar/DropdownMenuExtensionItems.js +18 -50
  12. package/dist/cjs/monitoring/error.js +1 -1
  13. package/dist/cjs/styles/shared/table.js +1 -1
  14. package/dist/cjs/ui/DropList/index.js +1 -1
  15. package/dist/es2019/ai-messages/ai-quick-prompt.js +8 -0
  16. package/dist/es2019/ai-messages/index.js +1 -0
  17. package/dist/es2019/extensibility/ExtensionComponent.js +6 -5
  18. package/dist/es2019/extensions/UnknownMacroPlaceholder.compiled.css +28 -0
  19. package/dist/es2019/extensions/UnknownMacroPlaceholder.js +46 -0
  20. package/dist/es2019/extensions/extension-fields-helpers.js +9 -11
  21. package/dist/es2019/extensions/extension-handlers.js +16 -0
  22. package/dist/es2019/extensions/messages.js +10 -0
  23. package/dist/es2019/extensions/module-helpers.js +1 -4
  24. package/dist/es2019/floating-toolbar/DropdownMenuExtensionItems.js +2 -6
  25. package/dist/es2019/monitoring/error.js +1 -1
  26. package/dist/es2019/styles/shared/table.js +1 -1
  27. package/dist/es2019/ui/DropList/index.js +1 -1
  28. package/dist/esm/ai-messages/ai-quick-prompt.js +8 -0
  29. package/dist/esm/ai-messages/index.js +1 -0
  30. package/dist/esm/extensibility/ExtensionComponent.js +6 -5
  31. package/dist/esm/extensions/UnknownMacroPlaceholder.compiled.css +28 -0
  32. package/dist/esm/extensions/UnknownMacroPlaceholder.js +61 -0
  33. package/dist/esm/extensions/extension-fields-helpers.js +31 -132
  34. package/dist/esm/extensions/extension-handlers.js +16 -0
  35. package/dist/esm/extensions/messages.js +10 -0
  36. package/dist/esm/extensions/module-helpers.js +25 -44
  37. package/dist/esm/floating-toolbar/DropdownMenuExtensionItems.js +18 -50
  38. package/dist/esm/monitoring/error.js +1 -1
  39. package/dist/esm/styles/shared/table.js +1 -1
  40. package/dist/esm/ui/DropList/index.js +1 -1
  41. package/dist/types/ai-messages/ai-quick-prompt.d.ts +7 -0
  42. package/dist/types/ai-messages/index.d.ts +1 -0
  43. package/dist/types/experiences/ExperienceCheckDomMutation.d.ts +2 -2
  44. package/dist/types/extensions/UnknownMacroPlaceholder.d.ts +7 -0
  45. package/dist/types/extensions/extension-fields-helpers.d.ts +4 -4
  46. package/dist/types/extensions/extension-handlers.d.ts +1 -0
  47. package/dist/types/extensions/messages.d.ts +10 -0
  48. package/dist/types-ts4.5/ai-messages/ai-quick-prompt.d.ts +7 -0
  49. package/dist/types-ts4.5/ai-messages/index.d.ts +1 -0
  50. package/dist/types-ts4.5/experiences/ExperienceCheckDomMutation.d.ts +2 -2
  51. package/dist/types-ts4.5/extensions/UnknownMacroPlaceholder.d.ts +7 -0
  52. package/dist/types-ts4.5/extensions/extension-fields-helpers.d.ts +4 -4
  53. package/dist/types-ts4.5/extensions/extension-handlers.d.ts +1 -0
  54. package/dist/types-ts4.5/extensions/messages.d.ts +10 -0
  55. package/package.json +8 -5
@@ -1,144 +1,43 @@
1
- import _asyncToGenerator from "@babel/runtime/helpers/asyncToGenerator";
2
- import _regeneratorRuntime from "@babel/runtime/regenerator";
3
- // Ignored via go/ees005
4
- // eslint-disable-next-line require-await
5
- function getExtensionModuleField(_x, _x2, _x3) {
6
- return _getExtensionModuleField.apply(this, arguments);
1
+ function getExtensionModuleField(manifest, fieldType, handlerLink) {
2
+ if (!handlerLink.type) {
3
+ throw new Error("Missing type!");
4
+ }
5
+ if (!manifest.modules.fields) {
6
+ throw new Error("No definition of fields for extension type \"".concat(manifest.type, "\" and key \"").concat(manifest.key, "\""));
7
+ }
8
+ if (!manifest.modules.fields[fieldType]) {
9
+ throw new Error("No definition for field type \"".concat(fieldType, "\" on manifest for extension with type \"").concat(manifest.type, "\" and key \"").concat(manifest.key, "\""));
10
+ }
11
+ var type = handlerLink.type;
12
+ // Ignored via go/ees005
13
+ // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
14
+ var handler = manifest.modules.fields[fieldType][type];
15
+ if (!handler) {
16
+ throw new Error("No handler of type \"".concat(type, "\" for extension type \"").concat(manifest.type, "\" and key \"").concat(manifest.key, "\""));
17
+ }
18
+ return handler;
7
19
  }
20
+
8
21
  /** attempt to get the custom resolver for this field, or throw */
9
- function _getExtensionModuleField() {
10
- _getExtensionModuleField = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee(manifest, fieldType, handlerLink) {
11
- var type, handler;
12
- return _regeneratorRuntime.wrap(function _callee$(_context) {
13
- while (1) switch (_context.prev = _context.next) {
14
- case 0:
15
- if (handlerLink.type) {
16
- _context.next = 2;
17
- break;
18
- }
19
- throw new Error("Missing type!");
20
- case 2:
21
- if (manifest.modules.fields) {
22
- _context.next = 4;
23
- break;
24
- }
25
- throw new Error("No definition of fields for extension type \"".concat(manifest.type, "\" and key \"").concat(manifest.key, "\""));
26
- case 4:
27
- if (manifest.modules.fields[fieldType]) {
28
- _context.next = 6;
29
- break;
30
- }
31
- throw new Error("No definition for field type \"".concat(fieldType, "\" on manifest for extension with type \"").concat(manifest.type, "\" and key \"").concat(manifest.key, "\""));
32
- case 6:
33
- type = handlerLink.type; // Ignored via go/ees005
34
- // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
35
- handler = manifest.modules.fields[fieldType][type];
36
- if (handler) {
37
- _context.next = 10;
38
- break;
39
- }
40
- throw new Error("No handler of type \"".concat(type, "\" for extension type \"").concat(manifest.type, "\" and key \"").concat(manifest.key, "\""));
41
- case 10:
42
- return _context.abrupt("return", handler);
43
- case 11:
44
- case "end":
45
- return _context.stop();
46
- }
47
- }, _callee);
48
- }));
49
- return _getExtensionModuleField.apply(this, arguments);
50
- }
51
- export function getCustomFieldResolver(_x4, _x5) {
52
- return _getCustomFieldResolver.apply(this, arguments);
22
+ export function getCustomFieldResolver(manifest, handlerLink) {
23
+ var handler = getExtensionModuleField(manifest, 'custom', handlerLink);
24
+ return handler.resolver;
53
25
  }
54
26
 
55
27
  /** attempt to get the serializer for this field, or throw */
56
- function _getCustomFieldResolver() {
57
- _getCustomFieldResolver = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee2(manifest, handlerLink) {
58
- var handler;
59
- return _regeneratorRuntime.wrap(function _callee2$(_context2) {
60
- while (1) switch (_context2.prev = _context2.next) {
61
- case 0:
62
- _context2.next = 2;
63
- return getExtensionModuleField(manifest, 'custom', handlerLink);
64
- case 2:
65
- handler = _context2.sent;
66
- return _context2.abrupt("return", handler.resolver);
67
- case 4:
68
- case "end":
69
- return _context2.stop();
70
- }
71
- }, _callee2);
72
- }));
73
- return _getCustomFieldResolver.apply(this, arguments);
74
- }
75
- export function getFieldSerializer(_x6, _x7) {
76
- return _getFieldSerializer.apply(this, arguments);
28
+ export function getFieldSerializer(manifest, handlerLink) {
29
+ var handler = getExtensionModuleField(manifest, 'fieldset', handlerLink);
30
+ return handler.serializer;
77
31
  }
78
32
 
79
33
  /** attempt to get the deserializer for this field, or throw */
80
- function _getFieldSerializer() {
81
- _getFieldSerializer = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee3(manifest, handlerLink) {
82
- var handler;
83
- return _regeneratorRuntime.wrap(function _callee3$(_context3) {
84
- while (1) switch (_context3.prev = _context3.next) {
85
- case 0:
86
- _context3.next = 2;
87
- return getExtensionModuleField(manifest, 'fieldset', handlerLink);
88
- case 2:
89
- handler = _context3.sent;
90
- return _context3.abrupt("return", handler.serializer);
91
- case 4:
92
- case "end":
93
- return _context3.stop();
94
- }
95
- }, _callee3);
96
- }));
97
- return _getFieldSerializer.apply(this, arguments);
98
- }
99
- export function getFieldDeserializer(_x8, _x9) {
100
- return _getFieldDeserializer.apply(this, arguments);
34
+ export function getFieldDeserializer(manifest, handlerLink) {
35
+ var handler = getExtensionModuleField(manifest, 'fieldset', handlerLink);
36
+ return handler.deserializer;
101
37
  }
102
38
 
103
39
  /** attempt to get the user field context provider for this field, or throw */
104
- function _getFieldDeserializer() {
105
- _getFieldDeserializer = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee4(manifest, handlerLink) {
106
- var handler;
107
- return _regeneratorRuntime.wrap(function _callee4$(_context4) {
108
- while (1) switch (_context4.prev = _context4.next) {
109
- case 0:
110
- _context4.next = 2;
111
- return getExtensionModuleField(manifest, 'fieldset', handlerLink);
112
- case 2:
113
- handler = _context4.sent;
114
- return _context4.abrupt("return", handler.deserializer);
115
- case 4:
116
- case "end":
117
- return _context4.stop();
118
- }
119
- }, _callee4);
120
- }));
121
- return _getFieldDeserializer.apply(this, arguments);
122
- }
123
- export function getUserFieldContextProvider(_x0, _x1) {
124
- return _getUserFieldContextProvider.apply(this, arguments);
125
- }
126
- function _getUserFieldContextProvider() {
127
- _getUserFieldContextProvider = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee5(manifest, handlerLink) {
128
- var handler;
129
- return _regeneratorRuntime.wrap(function _callee5$(_context5) {
130
- while (1) switch (_context5.prev = _context5.next) {
131
- case 0:
132
- _context5.next = 2;
133
- return getExtensionModuleField(manifest, 'user', handlerLink);
134
- case 2:
135
- handler = _context5.sent;
136
- return _context5.abrupt("return", handler.provider);
137
- case 4:
138
- case "end":
139
- return _context5.stop();
140
- }
141
- }, _callee5);
142
- }));
143
- return _getUserFieldContextProvider.apply(this, arguments);
40
+ export function getUserFieldContextProvider(manifest, handlerLink) {
41
+ var handler = getExtensionModuleField(manifest, 'user', handlerLink);
42
+ return handler.provider;
144
43
  }
@@ -4,8 +4,10 @@ import _regeneratorRuntime from "@babel/runtime/regenerator";
4
4
  import React from 'react';
5
5
  import { useIntl } from 'react-intl-next';
6
6
  import Loadable from 'react-loadable';
7
+ import { fg } from '@atlaskit/platform-feature-flags';
7
8
  import { getExtensionKeyAndNodeKey, resolveImport, resolveImportSync } from './manifest-helpers';
8
9
  import { messages } from './messages';
10
+ import { UnknownMacroPlaceholder } from './UnknownMacroPlaceholder';
9
11
  function getNodeFromManifest(
10
12
  // eslint-disable-next-line @typescript-eslint/no-explicit-any
11
13
  manifest, extKey, nodeKey, extensionType, extensionKey) {
@@ -100,11 +102,21 @@ function _getExtensionModuleNodePrivateProps() {
100
102
  }));
101
103
  return _getExtensionModuleNodePrivateProps.apply(this, arguments);
102
104
  }
105
+ function isUnknownConfluenceMacroWithBody(extensionNode) {
106
+ var _extensionNode$parame;
107
+ return extensionNode !== null && extensionNode.type === 'extension' && extensionNode.extensionType === 'com.atlassian.confluence.macro.core' && !!((_extensionNode$parame = extensionNode.parameters) !== null && _extensionNode$parame !== void 0 && (_extensionNode$parame = _extensionNode$parame.macroParams) !== null && _extensionNode$parame !== void 0 && (_extensionNode$parame = _extensionNode$parame.__bodyContent) !== null && _extensionNode$parame !== void 0 && _extensionNode$parame.value);
108
+ }
103
109
  function ExtensionLoading(props) {
104
110
  var intl = useIntl();
111
+ var extensionNode = props.node;
105
112
  if (props.error || props.timedOut) {
106
113
  // eslint-disable-next-line no-console
107
114
  console.error('Error rendering extension', props.error);
115
+ if (props.error && props.showUnknownMacroPlaceholder && extensionNode && isUnknownConfluenceMacroWithBody(extensionNode) && fg('tinymce_display_unknown_macro_body_content')) {
116
+ return /*#__PURE__*/React.createElement(UnknownMacroPlaceholder, {
117
+ extensionNode: extensionNode
118
+ });
119
+ }
108
120
  return /*#__PURE__*/React.createElement("div", null, intl.formatMessage(messages.extensionLoadingError));
109
121
  } else {
110
122
  return null;
@@ -128,6 +140,10 @@ export function getNodeRenderer(extensionProvider, extensionType, extensionKey)
128
140
  resolveImportSync(preloaded) : resolveImport(maybePromise.render());
129
141
  }
130
142
  },
143
+ // react-loadable passes all props from <NodeRenderer> to the loading component at runtime,
144
+ // but its TypeScript types only expect LoadingComponentProps. We cast here because
145
+ // ExtensionLoading accepts additional props (node, showUnknownMacroPlaceholder) that
146
+ // react-loadable will pass through but doesn't know about in its type definitions.
131
147
  loading: ExtensionLoading
132
148
  });
133
149
  }
@@ -44,6 +44,16 @@ export var messages = defineMessages({
44
44
  id: 'fabric.editor.extension.loading-error',
45
45
  defaultMessage: 'Error loading the extension!',
46
46
  description: 'Error message displayed when an extension fails to load in the editor. Indicates a problem occurred during the extension initialization or rendering process.'
47
+ },
48
+ unknownMacroPlaceholderAriaLabel: {
49
+ id: 'fabric.editor.extension.unknownMacroPlaceholderAriaLabel',
50
+ defaultMessage: 'Unknown macro placeholder',
51
+ description: 'Accessible label for the unknown macro fallback block shown when a Confluence macro cannot be resolved.'
52
+ },
53
+ unknownMacroHeader: {
54
+ id: 'fabric.editor.extension.unknownMacroHeader',
55
+ defaultMessage: "Unknown macro: ''{macroTitle}''",
56
+ description: 'Header text for an unresolved Confluence macro placeholder.'
47
57
  }
48
58
  });
49
59
  export var configPanelMessages = defineMessages({
@@ -61,46 +61,27 @@ export function getAutoConvertPatternsFromModule(_x) {
61
61
  return _getAutoConvertPatternsFromModule.apply(this, arguments);
62
62
  }
63
63
  function _getAutoConvertPatternsFromModule() {
64
- _getAutoConvertPatternsFromModule = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee2(extensions) {
65
- var _ref3;
64
+ _getAutoConvertPatternsFromModule = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee(extensions) {
65
+ var _ref2;
66
66
  var items;
67
- return _regeneratorRuntime.wrap(function _callee2$(_context2) {
68
- while (1) switch (_context2.prev = _context2.next) {
67
+ return _regeneratorRuntime.wrap(function _callee$(_context) {
68
+ while (1) switch (_context.prev = _context.next) {
69
69
  case 0:
70
- _context2.next = 2;
71
- return Promise.all(
72
- // Ignored via go/ees005
73
- // eslint-disable-next-line require-await
74
- extensions.map( /*#__PURE__*/function () {
75
- var _ref2 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee(manifest) {
76
- return _regeneratorRuntime.wrap(function _callee$(_context) {
77
- while (1) switch (_context.prev = _context.next) {
78
- case 0:
79
- if (!(manifest.modules.autoConvert && manifest.modules.autoConvert.url)) {
80
- _context.next = 2;
81
- break;
82
- }
83
- return _context.abrupt("return", manifest.modules.autoConvert.url);
84
- case 2:
85
- return _context.abrupt("return", []);
86
- case 3:
87
- case "end":
88
- return _context.stop();
89
- }
90
- }, _callee);
91
- }));
92
- return function (_x3) {
93
- return _ref2.apply(this, arguments);
94
- };
95
- }()));
70
+ _context.next = 2;
71
+ return Promise.all(extensions.map(function (manifest) {
72
+ if (manifest.modules.autoConvert && manifest.modules.autoConvert.url) {
73
+ return manifest.modules.autoConvert.url;
74
+ }
75
+ return [];
76
+ }));
96
77
  case 2:
97
- items = _context2.sent;
98
- return _context2.abrupt("return", (_ref3 = []).concat.apply(_ref3, _toConsumableArray(items)));
78
+ items = _context.sent;
79
+ return _context.abrupt("return", (_ref2 = []).concat.apply(_ref2, _toConsumableArray(items)));
99
80
  case 4:
100
81
  case "end":
101
- return _context2.stop();
82
+ return _context.stop();
102
83
  }
103
- }, _callee2);
84
+ }, _callee);
104
85
  }));
105
86
  return _getAutoConvertPatternsFromModule.apply(this, arguments);
106
87
  }
@@ -130,25 +111,25 @@ export function getExtensionAutoConvertersFromProvider(_x2) {
130
111
  // Ignored via go/ees005
131
112
  // eslint-disable-next-line @typescript-eslint/no-explicit-any
132
113
  function _getExtensionAutoConvertersFromProvider() {
133
- _getExtensionAutoConvertersFromProvider = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee3(extensionProviderPromise) {
114
+ _getExtensionAutoConvertersFromProvider = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee2(extensionProviderPromise) {
134
115
  var extensionProvider, extensionAutoConverters;
135
- return _regeneratorRuntime.wrap(function _callee3$(_context3) {
136
- while (1) switch (_context3.prev = _context3.next) {
116
+ return _regeneratorRuntime.wrap(function _callee2$(_context2) {
117
+ while (1) switch (_context2.prev = _context2.next) {
137
118
  case 0:
138
- _context3.next = 2;
119
+ _context2.next = 2;
139
120
  return extensionProviderPromise;
140
121
  case 2:
141
- extensionProvider = _context3.sent;
142
- _context3.next = 5;
122
+ extensionProvider = _context2.sent;
123
+ _context2.next = 5;
143
124
  return extensionProvider.getAutoConverter();
144
125
  case 5:
145
- extensionAutoConverters = _context3.sent;
146
- return _context3.abrupt("return", createAutoConverterRunner(extensionAutoConverters));
126
+ extensionAutoConverters = _context2.sent;
127
+ return _context2.abrupt("return", createAutoConverterRunner(extensionAutoConverters));
147
128
  case 7:
148
129
  case "end":
149
- return _context3.stop();
130
+ return _context2.stop();
150
131
  }
151
- }, _callee3);
132
+ }, _callee2);
152
133
  }));
153
134
  return _getExtensionAutoConvertersFromProvider.apply(this, arguments);
154
135
  }
@@ -51,25 +51,9 @@ var convertExtensionToDropdownMenuItem = function convertExtensionToDropdownMenu
51
51
  extension = _ref2.extension,
52
52
  IconComponent = _ref2.IconComponent;
53
53
  var ButtonIcon = item.icon ? Loadable({
54
- // Ignored via go/ees005
55
- // eslint-disable-next-line require-await
56
- loader: function () {
57
- var _loader = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee2() {
58
- return _regeneratorRuntime.wrap(function _callee2$(_context2) {
59
- while (1) switch (_context2.prev = _context2.next) {
60
- case 0:
61
- return _context2.abrupt("return", resolveExtensionIcon(item.icon));
62
- case 1:
63
- case "end":
64
- return _context2.stop();
65
- }
66
- }, _callee2);
67
- }));
68
- function loader() {
69
- return _loader.apply(this, arguments);
70
- }
71
- return loader;
72
- }(),
54
+ loader: function loader() {
55
+ return resolveExtensionIcon(item.icon);
56
+ },
73
57
  loading: noop
74
58
  }) : undefined;
75
59
  var title = '';
@@ -118,25 +102,9 @@ var DropdownMenuExtensionItem = function DropdownMenuExtensionItem(_ref3) {
118
102
  var iconRef = useRef(null);
119
103
  if (!iconRef.current && item.icon && expValEquals('platform_editor_table_toolbar_icon_ext_fix_exp', 'isEnabled', true)) {
120
104
  iconRef.current = Loadable({
121
- // Ignored via go/ees005
122
- // eslint-disable-next-line require-await
123
- loader: function () {
124
- var _loader2 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee3() {
125
- return _regeneratorRuntime.wrap(function _callee3$(_context3) {
126
- while (1) switch (_context3.prev = _context3.next) {
127
- case 0:
128
- return _context3.abrupt("return", resolveExtensionIcon(item.icon));
129
- case 1:
130
- case "end":
131
- return _context3.stop();
132
- }
133
- }, _callee3);
134
- }));
135
- function loader() {
136
- return _loader2.apply(this, arguments);
137
- }
138
- return loader;
139
- }(),
105
+ loader: function loader() {
106
+ return resolveExtensionIcon(item.icon);
107
+ },
140
108
  loading: noop
141
109
  });
142
110
  }
@@ -181,30 +149,30 @@ export var DropdownMenuExtensionItems = function DropdownMenuExtensionItems(prop
181
149
  return _getExtensions.apply(this, arguments);
182
150
  }
183
151
  function _getExtensions() {
184
- _getExtensions = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee4() {
152
+ _getExtensions = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee2() {
185
153
  var provider;
186
- return _regeneratorRuntime.wrap(function _callee4$(_context4) {
187
- while (1) switch (_context4.prev = _context4.next) {
154
+ return _regeneratorRuntime.wrap(function _callee2$(_context2) {
155
+ while (1) switch (_context2.prev = _context2.next) {
188
156
  case 0:
189
- _context4.next = 2;
157
+ _context2.next = 2;
190
158
  return extension.extensionProvider;
191
159
  case 2:
192
- provider = _context4.sent;
160
+ provider = _context2.sent;
193
161
  if (!provider) {
194
- _context4.next = 9;
162
+ _context2.next = 9;
195
163
  break;
196
164
  }
197
- _context4.t0 = setExtensions;
198
- _context4.next = 7;
165
+ _context2.t0 = setExtensions;
166
+ _context2.next = 7;
199
167
  return provider.getExtensions();
200
168
  case 7:
201
- _context4.t1 = _context4.sent;
202
- (0, _context4.t0)(_context4.t1);
169
+ _context2.t1 = _context2.sent;
170
+ (0, _context2.t0)(_context2.t1);
203
171
  case 9:
204
172
  case "end":
205
- return _context4.stop();
173
+ return _context2.stop();
206
174
  }
207
- }, _callee4);
175
+ }, _callee2);
208
176
  }));
209
177
  return _getExtensions.apply(this, arguments);
210
178
  }
@@ -10,7 +10,7 @@ import { isFedRamp } from './environment';
10
10
  import { normaliseSentryBreadcrumbs, SERIALIZABLE_ATTRIBUTES } from './normalise-sentry-breadcrumbs';
11
11
  var SENTRY_DSN = 'https://0b10c8e02fb44d8796c047b102c9bee8@o55978.ingest.sentry.io/4505129224110080';
12
12
  var packageName = 'editor-common'; // Sentry doesn't accept '/' in its releases https://docs.sentry.io/platforms/javascript/configuration/releases/
13
- var packageVersion = "111.34.0";
13
+ var packageVersion = "0.0.0-development";
14
14
  var sanitiseSentryEvents = function sanitiseSentryEvents(data, _hint) {
15
15
  // Remove URL as it has UGC
16
16
  // Ignored via go/ees007
@@ -58,7 +58,7 @@ var firstNodeWithNotMarginTop = function firstNodeWithNotMarginTop() {
58
58
  var tableSharedStyle = function tableSharedStyle() {
59
59
  var browser = expValEquals('platform_editor_hydratable_ui', 'isEnabled', true) ? getBrowserInfo() : browserLegacy;
60
60
  // eslint-disable-next-line @atlaskit/design-system/no-css-tagged-template-expression -- Appears safe to auto-fix, but leaving it up to the team to remediate as the readability only gets worse with autofixing
61
- return css(_templateObject3 || (_templateObject3 = _taggedTemplateLiteral(["\n\t\t", "\n\t\t.", " {\n\t\t\tposition: relative;\n\t\t\tmargin: 0 auto ", ";\n\t\t\tbox-sizing: border-box;\n\n\t\t\t/**\n * Fix block top alignment inside table cells.\n */\n\t\t\t.decisionItemView-content-wrap:first-of-type > div {\n\t\t\t\tmargin-top: 0;\n\t\t\t}\n\t\t\t.", ",\n\t\t\t\t.", " {\n\t\t\t\tdisplay: block;\n\t\t\t\twidth: 1px;\n\t\t\t\theight: calc(100% - ", ");\n\t\t\t\tbackground: ", ";\n\t\t\t\tposition: absolute;\n\t\t\t\ttop: ", ";\n\t\t\t}\n\t\t\t.", " {\n\t\t\t\tright: 0;\n\t\t\t}\n\t\t\t.", " {\n\t\t\t\tleft: 0;\n\t\t\t}\n\t\t\t.", "[data-with-numbered-table='true'] {\n\t\t\t\tleft: ", "px;\n\t\t\t}\n\t\t}\n\t\t.", "[data-number-column='true'] {\n\t\t\tpadding-left: ", "px;\n\t\t\tclear: both;\n\t\t}\n\n\t\t.", " {\n\t\t\twill-change: width, margin-left;\n\t\t}\n\n\t\t.", " table {\n\t\t\twill-change: width;\n\t\t}\n\n\t\t.", " > table {\n\t\t\tmargin: ", " 0 0 0;\n\t\t}\n\n\t\t.", " > table,\n\t\t.", " > table {\n\t\t\tmargin: ", " ", " 0 0;\n\t\t}\n\n\t\t/* support panel nested in table */\n\t\t", "\n\t\t\t\n\t\t/* avoid applying styles to nested tables (possible via extensions) */\n\t.", " > table,\n\t.", " > table,\n\t.", " > table {\n\t\t\tborder-collapse: collapse;\n\t\t\tborder: ", "px solid\n\t\t\t\t", ";\n\t\t\tborder-left-color: transparent;\n\t\t\tborder-right-color: transparent;\n\t\t\ttable-layout: fixed;\n\t\t\tfont-size: 1em;\n\t\t\twidth: 100%;\n\n\t\t\t&[data-autosize='true'] {\n\t\t\t\ttable-layout: auto;\n\t\t\t}\n\n\t\t\t& {\n\t\t\t\t* {\n\t\t\t\t\tbox-sizing: border-box;\n\t\t\t\t}\n\t\t\t\thr {\n\t\t\t\t\tbox-sizing: content-box;\n\t\t\t\t}\n\n\t\t\t\ttbody {\n\t\t\t\t\tborder-bottom: none;\n\t\t\t\t}\n\t\t\t\tth td {\n\t\t\t\t\tbackground-color: ", ";\n\t\t\t\t}\n\n\t\t\t\t> tbody > tr > th,\n\t\t\t\t> tbody > tr > td {\n\t\t\t\t\tmin-width: ", "px;\n\t\t\t\t\tfont-weight: ", ";\n\t\t\t\t\tvertical-align: top;\n\t\t\t\t\tborder: 1px solid ", ";\n\t\t\t\t\tborder-right-width: 0;\n\t\t\t\t\tborder-bottom-width: 0;\n\n\t\t\t\t\tpadding: ", ";\n\t\t\t\t\t/* https://stackoverflow.com/questions/7517127/borders-not-shown-in-firefox-with-border-collapse-on-table-position-relative-o */\n\t\t\t\t\t", "\n\n\t\t\t\t\t", "\n\n\t\t\t\tth p:not(:first-of-type),\n\t\t\t\ttd p:not(:first-of-type) {\n\t\t\t\t\t\tmargin-top: ", ";\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\t/* Ensures nested tables are compatible with parent table background color - uses specificity to ensure tables nested by extensions are not affected */\n\t\t\t\t> tbody > tr > td {\n\t\t\t\t\tbackground-color: ", ";\n\t\t\t\t}\n\n\t\t\t\tth {\n\t\t\t\t\tbackground-color: ", ";\n\t\t\t\t\ttext-align: left;\n\n\t\t\t\t\t/* only apply this styling to codeblocks in default background headercells */\n\t\t\t\t\t/* TODO this needs to be overhauled as it relies on unsafe selectors */\n\t\t\t\t\t", " {\n\t\t\t\t\t\t.", ":not(.danger) {\n\t\t\t\t\t\t\tbackground-color: ", ";\n\n\t\t\t\t\t\t\t:not(.", ") {\n\t\t\t\t\t\t\t\tbox-shadow: 0px 0px 0px 1px ", ";\n\t\t\t\t\t\t\t}\n\n\t\t\t\t\t\t\t.", " {\n\t\t\t\t\t\t\t\tbackground-image: ", ";\n\n\t\t\t\t\t\t\t\tbackground-color: ", ";\n\t\t\t\t\t\t\t}\n\n\t\t\t\t\t\t\t.", " {\n\t\t\t\t\t\t\t\tbackground-color: ", ";\n\t\t\t\t\t\t\t}\n\n\t\t\t\t\t\t\t/* this is only relevant to the element taken care of by renderer */\n\t\t\t\t\t\t\t> [data-ds--code--code-block] {\n\t\t\t\t\t\t\t\tbackground-image: ", "!important;\n\n\t\t\t\t\t\t\t\tbackground-color: ", "!important;\n\n\t\t\t\t\t\t\t\t/* selector lives inside @atlaskit/code */\n\t\t\t\t\t\t\t\t--ds--code--line-number-bg-color: ", ";\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t"])), tableCellBackgroundStyleOverride(), TableSharedCssClassName.TABLE_CONTAINER, "var(--ds-space-200, 16px)", TableSharedCssClassName.TABLE_RIGHT_BORDER, TableSharedCssClassName.TABLE_LEFT_BORDER, "var(--ds-space-300, 24px)", "var(--ds-background-accent-gray-subtler, ".concat(akEditorTableBorder, ")"), "var(--ds-space-300, 24px)", TableSharedCssClassName.TABLE_RIGHT_BORDER, TableSharedCssClassName.TABLE_LEFT_BORDER, TableSharedCssClassName.TABLE_LEFT_BORDER, akEditorTableNumberColumnWidth - 1, TableSharedCssClassName.TABLE_CONTAINER, akEditorTableNumberColumnWidth - 1, TableSharedCssClassName.TABLE_RESIZER_CONTAINER, TableSharedCssClassName.TABLE_RESIZER_CONTAINER, TableSharedCssClassName.TABLE_NODE_WRAPPER, "var(--ds-space-300, 24px)", TableSharedCssClassName.TABLE_CONTAINER, TableSharedCssClassName.TABLE_STICKY_WRAPPER, "var(--ds-space-300, 24px)", "var(--ds-space-100, 8px)", fg('platform_editor_bordered_panel_nested_in_table') ? ".".concat(TableSharedCssClassName.TABLE_NODE_WRAPPER, " .ak-editor-panel {\n\t\t\tborder: ", "var(--ds-border-width, 1px)", " solid ", "var(--ds-border, #d9dbea)", ";\n\t\t}") : '', TableSharedCssClassName.TABLE_CONTAINER, TableSharedCssClassName.TABLE_NODE_WRAPPER, TableSharedCssClassName.TABLE_STICKY_WRAPPER, tableCellBorderWidth, "var(--ds-background-accent-gray-subtler, ".concat(akEditorTableBorder, ")"), "var(--ds-background-neutral-subtle, white)", tableCellMinWidth, "var(--ds-font-weight-regular, 400)", "var(--ds-background-accent-gray-subtler, ".concat(akEditorTableBorder, ")"), "var(--ds-space-100, 8px)", browser.gecko || browser.ie || browser.mac && browser.chrome ? 'background-clip: padding-box;' : '', firstNodeWithNotMarginTop(), "var(--ds-space-150, 12px)", "var(--ds-surface, #FFFFFF)", "var(--ds-background-accent-gray-subtlest, ".concat(akEditorTableToolbar, ")"), expValEquals('platform_editor_native_anchor_with_dnd', 'isEnabled', true) ? '&:not(.danger)' : '&:not([style]):not(.danger)', CodeBlockSharedCssClassName.CODEBLOCK_CONTAINER, "var(--ds-surface-raised, rgb(235, 237, 240))", akEditorSelectedNodeClassName, "var(--ds-border, transparent)", CodeBlockSharedCssClassName.CODEBLOCK_CONTENT_WRAPPER, overflowShadow({
61
+ return css(_templateObject3 || (_templateObject3 = _taggedTemplateLiteral(["\n\t\t", "\n\t\t.", " {\n\t\t\tposition: relative;\n\t\t\tmargin: 0 auto ", ";\n\t\t\tbox-sizing: border-box;\n\n\t\t\t/**\n * Fix block top alignment inside table cells.\n */\n\t\t\t.decisionItemView-content-wrap:first-of-type > div {\n\t\t\t\tmargin-top: 0;\n\t\t\t}\n\t\t\t.", ",\n\t\t\t\t.", " {\n\t\t\t\tdisplay: block;\n\t\t\t\twidth: 1px;\n\t\t\t\theight: calc(100% - ", ");\n\t\t\t\tbackground: ", ";\n\t\t\t\tposition: absolute;\n\t\t\t\ttop: ", ";\n\t\t\t}\n\t\t\t.", " {\n\t\t\t\tright: 0;\n\t\t\t}\n\t\t\t.", " {\n\t\t\t\tleft: 0;\n\t\t\t}\n\t\t\t.", "[data-with-numbered-table='true'] {\n\t\t\t\tleft: ", "px;\n\t\t\t}\n\t\t}\n\t\t.", "[data-number-column='true'] {\n\t\t\tpadding-left: ", "px;\n\t\t\tclear: both;\n\t\t}\n\n\t\t.", " {\n\t\t\twill-change: width, margin-left;\n\t\t}\n\n\t\t.", " table {\n\t\t\twill-change: width;\n\t\t}\n\n\t\t.", " > table {\n\t\t\tmargin: ", " 0 0 0;\n\t\t}\n\n\t\t.", " > table,\n\t\t.", " > table {\n\t\t\tmargin: ", " ", " 0 0;\n\t\t}\n\n\t\t/* support panel nested in table */\n\t\t", "\n\n\t\t/* avoid applying styles to nested tables (possible via extensions) */\n\t.", " > table,\n\t.", " > table,\n\t.", " > table {\n\t\t\tborder-collapse: collapse;\n\t\t\tborder: ", "px solid\n\t\t\t\t", ";\n\t\t\tborder-left-color: transparent;\n\t\t\tborder-right-color: transparent;\n\t\t\ttable-layout: fixed;\n\t\t\tfont-size: 1em;\n\t\t\twidth: 100%;\n\n\t\t\t&[data-autosize='true'] {\n\t\t\t\ttable-layout: auto;\n\t\t\t}\n\n\t\t\t& {\n\t\t\t\t* {\n\t\t\t\t\tbox-sizing: border-box;\n\t\t\t\t}\n\t\t\t\thr {\n\t\t\t\t\tbox-sizing: content-box;\n\t\t\t\t}\n\n\t\t\t\ttbody {\n\t\t\t\t\tborder-bottom: none;\n\t\t\t\t}\n\t\t\t\tth td {\n\t\t\t\t\tbackground-color: ", ";\n\t\t\t\t}\n\n\t\t\t\t> tbody > tr > th,\n\t\t\t\t> tbody > tr > td {\n\t\t\t\t\tmin-width: ", "px;\n\t\t\t\t\tfont-weight: ", ";\n\t\t\t\t\tvertical-align: top;\n\t\t\t\t\tborder: 1px solid ", ";\n\t\t\t\t\tborder-right-width: 0;\n\t\t\t\t\tborder-bottom-width: 0;\n\n\t\t\t\t\tpadding: ", ";\n\t\t\t\t\t/* https://stackoverflow.com/questions/7517127/borders-not-shown-in-firefox-with-border-collapse-on-table-position-relative-o */\n\t\t\t\t\t", "\n\n\t\t\t\t\t", "\n\n\t\t\t\tth p:not(:first-of-type),\n\t\t\t\ttd p:not(:first-of-type) {\n\t\t\t\t\t\tmargin-top: ", ";\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\t/* Ensures nested tables are compatible with parent table background color - uses specificity to ensure tables nested by extensions are not affected */\n\t\t\t\t> tbody > tr > td {\n\t\t\t\t\tbackground-color: ", ";\n\t\t\t\t}\n\n\t\t\t\tth {\n\t\t\t\t\tbackground-color: ", ";\n\t\t\t\t\ttext-align: left;\n\n\t\t\t\t\t/* only apply this styling to codeblocks in default background headercells */\n\t\t\t\t\t/* TODO this needs to be overhauled as it relies on unsafe selectors */\n\t\t\t\t\t", " {\n\t\t\t\t\t\t.", ":not(.danger) {\n\t\t\t\t\t\t\tbackground-color: ", ";\n\n\t\t\t\t\t\t\t:not(.", ") {\n\t\t\t\t\t\t\t\tbox-shadow: 0px 0px 0px 1px ", ";\n\t\t\t\t\t\t\t}\n\n\t\t\t\t\t\t\t.", " {\n\t\t\t\t\t\t\t\tbackground-image: ", ";\n\n\t\t\t\t\t\t\t\tbackground-color: ", ";\n\t\t\t\t\t\t\t}\n\n\t\t\t\t\t\t\t.", " {\n\t\t\t\t\t\t\t\tbackground-color: ", ";\n\t\t\t\t\t\t\t}\n\n\t\t\t\t\t\t\t/* this is only relevant to the element taken care of by renderer */\n\t\t\t\t\t\t\t> [data-ds--code--code-block] {\n\t\t\t\t\t\t\t\tbackground-image: ", "!important;\n\n\t\t\t\t\t\t\t\tbackground-color: ", "!important;\n\n\t\t\t\t\t\t\t\t/* selector lives inside @atlaskit/code */\n\t\t\t\t\t\t\t\t--ds--code--line-number-bg-color: ", ";\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t"])), tableCellBackgroundStyleOverride(), TableSharedCssClassName.TABLE_CONTAINER, "var(--ds-space-200, 16px)", TableSharedCssClassName.TABLE_RIGHT_BORDER, TableSharedCssClassName.TABLE_LEFT_BORDER, "var(--ds-space-300, 24px)", "var(--ds-background-accent-gray-subtler, ".concat(akEditorTableBorder, ")"), "var(--ds-space-300, 24px)", TableSharedCssClassName.TABLE_RIGHT_BORDER, TableSharedCssClassName.TABLE_LEFT_BORDER, TableSharedCssClassName.TABLE_LEFT_BORDER, akEditorTableNumberColumnWidth - 1, TableSharedCssClassName.TABLE_CONTAINER, akEditorTableNumberColumnWidth - 1, TableSharedCssClassName.TABLE_RESIZER_CONTAINER, TableSharedCssClassName.TABLE_RESIZER_CONTAINER, TableSharedCssClassName.TABLE_NODE_WRAPPER, "var(--ds-space-300, 24px)", TableSharedCssClassName.TABLE_CONTAINER, TableSharedCssClassName.TABLE_STICKY_WRAPPER, "var(--ds-space-300, 24px)", "var(--ds-space-100, 8px)", fg('platform_editor_bordered_panel_nested_in_table') ? ".".concat(TableSharedCssClassName.TABLE_NODE_WRAPPER, " .ak-editor-panel {\n\t\t\tborder: ", "var(--ds-border-width, 1px)", " solid ", "var(--ds-border, #d9dbea)", ";\n\t\t}") : '', TableSharedCssClassName.TABLE_CONTAINER, TableSharedCssClassName.TABLE_NODE_WRAPPER, TableSharedCssClassName.TABLE_STICKY_WRAPPER, tableCellBorderWidth, "var(--ds-background-accent-gray-subtler, ".concat(akEditorTableBorder, ")"), "var(--ds-background-neutral-subtle, white)", tableCellMinWidth, "var(--ds-font-weight-regular, 400)", "var(--ds-background-accent-gray-subtler, ".concat(akEditorTableBorder, ")"), "var(--ds-space-100, 8px)", browser.gecko || browser.ie || browser.mac && browser.chrome ? 'background-clip: padding-box;' : '', firstNodeWithNotMarginTop(), "var(--ds-space-150, 12px)", "var(--ds-surface, #FFFFFF)", "var(--ds-background-accent-gray-subtlest, ".concat(akEditorTableToolbar, ")"), expValEquals('platform_editor_native_anchor_with_dnd', 'isEnabled', true) ? '&:not(.danger)' : '&:not([style]):not(.danger)', CodeBlockSharedCssClassName.CODEBLOCK_CONTAINER, "var(--ds-surface-raised, rgb(235, 237, 240))", akEditorSelectedNodeClassName, "var(--ds-border, transparent)", CodeBlockSharedCssClassName.CODEBLOCK_CONTENT_WRAPPER, overflowShadow({
62
62
  leftCoverWidth: "var(--ds-space-300, 24px)"
63
63
  }), "var(--ds-background-neutral, rgb(235, 237, 240))", CodeBlockSharedCssClassName.CODEBLOCK_LINE_NUMBER_GUTTER, "var(--ds-background-neutral, rgb(226, 229, 233))", overflowShadow({
64
64
  leftCoverWidth: "var(--ds-space-300, 24px)"
@@ -21,7 +21,7 @@ import withAnalyticsEvents from '@atlaskit/analytics-next/withAnalyticsEvents';
21
21
  import { fg } from '@atlaskit/platform-feature-flags';
22
22
  import Layer from '../Layer';
23
23
  var packageName = "@atlaskit/editor-common";
24
- var packageVersion = "111.34.0";
24
+ var packageVersion = "0.0.0-development";
25
25
  var halfFocusRing = 1;
26
26
  var dropOffset = '0, 8';
27
27
  var fadeIn = keyframes({
@@ -0,0 +1,7 @@
1
+ export declare const aiQuickPromptMessages: {
2
+ nudgeText: {
3
+ id: string;
4
+ defaultMessage: string;
5
+ description: string;
6
+ };
7
+ };
@@ -7,4 +7,5 @@ export { aiProactiveMessages } from './ai-proactive';
7
7
  export { aiMessages } from './ai';
8
8
  export { aiProactiveSettingMessages } from './ai-proactive-setting';
9
9
  export { aiProactiveTransformMessages } from './ai-proactive-transform';
10
+ export { aiQuickPromptMessages } from './ai-quick-prompt';
10
11
  export { aiSuggestionsMessages } from './ai-suggestions';
@@ -44,8 +44,8 @@ export type ExperienceCheckDomMutationConfig = {
44
44
  * !!IMPORTANT!!
45
45
  * Return null if the target element cannot be found.
46
46
  * This will immediately fail the experience with experienceFailureReason 'domMutationTargetNotFound'.
47
- */
48
- observeConfig: () => (ExperienceCheckDomMutationObserveConfig | ExperienceCheckDomMutationObserveConfig[] | null);
47
+ */
48
+ observeConfig: () => ExperienceCheckDomMutationObserveConfig | ExperienceCheckDomMutationObserveConfig[] | null;
49
49
  /**
50
50
  * Callback invoked when DOM mutations are detected
51
51
  *
@@ -0,0 +1,7 @@
1
+ import type { ExtensionParams } from './types/extension-handler';
2
+ import type { Parameters } from './types/extension-parameters';
3
+ interface UnknownMacroPlaceholderProps {
4
+ extensionNode: ExtensionParams<Parameters>;
5
+ }
6
+ export declare function UnknownMacroPlaceholder({ extensionNode }: UnknownMacroPlaceholderProps): JSX.Element;
7
+ export {};
@@ -1,10 +1,10 @@
1
1
  import { type CustomFieldResolver, type Deserializer, type ExtensionManifest, type Serializer, type UserFieldContextProvider } from './types/extension-manifest';
2
2
  import { type FieldHandlerLink } from './types/field-definitions';
3
3
  /** attempt to get the custom resolver for this field, or throw */
4
- export declare function getCustomFieldResolver(manifest: ExtensionManifest, handlerLink: FieldHandlerLink): Promise<CustomFieldResolver>;
4
+ export declare function getCustomFieldResolver(manifest: ExtensionManifest, handlerLink: FieldHandlerLink): CustomFieldResolver;
5
5
  /** attempt to get the serializer for this field, or throw */
6
- export declare function getFieldSerializer(manifest: ExtensionManifest, handlerLink: FieldHandlerLink): Promise<Serializer | undefined>;
6
+ export declare function getFieldSerializer(manifest: ExtensionManifest, handlerLink: FieldHandlerLink): Serializer | undefined;
7
7
  /** attempt to get the deserializer for this field, or throw */
8
- export declare function getFieldDeserializer(manifest: ExtensionManifest, handlerLink: FieldHandlerLink): Promise<Deserializer | undefined>;
8
+ export declare function getFieldDeserializer(manifest: ExtensionManifest, handlerLink: FieldHandlerLink): Deserializer | undefined;
9
9
  /** attempt to get the user field context provider for this field, or throw */
10
- export declare function getUserFieldContextProvider(manifest: ExtensionManifest, handlerLink: FieldHandlerLink): Promise<UserFieldContextProvider>;
10
+ export declare function getUserFieldContextProvider(manifest: ExtensionManifest, handlerLink: FieldHandlerLink): UserFieldContextProvider;
@@ -17,4 +17,5 @@ export declare function getNodeRenderer<T extends Parameters>(extensionProvider:
17
17
  actions?: MultiBodiedExtensionActions;
18
18
  node: ExtensionParams<T>;
19
19
  references?: ReferenceEntity[];
20
+ showUnknownMacroPlaceholder?: boolean;
20
21
  }> & Loadable.LoadableComponent;
@@ -44,6 +44,16 @@ export declare const messages: {
44
44
  defaultMessage: string;
45
45
  description: string;
46
46
  };
47
+ unknownMacroPlaceholderAriaLabel: {
48
+ id: string;
49
+ defaultMessage: string;
50
+ description: string;
51
+ };
52
+ unknownMacroHeader: {
53
+ id: string;
54
+ defaultMessage: string;
55
+ description: string;
56
+ };
47
57
  };
48
58
  export declare const configPanelMessages: {
49
59
  configFailedToLoad: {
@@ -0,0 +1,7 @@
1
+ export declare const aiQuickPromptMessages: {
2
+ nudgeText: {
3
+ id: string;
4
+ defaultMessage: string;
5
+ description: string;
6
+ };
7
+ };
@@ -7,4 +7,5 @@ export { aiProactiveMessages } from './ai-proactive';
7
7
  export { aiMessages } from './ai';
8
8
  export { aiProactiveSettingMessages } from './ai-proactive-setting';
9
9
  export { aiProactiveTransformMessages } from './ai-proactive-transform';
10
+ export { aiQuickPromptMessages } from './ai-quick-prompt';
10
11
  export { aiSuggestionsMessages } from './ai-suggestions';
@@ -44,8 +44,8 @@ export type ExperienceCheckDomMutationConfig = {
44
44
  * !!IMPORTANT!!
45
45
  * Return null if the target element cannot be found.
46
46
  * This will immediately fail the experience with experienceFailureReason 'domMutationTargetNotFound'.
47
- */
48
- observeConfig: () => (ExperienceCheckDomMutationObserveConfig | ExperienceCheckDomMutationObserveConfig[] | null);
47
+ */
48
+ observeConfig: () => ExperienceCheckDomMutationObserveConfig | ExperienceCheckDomMutationObserveConfig[] | null;
49
49
  /**
50
50
  * Callback invoked when DOM mutations are detected
51
51
  *
@@ -0,0 +1,7 @@
1
+ import type { ExtensionParams } from './types/extension-handler';
2
+ import type { Parameters } from './types/extension-parameters';
3
+ interface UnknownMacroPlaceholderProps {
4
+ extensionNode: ExtensionParams<Parameters>;
5
+ }
6
+ export declare function UnknownMacroPlaceholder({ extensionNode }: UnknownMacroPlaceholderProps): JSX.Element;
7
+ export {};
@@ -1,10 +1,10 @@
1
1
  import { type CustomFieldResolver, type Deserializer, type ExtensionManifest, type Serializer, type UserFieldContextProvider } from './types/extension-manifest';
2
2
  import { type FieldHandlerLink } from './types/field-definitions';
3
3
  /** attempt to get the custom resolver for this field, or throw */
4
- export declare function getCustomFieldResolver(manifest: ExtensionManifest, handlerLink: FieldHandlerLink): Promise<CustomFieldResolver>;
4
+ export declare function getCustomFieldResolver(manifest: ExtensionManifest, handlerLink: FieldHandlerLink): CustomFieldResolver;
5
5
  /** attempt to get the serializer for this field, or throw */
6
- export declare function getFieldSerializer(manifest: ExtensionManifest, handlerLink: FieldHandlerLink): Promise<Serializer | undefined>;
6
+ export declare function getFieldSerializer(manifest: ExtensionManifest, handlerLink: FieldHandlerLink): Serializer | undefined;
7
7
  /** attempt to get the deserializer for this field, or throw */
8
- export declare function getFieldDeserializer(manifest: ExtensionManifest, handlerLink: FieldHandlerLink): Promise<Deserializer | undefined>;
8
+ export declare function getFieldDeserializer(manifest: ExtensionManifest, handlerLink: FieldHandlerLink): Deserializer | undefined;
9
9
  /** attempt to get the user field context provider for this field, or throw */
10
- export declare function getUserFieldContextProvider(manifest: ExtensionManifest, handlerLink: FieldHandlerLink): Promise<UserFieldContextProvider>;
10
+ export declare function getUserFieldContextProvider(manifest: ExtensionManifest, handlerLink: FieldHandlerLink): UserFieldContextProvider;
@@ -17,4 +17,5 @@ export declare function getNodeRenderer<T extends Parameters>(extensionProvider:
17
17
  actions?: MultiBodiedExtensionActions;
18
18
  node: ExtensionParams<T>;
19
19
  references?: ReferenceEntity[];
20
+ showUnknownMacroPlaceholder?: boolean;
20
21
  }> & Loadable.LoadableComponent;