@atlaskit/editor-plugin-synced-block 1.0.0 → 2.0.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 (117) hide show
  1. package/CHANGELOG.md +8 -16
  2. package/afm-cc/tsconfig.json +0 -12
  3. package/afm-dev-agents/tsconfig.json +0 -12
  4. package/afm-jira/tsconfig.json +0 -12
  5. package/afm-passionfruit/tsconfig.json +0 -12
  6. package/afm-post-office/tsconfig.json +0 -12
  7. package/afm-rovo-extension/tsconfig.json +0 -12
  8. package/afm-townsquare/tsconfig.json +0 -12
  9. package/dist/cjs/nodeviews/lazySyncedBlock.js +26 -0
  10. package/dist/cjs/nodeviews/syncedBlock.js +137 -0
  11. package/dist/cjs/pm-plugins/actions.js +25 -0
  12. package/dist/cjs/pm-plugins/main.js +10 -22
  13. package/dist/cjs/syncedBlockPlugin.js +35 -5
  14. package/dist/cjs/ui/floating-toolbar.js +11 -0
  15. package/dist/es2019/nodeviews/lazySyncedBlock.js +16 -0
  16. package/dist/es2019/nodeviews/syncedBlock.js +105 -0
  17. package/dist/es2019/pm-plugins/actions.js +19 -0
  18. package/dist/es2019/pm-plugins/main.js +10 -25
  19. package/dist/es2019/syncedBlockPlugin.js +38 -15
  20. package/dist/es2019/ui/floating-toolbar.js +3 -0
  21. package/dist/esm/nodeviews/lazySyncedBlock.js +15 -0
  22. package/dist/esm/nodeviews/syncedBlock.js +129 -0
  23. package/dist/esm/pm-plugins/actions.js +19 -0
  24. package/dist/esm/pm-plugins/main.js +10 -22
  25. package/dist/esm/syncedBlockPlugin.js +35 -5
  26. package/dist/esm/ui/floating-toolbar.js +5 -0
  27. package/dist/types/index.d.ts +1 -2
  28. package/dist/types/nodeviews/lazySyncedBlock.d.ts +3 -0
  29. package/dist/types/nodeviews/syncedBlock.d.ts +28 -0
  30. package/dist/types/pm-plugins/actions.d.ts +2 -0
  31. package/dist/types/pm-plugins/main.d.ts +3 -1
  32. package/dist/types/syncedBlockPluginType.d.ts +36 -1
  33. package/dist/types/ui/floating-toolbar.d.ts +2 -0
  34. package/dist/types-ts4.5/index.d.ts +1 -2
  35. package/dist/types-ts4.5/nodeviews/lazySyncedBlock.d.ts +3 -0
  36. package/dist/types-ts4.5/nodeviews/syncedBlock.d.ts +28 -0
  37. package/dist/types-ts4.5/pm-plugins/actions.d.ts +2 -0
  38. package/dist/types-ts4.5/pm-plugins/main.d.ts +3 -1
  39. package/dist/types-ts4.5/syncedBlockPluginType.d.ts +36 -1
  40. package/dist/types-ts4.5/ui/floating-toolbar.d.ts +2 -0
  41. package/package.json +5 -9
  42. package/SyncedBlock/package.json +0 -15
  43. package/dist/cjs/pm-plugins/SyncClient.js +0 -167
  44. package/dist/cjs/pm-plugins/utils.js +0 -19
  45. package/dist/cjs/types/index.js +0 -1
  46. package/dist/cjs/ui/extensions/synced-block/components/GlobalStyles.js +0 -25
  47. package/dist/cjs/ui/extensions/synced-block/components/SyncedBlockLiveView.js +0 -25
  48. package/dist/cjs/ui/extensions/synced-block/components/SyncedBlockRenderer.js +0 -25
  49. package/dist/cjs/ui/extensions/synced-block/constants.js +0 -32
  50. package/dist/cjs/ui/extensions/synced-block/getSyncedBlockExtensionProvider.js +0 -11
  51. package/dist/cjs/ui/extensions/synced-block/hooks/useLiveSyncedBlockContent.js +0 -29
  52. package/dist/cjs/ui/extensions/synced-block/hooks/usePollContentProperty.js +0 -121
  53. package/dist/cjs/ui/extensions/synced-block/index.js +0 -19
  54. package/dist/cjs/ui/extensions/synced-block/manifest.js +0 -281
  55. package/dist/cjs/ui/extensions/synced-block/utils/ari.js +0 -29
  56. package/dist/cjs/ui/extensions/synced-block/utils/content-property.js +0 -159
  57. package/dist/cjs/ui/extensions/synced-block/utils/synced-block.js +0 -65
  58. package/dist/es2019/pm-plugins/SyncClient.js +0 -102
  59. package/dist/es2019/pm-plugins/utils.js +0 -13
  60. package/dist/es2019/types/index.js +0 -0
  61. package/dist/es2019/ui/extensions/synced-block/components/GlobalStyles.js +0 -18
  62. package/dist/es2019/ui/extensions/synced-block/components/SyncedBlockLiveView.js +0 -19
  63. package/dist/es2019/ui/extensions/synced-block/components/SyncedBlockRenderer.js +0 -19
  64. package/dist/es2019/ui/extensions/synced-block/constants.js +0 -26
  65. package/dist/es2019/ui/extensions/synced-block/getSyncedBlockExtensionProvider.js +0 -5
  66. package/dist/es2019/ui/extensions/synced-block/hooks/useLiveSyncedBlockContent.js +0 -24
  67. package/dist/es2019/ui/extensions/synced-block/hooks/usePollContentProperty.js +0 -107
  68. package/dist/es2019/ui/extensions/synced-block/index.js +0 -5
  69. package/dist/es2019/ui/extensions/synced-block/manifest.js +0 -172
  70. package/dist/es2019/ui/extensions/synced-block/utils/ari.js +0 -19
  71. package/dist/es2019/ui/extensions/synced-block/utils/content-property.js +0 -108
  72. package/dist/es2019/ui/extensions/synced-block/utils/synced-block.js +0 -57
  73. package/dist/esm/pm-plugins/SyncClient.js +0 -160
  74. package/dist/esm/pm-plugins/utils.js +0 -13
  75. package/dist/esm/types/index.js +0 -0
  76. package/dist/esm/ui/extensions/synced-block/components/GlobalStyles.js +0 -18
  77. package/dist/esm/ui/extensions/synced-block/components/SyncedBlockLiveView.js +0 -18
  78. package/dist/esm/ui/extensions/synced-block/components/SyncedBlockRenderer.js +0 -18
  79. package/dist/esm/ui/extensions/synced-block/constants.js +0 -26
  80. package/dist/esm/ui/extensions/synced-block/getSyncedBlockExtensionProvider.js +0 -5
  81. package/dist/esm/ui/extensions/synced-block/hooks/useLiveSyncedBlockContent.js +0 -23
  82. package/dist/esm/ui/extensions/synced-block/hooks/usePollContentProperty.js +0 -114
  83. package/dist/esm/ui/extensions/synced-block/index.js +0 -5
  84. package/dist/esm/ui/extensions/synced-block/manifest.js +0 -274
  85. package/dist/esm/ui/extensions/synced-block/utils/ari.js +0 -23
  86. package/dist/esm/ui/extensions/synced-block/utils/content-property.js +0 -153
  87. package/dist/esm/ui/extensions/synced-block/utils/synced-block.js +0 -58
  88. package/dist/types/pm-plugins/SyncClient.d.ts +0 -14
  89. package/dist/types/pm-plugins/utils.d.ts +0 -5
  90. package/dist/types/types/index.d.ts +0 -3
  91. package/dist/types/ui/extensions/synced-block/components/GlobalStyles.d.ts +0 -6
  92. package/dist/types/ui/extensions/synced-block/components/SyncedBlockLiveView.d.ts +0 -7
  93. package/dist/types/ui/extensions/synced-block/components/SyncedBlockRenderer.d.ts +0 -7
  94. package/dist/types/ui/extensions/synced-block/constants.d.ts +0 -8
  95. package/dist/types/ui/extensions/synced-block/getSyncedBlockExtensionProvider.d.ts +0 -3
  96. package/dist/types/ui/extensions/synced-block/hooks/useLiveSyncedBlockContent.d.ts +0 -6
  97. package/dist/types/ui/extensions/synced-block/hooks/usePollContentProperty.d.ts +0 -7
  98. package/dist/types/ui/extensions/synced-block/index.d.ts +0 -2
  99. package/dist/types/ui/extensions/synced-block/manifest.d.ts +0 -3
  100. package/dist/types/ui/extensions/synced-block/utils/ari.d.ts +0 -4
  101. package/dist/types/ui/extensions/synced-block/utils/content-property.d.ts +0 -33
  102. package/dist/types/ui/extensions/synced-block/utils/synced-block.d.ts +0 -24
  103. package/dist/types-ts4.5/pm-plugins/SyncClient.d.ts +0 -14
  104. package/dist/types-ts4.5/pm-plugins/utils.d.ts +0 -5
  105. package/dist/types-ts4.5/types/index.d.ts +0 -3
  106. package/dist/types-ts4.5/ui/extensions/synced-block/components/GlobalStyles.d.ts +0 -6
  107. package/dist/types-ts4.5/ui/extensions/synced-block/components/SyncedBlockLiveView.d.ts +0 -7
  108. package/dist/types-ts4.5/ui/extensions/synced-block/components/SyncedBlockRenderer.d.ts +0 -7
  109. package/dist/types-ts4.5/ui/extensions/synced-block/constants.d.ts +0 -8
  110. package/dist/types-ts4.5/ui/extensions/synced-block/getSyncedBlockExtensionProvider.d.ts +0 -3
  111. package/dist/types-ts4.5/ui/extensions/synced-block/hooks/useLiveSyncedBlockContent.d.ts +0 -6
  112. package/dist/types-ts4.5/ui/extensions/synced-block/hooks/usePollContentProperty.d.ts +0 -7
  113. package/dist/types-ts4.5/ui/extensions/synced-block/index.d.ts +0 -2
  114. package/dist/types-ts4.5/ui/extensions/synced-block/manifest.d.ts +0 -3
  115. package/dist/types-ts4.5/ui/extensions/synced-block/utils/ari.d.ts +0 -4
  116. package/dist/types-ts4.5/ui/extensions/synced-block/utils/content-property.d.ts +0 -33
  117. package/dist/types-ts4.5/ui/extensions/synced-block/utils/synced-block.d.ts +0 -24
