@medplum/react 0.9.28 → 0.9.31

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 (240) hide show
  1. package/dist/cjs/AddressDisplay.d.ts +6 -0
  2. package/dist/cjs/AddressInput.d.ts +8 -0
  3. package/dist/cjs/AnnotationInput.d.ts +8 -0
  4. package/dist/cjs/AttachmentArrayDisplay.d.ts +7 -0
  5. package/dist/cjs/AttachmentArrayInput.d.ts +9 -0
  6. package/dist/cjs/AttachmentDisplay.d.ts +7 -0
  7. package/dist/cjs/AttachmentInput.d.ts +9 -0
  8. package/dist/cjs/Autocomplete.d.ts +20 -0
  9. package/dist/cjs/Avatar.d.ts +12 -0
  10. package/dist/cjs/BackboneElementDisplay.d.ts +9 -0
  11. package/dist/cjs/BackboneElementInput.d.ts +9 -0
  12. package/dist/cjs/Button.d.ts +15 -0
  13. package/dist/cjs/CalendarInput.d.ts +16 -0
  14. package/dist/cjs/Checkbox.d.ts +12 -0
  15. package/dist/cjs/CheckboxFormSection.d.ts +9 -0
  16. package/dist/cjs/CodeInput.d.ts +9 -0
  17. package/dist/cjs/CodeableConceptDisplay.d.ts +6 -0
  18. package/dist/cjs/CodeableConceptInput.d.ts +9 -0
  19. package/dist/cjs/CodingDisplay.d.ts +6 -0
  20. package/dist/cjs/CodingInput.d.ts +9 -0
  21. package/dist/cjs/ContactDetailDisplay.d.ts +6 -0
  22. package/dist/cjs/ContactDetailInput.d.ts +8 -0
  23. package/dist/cjs/ContactPointDisplay.d.ts +6 -0
  24. package/dist/cjs/ContactPointInput.d.ts +8 -0
  25. package/dist/cjs/DateTimeInput.d.ts +23 -0
  26. package/dist/cjs/DefaultResourceTimeline.d.ts +6 -0
  27. package/dist/cjs/DescriptionList.d.ts +12 -0
  28. package/dist/cjs/DiagnosticReportDisplay.d.ts +12 -0
  29. package/dist/cjs/Dialog.d.ts +10 -0
  30. package/dist/cjs/Document.d.ts +7 -0
  31. package/dist/cjs/EncounterTimeline.d.ts +6 -0
  32. package/dist/cjs/ErrorBoundary.d.ts +18 -0
  33. package/dist/cjs/ExtensionInput.d.ts +8 -0
  34. package/dist/cjs/FhirPathDisplay.d.ts +9 -0
  35. package/dist/cjs/FhirPathTable.d.ts +29 -0
  36. package/dist/cjs/FooterLinks.d.ts +6 -0
  37. package/dist/cjs/Form.d.ts +8 -0
  38. package/dist/cjs/FormSection.d.ts +11 -0
  39. package/dist/cjs/FormUtils.d.ts +5 -0
  40. package/dist/cjs/GoogleButton.d.ts +8 -0
  41. package/dist/cjs/Header.d.ts +12 -0
  42. package/dist/cjs/HeaderSearchInput.d.ts +10 -0
  43. package/dist/cjs/HumanNameDisplay.d.ts +8 -0
  44. package/dist/cjs/HumanNameInput.d.ts +8 -0
  45. package/dist/cjs/IdentifierDisplay.d.ts +6 -0
  46. package/dist/cjs/IdentifierInput.d.ts +8 -0
  47. package/dist/cjs/Input.d.ts +22 -0
  48. package/dist/cjs/InputRow.d.ts +7 -0
  49. package/dist/cjs/Loading.d.ts +3 -0
  50. package/dist/cjs/Logo.d.ts +6 -0
  51. package/dist/cjs/MedplumLink.d.ts +13 -0
  52. package/dist/cjs/MedplumProvider.d.ts +34 -0
  53. package/dist/cjs/MenuItem.d.ts +9 -0
  54. package/dist/cjs/MenuSeparator.d.ts +3 -0
  55. package/dist/cjs/PatientTimeline.d.ts +6 -0
  56. package/dist/cjs/PeriodInput.d.ts +8 -0
  57. package/dist/cjs/PlanDefinitionBuilder.d.ts +7 -0
  58. package/dist/cjs/Popup.d.ts +14 -0
  59. package/dist/cjs/QuantityDisplay.d.ts +7 -0
  60. package/dist/cjs/QuantityInput.d.ts +8 -0
  61. package/dist/cjs/QuestionnaireBuilder.d.ts +8 -0
  62. package/dist/cjs/QuestionnaireForm.d.ts +14 -0
  63. package/dist/cjs/QuestionnaireUtils.d.ts +30 -0
  64. package/dist/cjs/RangeDisplay.d.ts +7 -0
  65. package/dist/cjs/RangeInput.d.ts +14 -0
  66. package/dist/cjs/RatioDisplay.d.ts +6 -0
  67. package/dist/cjs/RatioInput.d.ts +14 -0
  68. package/dist/cjs/ReferenceDisplay.d.ts +7 -0
  69. package/dist/cjs/ReferenceInput.d.ts +9 -0
  70. package/dist/cjs/RequestGroupDisplay.d.ts +9 -0
  71. package/dist/cjs/ResourceArrayDisplay.d.ts +11 -0
  72. package/dist/cjs/ResourceArrayInput.d.ts +11 -0
  73. package/dist/cjs/ResourceBadge.d.ts +9 -0
  74. package/dist/cjs/ResourceBlame.d.ts +10 -0
  75. package/dist/cjs/ResourceDiff.d.ts +9 -0
  76. package/dist/cjs/ResourceDiffTable.d.ts +9 -0
  77. package/dist/cjs/ResourceForm.d.ts +10 -0
  78. package/dist/cjs/ResourceHistoryTable.d.ts +9 -0
  79. package/dist/cjs/ResourceInput.d.ts +12 -0
  80. package/dist/cjs/ResourceName.d.ts +7 -0
  81. package/dist/cjs/ResourcePropertyDisplay.d.ts +24 -0
  82. package/dist/cjs/ResourcePropertyInput.d.ts +21 -0
  83. package/dist/cjs/ResourceTable.d.ts +7 -0
  84. package/dist/cjs/ResourceTimeline.d.ts +11 -0
  85. package/dist/cjs/Scheduler.d.ts +7 -0
  86. package/dist/cjs/Scrollable.d.ts +9 -0
  87. package/dist/cjs/SearchControl.d.ts +40 -0
  88. package/dist/cjs/SearchControlField.d.ts +41 -0
  89. package/dist/cjs/SearchFieldEditor.d.ts +11 -0
  90. package/dist/cjs/SearchFilterEditor.d.ts +11 -0
  91. package/dist/cjs/SearchFilterValueDialog.d.ts +15 -0
  92. package/dist/cjs/SearchFilterValueDisplay.d.ts +7 -0
  93. package/dist/cjs/SearchFilterValueInput.d.ts +12 -0
  94. package/dist/cjs/SearchPopupMenu.d.ts +15 -0
  95. package/dist/cjs/SearchUtils.d.ts +174 -0
  96. package/dist/cjs/Select.d.ts +16 -0
  97. package/dist/cjs/ServiceRequestTimeline.d.ts +6 -0
  98. package/dist/cjs/StatusBadge.d.ts +6 -0
  99. package/dist/cjs/SubMenu.d.ts +7 -0
  100. package/dist/cjs/Tab.d.ts +12 -0
  101. package/dist/cjs/TabList.d.ts +10 -0
  102. package/dist/cjs/TabPanel.d.ts +6 -0
  103. package/dist/cjs/TabSwitch.d.ts +6 -0
  104. package/dist/cjs/TextArea.d.ts +18 -0
  105. package/dist/cjs/Timeline.d.ts +17 -0
  106. package/dist/cjs/TimingInput.d.ts +8 -0
  107. package/dist/cjs/TitleBar.d.ts +6 -0
  108. package/dist/cjs/UploadButton.d.ts +7 -0
  109. package/dist/cjs/auth/AuthenticationForm.d.ts +14 -0
  110. package/dist/cjs/auth/ChooseProfileForm.d.ts +8 -0
  111. package/dist/cjs/auth/NewProjectForm.d.ts +7 -0
  112. package/dist/cjs/auth/NewUserForm.d.ts +10 -0
  113. package/dist/cjs/auth/RegisterForm.d.ts +12 -0
  114. package/dist/{esm → cjs/auth}/SignInForm.d.ts +1 -1
  115. package/dist/cjs/constants.d.ts +1 -0
  116. package/dist/cjs/index.d.ts +87 -0
  117. package/dist/cjs/index.js +660 -565
  118. package/dist/cjs/index.js.map +1 -1
  119. package/dist/cjs/index.min.js +1 -1
  120. package/dist/cjs/index.min.js.map +1 -1
  121. package/dist/cjs/stories/AddressInput.stories.d.ts +6 -0
  122. package/dist/cjs/stories/AttachmentArrayInput.stories.d.ts +6 -0
  123. package/dist/cjs/stories/AttachmentInput.stories.d.ts +6 -0
  124. package/dist/cjs/stories/Autocomplete.stories.d.ts +9 -0
  125. package/dist/cjs/stories/Avatar.stories.d.ts +10 -0
  126. package/dist/cjs/stories/Button.stories.d.ts +9 -0
  127. package/dist/cjs/stories/CodeableConceptDisplay.stories.d.ts +8 -0
  128. package/dist/cjs/stories/DiagnosticReportDisplay.stories.d.ts +5 -0
  129. package/dist/cjs/stories/Dialog.stories.d.ts +5 -0
  130. package/dist/cjs/stories/EncounterTimeline.stories.d.ts +5 -0
  131. package/dist/cjs/stories/FhirPathDisplay.stories.d.ts +7 -0
  132. package/dist/cjs/stories/FormSection.stories.d.ts +6 -0
  133. package/dist/cjs/stories/Header.stories.d.ts +8 -0
  134. package/dist/cjs/stories/Input.stories.d.ts +6 -0
  135. package/dist/cjs/stories/Loading.stories.d.ts +5 -0
  136. package/dist/cjs/stories/Logo.stories.d.ts +5 -0
  137. package/dist/cjs/stories/PatientTimeline.stories.d.ts +5 -0
  138. package/dist/cjs/stories/PlanDefinitionBuilder.stories.d.ts +5 -0
  139. package/dist/cjs/stories/QuestionnaireBuilder.stories.d.ts +7 -0
  140. package/dist/cjs/stories/QuestionnaireForm.stories.d.ts +11 -0
  141. package/dist/cjs/stories/ReferenceInput.stories.d.ts +6 -0
  142. package/dist/cjs/stories/RegisterForm.stories.d.ts +7 -0
  143. package/dist/cjs/stories/RequestGroupDisplay.stories.d.ts +5 -0
  144. package/dist/cjs/stories/ResourceBlame.stories.d.ts +5 -0
  145. package/dist/cjs/stories/ResourceForm.stories.d.ts +12 -0
  146. package/dist/cjs/stories/ResourceHistoryTable.stories.d.ts +5 -0
  147. package/dist/cjs/stories/ResourceTable.stories.d.ts +7 -0
  148. package/dist/cjs/stories/Scheduler.stories.d.ts +5 -0
  149. package/dist/cjs/stories/SearchControl.stories.d.ts +13 -0
  150. package/dist/cjs/stories/Select.stories.d.ts +6 -0
  151. package/dist/cjs/stories/SignInForm.stories.d.ts +8 -0
  152. package/dist/cjs/stories/StatusBadge.stories.d.ts +5 -0
  153. package/dist/cjs/stories/Tabs.stories.d.ts +6 -0
  154. package/dist/cjs/stories/Timeline.stories.d.ts +5 -0
  155. package/dist/cjs/stories/TimingInput.stories.d.ts +6 -0
  156. package/dist/cjs/stories/UploadButton.stories.d.ts +6 -0
  157. package/dist/cjs/styles.css +248 -247
  158. package/dist/cjs/test.setup.d.ts +1 -0
  159. package/dist/cjs/useResource.d.ts +8 -0
  160. package/dist/cjs/utils/blame.d.ts +8 -0
  161. package/dist/cjs/utils/date.d.ts +6 -0
  162. package/dist/cjs/utils/diff.d.ts +16 -0
  163. package/dist/cjs/utils/dom.d.ts +15 -0
  164. package/dist/cjs/utils/outcomes.d.ts +2 -0
  165. package/dist/cjs/utils/recaptcha.d.ts +12 -0
  166. package/dist/cjs/utils.d.ts +5 -0
  167. package/dist/esm/Autocomplete.js +1 -0
  168. package/dist/esm/Autocomplete.js.map +1 -1
  169. package/dist/esm/CalendarInput.d.ts +1 -0
  170. package/dist/esm/CalendarInput.js +6 -5
  171. package/dist/esm/CalendarInput.js.map +1 -1
  172. package/dist/esm/CodeInput.js +1 -1
  173. package/dist/esm/CodeInput.js.map +1 -1
  174. package/dist/esm/CodeableConceptInput.js +1 -1
  175. package/dist/esm/CodeableConceptInput.js.map +1 -1
  176. package/dist/esm/CodingInput.js +1 -1
  177. package/dist/esm/CodingInput.js.map +1 -1
  178. package/dist/esm/FhirPathTable.js +5 -2
  179. package/dist/esm/FhirPathTable.js.map +1 -1
  180. package/dist/esm/GoogleButton.js +1 -1
  181. package/dist/esm/GoogleButton.js.map +1 -1
  182. package/dist/esm/Header.js +7 -3
  183. package/dist/esm/Header.js.map +1 -1
  184. package/dist/esm/MedplumLink.js +29 -14
  185. package/dist/esm/MedplumLink.js.map +1 -1
  186. package/dist/esm/PlanDefinitionBuilder.js +1 -1
  187. package/dist/esm/PlanDefinitionBuilder.js.map +1 -1
  188. package/dist/esm/QuestionnaireBuilder.js +1 -1
  189. package/dist/esm/QuestionnaireBuilder.js.map +1 -1
  190. package/dist/esm/QuestionnaireForm.js +2 -1
  191. package/dist/esm/QuestionnaireForm.js.map +1 -1
  192. package/dist/esm/RequestGroupDisplay.js +1 -1
  193. package/dist/esm/RequestGroupDisplay.js.map +1 -1
  194. package/dist/esm/ResourceBlame.js +1 -1
  195. package/dist/esm/ResourceBlame.js.map +1 -1
  196. package/dist/esm/ResourceDiffTable.js +1 -1
  197. package/dist/esm/ResourceDiffTable.js.map +1 -1
  198. package/dist/esm/ResourceForm.js +1 -1
  199. package/dist/esm/ResourceForm.js.map +1 -1
  200. package/dist/esm/ResourceHistoryTable.js +19 -12
  201. package/dist/esm/ResourceHistoryTable.js.map +1 -1
  202. package/dist/esm/ResourceTable.js +1 -1
  203. package/dist/esm/ResourceTable.js.map +1 -1
  204. package/dist/esm/ResourceTimeline.js +16 -8
  205. package/dist/esm/ResourceTimeline.js.map +1 -1
  206. package/dist/esm/Scheduler.js +13 -6
  207. package/dist/esm/Scheduler.js.map +1 -1
  208. package/dist/esm/SearchControl.js +5 -2
  209. package/dist/esm/SearchControl.js.map +1 -1
  210. package/dist/esm/auth/AuthenticationForm.d.ts +14 -0
  211. package/dist/esm/{SignInForm.js → auth/AuthenticationForm.js} +12 -75
  212. package/dist/esm/auth/AuthenticationForm.js.map +1 -0
  213. package/dist/esm/auth/ChooseProfileForm.d.ts +8 -0
  214. package/dist/esm/auth/ChooseProfileForm.js +32 -0
  215. package/dist/esm/auth/ChooseProfileForm.js.map +1 -0
  216. package/dist/esm/auth/NewProjectForm.d.ts +7 -0
  217. package/dist/esm/auth/NewProjectForm.js +42 -0
  218. package/dist/esm/auth/NewProjectForm.js.map +1 -0
  219. package/dist/esm/auth/NewUserForm.d.ts +10 -0
  220. package/dist/esm/auth/NewUserForm.js +87 -0
  221. package/dist/esm/auth/NewUserForm.js.map +1 -0
  222. package/dist/esm/auth/RegisterForm.d.ts +12 -0
  223. package/dist/esm/auth/RegisterForm.js +39 -0
  224. package/dist/esm/auth/RegisterForm.js.map +1 -0
  225. package/dist/esm/auth/SignInForm.d.ts +17 -0
  226. package/dist/esm/auth/SignInForm.js +52 -0
  227. package/dist/esm/auth/SignInForm.js.map +1 -0
  228. package/dist/esm/index.d.ts +3 -2
  229. package/dist/esm/index.js +3 -2
  230. package/dist/esm/index.js.map +1 -1
  231. package/dist/esm/index.min.js +1 -1
  232. package/dist/esm/index.min.js.map +1 -1
  233. package/dist/esm/styles.css +248 -247
  234. package/dist/esm/utils/recaptcha.js +10 -4
  235. package/dist/esm/utils/recaptcha.js.map +1 -1
  236. package/package.json +16 -18
  237. package/dist/esm/RegisterForm.d.ts +0 -18
  238. package/dist/esm/RegisterForm.js +0 -121
  239. package/dist/esm/RegisterForm.js.map +0 -1
  240. package/dist/esm/SignInForm.js.map +0 -1
