@microsoft/live-share-react 1.0.0-preview.23 → 1.0.0-preview.24

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 (121) hide show
  1. package/README.md +7 -10
  2. package/bin/interfaces/LiveInterfaceExtensions.d.ts +17 -0
  3. package/bin/interfaces/LiveInterfaceExtensions.d.ts.map +1 -1
  4. package/bin/live-hooks/useLiveEvent.d.ts.map +1 -1
  5. package/bin/live-hooks/useLiveEvent.js +3 -1
  6. package/bin/live-hooks/useLiveEvent.js.map +1 -1
  7. package/bin/live-hooks/useLivePresence.d.ts.map +1 -1
  8. package/bin/live-hooks/useLivePresence.js +6 -1
  9. package/bin/live-hooks/useLivePresence.js.map +1 -1
  10. package/package.json +9 -9
  11. package/src/interfaces/LiveInterfaceExtensions.ts +17 -0
  12. package/src/live-hooks/useLiveEvent.ts +8 -1
  13. package/src/live-hooks/useLivePresence.ts +7 -1
  14. package/bin/internal-hooks/index.d.ts +0 -2
  15. package/bin/internal-hooks/index.d.ts.map +0 -1
  16. package/bin/internal-hooks/index.js +0 -2
  17. package/bin/internal-hooks/index.js.map +0 -1
  18. package/bin/internal-hooks/useDynamicDDSRegistry.d.ts +0 -14
  19. package/bin/internal-hooks/useDynamicDDSRegistry.d.ts.map +0 -1
  20. package/bin/internal-hooks/useDynamicDDSRegistry.js +0 -142
  21. package/bin/internal-hooks/useDynamicDDSRegistry.js.map +0 -1
  22. package/bin/internal-hooks/useSharedStateRegistry.d.ts +0 -31
  23. package/bin/internal-hooks/useSharedStateRegistry.d.ts.map +0 -1
  24. package/bin/internal-hooks/useSharedStateRegistry.js +0 -102
  25. package/bin/internal-hooks/useSharedStateRegistry.js.map +0 -1
  26. package/bin/internal-hooks/useStateRef.d.ts +0 -7
  27. package/bin/internal-hooks/useStateRef.d.ts.map +0 -1
  28. package/bin/internal-hooks/useStateRef.js +0 -15
  29. package/bin/internal-hooks/useStateRef.js.map +0 -1
  30. package/bin/live-hooks/useLiveAICompletion.d.ts +0 -29
  31. package/bin/live-hooks/useLiveAICompletion.d.ts.map +0 -1
  32. package/bin/live-hooks/useLiveAICompletion.js +0 -186
  33. package/bin/live-hooks/useLiveAICompletion.js.map +0 -1
  34. package/bin/live-hooks/useLiveCoPilot.d.ts +0 -28
  35. package/bin/live-hooks/useLiveCoPilot.d.ts.map +0 -1
  36. package/bin/live-hooks/useLiveCoPilot.js +0 -178
  37. package/bin/live-hooks/useLiveCoPilot.js.map +0 -1
  38. package/bin/live-share-turbo/AzureTurboClient.d.ts +0 -39
  39. package/bin/live-share-turbo/AzureTurboClient.d.ts.map +0 -1
  40. package/bin/live-share-turbo/AzureTurboClient.js +0 -56
  41. package/bin/live-share-turbo/AzureTurboClient.js.map +0 -1
  42. package/bin/live-share-turbo/LiveShareTurboClient.d.ts +0 -53
  43. package/bin/live-share-turbo/LiveShareTurboClient.d.ts.map +0 -1
  44. package/bin/live-share-turbo/LiveShareTurboClient.js +0 -69
  45. package/bin/live-share-turbo/LiveShareTurboClient.js.map +0 -1
  46. package/bin/live-share-turbo/dds-objects/TurboDataObject.d.ts +0 -31
  47. package/bin/live-share-turbo/dds-objects/TurboDataObject.d.ts.map +0 -1
  48. package/bin/live-share-turbo/dds-objects/TurboDataObject.js +0 -75
  49. package/bin/live-share-turbo/dds-objects/TurboDataObject.js.map +0 -1
  50. package/bin/live-share-turbo/dds-objects/TurboLiveCanvas.d.ts +0 -48
  51. package/bin/live-share-turbo/dds-objects/TurboLiveCanvas.d.ts.map +0 -1
  52. package/bin/live-share-turbo/dds-objects/TurboLiveCanvas.js +0 -104
  53. package/bin/live-share-turbo/dds-objects/TurboLiveCanvas.js.map +0 -1
  54. package/bin/live-share-turbo/dds-objects/TurboLiveEvent.d.ts +0 -28
  55. package/bin/live-share-turbo/dds-objects/TurboLiveEvent.d.ts.map +0 -1
  56. package/bin/live-share-turbo/dds-objects/TurboLiveEvent.js +0 -68
  57. package/bin/live-share-turbo/dds-objects/TurboLiveEvent.js.map +0 -1
  58. package/bin/live-share-turbo/dds-objects/TurboLiveMediaSession.d.ts +0 -60
  59. package/bin/live-share-turbo/dds-objects/TurboLiveMediaSession.d.ts.map +0 -1
  60. package/bin/live-share-turbo/dds-objects/TurboLiveMediaSession.js +0 -111
  61. package/bin/live-share-turbo/dds-objects/TurboLiveMediaSession.js.map +0 -1
  62. package/bin/live-share-turbo/dds-objects/TurboLivePresence.d.ts +0 -77
  63. package/bin/live-share-turbo/dds-objects/TurboLivePresence.d.ts.map +0 -1
  64. package/bin/live-share-turbo/dds-objects/TurboLivePresence.js +0 -137
  65. package/bin/live-share-turbo/dds-objects/TurboLivePresence.js.map +0 -1
  66. package/bin/live-share-turbo/dds-objects/TurboLiveState.d.ts +0 -30
  67. package/bin/live-share-turbo/dds-objects/TurboLiveState.d.ts.map +0 -1
  68. package/bin/live-share-turbo/dds-objects/TurboLiveState.js +0 -74
  69. package/bin/live-share-turbo/dds-objects/TurboLiveState.js.map +0 -1
  70. package/bin/live-share-turbo/dds-objects/TurboSharedMap.d.ts +0 -61
  71. package/bin/live-share-turbo/dds-objects/TurboSharedMap.d.ts.map +0 -1
  72. package/bin/live-share-turbo/dds-objects/TurboSharedMap.js +0 -108
  73. package/bin/live-share-turbo/dds-objects/TurboSharedMap.js.map +0 -1
  74. package/bin/live-share-turbo/dds-objects/index.d.ts +0 -8
  75. package/bin/live-share-turbo/dds-objects/index.d.ts.map +0 -1
  76. package/bin/live-share-turbo/dds-objects/index.js +0 -8
  77. package/bin/live-share-turbo/dds-objects/index.js.map +0 -1
  78. package/bin/live-share-turbo/index.d.ts +0 -5
  79. package/bin/live-share-turbo/index.d.ts.map +0 -1
  80. package/bin/live-share-turbo/index.js +0 -5
  81. package/bin/live-share-turbo/index.js.map +0 -1
  82. package/bin/live-share-turbo/interfaces/IFluidTurboClient.d.ts +0 -15
  83. package/bin/live-share-turbo/interfaces/IFluidTurboClient.d.ts.map +0 -1
  84. package/bin/live-share-turbo/interfaces/IFluidTurboClient.js +0 -2
  85. package/bin/live-share-turbo/interfaces/IFluidTurboClient.js.map +0 -1
  86. package/bin/live-share-turbo/interfaces/index.d.ts +0 -3
  87. package/bin/live-share-turbo/interfaces/index.d.ts.map +0 -1
  88. package/bin/live-share-turbo/interfaces/index.js +0 -3
  89. package/bin/live-share-turbo/interfaces/index.js.map +0 -1
  90. package/bin/live-share-turbo/internals/FluidTurboClient.d.ts +0 -39
  91. package/bin/live-share-turbo/internals/FluidTurboClient.d.ts.map +0 -1
  92. package/bin/live-share-turbo/internals/FluidTurboClient.js +0 -121
  93. package/bin/live-share-turbo/internals/FluidTurboClient.js.map +0 -1
  94. package/bin/live-share-turbo/internals/index.d.ts +0 -2
  95. package/bin/live-share-turbo/internals/index.d.ts.map +0 -1
  96. package/bin/live-share-turbo/internals/index.js +0 -2
  97. package/bin/live-share-turbo/internals/index.js.map +0 -1
  98. package/bin/live-share-turbo/internals/types.d.ts +0 -4
  99. package/bin/live-share-turbo/internals/types.d.ts.map +0 -1
  100. package/bin/live-share-turbo/internals/types.js +0 -2
  101. package/bin/live-share-turbo/internals/types.js.map +0 -1
  102. package/bin/providers/FluidContextProvider.d.ts +0 -34
  103. package/bin/providers/FluidContextProvider.d.ts.map +0 -1
  104. package/bin/providers/FluidContextProvider.js +0 -99
  105. package/bin/providers/FluidContextProvider.js.map +0 -1
  106. package/bin/providers/LiveShareContextProvider.d.ts +0 -42
  107. package/bin/providers/LiveShareContextProvider.d.ts.map +0 -1
  108. package/bin/providers/LiveShareContextProvider.js +0 -63
  109. package/bin/providers/LiveShareContextProvider.js.map +0 -1
  110. package/bin/shared-hooks/useLockedTask.d.ts +0 -11
  111. package/bin/shared-hooks/useLockedTask.d.ts.map +0 -1
  112. package/bin/shared-hooks/useLockedTask.js +0 -82
  113. package/bin/shared-hooks/useLockedTask.js.map +0 -1
  114. package/bin/shared-hooks/useTaskManager.d.ts +0 -13
  115. package/bin/shared-hooks/useTaskManager.d.ts.map +0 -1
  116. package/bin/shared-hooks/useTaskManager.js +0 -86
  117. package/bin/shared-hooks/useTaskManager.js.map +0 -1
  118. package/bin/utils/getContainerSchema.d.ts +0 -8
  119. package/bin/utils/getContainerSchema.d.ts.map +0 -1
  120. package/bin/utils/getContainerSchema.js +0 -41
  121. package/bin/utils/getContainerSchema.js.map +0 -1
