@teselagen/ui 0.7.36 → 0.8.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (153) hide show
  1. package/index.cjs.js +1 -2
  2. package/index.es.js +1 -2
  3. package/package.json +1 -1
  4. package/src/AdvancedOptions.spec.js +26 -0
  5. package/src/AsyncValidateFieldSpinner/index.js +12 -0
  6. package/src/BlueprintError/index.js +14 -0
  7. package/src/BounceLoader/index.js +16 -0
  8. package/src/BounceLoader/style.css +45 -0
  9. package/src/CollapsibleCard/index.js +68 -0
  10. package/src/CollapsibleCard/style.css +23 -0
  11. package/src/DNALoader/index.js +20 -0
  12. package/src/DNALoader/style.css +251 -0
  13. package/src/DataTable/index.js +3220 -0
  14. package/src/DataTable/style.css +608 -0
  15. package/src/DataTable/utils/index.js +55 -0
  16. package/{queryParams.js → src/DataTable/utils/queryParams.js} +0 -1
  17. package/src/DialogFooter/index.js +86 -0
  18. package/src/DialogFooter/style.css +9 -0
  19. package/src/FormComponents/index.js +1266 -0
  20. package/src/FormComponents/style.css +275 -0
  21. package/src/FormComponents/utils.js +6 -0
  22. package/src/HotkeysDialog/index.js +79 -0
  23. package/src/HotkeysDialog/style.css +54 -0
  24. package/src/InfoHelper/index.js +78 -0
  25. package/src/InfoHelper/style.css +7 -0
  26. package/src/IntentText/index.js +18 -0
  27. package/src/Loading/index.js +70 -0
  28. package/src/Loading/style.css +4 -0
  29. package/src/MenuBar/index.js +423 -0
  30. package/src/MenuBar/style.css +45 -0
  31. package/src/PromptUnsavedChanges/index.js +38 -0
  32. package/src/ResizableDraggableDialog/index.js +141 -0
  33. package/src/ResizableDraggableDialog/style.css +42 -0
  34. package/src/ScrollToTop/index.js +72 -0
  35. package/src/TagSelect/index.js +69 -0
  36. package/src/TagSelect/style.css +13 -0
  37. package/src/TgHtmlSelect/index.js +20 -0
  38. package/src/TgSelect/index.js +537 -0
  39. package/src/TgSelect/style.css +61 -0
  40. package/src/TgSuggest/index.js +124 -0
  41. package/src/Timeline/index.js +15 -0
  42. package/src/enhancers/withDialog/index.js +196 -0
  43. package/src/index.js +87 -0
  44. package/src/showConfirmationDialog/index.js +148 -0
  45. package/src/style.css +265 -0
  46. package/{isBeingCalledExcessively.js → src/utils/isBeingCalledExcessively.js} +0 -2
  47. /package/{AdvancedOptions.js → src/AdvancedOptions.js} +0 -0
  48. /package/{AssignDefaultsModeContext.js → src/AssignDefaultsModeContext.js} +0 -0
  49. /package/{CellDragHandle.js → src/DataTable/CellDragHandle.js} +0 -0
  50. /package/{ColumnFilterMenu.js → src/DataTable/ColumnFilterMenu.js} +0 -0
  51. /package/{Columns.js → src/DataTable/Columns.js} +0 -0
  52. /package/{DisabledLoadingComponent.js → src/DataTable/DisabledLoadingComponent.js} +0 -0
  53. /package/{DisplayOptions.js → src/DataTable/DisplayOptions.js} +0 -0
  54. /package/{DropdownCell.js → src/DataTable/DropdownCell.js} +0 -0
  55. /package/{EditableCell.js → src/DataTable/EditableCell.js} +0 -0
  56. /package/{FilterAndSortMenu.js → src/DataTable/FilterAndSortMenu.js} +0 -0
  57. /package/{PagingTool.js → src/DataTable/PagingTool.js} +0 -0
  58. /package/{RenderCell.js → src/DataTable/RenderCell.js} +0 -0
  59. /package/{SearchBar.js → src/DataTable/SearchBar.js} +0 -0
  60. /package/{SortableColumns.js → src/DataTable/SortableColumns.js} +0 -0
  61. /package/{TableFormTrackerContext.js → src/DataTable/TableFormTrackerContext.js} +0 -0
  62. /package/{ThComponent.js → src/DataTable/ThComponent.js} +0 -0
  63. /package/{dataTableEnhancer.js → src/DataTable/dataTableEnhancer.js} +0 -0
  64. /package/{defaultFormatters.js → src/DataTable/defaultFormatters.js} +0 -0
  65. /package/{defaultValidators.js → src/DataTable/defaultValidators.js} +0 -0
  66. /package/{editCellHelper.js → src/DataTable/editCellHelper.js} +0 -0
  67. /package/{getCellVal.js → src/DataTable/getCellVal.js} +0 -0
  68. /package/{getVals.js → src/DataTable/getVals.js} +0 -0
  69. /package/{isTruthy.js → src/DataTable/isTruthy.js} +0 -0
  70. /package/{isValueEmpty.js → src/DataTable/isValueEmpty.js} +0 -0
  71. /package/{convertSchema.js → src/DataTable/utils/convertSchema.js} +0 -0
  72. /package/{formatPasteData.js → src/DataTable/utils/formatPasteData.js} +0 -0
  73. /package/{getAllRows.js → src/DataTable/utils/getAllRows.js} +0 -0
  74. /package/{getCellCopyText.js → src/DataTable/utils/getCellCopyText.js} +0 -0
  75. /package/{getCellInfo.js → src/DataTable/utils/getCellInfo.js} +0 -0
  76. /package/{getFieldPathToField.js → src/DataTable/utils/getFieldPathToField.js} +0 -0
  77. /package/{getIdOrCodeOrIndex.js → src/DataTable/utils/getIdOrCodeOrIndex.js} +0 -0
  78. /package/{getLastSelectedEntity.js → src/DataTable/utils/getLastSelectedEntity.js} +0 -0
  79. /package/{getNewEntToSelect.js → src/DataTable/utils/getNewEntToSelect.js} +0 -0
  80. /package/{getRowCopyText.js → src/DataTable/utils/getRowCopyText.js} +0 -0
  81. /package/{getTableConfigFromStorage.js → src/DataTable/utils/getTableConfigFromStorage.js} +0 -0
  82. /package/{handleCopyColumn.js → src/DataTable/utils/handleCopyColumn.js} +0 -0
  83. /package/{handleCopyHelper.js → src/DataTable/utils/handleCopyHelper.js} +0 -0
  84. /package/{handleCopyRows.js → src/DataTable/utils/handleCopyRows.js} +0 -0
  85. /package/{handleCopyTable.js → src/DataTable/utils/handleCopyTable.js} +0 -0
  86. /package/{isBottomRightCornerOfRectangle.js → src/DataTable/utils/isBottomRightCornerOfRectangle.js} +0 -0
  87. /package/{isEntityClean.js → src/DataTable/utils/isEntityClean.js} +0 -0
  88. /package/{primarySelectedValue.js → src/DataTable/utils/primarySelectedValue.js} +0 -0
  89. /package/{removeCleanRows.js → src/DataTable/utils/removeCleanRows.js} +0 -0
  90. /package/{rowClick.js → src/DataTable/utils/rowClick.js} +0 -0
  91. /package/{selection.js → src/DataTable/utils/selection.js} +0 -0
  92. /package/{useTableEntities.js → src/DataTable/utils/useTableEntities.js} +0 -0
  93. /package/{utils.js → src/DataTable/utils/utils.js} +0 -0
  94. /package/{withSelectedEntities.js → src/DataTable/utils/withSelectedEntities.js} +0 -0
  95. /package/{withTableParams.js → src/DataTable/utils/withTableParams.js} +0 -0
  96. /package/{validateTableWideErrors.js → src/DataTable/validateTableWideErrors.js} +0 -0
  97. /package/{viewColumn.js → src/DataTable/viewColumn.js} +0 -0
  98. /package/{DropdownButton.js → src/DropdownButton.js} +0 -0
  99. /package/{FillWindow.css → src/FillWindow.css} +0 -0
  100. /package/{FillWindow.js → src/FillWindow.js} +0 -0
  101. /package/{FormSeparator.js → src/FormComponents/FormSeparator.js} +0 -0
  102. /package/{LoadingDots.js → src/FormComponents/LoadingDots.js} +0 -0
  103. /package/{Uploader.js → src/FormComponents/Uploader.js} +0 -0
  104. /package/{getNewName.js → src/FormComponents/getNewName.js} +0 -0
  105. /package/{itemUpload.js → src/FormComponents/itemUpload.js} +0 -0
  106. /package/{sortify.js → src/FormComponents/sortify.js} +0 -0
  107. /package/{tryToMatchSchemas.js → src/FormComponents/tryToMatchSchemas.js} +0 -0
  108. /package/{MatchHeaders.js → src/MatchHeaders.js} +0 -0
  109. /package/{SimpleStepViz.js → src/SimpleStepViz.js} +0 -0
  110. /package/{Tag.js → src/Tag.js} +0 -0
  111. /package/{TimelineEvent.js → src/Timeline/TimelineEvent.js} +0 -0
  112. /package/{style.css → src/Timeline/style.css} +0 -0
  113. /package/{UploadCsvWizard.css → src/UploadCsvWizard.css} +0 -0
  114. /package/{UploadCsvWizard.js → src/UploadCsvWizard.js} +0 -0
  115. /package/{autoTooltip.js → src/autoTooltip.js} +0 -0
  116. /package/{constants.js → src/constants.js} +0 -0
  117. /package/{customIcons.js → src/customIcons.js} +0 -0
  118. /package/{tg_modalState.js → src/enhancers/withDialog/tg_modalState.js} +0 -0
  119. /package/{withField.js → src/enhancers/withField.js} +0 -0
  120. /package/{withFields.js → src/enhancers/withFields.js} +0 -0
  121. /package/{withLocalStorage.js → src/enhancers/withLocalStorage.js} +0 -0
  122. /package/{rerenderOnWindowResize.js → src/rerenderOnWindowResize.js} +0 -0
  123. /package/{showAppSpinner.js → src/showAppSpinner.js} +0 -0
  124. /package/{showDialogOnDocBody.js → src/showDialogOnDocBody.js} +0 -0
  125. /package/{throwFormError.js → src/throwFormError.js} +0 -0
  126. /package/{toastr.js → src/toastr.js} +0 -0
  127. /package/{typeToCommonType.js → src/typeToCommonType.js} +0 -0
  128. /package/{useDialog.js → src/useDialog.js} +0 -0
  129. /package/{adHoc.js → src/utils/adHoc.js} +0 -0
  130. /package/{basicHandleActionsWithFullState.js → src/utils/basicHandleActionsWithFullState.js} +0 -0
  131. /package/{browserUtils.js → src/utils/browserUtils.js} +0 -0
  132. /package/{combineReducersWithFullState.js → src/utils/combineReducersWithFullState.js} +0 -0
  133. /package/{commandControls.js → src/utils/commandControls.js} +0 -0
  134. /package/{commandUtils.js → src/utils/commandUtils.js} +0 -0
  135. /package/{determineBlackOrWhiteTextColor.js → src/utils/determineBlackOrWhiteTextColor.js} +0 -0
  136. /package/{getDayjsFormatter.js → src/utils/getDayjsFormatter.js} +0 -0
  137. /package/{getTextFromEl.js → src/utils/getTextFromEl.js} +0 -0
  138. /package/{handlerHelpers.js → src/utils/handlerHelpers.js} +0 -0
  139. /package/{index.js → src/utils/hooks/index.js} +0 -0
  140. /package/{useDeepEqualMemo.js → src/utils/hooks/useDeepEqualMemo.js} +0 -0
  141. /package/{useStableReference.js → src/utils/hooks/useStableReference.js} +0 -0
  142. /package/{hotkeyUtils.js → src/utils/hotkeyUtils.js} +0 -0
  143. /package/{menuUtils.js → src/utils/menuUtils.js} +0 -0
  144. /package/{popoverOverflowModifiers.js → src/utils/popoverOverflowModifiers.js} +0 -0
  145. /package/{pureNoFunc.js → src/utils/pureNoFunc.js} +0 -0
  146. /package/{renderOnDoc.js → src/utils/renderOnDoc.js} +0 -0
  147. /package/{showProgressToast.js → src/utils/showProgressToast.js} +0 -0
  148. /package/{tagUtils.js → src/utils/tagUtils.js} +0 -0
  149. /package/{tgFormValues.js → src/utils/tgFormValues.js} +0 -0
  150. /package/{useTraceUpdate.js → src/utils/useTraceUpdate.js} +0 -0
  151. /package/{withSelectTableRecords.js → src/utils/withSelectTableRecords.js} +0 -0
  152. /package/{withStore.js → src/utils/withStore.js} +0 -0
  153. /package/{wrapDialog.js → src/wrapDialog.js} +0 -0
