@openmrs/esm-framework 3.1.15-pre.757 → 3.1.15-pre.759

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/docs/API.md CHANGED
@@ -17,7 +17,6 @@
17
17
  ### Interfaces
18
18
 
19
19
  - [AppState](interfaces/AppState.md)
20
- - [AssignedExtension](interfaces/AssignedExtension.md)
21
20
  - [BreadcrumbRegistration](interfaces/BreadcrumbRegistration.md)
22
21
  - [BreadcrumbSettings](interfaces/BreadcrumbSettings.md)
23
22
  - [CancelLoading](interfaces/CancelLoading.md)
@@ -28,6 +27,7 @@
28
27
  - [Config](interfaces/Config.md)
29
28
  - [ConfigObject](interfaces/ConfigObject.md)
30
29
  - [ConfigSchema](interfaces/ConfigSchema.md)
30
+ - [ConfigStore](interfaces/ConfigStore.md)
31
31
  - [ConfigurableLinkProps](interfaces/ConfigurableLinkProps.md)
32
32
  - [ConnectedExtension](interfaces/ConnectedExtension.md)
33
33
  - [ConnectivityChangedEvent](interfaces/ConnectivityChangedEvent.md)
@@ -37,24 +37,26 @@
37
37
  - [CurrentUserWithoutResponseOption](interfaces/CurrentUserWithoutResponseOption.md)
38
38
  - [ExtensionData](interfaces/ExtensionData.md)
39
39
  - [ExtensionDefinition](interfaces/ExtensionDefinition.md)
40
+ - [ExtensionDetails](interfaces/ExtensionDetails.md)
40
41
  - [ExtensionInfo](interfaces/ExtensionInfo.md)
41
42
  - [ExtensionInstance](interfaces/ExtensionInstance.md)
42
- - [ExtensionInternalStore](interfaces/ExtensionInternalStore.md)
43
43
  - [ExtensionMeta](interfaces/ExtensionMeta.md)
44
44
  - [ExtensionProps](interfaces/ExtensionProps.md)
45
45
  - [ExtensionRegistration](interfaces/ExtensionRegistration.md)
46
46
  - [ExtensionSlotBaseProps](interfaces/ExtensionSlotBaseProps.md)
47
47
  - [ExtensionSlotConfig](interfaces/ExtensionSlotConfig.md)
48
48
  - [ExtensionSlotConfigObject](interfaces/ExtensionSlotConfigObject.md)
49
+ - [ExtensionSlotConfigsStore](interfaces/ExtensionSlotConfigsStore.md)
49
50
  - [ExtensionSlotConfigureValueObject](interfaces/ExtensionSlotConfigureValueObject.md)
50
51
  - [ExtensionSlotInfo](interfaces/ExtensionSlotInfo.md)
51
- - [ExtensionSlotState](interfaces/ExtensionSlotState.md)
52
+ - [ExtensionSlotInstance](interfaces/ExtensionSlotInstance.md)
52
53
  - [ExtensionStore](interfaces/ExtensionStore.md)
53
54
  - [FHIRCode](interfaces/FHIRCode.md)
54
55
  - [FHIRRequestObj](interfaces/FHIRRequestObj.md)
55
56
  - [FHIRResource](interfaces/FHIRResource.md)
56
57
  - [FetchHeaders](interfaces/FetchHeaders.md)
57
58
  - [FetchResponse](interfaces/FetchResponse.md)
59
+ - [ImplementerToolsConfigStore](interfaces/ImplementerToolsConfigStore.md)
58
60
  - [ImportMap](interfaces/ImportMap.md)
59
61
  - [Lifecycle](interfaces/Lifecycle.md)
60
62
  - [Location](interfaces/Location.md)