package/README.md CHANGED
@@ -1,5 +1,7 @@
1
1
  # Live Share React
2
2
 
3
+ **DISCLAIMER:** This package is in preview and experimental. We are not yet committed to maintaining this package and may make breaking changes at any time. Read this package's [license](./LICENSE) for more information.
4
+
3
5
  Live Share React is designed to make building collaborative apps in React simple and intuitive, all using familiar patterns from functional React.
4
6
 
5
7
  Here is a simple example of how to get started:
@@ -66,7 +68,7 @@ npm install
66
68
  npm run build
67
69
  ```
68
70
 
69
- This will use lerna to hoist and build all dependencies.
71
+ This will use npm workspaces to hoist and build all dependencies.
70
72
 
71
73
  ### Sample app
72
74
 
@@ -584,12 +586,7 @@ The Live Share SDK contains dependencies for [@microsoft/teams-js](https://www.n
584
586
 
585
587
  | @microsoft/live-share | @microsoft/teams-js | fluid-framework | @microsoft/live-share-\* | @fluidframework/azure-client | @microsoft/TeamsFx | @microsoft/TeamsFx-react |
586
588
  | --------------------- | -------------------- | --------------- | -------------------------- | ---------------------------- | ------------------------------- | ------------------------------- |
587
- | 1.0.0-preview.23 | ^2.11.0 | ^1.2.3 | 1.0.0-preview.23 (optional) | ^1.0.0 (optional) | ^2.5.0 (optional) | ^2.5.0 (optional) |
588
- | 1.0.0-preview.10 | ^2.10.1 | ~1.2.3 | 1.0.0-preview.10 (optional) | ~1.0.2 (optional) | ^2.5.0 (optional) | ^2.5.0 (optional) |
589
- | 1.0.0-preview.8 | ^2.5.0 | ~1.2.3 | 1.0.0-preview.10 (optional) | ~1.0.2 (optional) | ^2.5.0 (optional) | ^2.5.0 (optional) |
590
- | 1.0.0-preview.3 | 2.0.0-experimental.1 | ~1.2.3 | 1.0.0-preview.3 (optional) | ~1.0.2 (optional) | 2.0.0-experimental.0 (optional) | 2.0.0-experimental.0 (optional) |
591
- | ~0.5.1 | 2.0.0-experimental.1 | ~1.2.3 | ~0.5.1 (optional) | ~1.0.2 (optional) | 2.0.0-experimental.0 (optional) | 2.0.0-experimental.0 (optional) |
592
- | ~0.3.1 | 2.0.0-experimental.0 | ~0.59.0 | ~0.3.1 (optional) | ~0.59.0 (optional) | 2.0.0-experimental.0 (optional) | 2.0.0-experimental.0 (optional) |
589
+ | ^1.0.0 | ^2.11.0 | ^1.2.3 | ^1.0.0 | ^1.0.0 | ^2.5.0 | ^2.5.0 |
593
590
 
594
591
  ## Contributing
595
592
 
@@ -600,12 +597,12 @@ There are several ways you can [contribute](../../CONTRIBUTING.md) to this proje
600
597
  - Engage with other Live Share developers on [StackOverflow](https://stackoverflow.com/questions/tagged/live-share).
601
598
  - [Contribute bug fixes](../../CONTRIBUTING.md).
602
599
 
603
- This project has adopted the [Microsoft Open Source Code of Conduct](https://opensource.microsoft.com/codeofconduct/). For more information see the [Code of Conduct FAQ](https://opensource.microsoft.com/codeofconduct/faq/) or contact opencode@microsoft.com with any additional questions or comments.
600
+ This project has adopted the [Microsoft Open Source Code of Conduct](https://opensource.microsoft.com/codeofconduct/). For more information see the [Code of Conduct FAQ](https://opensource.microsoft.com/codeofconduct/faq/) or contact <opencode@microsoft.com> with any additional questions or comments.
604
601
 
605
602
  ## Reporting Security Issues
606
603
 
607
- Security issues and bugs should be reported privately, via email, to the Microsoft Security Response Center (MSRC) at secure@microsoft.com. You should receive a response within 24 hours. If for some reason you do not, please follow up via email to ensure we received your original message. Further information, including the [MSRC PGP](https://technet.microsoft.com/security/dn606155) key, can be found in the [Security TechCenter](https://technet.microsoft.com/security/default).
604
+ Security issues and bugs should be reported privately, via email, to the Microsoft Security Response Center (MSRC) at <secure@microsoft.com>. You should receive a response within 24 hours. If for some reason you do not, please follow up via email to ensure we received your original message. Further information, including the [MSRC PGP](https://technet.microsoft.com/security/dn606155) key, can be found in the [Security TechCenter](https://technet.microsoft.com/security/default).
608
605
 
609
606
  Copyright (c) Microsoft Corporation. All rights reserved.
610
607
 
611
- Licensed under a special [Microsoft](../../LICENSE) License.
608
+ Licensed under a special [Microsoft](./LICENSE) License.
@@ -2,8 +2,25 @@
2
2
  * Copyright (c) Microsoft Corporation. All rights reserved.
3
3
  * Licensed under the Microsoft Live Share SDK License.
4
4
  */
5
+ /**
6
+ * Object response for a received event
7
+ */
5
8
  export interface IReceiveLiveEvent<TEvent = any> {
9
+ /**
10
+ * The value of the event that was sent
11
+ */
6
12
  value: TEvent;
13
+ /**
14
+ * True if the local client was the one to send this event
15
+ */
7
16
  local: boolean;
17
+ /**
18
+ * Client ID of the user that sent the event
19
+ */
20
+ clientId: string;
21
+ /**
22
+ * Server timestamp at which the event was sent
23
+ */
24
+ timestamp: number;
8
25
  }
9
26
  //# sourceMappingURL=LiveInterfaceExtensions.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"LiveInterfaceExtensions.d.ts","sourceRoot":"","sources":["../../src/interfaces/LiveInterfaceExtensions.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,MAAM,WAAW,iBAAiB,CAAC,MAAM,GAAG,GAAG;IAC3C,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,OAAO,CAAC;CAClB"}
1
+ {"version":3,"file":"LiveInterfaceExtensions.d.ts","sourceRoot":"","sources":["../../src/interfaces/LiveInterfaceExtensions.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH;;GAEG;AACH,MAAM,WAAW,iBAAiB,CAAC,MAAM,GAAG,GAAG;IAC3C;;OAEG;IACH,KAAK,EAAE,MAAM,CAAC;IACd;;OAEG;IACH,KAAK,EAAE,OAAO,CAAC;IACf;;OAEG;IACH,QAAQ,EAAE,MAAM,CAAC;IACjB;;OAEG;IACH,SAAS,EAAE,MAAM,CAAC;CACrB"}
@@ -1 +1 @@
1
- {"version":3,"file":"useLiveEvent.d.ts","sourceRoot":"","sources":["../../src/live-hooks/useLiveEvent.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAEH,eAAe,EAElB,MAAM,uBAAuB,CAAC;AAE/B,OAAO,EACH,oBAAoB,EACpB,yBAAyB,EAE5B,MAAM,UAAU,CAAC;AAUlB;;;;;;;;;;;;;GAaG;AACH,wBAAgB,YAAY,CAAC,MAAM,GAAG,GAAG,EACrC,SAAS,EAAE,MAAM,EACjB,YAAY,CAAC,EAAE,eAAe,EAAE,EAChC,eAAe,CAAC,EAAE,yBAAyB,CAAC,MAAM,CAAC,GACpD,oBAAoB,CAAC,MAAM,CAAC,CAqF9B"}
1
+ {"version":3,"file":"useLiveEvent.d.ts","sourceRoot":"","sources":["../../src/live-hooks/useLiveEvent.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAEH,eAAe,EAElB,MAAM,uBAAuB,CAAC;AAE/B,OAAO,EACH,oBAAoB,EACpB,yBAAyB,EAE5B,MAAM,UAAU,CAAC;AAUlB;;;;;;;;;;;;;GAaG;AACH,wBAAgB,YAAY,CAAC,MAAM,GAAG,GAAG,EACrC,SAAS,EAAE,MAAM,EACjB,YAAY,CAAC,EAAE,eAAe,EAAE,EAChC,eAAe,CAAC,EAAE,yBAAyB,CAAC,MAAM,CAAC,GACpD,oBAAoB,CAAC,MAAM,CAAC,CA4F9B"}
@@ -67,7 +67,7 @@ export function useLiveEvent(uniqueKey, allowedRoles, onReceivedEvent) {
67
67
  if ((liveEvent === null || liveEvent === void 0 ? void 0 : liveEvent.isInitialized) === undefined)
68
68
  return;
69
69
  // Register event listener
70
- const onEventReceived = (event, local) => {
70
+ const onEventReceived = (event, local, clientId, timestamp) => {
71
71
  // If developer passed the optional onReceivedEvent callback, we
72
72
  // call it.
73
73
  onReceivedEvent === null || onReceivedEvent === void 0 ? void 0 : onReceivedEvent(event, local);
@@ -75,6 +75,8 @@ export function useLiveEvent(uniqueKey, allowedRoles, onReceivedEvent) {
75
75
  const received = {
76
76
  value: event,
77
77
  local,
78
+ clientId,
79
+ timestamp,
78
80
  };
79
81
  allEventsRef.current = [...allEventsRef.current, received];
80
82
  setLatestReceived(received);
@@ -1 +1 @@
1
- {"version":3,"file":"useLiveEvent.js","sourceRoot":"","sources":["../../src/live-hooks/useLiveEvent.ts"],"names":[],"mappings":"AAAA;;;GAGG;;;;;;;;;;AAEH,OAAO,EACH,eAAe,EAEf,SAAS,GACZ,MAAM,uBAAuB,CAAC;AAC/B,OAAO,KAAK,MAAM,OAAO,CAAC;AAO1B,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,EACH,6BAA6B,EAC7B,oCAAoC,EACpC,kCAAkC,GACrC,MAAM,aAAa,CAAC;AACrB,OAAO,EAAE,sBAAsB,EAAE,MAAM,cAAc,CAAC;AAEtD;;;;;;;;;;;;;GAaG;AACH,MAAM,UAAU,YAAY,CACxB,SAAiB,EACjB,YAAgC,EAChC,eAAmD;IAEnD;;OAEG;IACH,MAAM,CAAC,WAAW,EAAE,iBAAiB,CAAC,GAClC,KAAK,CAAC,QAAQ,EAA6B,CAAC;IAChD;;;OAGG;IACH,MAAM,YAAY,GAAG,KAAK,CAAC,MAAM,CAA8B,EAAE,CAAC,CAAC;IACnE;;OAEG;IACH,MAAM,EAAE,GAAG,EAAE,SAAS,EAAE,GAAG,aAAa,CACpC,SAAS,EACT,CAAA,SAAiB,CAAA,CACpB,CAAC;IAEF,MAAM,EAAE,SAAS,EAAE,GAAG,sBAAsB,EAAE,CAAC;IAE/C;;OAEG;IACH,MAAM,SAAS,GAAgC,KAAK,CAAC,WAAW,CAC5D,CAAO,KAAa,EAAE,EAAE;QACpB,IAAI,CAAC,SAAS,EAAE;YACZ,MAAM,IAAI,6BAA6B,CACnC,WAAW,EACX,WAAW,CACd,CAAC;SACL;QACD,IAAI,SAAS,KAAK,SAAS,EAAE;YACzB,MAAM,IAAI,kCAAkC,CACxC,WAAW,EACX,WAAW,CACd,CAAC;SACL;QACD,IAAI,CAAC,SAAS,CAAC,aAAa,EAAE;YAC1B,MAAM,IAAI,oCAAoC,CAC1C,WAAW,EACX,WAAW,CACd,CAAC;SACL;QACD,OAAO,MAAM,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IACvC,CAAC,CAAA,EACD,CAAC,SAAS,EAAE,SAAS,CAAC,CACzB,CAAC;IAEF;;OAEG;IACH,KAAK,CAAC,SAAS,CAAC,GAAG,EAAE;QACjB,IAAI,CAAA,SAAS,aAAT,SAAS,uBAAT,SAAS,CAAE,aAAa,MAAK,SAAS;YAAE,OAAO;QACnD,0BAA0B;QAC1B,MAAM,eAAe,GAAG,CAAC,KAAa,EAAE,KAAc,EAAE,EAAE;YACtD,gEAAgE;YAChE,WAAW;YACX,eAAe,aAAf,eAAe,uBAAf,eAAe,CAAG,KAAK,EAAE,KAAK,CAAC,CAAC;YAChC,4CAA4C;YAC5C,MAAM,QAAQ,GAA8B;gBACxC,KAAK,EAAE,KAAK;gBACZ,KAAK;aACR,CAAC;YACF,YAAY,CAAC,OAAO,GAAG,CAAC,GAAG,YAAY,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;YAC3D,iBAAiB,CAAC,QAAQ,CAAC,CAAC;QAChC,CAAC,CAAC;QACF,SAAS,CAAC,EAAE,CAAC,eAAe,CAAC,QAAQ,EAAE,eAAe,CAAC,CAAC;QACxD,IAAI,CAAC,SAAS,CAAC,aAAa,EAAE;YAC1B,mBAAmB;YACnB,SAAS,CAAC,UAAU,CAAC,YAAY,CAAC,CAAC;SACtC;QAED,OAAO,GAAG,EAAE;YACR,qCAAqC;YACrC,SAAS,aAAT,SAAS,uBAAT,SAAS,CAAE,GAAG,CAAC,eAAe,CAAC,QAAQ,EAAE,eAAe,CAAC,CAAC;QAC9D,CAAC,CAAC;IACN,CAAC,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC;IAEhB,OAAO;QACH,WAAW;QACX,SAAS,EAAE,YAAY,CAAC,OAAO;QAC/B,SAAS;QACT,SAAS;KACZ,CAAC;AACN,CAAC"}
1
+ {"version":3,"file":"useLiveEvent.js","sourceRoot":"","sources":["../../src/live-hooks/useLiveEvent.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"useLivePresence.d.ts","sourceRoot":"","sources":["../../src/live-hooks/useLivePresence.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAEH,aAAa,EAEb,eAAe,EAClB,MAAM,uBAAuB,CAAC;AAE/B,OAAO,EAAE,uBAAuB,EAA8B,MAAM,UAAU,CAAC;AAS/E;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,eAAe,CAAC,KAAK,SAAS,MAAM,GAAG,MAAM,EACzD,SAAS,EAAE,MAAM,EACjB,WAAW,CAAC,EAAE,KAAK,GAAG,CAAC,MAAM,KAAK,CAAC,GAAG,SAAS,EAC/C,oBAAoB,GAAE,aAAoC,EAC1D,YAAY,CAAC,EAAE,eAAe,EAAE,GACjC,uBAAuB,CAAC,KAAK,CAAC,CA4FhC"}
1
+ {"version":3,"file":"useLivePresence.d.ts","sourceRoot":"","sources":["../../src/live-hooks/useLivePresence.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAEH,aAAa,EAEb,eAAe,EAClB,MAAM,uBAAuB,CAAC;AAE/B,OAAO,EAAE,uBAAuB,EAA8B,MAAM,UAAU,CAAC;AAS/E;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,eAAe,CAAC,KAAK,SAAS,MAAM,GAAG,MAAM,EACzD,SAAS,EAAE,MAAM,EACjB,WAAW,CAAC,EAAE,KAAK,GAAG,CAAC,MAAM,KAAK,CAAC,GAAG,SAAS,EAC/C,oBAAoB,GAAE,aAAoC,EAC1D,YAAY,CAAC,EAAE,eAAe,EAAE,GACjC,uBAAuB,CAAC,KAAK,CAAC,CA8FhC"}
@@ -82,7 +82,9 @@ export function useLivePresence(uniqueKey, initialData, initialPresenceState = P
82
82
  };
83
83
  livePresence.on("presenceChanged", onPresenceChanged);
84
84
  if (!livePresence.isInitialized) {
85
- livePresence.initialize(typeof initialData === "function" ? initialData() : initialData, initialPresenceState, allowedRoles);
85
+ livePresence.initialize(isInitialDataCallback(initialData)
86
+ ? initialData()
87
+ : initialData, initialPresenceState, allowedRoles);
86
88
  }
87
89
  else {
88
90
  onPresenceChanged();
@@ -99,4 +101,7 @@ export function useLivePresence(uniqueKey, initialData, initialPresenceState = P
99
101
  updatePresence,
100
102
  };
101
103
  }
104
+ function isInitialDataCallback(value) {
105
+ return typeof value === "function";
106
+ }
102
107
  //# sourceMappingURL=useLivePresence.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"useLivePresence.js","sourceRoot":"","sources":["../../src/live-hooks/useLivePresence.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"useLivePresence.js","sourceRoot":"","sources":["../../src/live-hooks/useLivePresence.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@microsoft/live-share-react",
3
- "version": "1.0.0-preview.23",
3
+ "version": "1.0.0-preview.24",
4
4
  "description": "Build collaborative React apps using Microsoft's Fluid & Live Share frameworks with ease.",
5
5
  "author": "Microsoft",
6
6
  "license": "SEE LICENSE IN LICENSE",
@@ -12,17 +12,17 @@
12
12
  "typecheck": "tsc"
13
13
  },
14
14
  "dependencies": {
15
- "@microsoft/live-share-turbo": "1.0.0-preview.23",
15
+ "@microsoft/live-share-turbo": "1.0.0-preview.24",
16
16
  "url": "^0.11.0",
17
17
  "uuid": "^9.0.0"
18
18
  },
19
19
  "devDependencies": {
20
20
  "@babel/core": "^7.21.8",
21
- "@fluidframework/azure-client": "~1.0.3",
21
+ "@fluidframework/azure-client": "^1.1.1",
22
22
  "@fluidframework/test-client-utils": "^1.3.6",
23
- "@microsoft/live-share": "1.0.0-preview.23",
24
- "@microsoft/live-share-canvas": "1.0.0-preview.23",
25
- "@microsoft/live-share-media": "1.0.0-preview.23",
23
+ "@microsoft/live-share": "1.0.0",
24
+ "@microsoft/live-share-canvas": "1.0.0",
25
+ "@microsoft/live-share-media": "1.0.0",
26
26
  "@types/react": "^18.0.0",
27
27
  "@types/react-dom": "^18.0.0",
28
28
  "@types/uuid": "^9.0.1",
@@ -32,9 +32,9 @@
32
32
  },
33
33
  "peerDependencies": {
34
34
  "@fluidframework/azure-client": "^1.0.0",
35
- "@microsoft/live-share": "1.0.0-preview.23",
36
- "@microsoft/live-share-canvas": "1.0.0-preview.23",
37
- "@microsoft/live-share-media": "1.0.0-preview.23",
35
+ "@microsoft/live-share": "1.0.0",
36
+ "@microsoft/live-share-canvas": "1.0.0",
37
+ "@microsoft/live-share-media": "1.0.0",
38
38
  "fluid-framework": "^1.2.3",
39
39
  "react": "^16.8.0 || ^17 || ^18",
40
40
  "react-dom": "^16.8.0 || ^17 || ^18"
@@ -3,7 +3,24 @@
3
3
  * Licensed under the Microsoft Live Share SDK License.
4
4
  */
5
5
 
6
+ /**
7
+ * Object response for a received event
8
+ */
6
9
  export interface IReceiveLiveEvent<TEvent = any> {
10
+ /**
11
+ * The value of the event that was sent
12
+ */
7
13
  value: TEvent;
14
+ /**
15
+ * True if the local client was the one to send this event
16
+ */
8
17
  local: boolean;
18
+ /**
19
+ * Client ID of the user that sent the event
20
+ */
21
+ clientId: string;
22
+ /**
23
+ * Server timestamp at which the event was sent
24
+ */
25
+ timestamp: number;
9
26
  }
@@ -96,7 +96,12 @@ export function useLiveEvent<TEvent = any>(
96
96
  React.useEffect(() => {
97
97
  if (liveEvent?.isInitialized === undefined) return;
98
98
  // Register event listener
99
- const onEventReceived = (event: TEvent, local: boolean) => {
99
+ const onEventReceived = (
100
+ event: TEvent,
101
+ local: boolean,
102
+ clientId: string,
103
+ timestamp: number
104
+ ) => {
100
105
  // If developer passed the optional onReceivedEvent callback, we
101
106
  // call it.
102
107
  onReceivedEvent?.(event, local);
@@ -104,6 +109,8 @@ export function useLiveEvent<TEvent = any>(
104
109
  const received: IReceiveLiveEvent<TEvent> = {
105
110
  value: event,
106
111
  local,
112
+ clientId,
113
+ timestamp,
107
114
  };
108
115
  allEventsRef.current = [...allEventsRef.current, received];
109
116
  setLatestReceived(received);
@@ -114,7 +114,9 @@ export function useLivePresence<TData extends object = object>(
114
114
 
115
115
  if (!livePresence.isInitialized) {
116
116
  livePresence.initialize(
117
- typeof initialData === "function" ? initialData() : initialData,
117
+ isInitialDataCallback<TData>(initialData)
118
+ ? initialData()
119
+ : initialData,
118
120
  initialPresenceState,
119
121
  allowedRoles
120
122
  );
@@ -135,3 +137,7 @@ export function useLivePresence<TData extends object = object>(
135
137
  updatePresence,
136
138
  };
137
139
  }
140
+
141
+ function isInitialDataCallback<TData>(value: any): value is () => TData {
142
+ return typeof value === "function";
143
+ }
@@ -1,2 +0,0 @@
1
- export * from "./useSharedStateRegistry";
2
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/internal-hooks/index.ts"],"names":[],"mappings":"AAAA,cAAc,0BAA0B,CAAC"}
@@ -1,2 +0,0 @@
1
- export * from "./useSharedStateRegistry";
2
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/internal-hooks/index.ts"],"names":[],"mappings":"AAAA,cAAc,0BAA0B,CAAC"}
@@ -1,14 +0,0 @@
1
- import { IAzureContainerResults, RegisterDDSSetStateAction, UnregisterDDSSetStateAction } from "../types";
2
- export interface IDynamicDDSRegistry {
3
- registerDDSSetStateAction: RegisterDDSSetStateAction;
4
- unregisterDDSSetStateAction: UnregisterDDSSetStateAction;
5
- }
6
- /**
7
- * Hook used internally to keep track of the DDSSetStateActionMap for each unique key. It gets DDS objects for provided keys where they exist and creates
8
- * them where they do not, providing the DDS objects to components that use them.
9
- *
10
- * @param results IAzureContainerResults response or undefined
11
- * @returns IDynamicDDSRegistry object
12
- */
13
- export declare const useDynamicDDSRegistry: (results: IAzureContainerResults | undefined) => IDynamicDDSRegistry;
14
- //# sourceMappingURL=useDynamicDDSRegistry.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"useDynamicDDSRegistry.d.ts","sourceRoot":"","sources":["../../src/internal-hooks/useDynamicDDSRegistry.ts"],"names":[],"mappings":"AAQA,OAAO,EACH,sBAAsB,EACtB,yBAAyB,EAEzB,2BAA2B,EAC9B,MAAM,UAAU,CAAC;AAElB,MAAM,WAAW,mBAAmB;IAChC,yBAAyB,EAAE,yBAAyB,CAAC;IACrD,2BAA2B,EAAE,2BAA2B,CAAC;CAC5D;AAED;;;;;;GAMG;AACH,eAAO,MAAM,qBAAqB,YACrB,sBAAsB,GAAG,SAAS,KAC5C,mBAyKF,CAAC"}
@@ -1,142 +0,0 @@
1
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
2
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
3
- return new (P || (P = Promise))(function (resolve, reject) {
4
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
5
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
6
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
7
- step((generator = generator.apply(thisArg, _arguments || [])).next());
8
- });
9
- };
10
- import { useCallback, useEffect, useRef } from "react";
11
- /**
12
- * Hook used internally to keep track of the DDSSetStateActionMap for each unique key. It gets DDS objects for provided keys where they exist and creates
13
- * them where they do not, providing the DDS objects to components that use them.
14
- *
15
- * @param results IAzureContainerResults response or undefined
16
- * @returns IDynamicDDSRegistry object
17
- */
18
- export const useDynamicDDSRegistry = (results) => {
19
- const registeredDDSSetStateActionMapRef = useRef(new Map());
20
- // Get the DDS from dynamicObjects for a given key, if known
21
- const getDDS = useCallback((key) => __awaiter(void 0, void 0, void 0, function* () {
22
- const dynamicObjectMap = results === null || results === void 0 ? void 0 : results.container.initialObjects.dynamicObjects;
23
- if (dynamicObjectMap) {
24
- const handleValue = dynamicObjectMap.get(key);
25
- if (handleValue) {
26
- const dds = yield handleValue.get();
27
- return dds;
28
- }
29
- else {
30
- return undefined;
31
- }
32
- }
33
- else {
34
- throw new Error("getDDS should never be called if dynamicObjects is undefined");
35
- }
36
- }), [results]);
37
- // Create a new DDS of type T in dynamicObjects
38
- const createDDS = useCallback((key, objectClass) => __awaiter(void 0, void 0, void 0, function* () {
39
- const dynamicObjectMap = results === null || results === void 0 ? void 0 : results.container.initialObjects.dynamicObjects;
40
- if (dynamicObjectMap) {
41
- // Create a new DDS and set the handle to the DDS
42
- const dds = yield results.container.create(objectClass);
43
- dynamicObjectMap.set(key, dds.handle);
44
- return dds;
45
- }
46
- else {
47
- throw new Error("createDDS: should never be called if dynamicObjectsMap is undefined");
48
- }
49
- }), [results]);
50
- // Callback for hooks (e.g., useSharedMap) to register a new set state action so they
51
- // always have the most recent DDS. If one does not exist, we create it here.
52
- const registerDDSSetStateAction = useCallback((uniqueKey, componentId, objectClass, setLocalStateAction, onDidFirstInitialize) => __awaiter(void 0, void 0, void 0, function* () {
53
- let shouldCreateIfNeeded = false;
54
- let actionsMap = registeredDDSSetStateActionMapRef.current.get(uniqueKey);
55
- if (actionsMap) {
56
- if (!actionsMap.has(componentId)) {
57
- shouldCreateIfNeeded = true;
58
- actionsMap.set(componentId, setLocalStateAction);
59
- }
60
- }
61
- else {
62
- shouldCreateIfNeeded = true;
63
- actionsMap = new Map();
64
- actionsMap.set(componentId, setLocalStateAction);
65
- registeredDDSSetStateActionMapRef.current.set(uniqueKey, actionsMap);
66
- }
67
- try {
68
- // Set initial values, if known
69
- let dds = yield getDDS(uniqueKey);
70
- if (dds) {
71
- setLocalStateAction(dds);
72
- }
73
- else if (shouldCreateIfNeeded) {
74
- // Create a new DDS of type T
75
- dds = yield createDDS(uniqueKey, objectClass);
76
- setLocalStateAction(dds);
77
- onDidFirstInitialize === null || onDidFirstInitialize === void 0 ? void 0 : onDidFirstInitialize(dds);
78
- }
79
- }
80
- catch (error) {
81
- throw error;
82
- }
83
- }), [results]);
84
- // Callback for hooks (e.g., useSharedMap) to unregister their set state actions
85
- const unregisterDDSSetStateAction = useCallback((uniqueKey, componentId) => {
86
- let actionsMap = registeredDDSSetStateActionMapRef.current.get(uniqueKey);
87
- if (actionsMap === null || actionsMap === void 0 ? void 0 : actionsMap.has(componentId)) {
88
- actionsMap.delete(componentId);
89
- }
90
- }, []);
91
- // Initial setup
92
- useEffect(() => {
93
- if (!results)
94
- return;
95
- const { container } = results;
96
- const dynamicObjectMap = container.initialObjects
97
- .dynamicObjects;
98
- // Register value changed listener
99
- const valueChangedListener = (changed, local) => {
100
- if (local)
101
- return;
102
- if (registeredDDSSetStateActionMapRef.current.has(changed.key)) {
103
- const actionMap = registeredDDSSetStateActionMapRef.current.get(changed.key);
104
- // Get the DDS for the changed value, if known
105
- getDDS(changed.key)
106
- .then((dds) => {
107
- // Update each component that has registered an action in actionMap
108
- actionMap === null || actionMap === void 0 ? void 0 : actionMap.forEach((setLocalStateHandler) => {
109
- setLocalStateHandler(dds);
110
- });
111
- })
112
- .catch((error) => console.error(error));
113
- }
114
- };
115
- dynamicObjectMap.on("valueChanged", valueChangedListener);
116
- // Set initial values
117
- dynamicObjectMap.forEach((handleValue, key) => {
118
- const actionMap = registeredDDSSetStateActionMapRef.current.get(key);
119
- if (handleValue) {
120
- handleValue
121
- .get()
122
- .then((dds) => {
123
- // Update each component that has registered an action in actionMap
124
- actionMap === null || actionMap === void 0 ? void 0 : actionMap.forEach((setLocalStateHandler) => {
125
- setLocalStateHandler(dds);
126
- });
127
- })
128
- .catch((error) => {
129
- console.error(error);
130
- });
131
- }
132
- });
133
- return () => {
134
- dynamicObjectMap.off("valueChanged", valueChangedListener);
135
- };
136
- }, [results]);
137
- return {
138
- registerDDSSetStateAction,
139
- unregisterDDSSetStateAction,
140
- };
141
- };
142
- //# sourceMappingURL=useDynamicDDSRegistry.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"useDynamicDDSRegistry.js","sourceRoot":"","sources":["../../src/internal-hooks/useDynamicDDSRegistry.ts"],"names":[],"mappings":";;;;;;;;;AAOA,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,OAAO,CAAC;AAavD;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,qBAAqB,GAAG,CACjC,OAA2C,EACxB,EAAE;IACrB,MAAM,iCAAiC,GAAG,MAAM,CAE9C,IAAI,GAAG,EAAE,CAAC,CAAC;IAEb,4DAA4D;IAC5D,MAAM,MAAM,GAAG,WAAW,CACtB,CACI,GAAW,EACW,EAAE;QACxB,MAAM,gBAAgB,GAAG,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,SAAS,CAAC,cAAc,CACrD,cAAuC,CAAC;QAC7C,IAAI,gBAAgB,EAAE;YAClB,MAAM,WAAW,GAAG,gBAAgB,CAAC,GAAG,CAEtC,GAAG,CAAC,CAAC;YACP,IAAI,WAAW,EAAE;gBACb,MAAM,GAAG,GAAG,MAAM,WAAW,CAAC,GAAG,EAAE,CAAC;gBACpC,OAAO,GAAG,CAAC;aACd;iBAAM;gBACH,OAAO,SAAS,CAAC;aACpB;SACJ;aAAM;YACH,MAAM,IAAI,KAAK,CACX,8DAA8D,CACjE,CAAC;SACL;IACL,CAAC,CAAA,EACD,CAAC,OAAO,CAAC,CACZ,CAAC;IAEF,+CAA+C;IAC/C,MAAM,SAAS,GAAG,WAAW,CACzB,CACI,GAAW,EACX,WAAmC,EACzB,EAAE;QACZ,MAAM,gBAAgB,GAAG,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,SAAS,CAAC,cAAc,CACrD,cAAuC,CAAC;QAC7C,IAAI,gBAAgB,EAAE;YAClB,iDAAiD;YACjD,MAAM,GAAG,GAAG,MAAM,OAAQ,CAAC,SAAS,CAAC,MAAM,CAAI,WAAW,CAAC,CAAC;YAC5D,gBAAgB,CAAC,GAAG,CAAC,GAAG,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;YACtC,OAAO,GAAG,CAAC;SACd;aAAM;YACH,MAAM,IAAI,KAAK,CACX,qEAAqE,CACxE,CAAC;SACL;IACL,CAAC,CAAA,EACD,CAAC,OAAO,CAAC,CACZ,CAAC;IAEF,qFAAqF;IACrF,6EAA6E;IAC7E,MAAM,yBAAyB,GAC3B,WAAW,CACP,CACI,SAAiB,EACjB,WAAmB,EACnB,WAAmC,EACnC,mBAAwC,EACxC,oBAAuC,EACzC,EAAE;QACA,IAAI,oBAAoB,GAAG,KAAK,CAAC;QACjC,IAAI,UAAU,GACV,iCAAiC,CAAC,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;QAC7D,IAAI,UAAU,EAAE;YACZ,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,WAAW,CAAC,EAAE;gBAC9B,oBAAoB,GAAG,IAAI,CAAC;gBAC5B,UAAU,CAAC,GAAG,CAAC,WAAW,EAAE,mBAAmB,CAAC,CAAC;aACpD;SACJ;aAAM;YACH,oBAAoB,GAAG,IAAI,CAAC;YAC5B,UAAU,GAAG,IAAI,GAAG,EAA+B,CAAC;YACpD,UAAU,CAAC,GAAG,CAAC,WAAW,EAAE,mBAAmB,CAAC,CAAC;YACjD,iCAAiC,CAAC,OAAO,CAAC,GAAG,CACzC,SAAS,EACT,UAAU,CACb,CAAC;SACL;QACD,IAAI;YACA,+BAA+B;YAC/B,IAAI,GAAG,GAAG,MAAM,MAAM,CAAI,SAAS,CAAC,CAAC;YACrC,IAAI,GAAG,EAAE;gBACL,mBAAmB,CAAC,GAAG,CAAC,CAAC;aAC5B;iBAAM,IAAI,oBAAoB,EAAE;gBAC7B,6BAA6B;gBAC7B,GAAG,GAAG,MAAM,SAAS,CAAI,SAAS,EAAE,WAAW,CAAC,CAAC;gBACjD,mBAAmB,CAAC,GAAG,CAAC,CAAC;gBACzB,oBAAoB,aAApB,oBAAoB,uBAApB,oBAAoB,CAAG,GAAG,CAAC,CAAC;aAC/B;SACJ;QAAC,OAAO,KAAK,EAAE;YACZ,MAAM,KAAK,CAAC;SACf;IACL,CAAC,CAAA,EACD,CAAC,OAAO,CAAC,CACZ,CAAC;IAEN,gFAAgF;IAChF,MAAM,2BAA2B,GAC7B,WAAW,CAAC,CAAC,SAAiB,EAAE,WAAmB,EAAE,EAAE;QACnD,IAAI,UAAU,GACV,iCAAiC,CAAC,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;QAC7D,IAAI,UAAU,aAAV,UAAU,uBAAV,UAAU,CAAE,GAAG,CAAC,WAAW,CAAC,EAAE;YAC9B,UAAU,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;SAClC;IACL,CAAC,EAAE,EAAE,CAAC,CAAC;IAEX,gBAAgB;IAChB,SAAS,CAAC,GAAG,EAAE;QACX,IAAI,CAAC,OAAO;YAAE,OAAO;QACrB,MAAM,EAAE,SAAS,EAAE,GAAG,OAAO,CAAC;QAC9B,MAAM,gBAAgB,GAAG,SAAS,CAAC,cAAc;aAC5C,cAA2B,CAAC;QACjC,kCAAkC;QAClC,MAAM,oBAAoB,GAAG,CACzB,OAAsB,EACtB,KAAc,EACV,EAAE;YACN,IAAI,KAAK;gBAAE,OAAO;YAClB,IAAI,iCAAiC,CAAC,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE;gBAC5D,MAAM,SAAS,GAAG,iCAAiC,CAAC,OAAO,CAAC,GAAG,CAC3D,OAAO,CAAC,GAAG,CACd,CAAC;gBACF,8CAA8C;gBAC9C,MAAM,CAAM,OAAO,CAAC,GAAG,CAAC;qBACnB,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE;oBACV,mEAAmE;oBACnE,SAAS,aAAT,SAAS,uBAAT,SAAS,CAAE,OAAO,CAAC,CAAC,oBAAoB,EAAE,EAAE;wBACxC,oBAAoB,CAAC,GAAG,CAAC,CAAC;oBAC9B,CAAC,CAAC,CAAC;gBACP,CAAC,CAAC;qBACD,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC;aAC/C;QACL,CAAC,CAAC;QACF,gBAAgB,CAAC,EAAE,CAAC,cAAc,EAAE,oBAAoB,CAAC,CAAC;QAC1D,qBAAqB;QACrB,gBAAgB,CAAC,OAAO,CACpB,CACI,WAA4D,EAC5D,GAAW,EACb,EAAE;YACA,MAAM,SAAS,GACX,iCAAiC,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;YACvD,IAAI,WAAW,EAAE;gBACb,WAAW;qBACN,GAAG,EAAE;qBACL,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE;oBACV,mEAAmE;oBACnE,SAAS,aAAT,SAAS,uBAAT,SAAS,CAAE,OAAO,CAAC,CAAC,oBAAoB,EAAE,EAAE;wBACxC,oBAAoB,CAAC,GAAG,CAAC,CAAC;oBAC9B,CAAC,CAAC,CAAC;gBACP,CAAC,CAAC;qBACD,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE;oBACb,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;gBACzB,CAAC,CAAC,CAAC;aACV;QACL,CAAC,CACJ,CAAC;QACF,OAAO,GAAG,EAAE;YACR,gBAAgB,CAAC,GAAG,CAAC,cAAc,EAAE,oBAAoB,CAAC,CAAC;QAC/D,CAAC,CAAC;IACN,CAAC,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC;IAEd,OAAO;QACH,yBAAyB;QACzB,2BAA2B;KAC9B,CAAC;AACN,CAAC,CAAC"}
@@ -1,31 +0,0 @@
1
- /*!
2
- * Copyright (c) Microsoft Corporation. All rights reserved.
3
- * Licensed under the Microsoft Live Share SDK License.
4
- */
5
- import { DeleteSharedStateAction, IAzureContainerResults, RegisterSharedSetStateAction, UnregisterSharedSetStateAction, UpdateSharedStateAction } from "../types";
6
- export interface ISharedStateRegistryResponse {
7
- /**
8
- * Register a set state action callback
9
- */
10
- registerSharedSetStateAction: RegisterSharedSetStateAction;
11
- /**
12
- * Unregister a set state action callback
13
- */
14
- unregisterSharedSetStateAction: UnregisterSharedSetStateAction;
15
- /**
16
- * Setter callback to update the shared state
17
- */
18
- updateSharedState: UpdateSharedStateAction;
19
- /**
20
- * Delete a shared state value
21
- */
22
- deleteSharedState: DeleteSharedStateAction;
23
- }
24
- /**
25
- * Hook used internally to keep track of the SharedSetStateActionMap for each unique key. It sets state values for provided keys and updates components listening to the values.
26
- *
27
- * @param results IAzureContainerResults response or undefined
28
- * @returns ISharedStateRegistryResponse object
29
- */
30
- export declare const useSharedStateRegistry: (results: IAzureContainerResults | undefined) => ISharedStateRegistryResponse;
31
- //# sourceMappingURL=useSharedStateRegistry.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"useSharedStateRegistry.d.ts","sourceRoot":"","sources":["../../src/internal-hooks/useSharedStateRegistry.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAIH,OAAO,EACH,uBAAuB,EACvB,sBAAsB,EACtB,4BAA4B,EAE5B,8BAA8B,EAC9B,uBAAuB,EAC1B,MAAM,UAAU,CAAC;AAElB,MAAM,WAAW,4BAA4B;IACzC;;OAEG;IACH,4BAA4B,EAAE,4BAA4B,CAAC;IAC3D;;OAEG;IACH,8BAA8B,EAAE,8BAA8B,CAAC;IAC/D;;OAEG;IACH,iBAAiB,EAAE,uBAAuB,CAAC;IAC3C;;OAEG;IACH,iBAAiB,EAAE,uBAAuB,CAAC;CAC9C;AAED;;;;;GAKG;AACH,eAAO,MAAM,sBAAsB,YACtB,sBAAsB,GAAG,SAAS,KAC5C,4BAwHF,CAAC"}
@@ -1,102 +0,0 @@
1
- /*!
2
- * Copyright (c) Microsoft Corporation. All rights reserved.
3
- * Licensed under the Microsoft Live Share SDK License.
4
- */
5
- import React from "react";
6
- /**
7
- * Hook used internally to keep track of the SharedSetStateActionMap for each unique key. It sets state values for provided keys and updates components listening to the values.
8
- *
9
- * @param results IAzureContainerResults response or undefined
10
- * @returns ISharedStateRegistryResponse object
11
- */
12
- export const useSharedStateRegistry = (results) => {
13
- const registeredSharedSetStateActionMapRef = React.useRef(new Map());
14
- /**
15
- * @see ISharedStateRegistryResponse.registerSharedSetStateAction
16
- */
17
- const registerSharedSetStateAction = React.useCallback((uniqueKey, componentId, setLocalStateAction) => {
18
- let actionsMap = registeredSharedSetStateActionMapRef.current.get(uniqueKey);
19
- if (actionsMap) {
20
- if (!actionsMap.has(componentId)) {
21
- actionsMap.set(componentId, setLocalStateAction);
22
- }
23
- }
24
- else {
25
- actionsMap = new Map();
26
- actionsMap.set(componentId, setLocalStateAction);
27
- registeredSharedSetStateActionMapRef.current.set(uniqueKey, actionsMap);
28
- }
29
- // Set initial values, if known
30
- const stateMap = results === null || results === void 0 ? void 0 : results.container.initialObjects.TURBO_STATE_MAP;
31
- const initialValue = stateMap === null || stateMap === void 0 ? void 0 : stateMap.get(uniqueKey);
32
- if (initialValue) {
33
- setLocalStateAction(initialValue);
34
- }
35
- }, [results]);
36
- /**
37
- * @see ISharedStateRegistryResponse.unregisterSharedSetStateAction
38
- */
39
- const unregisterSharedSetStateAction = React.useCallback((uniqueKey, componentId) => {
40
- let actionsMap = registeredSharedSetStateActionMapRef.current.get(uniqueKey);
41
- if (actionsMap === null || actionsMap === void 0 ? void 0 : actionsMap.has(componentId)) {
42
- actionsMap.delete(componentId);
43
- }
44
- }, []);
45
- /**
46
- * @see ISharedStateRegistryResponse.updateSharedState
47
- */
48
- const updateSharedState = React.useCallback((uniqueKey, value) => {
49
- if (!results)
50
- return;
51
- const { container } = results;
52
- const stateMap = container.initialObjects
53
- .TURBO_STATE_MAP;
54
- stateMap.set(uniqueKey, value);
55
- }, [results]);
56
- /**
57
- * @see ISharedStateRegistryResponse.deleteSharedState
58
- */
59
- const deleteSharedState = React.useCallback((uniqueKey) => {
60
- if (!results)
61
- return;
62
- const { container } = results;
63
- let actionsMap = registeredSharedSetStateActionMapRef.current.get(uniqueKey);
64
- actionsMap === null || actionsMap === void 0 ? void 0 : actionsMap.clear();
65
- const stateMap = container.initialObjects
66
- .TURBO_STATE_MAP;
67
- stateMap.delete(uniqueKey);
68
- }, [results]);
69
- React.useEffect(() => {
70
- if (!results)
71
- return;
72
- const { container } = results;
73
- const stateMap = container.initialObjects.TURBO_STATE_MAP;
74
- const valueChangedListener = (changed) => {
75
- if (registeredSharedSetStateActionMapRef.current.has(changed.key)) {
76
- const value = stateMap.get(changed.key);
77
- const actionMap = registeredSharedSetStateActionMapRef.current.get(changed.key);
78
- actionMap === null || actionMap === void 0 ? void 0 : actionMap.forEach((setLocalStateHandler) => {
79
- setLocalStateHandler(value);
80
- });
81
- }
82
- };
83
- stateMap.on("valueChanged", valueChangedListener);
84
- // Set initial values
85
- stateMap.forEach((value, key) => {
86
- const actionMap = registeredSharedSetStateActionMapRef.current.get(key);
87
- actionMap === null || actionMap === void 0 ? void 0 : actionMap.forEach((setLocalStateHandler) => {
88
- setLocalStateHandler(value);
89
- });
90
- });
91
- return () => {
92
- stateMap.off("valueChanged", valueChangedListener);
93
- };
94
- }, [results]);
95
- return {
96
- registerSharedSetStateAction,
97
- unregisterSharedSetStateAction,
98
- updateSharedState,
99
- deleteSharedState,
100
- };
101
- };
102
- //# sourceMappingURL=useSharedStateRegistry.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"useSharedStateRegistry.js","sourceRoot":"","sources":["../../src/internal-hooks/useSharedStateRegistry.ts"],"names":[],"mappings":"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"}
@@ -1,7 +0,0 @@
1
- /*!
2
- * Copyright (c) Microsoft Corporation. All rights reserved.
3
- * Licensed under the MIT License.
4
- */
5
- import { MutableRefObject } from "react";
6
- export declare function useStateRef<T>(initialValue: T): [T, MutableRefObject<T>, (value: T) => void];
7
- //# sourceMappingURL=useStateRef.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"useStateRef.d.ts","sourceRoot":"","sources":["../../src/internal-hooks/useStateRef.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAiC,gBAAgB,EAAE,MAAM,OAAO,CAAC;AAExE,wBAAgB,WAAW,CAAC,CAAC,EAAE,YAAY,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,gBAAgB,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,EAAE,CAAC,KAAK,IAAI,CAAC,CAa5F"}
@@ -1,15 +0,0 @@
1
- /*!
2
- * Copyright (c) Microsoft Corporation. All rights reserved.
3
- * Licensed under the MIT License.
4
- */
5
- import { useState, useRef, useCallback } from "react";
6
- export function useStateRef(initialValue) {
7
- const reference = useRef(initialValue);
8
- const [state, setState] = useState(reference.current);
9
- const setValue = useCallback((value) => {
10
- reference.current = value;
11
- setState(reference.current);
12
- }, [reference, setState]);
13
- return [state, reference, setValue];
14
- }
15
- //# sourceMappingURL=useStateRef.js.map