@@ -1,167 +0,0 @@
1
- "use strict";
2
-
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
- Object.defineProperty(exports, "__esModule", {
5
- value: true
6
- });
7
- exports.SyncClient = void 0;
8
- var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
9
- var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
10
- var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
11
- var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
12
- var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
13
- var _editorJsonTransformer = require("@atlaskit/editor-json-transformer");
14
- var _ari = require("../ui/extensions/synced-block/utils/ari");
15
- var _contentProperty = require("../ui/extensions/synced-block/utils/content-property");
16
- var _syncedBlock = require("../ui/extensions/synced-block/utils/synced-block");
17
- function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
18
- function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { (0, _defineProperty2.default)(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
19
- var transformer = new _editorJsonTransformer.JSONTransformer();
20
- var toJSON = function toJSON(node) {
21
- return transformer.encodeNode(node);
22
- };
23
- var getCacheKey = function getCacheKey(_ref) {
24
- var sourceDocumentAri = _ref.sourceDocumentAri,
25
- contentAri = _ref.contentAri,
26
- contentPropertyKey = _ref.contentPropertyKey;
27
- return "".concat(sourceDocumentAri, "-").concat(contentAri, "-").concat(contentPropertyKey);
28
- };
29
- var SyncClient = exports.SyncClient = /*#__PURE__*/function () {
30
- function SyncClient() {
31
- (0, _classCallCheck2.default)(this, SyncClient);
32
- (0, _defineProperty2.default)(this, "requestMap", new Map());
33
- this.requestMap = new Map();
34
- }
35
- return (0, _createClass2.default)(SyncClient, [{
36
- key: "getRequestState",
37
- value: function getRequestState(key) {
38
- return this.requestMap.get(key);
39
- }
40
- }, {
41
- key: "setRequestState",
42
- value: function setRequestState(key, state) {
43
- this.requestMap.set(key, state);
44
- }
45
- }, {
46
- key: "sendRequest",
47
- value: function () {
48
- var _sendRequest = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee(_ref2) {
49
- var sourceDocumentAri, contentAri, contentPropertyKey, value, pageId, contentPropertyId, contentProperty, updatedValue;
50
- return _regenerator.default.wrap(function _callee$(_context) {
51
- while (1) switch (_context.prev = _context.next) {
52
- case 0:
53
- sourceDocumentAri = _ref2.sourceDocumentAri, contentAri = _ref2.contentAri, contentPropertyKey = _ref2.contentPropertyKey, value = _ref2.value;
54
- pageId = (0, _ari.getPageIdFromAri)(sourceDocumentAri);
55
- contentPropertyId = (0, _ari.getContentPropertyIdFromAri)(contentAri);
56
- _context.prev = 3;
57
- _context.next = 6;
58
- return (0, _contentProperty.getContentProperty)({
59
- pageId: pageId,
60
- contentPropertyId: contentPropertyId
61
- });
62
- case 6:
63
- contentProperty = _context.sent;
64
- updatedValue = (0, _syncedBlock.stringifySyncedBlockContentPropertyValue)(_objectSpread(_objectSpread({}, (0, _syncedBlock.parseSyncedBlockContentPropertyValue)(contentProperty.value)), JSON.parse(value)));
65
- _context.next = 10;
66
- return (0, _contentProperty.updateContentProperty)({
67
- pageId: pageId,
68
- key: contentPropertyKey,
69
- value: updatedValue,
70
- signal: undefined
71
- });
72
- case 10:
73
- _context.next = 15;
74
- break;
75
- case 12:
76
- _context.prev = 12;
77
- _context.t0 = _context["catch"](3);
78
- // eslint-disable-next-line no-console
79
- console.error('Failed to update content property:', _context.t0);
80
- case 15:
81
- case "end":
82
- return _context.stop();
83
- }
84
- }, _callee, null, [[3, 12]]);
85
- }));
86
- function sendRequest(_x) {
87
- return _sendRequest.apply(this, arguments);
88
- }
89
- return sendRequest;
90
- }()
91
- }, {
92
- key: "syncContent",
93
- value: function syncContent(_ref3) {
94
- var _this = this;
95
- var sourceDocumentAri = _ref3.sourceDocumentAri,
96
- contentAri = _ref3.contentAri,
97
- contentPropertyKey = _ref3.contentPropertyKey,
98
- node = _ref3.node;
99
- var nodeAdf = toJSON(node);
100
- var key = getCacheKey({
101
- sourceDocumentAri: sourceDocumentAri,
102
- contentAri: contentAri,
103
- contentPropertyKey: contentPropertyKey
104
- });
105
- var value = (0, _syncedBlock.stringifySyncedBlockContentPropertyValue)({
106
- adf: nodeAdf
107
- });
108
- var requestState = this.getRequestState(key) || {
109
- timeout: null,
110
- pendingValue: null,
111
- isSending: false
112
- };
113
- requestState.pendingValue = value;
114
- if (requestState.isSending) {
115
- return;
116
- }
117
- if (requestState.timeout) {
118
- clearTimeout(requestState.timeout);
119
- }
120
- var send = /*#__PURE__*/function () {
121
- var _ref4 = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee2() {
122
- return _regenerator.default.wrap(function _callee2$(_context2) {
123
- while (1) switch (_context2.prev = _context2.next) {
124
- case 0:
125
- if (!requestState.isSending) {
126
- _context2.next = 2;
127
- break;
128
- }
129
- return _context2.abrupt("return");
130
- case 2:
131
- requestState.isSending = true;
132
- _context2.prev = 3;
133
- _context2.next = 6;
134
- return _this.sendRequest({
135
- sourceDocumentAri: sourceDocumentAri,
136
- contentAri: contentAri,
137
- contentPropertyKey: contentPropertyKey,
138
- value: requestState.pendingValue || ''
139
- });
140
- case 6:
141
- requestState.pendingValue = null;
142
- _context2.next = 12;
143
- break;
144
- case 9:
145
- _context2.prev = 9;
146
- _context2.t0 = _context2["catch"](3);
147
- // eslint-disable-next-line no-console
148
- console.error('Failed to send synced block content:', _context2.t0);
149
- case 12:
150
- _context2.prev = 12;
151
- requestState.isSending = false;
152
- return _context2.finish(12);
153
- case 15:
154
- case "end":
155
- return _context2.stop();
156
- }
157
- }, _callee2, null, [[3, 9, 12, 15]]);
158
- }));
159
- return function send() {
160
- return _ref4.apply(this, arguments);
161
- };
162
- }();
163
- requestState.timeout = setTimeout(send, 1000);
164
- this.setRequestState(key, requestState);
165
- }
166
- }]);
167
- }();
@@ -1,19 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.findSyncedBlockParent = void 0;
7
- var _syncedBlock = require("../ui/extensions/synced-block/utils/synced-block");
8
- var findSyncedBlockParent = exports.findSyncedBlockParent = function findSyncedBlockParent($pos) {
9
- for (var i = 0; i <= $pos.depth; i++) {
10
- var node = $pos.node(i);
11
- if ((0, _syncedBlock.isSyncedBlockAttributes)(node.attrs)) {
12
- return {
13
- node: node,
14
- attributes: node.attrs
15
- };
16
- }
17
- }
18
- return;
19
- };
@@ -1 +0,0 @@
1
- "use strict";
@@ -1,25 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.GlobalStylesWrapper = void 0;
7
- var _react = require("@emotion/react");
8
- /**
9
- * @jsxRuntime classic
10
- * @jsx jsx
11
- */
12
- // eslint-disable-next-line @atlaskit/ui-styling-standard/use-compiled, @atlaskit/ui-styling-standard/no-global-styles
13
-
14
- var extensionStyles = (0, _react.css)({
15
- // eslint-disable-next-line @atlaskit/ui-styling-standard/no-nested-selectors, @atlaskit/ui-styling-standard/no-unsafe-selectors
16
- '[extensionkey="synced-block:reference"] .ak-renderer-wrapper > div:last-of-type': {
17
- padding: "var(--ds-space-250, 20px)",
18
- paddingRight: "var(--ds-space-250, 20px)"
19
- }
20
- });
21
- var GlobalStylesWrapper = exports.GlobalStylesWrapper = function GlobalStylesWrapper() {
22
- return (0, _react.jsx)(_react.Global, {
23
- styles: [extensionStyles]
24
- });
25
- };
@@ -1,25 +0,0 @@
1
- "use strict";
2
-
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
- Object.defineProperty(exports, "__esModule", {
5
- value: true
6
- });
7
- exports.default = void 0;
8
- var _react = _interopRequireDefault(require("react"));
9
- var _useLiveSyncedBlockContent = require("../hooks/useLiveSyncedBlockContent");
10
- var _SyncedBlockRenderer = _interopRequireDefault(require("./SyncedBlockRenderer"));
11
- var SyncedBlockLiveView = function SyncedBlockLiveView(_ref) {
12
- var sourceDocumentAri = _ref.sourceDocumentAri,
13
- contentAri = _ref.contentAri;
14
- var syncedBlockContent = (0, _useLiveSyncedBlockContent.useLiveSyncedBlockContent)({
15
- sourceDocumentAri: sourceDocumentAri,
16
- contentAri: contentAri
17
- });
18
- if (!syncedBlockContent) {
19
- return /*#__PURE__*/_react.default.createElement("div", null, "Loading...");
20
- }
21
- return /*#__PURE__*/_react.default.createElement(_SyncedBlockRenderer.default, {
22
- syncedBlockContent: syncedBlockContent
23
- });
24
- };
25
- var _default = exports.default = SyncedBlockLiveView;
@@ -1,25 +0,0 @@
1
- "use strict";
2
-
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
- Object.defineProperty(exports, "__esModule", {
5
- value: true
6
- });
7
- exports.default = void 0;
8
- var _react = _interopRequireDefault(require("react"));
9
- var _renderer = require("@atlaskit/renderer");
10
- var _actions = require("@atlaskit/renderer/actions");
11
- var SyncedBlockRenderer = function SyncedBlockRenderer(_ref) {
12
- var syncedBlockContent = _ref.syncedBlockContent;
13
- return /*#__PURE__*/_react.default.createElement(_actions.RendererActionsContext, null, /*#__PURE__*/_react.default.createElement(_renderer.ReactRenderer, {
14
- adfStage: "stage0"
15
- // @ts-ignore
16
- ,
17
- document: {
18
- type: 'doc',
19
- version: 1,
20
- content: syncedBlockContent.adf.content
21
- },
22
- appearance: "full-page"
23
- }));
24
- };
25
- var _default = exports.default = SyncedBlockRenderer;
@@ -1,32 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.getPageId = exports.getCloudId = void 0;
7
- // hello.atlassian.net cloud id
8
- var HELLO_CLOUD_ID = 'a436116f-02ce-4520-8fbb-7301462a1674';
9
-
10
- // spike page https://hello.atlassian.net/wiki/spaces/~7120208ef57ce4d614485e876489301a16b906/pages/5626233808
11
- var TEST_PAGE_ID = '5626233808';
12
- var getPageId = exports.getPageId = function getPageId() {
13
- var _window$location$href, _window$location$href2, _window$location$path;
14
- return (
15
- // eslint-disable-next-line require-unicode-regexp
16
- ((_window$location$href = window.location.href.match(/pageId=(\d+)/)) === null || _window$location$href === void 0 ? void 0 : _window$location$href[1]) || ( // eslint-disable-next-line require-unicode-regexp
17
- (_window$location$href2 = window.location.href.match(/pages\/edit-v2\/(\d+)/)) === null || _window$location$href2 === void 0 ? void 0 : _window$location$href2[1]) || ( // eslint-disable-next-line require-unicode-regexp
18
- (_window$location$path = window.location.pathname.match(/pages\/(\d+)/)) === null || _window$location$path === void 0 ? void 0 : _window$location$path[1]) ||
19
- // view page or live doc
20
- TEST_PAGE_ID
21
- );
22
- };
23
- /**
24
- * This by no means is a stable way to get the cloud id, but it works for now.
25
- * We should switch passing the cloud id from Confluence to a Editor plugin,
26
- * for instance the user preferences plugin would have a seperate place for user and cloud info
27
- * @returns the cloud id from the initial state
28
- */
29
- var getCloudId = exports.getCloudId = function getCloudId() {
30
- var _INITIAL_STATE__;
31
- return ((_INITIAL_STATE__ = window.__INITIAL_STATE__) === null || _INITIAL_STATE__ === void 0 || (_INITIAL_STATE__ = _INITIAL_STATE__.meta) === null || _INITIAL_STATE__ === void 0 ? void 0 : _INITIAL_STATE__['cloud-id']) || HELLO_CLOUD_ID;
32
- };
@@ -1,11 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.getSyncedBlockExtensionProvider = void 0;
7
- var _extensions = require("@atlaskit/editor-common/extensions");
8
- var _manifest = require("./manifest");
9
- var getSyncedBlockExtensionProvider = exports.getSyncedBlockExtensionProvider = function getSyncedBlockExtensionProvider(schema) {
10
- return new _extensions.DefaultExtensionProvider([(0, _manifest.getSyncedBlockManifest)(schema)]);
11
- };
@@ -1,29 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.useLiveSyncedBlockContent = void 0;
7
- var _react = require("react");
8
- var _usePollContentProperty = require("../hooks/usePollContentProperty");
9
- var _syncedBlock = require("../utils/synced-block");
10
- var useLiveSyncedBlockContent = exports.useLiveSyncedBlockContent = function useLiveSyncedBlockContent(_ref) {
11
- var sourceDocumentAri = _ref.sourceDocumentAri,
12
- contentAri = _ref.contentAri;
13
- var contentProperty = (0, _usePollContentProperty.usePollContentProperty)({
14
- sourceDocumentAri: sourceDocumentAri,
15
- contentAri: contentAri
16
- });
17
- return (0, _react.useMemo)(function () {
18
- if (!contentProperty) {
19
- return null;
20
- }
21
- try {
22
- return (0, _syncedBlock.parseSyncedBlockContentPropertyValue)(contentProperty.value);
23
- } catch (error) {
24
- // eslint-disable-next-line no-console
25
- console.error('Failed to extract synced block content:', error);
26
- return null;
27
- }
28
- }, [contentProperty]);
29
- };
@@ -1,121 +0,0 @@
1
- "use strict";
2
-
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
- Object.defineProperty(exports, "__esModule", {
5
- value: true
6
- });
7
- exports.usePollContentProperty = void 0;
8
- var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
9
- var _react = require("react");
10
- var _ari = require("../utils/ari");
11
- var _contentProperty = require("../utils/content-property");
12
- var POLLING_INTERVAL = 1000;
13
- var cache = new Map();
14
- var inFlightRequests = new Map();
15
- var subscribers = new Map();
16
- var pollingTimeouts = new Map();
17
- var lastRequestTimes = new Map();
18
- var getRequestKey = function getRequestKey(pageId, contentPropertyId) {
19
- return "".concat(pageId, ":").concat(contentPropertyId);
20
- };
21
- var fetchContentPropertyWithDedup = function fetchContentPropertyWithDedup(pageId, contentPropertyId) {
22
- var requestKey = getRequestKey(pageId, contentPropertyId);
23
- lastRequestTimes.set(requestKey, Date.now());
24
- var inFlightRequest = inFlightRequests.get(requestKey);
25
- if (inFlightRequest) {
26
- return inFlightRequest;
27
- }
28
- var requestPromise = (0, _contentProperty.getContentProperty)({
29
- pageId: pageId,
30
- contentPropertyId: contentPropertyId
31
- }).then(function (result) {
32
- cache.set(requestKey, result);
33
- var subscribersForKey = subscribers.get(requestKey);
34
- if (subscribersForKey) {
35
- subscribersForKey.forEach(function (callback) {
36
- return callback(result);
37
- });
38
- }
39
- inFlightRequests.delete(requestKey);
40
- if (subscribersForKey && subscribersForKey.size > 0) {
41
- scheduleNextPoll(pageId, contentPropertyId);
42
- }
43
- return result;
44
- }).catch(function (error) {
45
- inFlightRequests.delete(requestKey);
46
- var subscribersForKey = subscribers.get(requestKey);
47
- if (subscribersForKey && subscribersForKey.size > 0) {
48
- scheduleNextPoll(pageId, contentPropertyId);
49
- }
50
- throw error;
51
- });
52
- inFlightRequests.set(requestKey, requestPromise);
53
- return requestPromise;
54
- };
55
- var scheduleNextPoll = function scheduleNextPoll(pageId, contentPropertyId) {
56
- var requestKey = getRequestKey(pageId, contentPropertyId);
57
- var existingTimeout = pollingTimeouts.get(requestKey);
58
- if (existingTimeout) {
59
- clearTimeout(existingTimeout);
60
- }
61
- var lastRequestTime = lastRequestTimes.get(requestKey) || 0;
62
- var timeElapsed = Date.now() - lastRequestTime;
63
- var delay = Math.max(100, POLLING_INTERVAL - timeElapsed);
64
- var timeout = setTimeout(function () {
65
- var subscribersForKey = subscribers.get(requestKey);
66
- if (subscribersForKey && subscribersForKey.size > 0) {
67
- fetchContentPropertyWithDedup(pageId, contentPropertyId).catch(function (error) {
68
- // eslint-disable-next-line no-console
69
- console.error('Failed to fetch content property:', error);
70
- });
71
- } else {
72
- pollingTimeouts.delete(requestKey);
73
- }
74
- }, delay);
75
- pollingTimeouts.set(requestKey, timeout);
76
- };
77
- var usePollContentProperty = exports.usePollContentProperty = function usePollContentProperty(_ref) {
78
- var sourceDocumentAri = _ref.sourceDocumentAri,
79
- contentAri = _ref.contentAri;
80
- var _useState = (0, _react.useState)(),
81
- _useState2 = (0, _slicedToArray2.default)(_useState, 2),
82
- contentProperty = _useState2[0],
83
- setContentProperty = _useState2[1];
84
- var initializedRef = (0, _react.useRef)(false);
85
- (0, _react.useEffect)(function () {
86
- var pageId = (0, _ari.getPageIdFromAri)(sourceDocumentAri);
87
- var contentPropertyId = (0, _ari.getContentPropertyIdFromAri)(contentAri);
88
- var requestKey = getRequestKey(pageId, contentPropertyId);
89
- var subscribersForKey = subscribers.get(requestKey) || new Set();
90
- if (!subscribers.has(requestKey)) {
91
- subscribers.set(requestKey, subscribersForKey);
92
- }
93
- subscribersForKey.add(setContentProperty);
94
- var cachedValue = cache.get(requestKey);
95
- if (cachedValue) {
96
- setContentProperty(cachedValue);
97
- }
98
- if (subscribersForKey.size === 1 || !initializedRef.current) {
99
- initializedRef.current = true;
100
- fetchContentPropertyWithDedup(pageId, contentPropertyId).catch(function (error) {
101
- // eslint-disable-next-line no-console
102
- console.error('Failed to fetch content property:', error);
103
- });
104
- }
105
- return function () {
106
- subscribersForKey.delete(setContentProperty);
107
- if (subscribersForKey.size === 0) {
108
- subscribers.delete(requestKey);
109
- var existingTimeout = pollingTimeouts.get(requestKey);
110
- if (existingTimeout) {
111
- clearTimeout(existingTimeout);
112
- pollingTimeouts.delete(requestKey);
113
- }
114
- }
115
- };
116
- }, [sourceDocumentAri, contentAri]);
117
- var pageId = (0, _ari.getPageIdFromAri)(sourceDocumentAri);
118
- var contentPropertyId = (0, _ari.getContentPropertyIdFromAri)(contentAri);
119
- var requestKey = getRequestKey(pageId, contentPropertyId);
120
- return contentProperty || cache.get(requestKey);
121
- };
@@ -1,19 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- Object.defineProperty(exports, "getSyncedBlockExtensionProvider", {
7
- enumerable: true,
8
- get: function get() {
9
- return _getSyncedBlockExtensionProvider.getSyncedBlockExtensionProvider;
10
- }
11
- });
12
- Object.defineProperty(exports, "getSyncedBlockManifest", {
13
- enumerable: true,
14
- get: function get() {
15
- return _manifest.getSyncedBlockManifest;
16
- }
17
- });
18
- var _getSyncedBlockExtensionProvider = require("./getSyncedBlockExtensionProvider");
19
- var _manifest = require("./manifest");