@@ -116,6 +118,7 @@
116
118
  - [KnownOmrsServiceWorkerMessages](API.md#knownomrsserviceworkermessages)
117
119
  - [LayoutType](API.md#layouttype)
118
120
  - [LoggedInUserData](API.md#loggedinuserdata)
121
+ - [MaybeAsync](API.md#maybeasync)
119
122
  - [NavigationContextType](API.md#navigationcontexttype)
120
123
  - [OmrsOfflineCachingStrategy](API.md#omrsofflinecachingstrategy)
121
124
  - [OmrsOfflineHttpHeaderNames](API.md#omrsofflinehttpheadernames)
@@ -146,11 +149,13 @@
146
149
  - [extensionStore](API.md#extensionstore)
147
150
  - [fhirBaseUrl](API.md#fhirbaseurl)
148
151
  - [getStartedVisit](API.md#getstartedvisit)
152
+ - [implementerToolsConfigStore](API.md#implementertoolsconfigstore)
149
153
  - [offlineUuidPrefix](API.md#offlineuuidprefix)
150
154
  - [omrsOfflineCachingStrategyHttpHeaderName](API.md#omrsofflinecachingstrategyhttpheadername)
151
155
  - [omrsOfflineResponseBodyHttpHeaderName](API.md#omrsofflineresponsebodyhttpheadername)
152
156
  - [omrsOfflineResponseStatusHttpHeaderName](API.md#omrsofflineresponsestatushttpheadername)
153
157
  - [sessionEndpoint](API.md#sessionendpoint)
158
+ - [temporaryConfigStore](API.md#temporaryconfigstore)
154
159
  - [validators](API.md#validators)
155
160
 
156
161
  ### API Functions
@@ -202,16 +207,18 @@
202
207
  - [formatTime](API.md#formattime)
203
208
  - [generateOfflineUuid](API.md#generateofflineuuid)
204
209
  - [getAppState](API.md#getappstate)
205
- - [getAssignedExtensions](API.md#getassignedextensions)
210
+ - [getAssignedIds](API.md#getassignedids)
206
211
  - [getAsyncExtensionLifecycle](API.md#getasyncextensionlifecycle)
207
212
  - [getAsyncLifecycle](API.md#getasynclifecycle)
208
213
  - [getConfig](API.md#getconfig)
209
- - [getConnectedExtensions](API.md#getconnectedextensions)
214
+ - [getConfigStore](API.md#getconfigstore)
210
215
  - [getCustomProps](API.md#getcustomprops)
216
+ - [getExtensionConfigStore](API.md#getextensionconfigstore)
211
217
  - [getExtensionNameFromId](API.md#getextensionnamefromid)
212
218
  - [getExtensionRegistration](API.md#getextensionregistration)
213
219
  - [getExtensionRegistrationFrom](API.md#getextensionregistrationfrom)
214
- - [getExtensionStore](API.md#getextensionstore)
220
+ - [getExtensionSlotsConfigStore](API.md#getextensionslotsconfigstore)
221
+ - [getExtensionSlotsForModule](API.md#getextensionslotsformodule)
215
222
  - [getGlobalStore](API.md#getglobalstore)
216
223
  - [getLifecycle](API.md#getlifecycle)
217
224
  - [getLocations](API.md#getlocations)
@@ -223,6 +230,7 @@
223
230
  - [getSyncLifecycle](API.md#getsynclifecycle)
224
231
  - [getSynchronizationItems](API.md#getsynchronizationitems)
225
232
  - [getSynchronizationItemsFor](API.md#getsynchronizationitemsfor)
233
+ - [getUpdatedExtensionSlotInfo](API.md#getupdatedextensionslotinfo)
226
234
  - [getVisitTypes](API.md#getvisittypes)
227
235
  - [getVisitsForPatient](API.md#getvisitsforpatient)
228
236
  - [handleApiError](API.md#handleapierror)
@@ -245,6 +253,8 @@
245
253
  - [pushNavigationContext](API.md#pushnavigationcontext)
246
254
  - [queueSynchronizationItem](API.md#queuesynchronizationitem)
247
255
  - [queueSynchronizationItemFor](API.md#queuesynchronizationitemfor)
256
+ - [registerExtension](API.md#registerextension)
257
+ - [registerExtensionSlot](API.md#registerextensionslot)
248
258
  - [registerOfflinePatientHandler](API.md#registerofflinepatienthandler)
249
259
  - [registerOmrsServiceWorker](API.md#registeromrsserviceworker)
250
260
  - [renderExtension](API.md#renderextension)
@@ -282,15 +292,20 @@
282
292
  - [toOmrsYearlessDateFormat](API.md#toomrsyearlessdateformat)
283
293
  - [toVisitTypeObject](API.md#tovisittypeobject)
284
294
  - [translateFrom](API.md#translatefrom)
295
+ - [unregisterExtensionSlot](API.md#unregisterextensionslot)
285
296
  - [update](API.md#update)
297
+ - [updateExtensionStore](API.md#updateextensionstore)
286
298
  - [updateVisit](API.md#updatevisit)
287
299
  - [useAssignedExtensionIds](API.md#useassignedextensionids)
288
- - [useAssignedExtensions](API.md#useassignedextensions)
300
+ - [useAttachedExtensionIds](API.md#useattachedextensionids)
289
301
  - [useBodyScrollLock](API.md#usebodyscrolllock)
290
302
  - [useConfig](API.md#useconfig)
291
303
  - [useConnectedExtensions](API.md#useconnectedextensions)
292
304
  - [useConnectivity](API.md#useconnectivity)
293
305
  - [useCurrentPatient](API.md#usecurrentpatient)
306
+ - [useExtension](API.md#useextension)
307
+ - [useExtensionSlot](API.md#useextensionslot)
308
+ - [useExtensionSlotConfig](API.md#useextensionslotconfig)
294
309
  - [useExtensionSlotMeta](API.md#useextensionslotmeta)
295
310
  - [useExtensionStore](API.md#useextensionstore)
296
311
  - [useForceUpdate](API.md#useforceupdate)
@@ -444,6 +459,22 @@ ___
444
459
 
445
460
  ___
446
461
 
462
+ ### MaybeAsync
463
+
464
+ Ƭ **MaybeAsync**<`T`\>: `T` \| `Promise`<`T`\>
465
+
466
+ #### Type parameters
467
+
468
+ | Name |
469
+ | :------ |
470
+ | `T` |
471
+
472
+ #### Defined in
473
+
474
+ [packages/framework/esm-extensions/src/store.ts:83](https://github.com/openmrs/openmrs-esm-core/blob/master/packages/framework/esm-extensions/src/store.ts#L83)
475
+
476
+ ___
477
+
447
478
  ### NavigationContextType
448
479
 
449
480
  Ƭ **NavigationContextType**: ``"workspace"`` \| ``"dialog"`` \| ``"link"``
@@ -554,7 +585,7 @@ ___
554
585
 
555
586
  #### Defined in
556
587
 
557
- [packages/framework/esm-config/src/types.ts:58](https://github.com/openmrs/openmrs-esm-core/blob/master/packages/framework/esm-config/src/types.ts#L58)
588
+ [packages/framework/esm-config/src/types.ts:55](https://github.com/openmrs/openmrs-esm-core/blob/master/packages/framework/esm-config/src/types.ts#L55)
558
589
 
559
590
  ___
560
591
 
@@ -598,7 +629,7 @@ ___
598
629
 
599
630
  #### Defined in
600
631
 
601
- [packages/framework/esm-config/src/types.ts:65](https://github.com/openmrs/openmrs-esm-core/blob/master/packages/framework/esm-config/src/types.ts#L65)
632
+ [packages/framework/esm-config/src/types.ts:62](https://github.com/openmrs/openmrs-esm-core/blob/master/packages/framework/esm-config/src/types.ts#L62)
602
633
 
603
634
  ___
604
635
 
@@ -622,7 +653,7 @@ ___
622
653
 
623
654
  #### Defined in
624
655
 
625
- [packages/framework/esm-config/src/types.ts:63](https://github.com/openmrs/openmrs-esm-core/blob/master/packages/framework/esm-config/src/types.ts#L63)
656
+ [packages/framework/esm-config/src/types.ts:60](https://github.com/openmrs/openmrs-esm-core/blob/master/packages/framework/esm-config/src/types.ts#L60)
626
657
 
627
658
  ## API Variables
628
659
 
@@ -689,7 +720,7 @@ and *must* only be used once within that `<ExtensionSlot>`.
689
720
 
690
721
  #### Defined in
691
722
 
692
- [packages/framework/esm-react-utils/src/Extension.tsx:23](https://github.com/openmrs/openmrs-esm-core/blob/master/packages/framework/esm-react-utils/src/Extension.tsx#L23)
723
+ [packages/framework/esm-react-utils/src/Extension.tsx:22](https://github.com/openmrs/openmrs-esm-core/blob/master/packages/framework/esm-react-utils/src/Extension.tsx#L22)
693
724
 
694
725
  ___
695
726
 
@@ -732,13 +763,11 @@ ___
732
763
 
733
764
  ### extensionStore
734
765
 
735
- • `Const` **extensionStore**: `Store`<[`ExtensionInternalStore`](interfaces/ExtensionInternalStore.md)\>
736
-
737
- **`deprecated`** Use `getExtensionStore`. The structure of this store has also changed.
766
+ • `Const` **extensionStore**: `Store`<[`ExtensionStore`](interfaces/ExtensionStore.md)\>
738
767
 
739
768
  #### Defined in
740
769
 
741
- [packages/framework/esm-extensions/src/index.ts:12](https://github.com/openmrs/openmrs-esm-core/blob/master/packages/framework/esm-extensions/src/index.ts#L12)
770
+ [packages/framework/esm-extensions/src/store.ts:78](https://github.com/openmrs/openmrs-esm-core/blob/master/packages/framework/esm-extensions/src/store.ts#L78)
742
771
 
743
772
  ___
744
773
 
@@ -762,6 +791,16 @@ ___
762
791
 
763
792
  ___
764
793
 
794
+ ### implementerToolsConfigStore
795
+
796
+ • `Const` **implementerToolsConfigStore**: `Store`<[`ImplementerToolsConfigStore`](interfaces/ImplementerToolsConfigStore.md)\>
797
+
798
+ #### Defined in
799
+
800
+ [packages/framework/esm-config/src/module-config/state.ts:182](https://github.com/openmrs/openmrs-esm-core/blob/master/packages/framework/esm-config/src/module-config/state.ts#L182)
801
+
802
+ ___
803
+
765
804
  ### offlineUuidPrefix
766
805
 
767
806
  • `Const` **offlineUuidPrefix**: ``"OFFLINE+"``
@@ -812,6 +851,16 @@ ___
812
851
 
813
852
  ___
814
853
 
854
+ ### temporaryConfigStore
855
+
856
+ • `Const` **temporaryConfigStore**: `Store`<`TemporaryConfigStore`\>
857
+
858
+ #### Defined in
859
+
860
+ [packages/framework/esm-config/src/module-config/state.ts:69](https://github.com/openmrs/openmrs-esm-core/blob/master/packages/framework/esm-config/src/module-config/state.ts#L69)
861
+
862
+ ___
863
+
815
864
  ### validators
816
865
 
817
866
  • `Const` **validators**: `Object`
@@ -1311,27 +1360,14 @@ ___
1311
1360
 
1312
1361
  ### attach
1313
1362
 
1314
- ▸ **attach**(`slotName`, `extensionId`): `void`
1315
-
1316
- Attach an extension to an extension slot.
1317
-
1318
- This will cause the extension to be rendered into the specified
1319
- extension slot, unless it is removed by configuration. Using
1320
- `attach` is an alternative to specifying the `slot` or `slots`
1321
- in the extension declaration.
1322
-
1323
- It is particularly useful when creating a slot into which
1324
- you want to render an existing extension. This enables you
1325
- to do so without modifying the extension's declaration, which
1326
- may be impractical or inappropriate, for example if you are
1327
- writing a module for a specific implementation.
1363
+ ▸ **attach**(`extensionSlotName`, `extensionId`): `void`
1328
1364
 
1329
1365
  #### Parameters
1330
1366
 
1331
- | Name | Type | Description |
1332
- | :------ | :------ | :------ |
1333
- | `slotName` | `string` | a name uniquely identifying the slot |
1334
- | `extensionId` | `string` | an extension name, with an optional #-suffix to distinguish it from other instances of the same extension attached to the same slot. |
1367
+ | Name | Type |
1368
+ | :------ | :------ |
1369
+ | `extensionSlotName` | `string` |
1370
+ | `extensionId` | `string` |
1335
1371
 
1336
1372
  #### Returns
1337
1373
 
@@ -1339,7 +1375,7 @@ writing a module for a specific implementation.
1339
1375
 
1340
1376
  #### Defined in
1341
1377
 
1342
- [packages/framework/esm-extensions/src/extensions.ts:126](https://github.com/openmrs/openmrs-esm-core/blob/master/packages/framework/esm-extensions/src/extensions.ts#L126)
1378
+ [packages/framework/esm-extensions/src/extensions.ts:75](https://github.com/openmrs/openmrs-esm-core/blob/master/packages/framework/esm-extensions/src/extensions.ts#L75)
1343
1379
 
1344
1380
  ___
1345
1381
 
@@ -1540,7 +1576,7 @@ ___
1540
1576
 
1541
1577
  #### Defined in
1542
1578
 
1543
- [packages/framework/esm-config/src/module-config/module-config.ts:170](https://github.com/openmrs/openmrs-esm-core/blob/master/packages/framework/esm-config/src/module-config/module-config.ts#L170)
1579
+ [packages/framework/esm-config/src/module-config/module-config.ts:172](https://github.com/openmrs/openmrs-esm-core/blob/master/packages/framework/esm-config/src/module-config/module-config.ts#L172)
1544
1580
 
1545
1581
  ___
1546
1582
 
@@ -1568,8 +1604,6 @@ ___
1568
1604
 
1569
1605
  ▸ **detach**(`extensionSlotName`, `extensionId`): `void`
1570
1606
 
1571
- Avoid using this. Extension attachments should be considered declarative.
1572
-
1573
1607
  #### Parameters
1574
1608
 
1575
1609
  | Name | Type |
@@ -1583,7 +1617,7 @@ Avoid using this. Extension attachments should be considered declarative.
1583
1617
 
1584
1618
  #### Defined in
1585
1619
 
1586
- [packages/framework/esm-extensions/src/extensions.ts:157](https://github.com/openmrs/openmrs-esm-core/blob/master/packages/framework/esm-extensions/src/extensions.ts#L157)
1620
+ [packages/framework/esm-extensions/src/extensions.ts:105](https://github.com/openmrs/openmrs-esm-core/blob/master/packages/framework/esm-extensions/src/extensions.ts#L105)
1587
1621
 
1588
1622
  ___
1589
1623
 
@@ -1591,8 +1625,6 @@ ___
1591
1625
 
1592
1626
  ▸ **detachAll**(`extensionSlotName`): `void`
1593
1627
 
1594
- Avoid using this. Extension attachments should be considered declarative.
1595
-
1596
1628
  #### Parameters
1597
1629
 
1598
1630
  | Name | Type |
@@ -1605,7 +1637,7 @@ Avoid using this. Extension attachments should be considered declarative.
1605
1637
 
1606
1638
  #### Defined in
1607
1639
 
1608
- [packages/framework/esm-extensions/src/extensions.ts:181](https://github.com/openmrs/openmrs-esm-core/blob/master/packages/framework/esm-extensions/src/extensions.ts#L181)
1640
+ [packages/framework/esm-extensions/src/extensions.ts:128](https://github.com/openmrs/openmrs-esm-core/blob/master/packages/framework/esm-extensions/src/extensions.ts#L128)
1609
1641
 
1610
1642
  ___
1611
1643
 
@@ -1811,23 +1843,25 @@ The [store](https://github.com/developit/unistore#store) named `app`.
1811
1843
 
1812
1844
  ___
1813
1845
 
1814
- ### getAssignedExtensions
1846
+ ### getAssignedIds
1815
1847
 
1816
- ▸ **getAssignedExtensions**(`slotName`): [`AssignedExtension`](interfaces/AssignedExtension.md)[]
1848
+ ▸ **getAssignedIds**(`slotName`, `config`, `attachedIds`): `string`[]
1817
1849
 
1818
1850
  #### Parameters
1819
1851
 
1820
1852
  | Name | Type |
1821
1853
  | :------ | :------ |
1822
1854
  | `slotName` | `string` |
1855
+ | `config` | [`ExtensionSlotConfigObject`](interfaces/ExtensionSlotConfigObject.md) |
1856
+ | `attachedIds` | `string`[] |
1823
1857
 
1824
1858
  #### Returns
1825
1859
 
1826
- [`AssignedExtension`](interfaces/AssignedExtension.md)[]
1860
+ `string`[]
1827
1861
 
1828
1862
  #### Defined in
1829
1863
 
1830
- [packages/framework/esm-extensions/src/extensions.ts:249](https://github.com/openmrs/openmrs-esm-core/blob/master/packages/framework/esm-extensions/src/extensions.ts#L249)
1864
+ [packages/framework/esm-extensions/src/extensions.ts:178](https://github.com/openmrs/openmrs-esm-core/blob/master/packages/framework/esm-extensions/src/extensions.ts#L178)
1831
1865
 
1832
1866
  ___
1833
1867
 
@@ -1925,33 +1959,27 @@ of the execution of a function.
1925
1959
 
1926
1960
  #### Defined in
1927
1961
 
1928
- [packages/framework/esm-config/src/module-config/module-config.ts:198](https://github.com/openmrs/openmrs-esm-core/blob/master/packages/framework/esm-config/src/module-config/module-config.ts#L198)
1962
+ [packages/framework/esm-config/src/module-config/module-config.ts:200](https://github.com/openmrs/openmrs-esm-core/blob/master/packages/framework/esm-config/src/module-config/module-config.ts#L200)
1929
1963
 
1930
1964
  ___
1931
1965
 
1932
- ### getConnectedExtensions
1966
+ ### getConfigStore
1933
1967
 
1934
- ▸ **getConnectedExtensions**(`assignedExtensions`, `online?`): [`ConnectedExtension`](interfaces/ConnectedExtension.md)[]
1935
-
1936
- Filters a list of extensions according to whether they support the
1937
- current connectivity status.
1968
+ ▸ **getConfigStore**(`moduleName`): `Store`<[`ConfigStore`](interfaces/ConfigStore.md)\>
1938
1969
 
1939
1970
  #### Parameters
1940
1971
 
1941
- | Name | Type | Default value | Description |
1942
- | :------ | :------ | :------ | :------ |
1943
- | `assignedExtensions` | [`AssignedExtension`](interfaces/AssignedExtension.md)[] | `undefined` | The list of extensions to filter. |
1944
- | `online` | `boolean` \| ``null`` | `null` | Whether the app is currently online. If `null`, uses `navigator.onLine`. |
1972
+ | Name | Type |
1973
+ | :------ | :------ |
1974
+ | `moduleName` | `string` |
1945
1975
 
1946
1976
  #### Returns
1947
1977
 
1948
- [`ConnectedExtension`](interfaces/ConnectedExtension.md)[]
1949
-
1950
- A list of extensions that should be rendered
1978
+ `Store`<[`ConfigStore`](interfaces/ConfigStore.md)\>
1951
1979
 
1952
1980
  #### Defined in
1953
1981
 
1954
- [packages/framework/esm-extensions/src/extensions.ts:239](https://github.com/openmrs/openmrs-esm-core/blob/master/packages/framework/esm-extensions/src/extensions.ts#L239)
1982
+ [packages/framework/esm-config/src/module-config/state.ts:136](https://github.com/openmrs/openmrs-esm-core/blob/master/packages/framework/esm-config/src/module-config/state.ts#L136)
1955
1983
 
1956
1984
  ___
1957
1985
 
@@ -1976,21 +2004,31 @@ ___
1976
2004
 
1977
2005
  ___
1978
2006
 
1979
- ### getExtensionNameFromId
2007
+ ### getExtensionConfigStore
1980
2008
 
1981
- ▸ **getExtensionNameFromId**(`extensionId`): `string`
2009
+ ▸ **getExtensionConfigStore**(`extensionSlotModuleName`, `attachedExtensionSlotName`, `extensionId`): `Store`<[`ConfigStore`](interfaces/ConfigStore.md)\>
1982
2010
 
1983
- Given an extension ID, which is a string uniquely identifying
1984
- an instance of an extension within an extension slot, this
1985
- returns the extension name.
2011
+ #### Parameters
1986
2012
 
1987
- **`example`**
1988
- ```js
1989
- getExtensionNameFromId("foo#bar")
1990
- --> "foo"
1991
- getExtensionNameFromId("baz")
1992
- --> "baz"
1993
- ```
2013
+ | Name | Type |
2014
+ | :------ | :------ |
2015
+ | `extensionSlotModuleName` | `string` |
2016
+ | `attachedExtensionSlotName` | `string` |
2017
+ | `extensionId` | `string` |
2018
+
2019
+ #### Returns
2020
+
2021
+ `Store`<[`ConfigStore`](interfaces/ConfigStore.md)\>
2022
+
2023
+ #### Defined in
2024
+
2025
+ [packages/framework/esm-config/src/module-config/state.ts:166](https://github.com/openmrs/openmrs-esm-core/blob/master/packages/framework/esm-config/src/module-config/state.ts#L166)
2026
+
2027
+ ___
2028
+
2029
+ ### getExtensionNameFromId
2030
+
2031
+ ▸ **getExtensionNameFromId**(`extensionId`): `string`
1994
2032
 
1995
2033
  #### Parameters
1996
2034
 
@@ -2004,7 +2042,7 @@ getExtensionNameFromId("baz")
2004
2042
 
2005
2043
  #### Defined in
2006
2044
 
2007
- [packages/framework/esm-extensions/src/extensions.ts:70](https://github.com/openmrs/openmrs-esm-core/blob/master/packages/framework/esm-extensions/src/extensions.ts#L70)
2045
+ [packages/framework/esm-extensions/src/extensions.ts:33](https://github.com/openmrs/openmrs-esm-core/blob/master/packages/framework/esm-extensions/src/extensions.ts#L33)
2008
2046
 
2009
2047
  ___
2010
2048
 
@@ -2024,7 +2062,7 @@ ___
2024
2062
 
2025
2063
  #### Defined in
2026
2064
 
2027
- [packages/framework/esm-extensions/src/extensions.ts:83](https://github.com/openmrs/openmrs-esm-core/blob/master/packages/framework/esm-extensions/src/extensions.ts#L83)
2065
+ [packages/framework/esm-extensions/src/extensions.ts:46](https://github.com/openmrs/openmrs-esm-core/blob/master/packages/framework/esm-extensions/src/extensions.ts#L46)
2028
2066
 
2029
2067
  ___
2030
2068
 
@@ -2036,7 +2074,7 @@ ___
2036
2074
 
2037
2075
  | Name | Type |
2038
2076
  | :------ | :------ |
2039
- | `state` | [`ExtensionInternalStore`](interfaces/ExtensionInternalStore.md) |
2077
+ | `state` | [`ExtensionStore`](interfaces/ExtensionStore.md) |
2040
2078
  | `extensionId` | `string` |
2041
2079
 
2042
2080
  #### Returns
@@ -2045,25 +2083,47 @@ ___
2045
2083
 
2046
2084
  #### Defined in
2047
2085
 
2048
- [packages/framework/esm-extensions/src/extensions.ts:75](https://github.com/openmrs/openmrs-esm-core/blob/master/packages/framework/esm-extensions/src/extensions.ts#L75)
2086
+ [packages/framework/esm-extensions/src/extensions.ts:38](https://github.com/openmrs/openmrs-esm-core/blob/master/packages/framework/esm-extensions/src/extensions.ts#L38)
2049
2087
 
2050
2088
  ___
2051
2089
 
2052
- ### getExtensionStore
2090
+ ### getExtensionSlotsConfigStore
2053
2091
 
2054
- `Const` **getExtensionStore**(): `Store`<[`ExtensionStore`](interfaces/ExtensionStore.md)\>
2092
+ ▸ **getExtensionSlotsConfigStore**(`moduleName`): `Store`<[`ExtensionSlotConfigsStore`](interfaces/ExtensionSlotConfigsStore.md)\>
2093
+
2094
+ #### Parameters
2055
2095
 
2056
- This returns a [store](https://github.com/developit/unistore#store)
2057
- that modules can use to get information about the state of the
2058
- extension system.
2096
+ | Name | Type |
2097
+ | :------ | :------ |
2098
+ | `moduleName` | `string` |
2059
2099
 
2060
2100
  #### Returns
2061
2101
 
2062
- `Store`<[`ExtensionStore`](interfaces/ExtensionStore.md)\>
2102
+ `Store`<[`ExtensionSlotConfigsStore`](interfaces/ExtensionSlotConfigsStore.md)\>
2063
2103
 
2064
2104
  #### Defined in
2065
2105
 
2066
- [packages/framework/esm-extensions/src/store.ts:128](https://github.com/openmrs/openmrs-esm-core/blob/master/packages/framework/esm-extensions/src/store.ts#L128)
2106
+ [packages/framework/esm-config/src/module-config/state.ts:157](https://github.com/openmrs/openmrs-esm-core/blob/master/packages/framework/esm-config/src/module-config/state.ts#L157)
2107
+
2108
+ ___
2109
+
2110
+ ### getExtensionSlotsForModule
2111
+
2112
+ ▸ **getExtensionSlotsForModule**(`moduleName`): `string`[]
2113
+
2114
+ #### Parameters
2115
+
2116
+ | Name | Type |
2117
+ | :------ | :------ |
2118
+ | `moduleName` | `string` |
2119
+
2120
+ #### Returns
2121
+
2122
+ `string`[]
2123
+
2124
+ #### Defined in
2125
+
2126
+ [packages/framework/esm-extensions/src/extensions.ts:303](https://github.com/openmrs/openmrs-esm-core/blob/master/packages/framework/esm-extensions/src/extensions.ts#L303)
2067
2127
 
2068
2128
  ___
2069
2129
 
@@ -2304,6 +2364,33 @@ ___
2304
2364
 
2305
2365
  ___
2306
2366
 
2367
+ ### getUpdatedExtensionSlotInfo
2368
+
2369
+ ▸ **getUpdatedExtensionSlotInfo**(`slotName`, `moduleName`, `extensionSlot`): [`ExtensionSlotInfo`](interfaces/ExtensionSlotInfo.md)
2370
+
2371
+ Returns information describing all extensions which can be rendered into an extension slot with
2372
+ the specified name.
2373
+ The returned information describe the extension itself, as well as the extension slot name(s)
2374
+ with which it has been attached.
2375
+
2376
+ #### Parameters
2377
+
2378
+ | Name | Type | Description |
2379
+ | :------ | :------ | :------ |
2380
+ | `slotName` | `string` | The extension slot name for which matching extension info should be returned. |
2381
+ | `moduleName` | `string` | The module name. Used for applying extension-specific config values to the result. |
2382
+ | `extensionSlot` | [`ExtensionSlotInfo`](interfaces/ExtensionSlotInfo.md) | The extension slot information object. |
2383
+
2384
+ #### Returns
2385
+
2386
+ [`ExtensionSlotInfo`](interfaces/ExtensionSlotInfo.md)
2387
+
2388
+ #### Defined in
2389
+
2390
+ [packages/framework/esm-extensions/src/extensions.ts:330](https://github.com/openmrs/openmrs-esm-core/blob/master/packages/framework/esm-extensions/src/extensions.ts#L330)
2391
+
2392
+ ___
2393
+
2307
2394
  ### getVisitTypes
2308
2395
 
2309
2396
  ▸ **getVisitTypes**(): `Observable`<[`VisitType`](interfaces/VisitType.md)[]\>
@@ -2683,7 +2770,7 @@ Validate and interpolate defaults for `providedConfig` according to `schema`
2683
2770
 
2684
2771
  #### Defined in
2685
2772
 
2686
- [packages/framework/esm-config/src/module-config/module-config.ts:220](https://github.com/openmrs/openmrs-esm-core/blob/master/packages/framework/esm-config/src/module-config/module-config.ts#L220)
2773
+ [packages/framework/esm-config/src/module-config/module-config.ts:222](https://github.com/openmrs/openmrs-esm-core/blob/master/packages/framework/esm-config/src/module-config/module-config.ts#L222)
2687
2774
 
2688
2775
  ___
2689
2776
 
@@ -2704,7 +2791,7 @@ ___
2704
2791
 
2705
2792
  #### Defined in
2706
2793
 
2707
- [packages/framework/esm-config/src/module-config/module-config.ts:178](https://github.com/openmrs/openmrs-esm-core/blob/master/packages/framework/esm-config/src/module-config/module-config.ts#L178)
2794
+ [packages/framework/esm-config/src/module-config/module-config.ts:180](https://github.com/openmrs/openmrs-esm-core/blob/master/packages/framework/esm-config/src/module-config/module-config.ts#L180)
2708
2795
 
2709
2796
  ___
2710
2797
 
@@ -2793,6 +2880,48 @@ ___
2793
2880
 
2794
2881
  ___
2795
2882
 
2883
+ ### registerExtension
2884
+
2885
+ ▸ `Const` **registerExtension**(`name`, `details`): `void`
2886
+
2887
+ #### Parameters
2888
+
2889
+ | Name | Type |
2890
+ | :------ | :------ |
2891
+ | `name` | `string` |
2892
+ | `details` | [`ExtensionDetails`](interfaces/ExtensionDetails.md) |
2893
+
2894
+ #### Returns
2895
+
2896
+ `void`
2897
+
2898
+ #### Defined in
2899
+
2900
+ [packages/framework/esm-extensions/src/extensions.ts:62](https://github.com/openmrs/openmrs-esm-core/blob/master/packages/framework/esm-extensions/src/extensions.ts#L62)
2901
+
2902
+ ___
2903
+
2904
+ ### registerExtensionSlot
2905
+
2906
+ ▸ **registerExtensionSlot**(`moduleName`, `slotName`): `void`
2907
+
2908
+ #### Parameters
2909
+
2910
+ | Name | Type | Description |
2911
+ | :------ | :------ | :------ |
2912
+ | `moduleName` | `string` | The name of the module that contains the extension slot |
2913
+ | `slotName` | `string` | The extension slot name that is actually used |
2914
+
2915
+ #### Returns
2916
+
2917
+ `void`
2918
+
2919
+ #### Defined in
2920
+
2921
+ [packages/framework/esm-extensions/src/extensions.ts:256](https://github.com/openmrs/openmrs-esm-core/blob/master/packages/framework/esm-extensions/src/extensions.ts#L256)
2922
+
2923
+ ___
2924
+
2796
2925
  ### registerOfflinePatientHandler
2797
2926
 
2798
2927
  ▸ **registerOfflinePatientHandler**(`identifier`, `handler`): `void`
@@ -3680,6 +3809,27 @@ ___
3680
3809
 
3681
3810
  ___
3682
3811
 
3812
+ ### unregisterExtensionSlot
3813
+
3814
+ ▸ **unregisterExtensionSlot**(`moduleName`, `slotName`): `void`
3815
+
3816
+ #### Parameters
3817
+
3818
+ | Name | Type |
3819
+ | :------ | :------ |
3820
+ | `moduleName` | `string` |
3821
+ | `slotName` | `string` |
3822
+
3823
+ #### Returns
3824
+
3825
+ `void`
3826
+
3827
+ #### Defined in
3828
+
3829
+ [packages/framework/esm-extensions/src/extensions.ts:279](https://github.com/openmrs/openmrs-esm-core/blob/master/packages/framework/esm-extensions/src/extensions.ts#L279)
3830
+
3831
+ ___
3832
+
3683
3833
  ### update
3684
3834
 
3685
3835
  ▸ **update**<`T`\>(`obj`, `__namedParameters`, `value`): `T`
@@ -3708,6 +3858,26 @@ ___
3708
3858
 
3709
3859
  ___
3710
3860
 
3861
+ ### updateExtensionStore
3862
+
3863
+ ▸ **updateExtensionStore**(`updater`): `void`
3864
+
3865
+ #### Parameters
3866
+
3867
+ | Name | Type |
3868
+ | :------ | :------ |
3869
+ | `updater` | (`state`: [`ExtensionStore`](interfaces/ExtensionStore.md)) => [`MaybeAsync`](API.md#maybeasync)<[`ExtensionStore`](interfaces/ExtensionStore.md)\> |
3870
+
3871
+ #### Returns
3872
+
3873
+ `void`
3874
+
3875
+ #### Defined in
3876
+
3877
+ [packages/framework/esm-extensions/src/store.ts:87](https://github.com/openmrs/openmrs-esm-core/blob/master/packages/framework/esm-extensions/src/store.ts#L87)
3878
+
3879
+ ___
3880
+
3711
3881
  ### updateVisit
3712
3882
 
3713
3883
  ▸ **updateVisit**(`uuid`, `payload`, `abortController`): `Observable`<`any`\>
@@ -3732,18 +3902,16 @@ ___
3732
3902
 
3733
3903
  ### useAssignedExtensionIds
3734
3904
 
3735
- ▸ **useAssignedExtensionIds**(`slotName`): `string`[]
3905
+ ▸ **useAssignedExtensionIds**(`extensionSlotName`): `string`[]
3736
3906
 
3737
3907
  Gets the assigned extension ids for a given extension slot name.
3738
3908
  Does not consider if offline or online.
3739
3909
 
3740
- **`deprecated`** Use `useAssignedExtensions`
3741
-
3742
3910
  #### Parameters
3743
3911
 
3744
3912
  | Name | Type | Description |
3745
3913
  | :------ | :------ | :------ |
3746
- | `slotName` | `string` | The name of the slot to get the assigned IDs for. |
3914
+ | `extensionSlotName` | `string` | The name of the slot to get the assigned IDs for. |
3747
3915
 
3748
3916
  #### Returns
3749
3917
 
@@ -3751,30 +3919,29 @@ Does not consider if offline or online.
3751
3919
 
3752
3920
  #### Defined in
3753
3921
 
3754
- [packages/framework/esm-react-utils/src/useAssignedExtensionIds.ts:12](https://github.com/openmrs/openmrs-esm-core/blob/master/packages/framework/esm-react-utils/src/useAssignedExtensionIds.ts#L12)
3922
+ [packages/framework/esm-react-utils/src/useAssignedExtensionIds.ts:11](https://github.com/openmrs/openmrs-esm-core/blob/master/packages/framework/esm-react-utils/src/useAssignedExtensionIds.ts#L11)
3755
3923
 
3756
3924
  ___
3757
3925
 
3758
- ### useAssignedExtensions
3926
+ ### useAttachedExtensionIds
3759
3927
 
3760
- ▸ **useAssignedExtensions**(`slotName`): [`AssignedExtension`](interfaces/AssignedExtension.md)[]
3928
+ ▸ **useAttachedExtensionIds**(`extensionSlotName`): `string`[]
3761
3929
 
3762
- Gets the assigned extensions for a given extension slot name.
3763
- Does not consider if offline or online.
3930
+ Gets the assigned extension ids for the given slot.
3764
3931
 
3765
3932
  #### Parameters
3766
3933
 
3767
- | Name | Type | Description |
3768
- | :------ | :------ | :------ |
3769
- | `slotName` | `string` | The name of the slot to get the assigned extensions for. |
3934
+ | Name | Type |
3935
+ | :------ | :------ |
3936
+ | `extensionSlotName` | `string` |
3770
3937
 
3771
3938
  #### Returns
3772
3939
 
3773
- [`AssignedExtension`](interfaces/AssignedExtension.md)[]
3940
+ `string`[]
3774
3941
 
3775
3942
  #### Defined in
3776
3943
 
3777
- [packages/framework/esm-react-utils/src/useAssignedExtensions.ts:10](https://github.com/openmrs/openmrs-esm-core/blob/master/packages/framework/esm-react-utils/src/useAssignedExtensions.ts#L10)
3944
+ [packages/framework/esm-react-utils/src/useAttachedExtensionIds.ts:11](https://github.com/openmrs/openmrs-esm-core/blob/master/packages/framework/esm-react-utils/src/useAttachedExtensionIds.ts#L11)
3778
3945
 
3779
3946
  ___
3780
3947
 
@@ -3826,7 +3993,7 @@ ___
3826
3993
 
3827
3994
  ### useConnectedExtensions
3828
3995
 
3829
- ▸ **useConnectedExtensions**(`slotName`): [`ConnectedExtension`](interfaces/ConnectedExtension.md)[]
3996
+ ▸ **useConnectedExtensions**(`extensionSlotName`): [`ConnectedExtension`](interfaces/ConnectedExtension.md)[]
3830
3997
 
3831
3998
  Gets the assigned extension for a given extension slot name.
3832
3999
  Considers if offline or online.
@@ -3835,7 +4002,7 @@ Considers if offline or online.
3835
4002
 
3836
4003
  | Name | Type | Description |
3837
4004
  | :------ | :------ | :------ |
3838
- | `slotName` | `string` | The name of the slot to get the assigned extensions for. |
4005
+ | `extensionSlotName` | `string` | The name of the slot to get the assigned extensions for. |
3839
4006
 
3840
4007
  #### Returns
3841
4008
 
@@ -3843,7 +4010,7 @@ Considers if offline or online.
3843
4010
 
3844
4011
  #### Defined in
3845
4012
 
3846
- [packages/framework/esm-react-utils/src/useConnectedExtensions.ts:14](https://github.com/openmrs/openmrs-esm-core/blob/master/packages/framework/esm-react-utils/src/useConnectedExtensions.ts#L14)
4013
+ [packages/framework/esm-react-utils/src/useConnectedExtensions.ts:36](https://github.com/openmrs/openmrs-esm-core/blob/master/packages/framework/esm-react-utils/src/useConnectedExtensions.ts#L36)
3847
4014
 
3848
4015
  ___
3849
4016
 
@@ -3881,6 +4048,78 @@ ___
3881
4048
 
3882
4049
  ___
3883
4050
 
4051
+ ### useExtension
4052
+
4053
+ ▸ **useExtension**<`TRef`\>(`state?`): [`RefObject`<`TRef`\>, [`ExtensionData`](interfaces/ExtensionData.md) \| `undefined`]
4054
+
4055
+ #### Type parameters
4056
+
4057
+ | Name | Type |
4058
+ | :------ | :------ |
4059
+ | `TRef` | extends `HTMLElement` |
4060
+
4061
+ #### Parameters
4062
+
4063
+ | Name | Type |
4064
+ | :------ | :------ |
4065
+ | `state?` | `Record`<`string`, `any`\> |
4066
+
4067
+ #### Returns
4068
+
4069
+ [`RefObject`<`TRef`\>, [`ExtensionData`](interfaces/ExtensionData.md) \| `undefined`]
4070
+
4071
+ #### Defined in
4072
+
4073
+ [packages/framework/esm-react-utils/src/useExtension.ts:5](https://github.com/openmrs/openmrs-esm-core/blob/master/packages/framework/esm-react-utils/src/useExtension.ts#L5)
4074
+
4075
+ ___
4076
+
4077
+ ### useExtensionSlot
4078
+
4079
+ ▸ **useExtensionSlot**(`extensionSlotName`): `Object`
4080
+
4081
+ #### Parameters
4082
+
4083
+ | Name | Type |
4084
+ | :------ | :------ |
4085
+ | `extensionSlotName` | `string` |
4086
+
4087
+ #### Returns
4088
+
4089
+ `Object`
4090
+
4091
+ | Name | Type |
4092
+ | :------ | :------ |
4093
+ | `extensionSlotModuleName` | `string` |
4094
+ | `extensionSlotName` | `string` |
4095
+ | `extensions` | [`ConnectedExtension`](interfaces/ConnectedExtension.md)[] |
4096
+
4097
+ #### Defined in
4098
+
4099
+ [packages/framework/esm-react-utils/src/useExtensionSlot.ts:9](https://github.com/openmrs/openmrs-esm-core/blob/master/packages/framework/esm-react-utils/src/useExtensionSlot.ts#L9)
4100
+
4101
+ ___
4102
+
4103
+ ### useExtensionSlotConfig
4104
+
4105
+ ▸ **useExtensionSlotConfig**(`extensionSlotName`): [`ExtensionSlotConfigObject`](interfaces/ExtensionSlotConfigObject.md)
4106
+
4107
+ #### Parameters
4108
+
4109
+ | Name | Type |
4110
+ | :------ | :------ |
4111
+ | `extensionSlotName` | `string` |
4112
+
4113
+ #### Returns
4114
+
4115
+ [`ExtensionSlotConfigObject`](interfaces/ExtensionSlotConfigObject.md)
4116
+
4117
+ #### Defined in
4118
+
4119
+ [packages/framework/esm-react-utils/src/useExtensionSlotConfig.ts:16](https://github.com/openmrs/openmrs-esm-core/blob/master/packages/framework/esm-react-utils/src/useExtensionSlotConfig.ts#L16)
4120
+
4121
+ ___
4122
+
3884
4123
  ### useExtensionSlotMeta
3885
4124
 
3886
4125
  ▸ **useExtensionSlotMeta**<`T`\>(`extensionSlotName`): `Object`
@@ -3913,22 +4152,16 @@ ___
3913
4152
 
3914
4153
  ▸ `Const` **useExtensionStore**(): `T`
3915
4154
 
3916
- The implementation of this will soon undergo a breaking change.
3917
- This will return an `ExtensionStore` rather than `ExtensionInternalStore`.
3918
-
3919
4155
  #### Returns
3920
4156
 
3921
4157
  `T`
3922
4158
 
3923
4159
  #### Defined in
3924
4160
 
3925
- [packages/framework/esm-react-utils/src/useExtensionStore.ts:11](https://github.com/openmrs/openmrs-esm-core/blob/master/packages/framework/esm-react-utils/src/useExtensionStore.ts#L11)
4161
+ [packages/framework/esm-react-utils/src/useExtensionStore.ts:4](https://github.com/openmrs/openmrs-esm-core/blob/master/packages/framework/esm-react-utils/src/useExtensionStore.ts#L4)
3926
4162
 
3927
4163
  ▸ `Const` **useExtensionStore**(`actions`): `T` & [`BoundActions`](API.md#boundactions)
3928
4164
 
3929
- The implementation of this will soon undergo a breaking change.
3930
- This will return an `ExtensionStore` rather than `ExtensionInternalStore`.
3931
-
3932
4165
  #### Parameters
3933
4166
 
3934
4167
  | Name | Type |
@@ -3941,13 +4174,10 @@ This will return an `ExtensionStore` rather than `ExtensionInternalStore`.
3941
4174
 
3942
4175
  #### Defined in
3943
4176
 
3944
- [packages/framework/esm-react-utils/src/useExtensionStore.ts:11](https://github.com/openmrs/openmrs-esm-core/blob/master/packages/framework/esm-react-utils/src/useExtensionStore.ts#L11)
4177
+ [packages/framework/esm-react-utils/src/useExtensionStore.ts:4](https://github.com/openmrs/openmrs-esm-core/blob/master/packages/framework/esm-react-utils/src/useExtensionStore.ts#L4)
3945
4178
 
3946
4179
  ▸ `Const` **useExtensionStore**(`actions?`): `T` & [`BoundActions`](API.md#boundactions)
3947
4180
 
3948
- The implementation of this will soon undergo a breaking change.
3949
- This will return an `ExtensionStore` rather than `ExtensionInternalStore`.
3950
-
3951
4181
  #### Parameters
3952
4182
 
3953
4183
  | Name | Type |
@@ -3960,7 +4190,7 @@ This will return an `ExtensionStore` rather than `ExtensionInternalStore`.
3960
4190
 
3961
4191
  #### Defined in
3962
4192
 
3963
- [packages/framework/esm-react-utils/src/useExtensionStore.ts:11](https://github.com/openmrs/openmrs-esm-core/blob/master/packages/framework/esm-react-utils/src/useExtensionStore.ts#L11)
4193
+ [packages/framework/esm-react-utils/src/useExtensionStore.ts:4](https://github.com/openmrs/openmrs-esm-core/blob/master/packages/framework/esm-react-utils/src/useExtensionStore.ts#L4)
3964
4194
 
3965
4195
  ___
3966
4196