@@ -0,0 +1,86 @@
1
+ /* Copyright (C) 2018 TeselaGen Biotechnology, Inc. */
2
+
3
+ import React, { useRef } from "react";
4
+ import { Intent, Button, Classes } from "@blueprintjs/core";
5
+ import { noop } from "lodash-es";
6
+ import classNames from "classnames";
7
+
8
+ function DialogFooter({
9
+ hideModal,
10
+ loading,
11
+ submitting,
12
+ onBackClick,
13
+ style,
14
+ onClick = noop,
15
+ secondaryAction,
16
+ secondaryDisabled,
17
+ secondaryNotMinimal,
18
+ intent = Intent.PRIMARY,
19
+ secondaryIntent,
20
+ backText = "Back",
21
+ secondaryText = "Cancel",
22
+ additionalButtons,
23
+ className,
24
+ secondaryClassName = "",
25
+ text = "Submit",
26
+ disabled,
27
+ containerClassname,
28
+ noCancel
29
+ }) {
30
+ const divRef = useRef();
31
+ return (
32
+ <div
33
+ style={style}
34
+ ref={divRef}
35
+ className={classNames(Classes.DIALOG_FOOTER, containerClassname)}
36
+ >
37
+ <div className={Classes.DIALOG_FOOTER_ACTIONS}>
38
+ {onBackClick && (
39
+ <Button
40
+ className={Classes.MINIMAL + " " + secondaryClassName}
41
+ text={backText}
42
+ onClick={onBackClick}
43
+ />
44
+ )}
45
+ {!noCancel && (
46
+ <Button
47
+ intent={secondaryIntent}
48
+ disabled={secondaryDisabled}
49
+ className={
50
+ (!secondaryNotMinimal ? Classes.MINIMAL : "") +
51
+ " " +
52
+ secondaryClassName
53
+ }
54
+ text={secondaryText}
55
+ onClick={
56
+ secondaryAction ||
57
+ hideModal ||
58
+ function () {
59
+ try {
60
+ divRef.current
61
+ .closest(".bp3-dialog")
62
+ .querySelector(".bp3-dialog-close-button")
63
+ .click();
64
+ } catch (error) {
65
+ console.error(`error closing dialog:`, error);
66
+ }
67
+ }
68
+ }
69
+ />
70
+ )}
71
+ {additionalButtons}
72
+ <Button
73
+ text={text}
74
+ intent={intent}
75
+ type="submit"
76
+ className={className}
77
+ onClick={onClick}
78
+ disabled={disabled}
79
+ loading={loading || submitting}
80
+ />
81
+ </div>
82
+ </div>
83
+ );
84
+ }
85
+
86
+ export default DialogFooter;
@@ -0,0 +1,9 @@
1
+ .tg-dialog-footer-error {
2
+ display: flex;
3
+ justify-content: flex-end;
4
+ margin-top: 5;
5
+ }
6
+
7
+ .tg-dialog-footer-error .bp3-form-group {
8
+ margin-bottom: 0;
9
+ }