@@ -172,6 +172,203 @@ select.medplum-select:disabled {
172
172
  box-shadow: 0 0 0 2px var(--medplum-blue-200);
173
173
  }
174
174
 
175
+ .medplum-document {
176
+ margin: 20px auto 6px auto;
177
+ padding: 10px;
178
+ clear: both;
179
+ text-align: center;
180
+ }
181
+
182
+ .medplum-document article {
183
+ background-color: var(--medplum-surface);
184
+ max-width: 900px;
185
+ margin: 8px auto 16px auto;
186
+ padding: 15px 25px;
187
+ text-align: left;
188
+ border: 0.1px solid var(--medplum-gray-300);
189
+ border-radius: 8px;
190
+ box-shadow: 0 1px 3px 0 var(--medplum-shadow);
191
+ }
192
+
193
+ .medplum-document h1,
194
+ .medplum-document h2,
195
+ .medplum-document h3 {
196
+ margin: 12px 0;
197
+ }
198
+
199
+ .medplum-document p,
200
+ .medplum-document li {
201
+ line-height: 175%;
202
+ margin: 8px 0;
203
+ }
204
+
205
+ @media (max-width: 700px) {
206
+ .medplum-document {
207
+ margin: 10px auto 6px auto;
208
+ padding: 6px;
209
+ }
210
+
211
+ .medplum-document article {
212
+ padding: 6px 12px;
213
+ }
214
+ }
215
+
216
+ .medplum-document img,
217
+ .medplum-document video {
218
+ width: 100%;
219
+ }
220
+
221
+ .medplum-document textarea {
222
+ margin: 0;
223
+ min-height: 100px;
224
+ width: 100%;
225
+ }
226
+
227
+ fieldset.medplum-form-section {
228
+ border: 0;
229
+ margin: 6px 0 12px 0;
230
+ padding: 2px 0 8px 0;
231
+ }
232
+
233
+ fieldset.medplum-form-section > label,
234
+ fieldset.medplum-form-section > legend {
235
+ display: block;
236
+ margin: 1px 0 3px 0;
237
+ line-height: 1.75;
238
+ font-weight: 500;
239
+ }
240
+
241
+ fieldset.medplum-form-section > p {
242
+ margin: 1px 0 4px 0;
243
+ padding: 1px 0 4px 0;
244
+ line-height: 1.75;
245
+ }
246
+
247
+ .medplum-signin-buttons {
248
+ display: flex;
249
+ justify-content: space-between;
250
+ line-height: 32px;
251
+ }
252
+
253
+ .medplum-signin-buttons > div {
254
+ display: flex;
255
+ align-items: center;
256
+ }
257
+
258
+ .medplum-signin-buttons a {
259
+ font-size: 12px;
260
+ margin-right: 16px;
261
+ }
262
+
263
+ .medplum-signin-buttons label {
264
+ font-size: 12px;
265
+ }
266
+
267
+ .medplum-signin-google-container {
268
+ padding: 20px 0 10px 0;
269
+ margin: 20px 0 10px 0;
270
+ height: 70px;
271
+ text-align: center;
272
+ display: flex;
273
+ align-items: center;
274
+ justify-content: center;
275
+ }
276
+
277
+ .medplum-signin-separator {
278
+ padding: 12px 0;
279
+ margin: 12px 0;
280
+ overflow: hidden;
281
+ text-align: center;
282
+ font-size: var(--medplum-font-small);
283
+ }
284
+
285
+ .medplum-signin-separator::before,
286
+ .medplum-signin-separator::after {
287
+ background-color: var(--medplum-gray-400);
288
+ content: '';
289
+ display: inline-block;
290
+ height: 0.1px;
291
+ position: relative;
292
+ vertical-align: middle;
293
+ width: 50%;
294
+ }
295
+
296
+ .medplum-signin-separator::before {
297
+ right: 0.5em;
298
+ margin-left: -50%;
299
+ }
300
+
301
+ .medplum-signin-separator::after {
302
+ left: 0.5em;
303
+ margin-right: -50%;
304
+ }
305
+
306
+ .medplum-left {
307
+ text-align: left;
308
+ }
309
+
310
+ .medplum-center {
311
+ text-align: center;
312
+ }
313
+
314
+ .medplum-right {
315
+ text-align: right;
316
+ }
317
+
318
+ .medplum-avatar {
319
+ padding: 0;
320
+ width: 32px;
321
+ height: 32px;
322
+ min-width: 32px;
323
+ min-height: 32px;
324
+ line-height: 32px;
325
+ user-select: none;
326
+ border-radius: 50%;
327
+ overflow: hidden;
328
+ text-align: center;
329
+ color: var(--medplum-surface);
330
+ background-color: var(--medplum-gray-500);
331
+ font-size: 18px;
332
+ }
333
+
334
+ .medplum-avatar img {
335
+ width: 100%;
336
+ height: 100%;
337
+ object-fit: cover;
338
+ }
339
+
340
+ .medplum-avatar.xsmall {
341
+ width: 20px;
342
+ height: 20px;
343
+ min-width: 20px;
344
+ min-height: 20px;
345
+ line-height: 20px;
346
+ font-size: 10px;
347
+ }
348
+
349
+ .medplum-avatar.small {
350
+ width: 24px;
351
+ height: 24px;
352
+ min-width: 24px;
353
+ min-height: 24px;
354
+ line-height: 24px;
355
+ font-size: 11px;
356
+ }
357
+
358
+ .medplum-avatar.large {
359
+ width: 56px;
360
+ height: 56px;
361
+ min-width: 56px;
362
+ min-height: 56px;
363
+ line-height: 56px;
364
+ font-size: 28px;
365
+ }
366
+
367
+ .medplum-avatar > a {
368
+ color: var(--medplum-surface);
369
+ text-decoration: none;
370
+ }
371
+
175
372
  .medplum-autocomplete-container {
176
373
  border: 0.1px solid var(--medplum-gray-300);
177
374
  border-radius: 3px;
@@ -306,60 +503,6 @@ select.medplum-select:disabled {
306
503
  color: var(--medplum-gray-500);
307
504
  }
308
505
 
309
- .medplum-avatar {
310
- padding: 0;
311
- width: 32px;
312
- height: 32px;
313
- min-width: 32px;
314
- min-height: 32px;
315
- line-height: 32px;
316
- user-select: none;
317
- border-radius: 50%;
318
- overflow: hidden;
319
- text-align: center;
320
- color: var(--medplum-surface);
321
- background-color: var(--medplum-gray-500);
322
- font-size: 18px;
323
- }
324
-
325
- .medplum-avatar img {
326
- width: 100%;
327
- height: 100%;
328
- object-fit: cover;
329
- }
330
-
331
- .medplum-avatar.xsmall {
332
- width: 20px;
333
- height: 20px;
334
- min-width: 20px;
335
- min-height: 20px;
336
- line-height: 20px;
337
- font-size: 10px;
338
- }
339
-
340
- .medplum-avatar.small {
341
- width: 24px;
342
- height: 24px;
343
- min-width: 24px;
344
- min-height: 24px;
345
- line-height: 24px;
346
- font-size: 11px;
347
- }
348
-
349
- .medplum-avatar.large {
350
- width: 56px;
351
- height: 56px;
352
- min-width: 56px;
353
- min-height: 56px;
354
- line-height: 56px;
355
- font-size: 28px;
356
- }
357
-
358
- .medplum-avatar > a {
359
- color: var(--medplum-surface);
360
- text-decoration: none;
361
- }
362
-
363
506
  .medplum-checkbox-form-section {
364
507
  display: flex;
365
508
  justify-content: space-between;
@@ -378,26 +521,6 @@ select.medplum-select:disabled {
378
521
  font-weight: 500;
379
522
  }
380
523
 
381
- fieldset.medplum-form-section {
382
- border: 0;
383
- margin: 6px 0 12px 0;
384
- padding: 2px 0 8px 0;
385
- }
386
-
387
- fieldset.medplum-form-section > label,
388
- fieldset.medplum-form-section > legend {
389
- display: block;
390
- margin: 1px 0 3px 0;
391
- line-height: 1.75;
392
- font-weight: 500;
393
- }
394
-
395
- fieldset.medplum-form-section > p {
396
- margin: 1px 0 4px 0;
397
- padding: 1px 0 4px 0;
398
- line-height: 1.75;
399
- }
400
-
401
524
  dl.medplum-description-list {
402
525
  display: grid;
403
526
  grid-template-columns: 30% 70%;
@@ -816,109 +939,6 @@ table.medplum-diff-table td {
816
939
  margin-right: 4px;
817
940
  }
818
941
 
819
- .medplum-document {
820
- margin: 20px auto 6px auto;
821
- padding: 10px;
822
- clear: both;
823
- text-align: center;
824
- }
825
-
826
- .medplum-document article {
827
- background-color: var(--medplum-surface);
828
- max-width: 900px;
829
- margin: 8px auto 16px auto;
830
- padding: 15px 25px;
831
- text-align: left;
832
- border: 0.1px solid var(--medplum-gray-300);
833
- border-radius: 8px;
834
- box-shadow: 0 1px 3px 0 var(--medplum-shadow);
835
- }
836
-
837
- .medplum-document h1,
838
- .medplum-document h2,
839
- .medplum-document h3 {
840
- margin: 12px 0;
841
- }
842
-
843
- .medplum-document p,
844
- .medplum-document li {
845
- line-height: 175%;
846
- margin: 8px 0 16px 0;
847
- }
848
-
849
- @media (max-width: 700px) {
850
- .medplum-document {
851
- margin: 10px auto 6px auto;
852
- padding: 6px;
853
- }
854
-
855
- .medplum-document article {
856
- padding: 6px 12px;
857
- }
858
- }
859
-
860
- .medplum-document img,
861
- .medplum-document video {
862
- width: 100%;
863
- }
864
-
865
- .medplum-document textarea {
866
- margin: 0;
867
- min-height: 100px;
868
- width: 100%;
869
- }
870
-
871
- .medplum-filter-editor {
872
- text-align: left;
873
- width: 900px;
874
- max-width: 900px;
875
- }
876
-
877
- .medplum-filter-editor-table {
878
- width: 100%;
879
- border-collapse: collapse;
880
- }
881
-
882
- .medplum-menu-separator {
883
- border-top: 0.1px solid var(--medplum-gray-400);
884
- margin: 4px 0;
885
- padding: 0;
886
- }
887
-
888
- .medplum-submenu-arrow {
889
- color: var(--medplum-foreground);
890
- left: auto;
891
- padding-right: 6px;
892
- position: absolute;
893
- right: 0;
894
- text-align: right;
895
- user-select: none;
896
- }
897
-
898
- .medplum-title-bar {
899
- display: flex;
900
- width: 100%;
901
- height: 50px;
902
- padding: 15px;
903
- justify-content: space-between;
904
- background: var(--medplum-surface);
905
- border-bottom: 2px solid var(--medplum-gray-200);
906
- color: var(--medplum-gray-800);
907
- }
908
-
909
- .medplum-title-bar > div {
910
- display: flex;
911
- align-items: center;
912
- }
913
-
914
- .medplum-title-bar h1 {
915
- font-size: 14px;
916
- font-weight: bold;
917
- padding: 0 4px 0 1px;
918
- margin: 0 4px 0 1px;
919
- color: var(--medplum-gray-800);
920
- }
921
-
922
942
  .medplum-search-control {
923
943
  max-width: 100%;
924
944
  overflow: auto;
@@ -1038,6 +1058,57 @@ table.medplum-diff-table td {
1038
1058
  outline: 0;
1039
1059
  }
1040
1060
 
1061
+ .medplum-filter-editor {
1062
+ text-align: left;
1063
+ width: 900px;
1064
+ max-width: 900px;
1065
+ }
1066
+
1067
+ .medplum-filter-editor-table {
1068
+ width: 100%;
1069
+ border-collapse: collapse;
1070
+ }
1071
+
1072
+ .medplum-menu-separator {
1073
+ border-top: 0.1px solid var(--medplum-gray-400);
1074
+ margin: 4px 0;
1075
+ padding: 0;
1076
+ }
1077
+
1078
+ .medplum-submenu-arrow {
1079
+ color: var(--medplum-foreground);
1080
+ left: auto;
1081
+ padding-right: 6px;
1082
+ position: absolute;
1083
+ right: 0;
1084
+ text-align: right;
1085
+ user-select: none;
1086
+ }
1087
+
1088
+ .medplum-title-bar {
1089
+ display: flex;
1090
+ width: 100%;
1091
+ height: 50px;
1092
+ padding: 15px;
1093
+ justify-content: space-between;
1094
+ background: var(--medplum-surface);
1095
+ border-bottom: 2px solid var(--medplum-gray-200);
1096
+ color: var(--medplum-gray-800);
1097
+ }
1098
+
1099
+ .medplum-title-bar > div {
1100
+ display: flex;
1101
+ align-items: center;
1102
+ }
1103
+
1104
+ .medplum-title-bar h1 {
1105
+ font-size: 14px;
1106
+ font-weight: bold;
1107
+ padding: 0 4px 0 1px;
1108
+ margin: 0 4px 0 1px;
1109
+ color: var(--medplum-gray-800);
1110
+ }
1111
+
1041
1112
  .medplum-footer {
1042
1113
  text-align: center;
1043
1114
  font-size: 12px;
@@ -1374,76 +1445,6 @@ div.medplum-nav-menu-container {
1374
1445
  color: var(--medplum-blue-500);
1375
1446
  }
1376
1447
 
1377
- .medplum-signin-buttons {
1378
- display: flex;
1379
- justify-content: space-between;
1380
- line-height: 32px;
1381
- }
1382
-
1383
- .medplum-signin-buttons > div {
1384
- display: flex;
1385
- align-items: center;
1386
- }
1387
-
1388
- .medplum-signin-buttons a {
1389
- font-size: 12px;
1390
- margin-right: 16px;
1391
- }
1392
-
1393
- .medplum-signin-buttons label {
1394
- font-size: 12px;
1395
- }
1396
-
1397
- .medplum-signin-google-container {
1398
- padding: 20px 0 10px 0;
1399
- margin: 20px 0 10px 0;
1400
- text-align: center;
1401
- display: flex;
1402
- align-items: center;
1403
- justify-content: center;
1404
- }
1405
-
1406
- .medplum-signin-separator {
1407
- padding: 12px 0;
1408
- margin: 12px 0;
1409
- overflow: hidden;
1410
- text-align: center;
1411
- font-size: var(--medplum-font-small);
1412
- }
1413
-
1414
- .medplum-signin-separator::before,
1415
- .medplum-signin-separator::after {
1416
- background-color: var(--medplum-gray-400);
1417
- content: '';
1418
- display: inline-block;
1419
- height: 0.1px;
1420
- position: relative;
1421
- vertical-align: middle;
1422
- width: 50%;
1423
- }
1424
-
1425
- .medplum-signin-separator::before {
1426
- right: 0.5em;
1427
- margin-left: -50%;
1428
- }
1429
-
1430
- .medplum-signin-separator::after {
1431
- left: 0.5em;
1432
- margin-right: -50%;
1433
- }
1434
-
1435
- .medplum-left {
1436
- text-align: left;
1437
- }
1438
-
1439
- .medplum-center {
1440
- text-align: center;
1441
- }
1442
-
1443
- .medplum-right {
1444
- text-align: right;
1445
- }
1446
-
1447
1448
  .medplum-status {
1448
1449
  padding: 1px 6px;
1449
1450
  font-size: 80%;
@@ -1,3 +1,4 @@
1
+ import { __awaiter } from '../node_modules/tslib/tslib.es6.js';
1
2
  import { createScriptTag } from '../utils.js';
2
3
 
3
4
  /**
@@ -16,10 +17,15 @@ function initRecaptcha(siteKey) {
16
17
  * @returns Promise to a recaptcha token for the current user.
17
18
  */
18
19
  function getRecaptcha(siteKey) {
19
- return new Promise((resolve) => {
20
- grecaptcha.ready(() => {
21
- grecaptcha.execute(siteKey, { action: 'submit' }).then(resolve);
22
- });
20
+ return new Promise((resolve, reject) => {
21
+ grecaptcha.ready(() => __awaiter(this, void 0, void 0, function* () {
22
+ try {
23
+ resolve(yield grecaptcha.execute(siteKey, { action: 'submit' }));
24
+ }
25
+ catch (err) {
26
+ reject(err);
27
+ }
28
+ }));
23
29
  });
24
30
  }
25
31
 
@@ -1 +1 @@
1
- {"version":3,"file":"recaptcha.js","sources":["../../../src/utils/recaptcha.ts"],"sourcesContent":["import { createScriptTag } from '../utils';\n\n/**\n * Dynamically loads the recaptcha script.\n * We do not want to load the script on page load unless the user needs it.\n * @param siteKey The reCAPTCHA site key, available from the reCAPTCHA admin page.\n */\nexport function initRecaptcha(siteKey: string): void {\n if (typeof grecaptcha === 'undefined') {\n createScriptTag('https://www.google.com/recaptcha/api.js?render=' + siteKey);\n }\n}\n\n/**\n * Starts a request to generate a recapcha token.\n * @param siteKey The reCAPTCHA site key, available from the reCAPTCHA admin page.\n * @returns Promise to a recaptcha token for the current user.\n */\nexport function getRecaptcha(siteKey: string): Promise<string> {\n return new Promise((resolve) => {\n grecaptcha.ready(() => {\n grecaptcha.execute(siteKey, { action: 'submit' }).then(resolve);\n });\n });\n}\n"],"names":[],"mappings":";;AAEA;;;;AAIG;AACG,SAAU,aAAa,CAAC,OAAe,EAAA;AAC3C,IAAA,IAAI,OAAO,UAAU,KAAK,WAAW,EAAE;AACrC,QAAA,eAAe,CAAC,iDAAiD,GAAG,OAAO,CAAC,CAAC;AAC9E,KAAA;AACH,CAAC;AAED;;;;AAIG;AACG,SAAU,YAAY,CAAC,OAAe,EAAA;AAC1C,IAAA,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,KAAI;AAC7B,QAAA,UAAU,CAAC,KAAK,CAAC,MAAK;AACpB,YAAA,UAAU,CAAC,OAAO,CAAC,OAAO,EAAE,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;AAClE,SAAC,CAAC,CAAC;AACL,KAAC,CAAC,CAAC;AACL;;;;"}
1
+ {"version":3,"file":"recaptcha.js","sources":["../../../src/utils/recaptcha.ts"],"sourcesContent":["import { createScriptTag } from '../utils';\n\n/**\n * Dynamically loads the recaptcha script.\n * We do not want to load the script on page load unless the user needs it.\n * @param siteKey The reCAPTCHA site key, available from the reCAPTCHA admin page.\n */\nexport function initRecaptcha(siteKey: string): void {\n if (typeof grecaptcha === 'undefined') {\n createScriptTag('https://www.google.com/recaptcha/api.js?render=' + siteKey);\n }\n}\n\n/**\n * Starts a request to generate a recapcha token.\n * @param siteKey The reCAPTCHA site key, available from the reCAPTCHA admin page.\n * @returns Promise to a recaptcha token for the current user.\n */\nexport function getRecaptcha(siteKey: string): Promise<string> {\n return new Promise((resolve, reject) => {\n grecaptcha.ready(async () => {\n try {\n resolve(await grecaptcha.execute(siteKey, { action: 'submit' }));\n } catch (err) {\n reject(err);\n }\n });\n });\n}\n"],"names":[],"mappings":";;;AAEA;;;;AAIG;AACG,SAAU,aAAa,CAAC,OAAe,EAAA;AAC3C,IAAA,IAAI,OAAO,UAAU,KAAK,WAAW,EAAE;AACrC,QAAA,eAAe,CAAC,iDAAiD,GAAG,OAAO,CAAC,CAAC;AAC9E,KAAA;AACH,CAAC;AAED;;;;AAIG;AACG,SAAU,YAAY,CAAC,OAAe,EAAA;IAC1C,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,KAAI;AACrC,QAAA,UAAU,CAAC,KAAK,CAAC,MAAW,SAAA,CAAA,IAAA,EAAA,KAAA,CAAA,EAAA,KAAA,CAAA,EAAA,aAAA;YAC1B,IAAI;AACF,gBAAA,OAAO,CAAC,MAAM,UAAU,CAAC,OAAO,CAAC,OAAO,EAAE,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC;AAClE,aAAA;AAAC,YAAA,OAAO,GAAG,EAAE;gBACZ,MAAM,CAAC,GAAG,CAAC,CAAC;AACb,aAAA;SACF,CAAA,CAAC,CAAC;AACL,KAAC,CAAC,CAAC;AACL;;;;"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@medplum/react",
3
- "version": "0.9.28",
3
+ "version": "0.9.31",
4
4
  "description": "Medplum React Component Library",
5
5
  "author": "Medplum <hello@medplum.com>",
6
6
  "license": "Apache-2.0",
@@ -19,21 +19,21 @@
19
19
  "storybook": "build-storybook"
20
20
  },
21
21
  "devDependencies": {
22
- "@medplum/core": "0.9.28",
23
- "@medplum/fhirtypes": "0.9.28",
24
- "@medplum/mock": "0.9.28",
25
- "@storybook/addon-actions": "6.5.9",
26
- "@storybook/addon-essentials": "6.5.9",
27
- "@storybook/addon-links": "6.5.9",
28
- "@storybook/builder-webpack5": "6.5.9",
29
- "@storybook/manager-webpack5": "6.5.9",
30
- "@storybook/react": "6.5.9",
31
- "@testing-library/dom": "8.16.0",
32
- "@testing-library/jest-dom": "5.16.4",
22
+ "@medplum/core": "0.9.31",
23
+ "@medplum/fhirtypes": "0.9.31",
24
+ "@medplum/mock": "0.9.31",
25
+ "@storybook/addon-actions": "6.5.10",
26
+ "@storybook/addon-essentials": "6.5.10",
27
+ "@storybook/addon-links": "6.5.10",
28
+ "@storybook/builder-webpack5": "6.5.10",
29
+ "@storybook/manager-webpack5": "6.5.10",
30
+ "@storybook/react": "6.5.10",
31
+ "@testing-library/dom": "8.17.1",
32
+ "@testing-library/jest-dom": "5.16.5",
33
33
  "@testing-library/react": "13.3.0",
34
34
  "@types/jest": "28.1.6",
35
- "@types/node": "18.0.6",
36
- "@types/react": "18.0.15",
35
+ "@types/node": "18.7.1",
36
+ "@types/react": "18.0.17",
37
37
  "@types/react-dom": "18.0.6",
38
38
  "@types/react-router-dom": "5.3.3",
39
39
  "dotenv-webpack": "8.0.0",
@@ -48,7 +48,7 @@
48
48
  "typescript": "4.7.4"
49
49
  },
50
50
  "peerDependencies": {
51
- "@medplum/core": "0.9.28",
51
+ "@medplum/core": "0.9.31",
52
52
  "react": "^17.0.2 || ^18.0.0",
53
53
  "react-dom": "^17.0.2 || ^18.0.0",
54
54
  "react-router-dom": "^6.2.2"
@@ -70,9 +70,7 @@
70
70
  }
71
71
  },
72
72
  "types": "dist/esm/index.d.ts",
73
- "sideEffects": [
74
- "*.css"
75
- ],
73
+ "sideEffects": false,
76
74
  "keywords": [
77
75
  "medplum",
78
76
  "fhir",
@@ -1,18 +0,0 @@
1
- import React from 'react';
2
- import './SignInForm.css';
3
- import './util.css';
4
- export interface BaseRegisterFormProps {
5
- readonly googleClientId?: string;
6
- readonly recaptchaSiteKey: string;
7
- readonly children?: React.ReactNode;
8
- readonly onSuccess: () => void;
9
- }
10
- export interface PatientRegisterFormProps extends BaseRegisterFormProps {
11
- readonly type: 'patient';
12
- readonly projectId: string;
13
- }
14
- export interface ProjectRegisterFormProps extends BaseRegisterFormProps {
15
- readonly type: 'project';
16
- }
17
- export declare type RegisterFormProps = PatientRegisterFormProps | ProjectRegisterFormProps;
18
- export declare function RegisterForm(props: RegisterFormProps): JSX.Element;