@adaptabletools/adaptable 15.4.2 → 16.0.0-canary.0

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 (286) hide show
  1. package/base.css +1 -1
  2. package/base.css.map +1 -1
  3. package/bundle.cjs.js +232 -226
  4. package/index.css +1 -1
  5. package/index.css.map +1 -1
  6. package/package.json +2 -2
  7. package/publishTimestamp.d.ts +1 -1
  8. package/publishTimestamp.js +1 -1
  9. package/src/AdaptableInterfaces/AdaptableNoCodeWizard.d.ts +3 -0
  10. package/src/AdaptableInterfaces/IAdaptable.d.ts +3 -2
  11. package/src/AdaptableOptions/ActionColumnOptions.d.ts +82 -0
  12. package/src/AdaptableOptions/{ActionOptions.d.ts → ActionRowOptions.d.ts} +15 -90
  13. package/src/AdaptableOptions/AdaptableOptions.d.ts +32 -7
  14. package/src/AdaptableOptions/AdaptableQLOptions.d.ts +1 -12
  15. package/src/AdaptableOptions/AlertOptions.d.ts +9 -0
  16. package/src/AdaptableOptions/CalendarOptions.d.ts +11 -0
  17. package/src/AdaptableOptions/CellSummaryOptions.d.ts +10 -0
  18. package/src/AdaptableOptions/ColumnOptions.d.ts +0 -4
  19. package/src/AdaptableOptions/CustomSortOptions.d.ts +24 -0
  20. package/src/AdaptableOptions/DataChangeHistoryOptions.d.ts +5 -1
  21. package/src/AdaptableOptions/DataSetOptions.d.ts +41 -0
  22. package/src/AdaptableOptions/DataSetOptions.js +2 -0
  23. package/src/AdaptableOptions/EditOptions.d.ts +4 -4
  24. package/src/AdaptableOptions/EntitlementOptions.d.ts +0 -16
  25. package/src/AdaptableOptions/ExportOptions.d.ts +2 -4
  26. package/src/AdaptableOptions/ExpressionOptions.d.ts +7 -0
  27. package/src/AdaptableOptions/FilterOptions.d.ts +3 -0
  28. package/src/AdaptableOptions/FinancePluginOptions.d.ts +24 -0
  29. package/src/AdaptableOptions/GroupingOptions.d.ts +50 -0
  30. package/src/AdaptableOptions/GroupingOptions.js +2 -0
  31. package/src/AdaptableOptions/LayoutOptions.d.ts +3 -0
  32. package/src/AdaptableOptions/MasterDetailPluginOptions.d.ts +9 -0
  33. package/src/AdaptableOptions/PredicateOptions.d.ts +4 -0
  34. package/src/AdaptableOptions/TeamSharingOptions.d.ts +0 -8
  35. package/src/AdaptableOptions/ToolPanelOptions.d.ts +3 -0
  36. package/src/AdaptableOptions/UserInterfaceOptions.d.ts +36 -1
  37. package/src/Api/ActionColumnApi.d.ts +10 -0
  38. package/src/Api/ActionColumnApi.js +2 -0
  39. package/src/Api/{ActionApi.d.ts → ActionRowApi.d.ts} +4 -15
  40. package/src/Api/ActionRowApi.js +2 -0
  41. package/src/Api/AdaptableApi.d.ts +11 -6
  42. package/src/Api/AlertApi.d.ts +2 -111
  43. package/src/Api/BulkUpdateApi.d.ts +0 -7
  44. package/src/Api/CalculatedColumnApi.d.ts +0 -31
  45. package/src/Api/CalendarApi.d.ts +1 -1
  46. package/src/Api/CellSummaryApi.d.ts +0 -7
  47. package/src/Api/ChartingApi.d.ts +0 -7
  48. package/src/Api/ColumnApi.d.ts +1 -131
  49. package/src/Api/ConfigApi.d.ts +1 -7
  50. package/src/Api/CustomSortApi.d.ts +0 -25
  51. package/src/Api/DashboardApi.d.ts +0 -16
  52. package/src/Api/DataChangeHistoryApi.d.ts +0 -7
  53. package/src/Api/DataSetApi.d.ts +1 -16
  54. package/src/Api/EventApi.d.ts +1 -9
  55. package/src/Api/Events/AdaptableStateChanged.d.ts +0 -8
  56. package/src/Api/Events/AdaptableStateReloaded.d.ts +0 -4
  57. package/src/Api/Events/BaseEventInfo.d.ts +9 -1
  58. package/src/Api/Events/LiveDataChanged.d.ts +3 -7
  59. package/src/Api/ExportApi.d.ts +10 -34
  60. package/src/Api/{QueryLanguageApi.d.ts → ExpressionApi.d.ts} +2 -2
  61. package/src/Api/ExpressionApi.js +2 -0
  62. package/src/Api/FilterApi.d.ts +1 -59
  63. package/src/Api/FlashingCellApi.d.ts +0 -15
  64. package/src/Api/FormatColumnApi.d.ts +1 -91
  65. package/src/Api/FreeTextColumnApi.d.ts +0 -39
  66. package/src/Api/GridApi.d.ts +20 -31
  67. package/src/Api/Implementation/ActionColumnApiImpl.d.ts +7 -0
  68. package/src/Api/Implementation/ActionColumnApiImpl.js +14 -0
  69. package/src/Api/Implementation/ActionRowApiImpl.d.ts +12 -0
  70. package/src/Api/Implementation/{ActionApiImpl.js → ActionRowApiImpl.js} +8 -15
  71. package/src/Api/Implementation/AdaptableApiImpl.d.ts +6 -4
  72. package/src/Api/Implementation/AdaptableApiImpl.js +7 -5
  73. package/src/Api/Implementation/AlertApiImpl.d.ts +1 -43
  74. package/src/Api/Implementation/AlertApiImpl.js +4 -94
  75. package/src/Api/Implementation/ApiBase.d.ts +15 -5
  76. package/src/Api/Implementation/ApiBase.js +26 -8
  77. package/src/Api/Implementation/CalculatedColumnApiImpl.d.ts +0 -7
  78. package/src/Api/Implementation/CalculatedColumnApiImpl.js +0 -32
  79. package/src/Api/Implementation/CalendarApiImpl.d.ts +1 -0
  80. package/src/Api/Implementation/CalendarApiImpl.js +20 -17
  81. package/src/Api/Implementation/CellSummaryApiImpl.d.ts +0 -1
  82. package/src/Api/Implementation/CellSummaryApiImpl.js +1 -6
  83. package/src/Api/Implementation/ChartingApiImpl.d.ts +0 -1
  84. package/src/Api/Implementation/ChartingApiImpl.js +0 -5
  85. package/src/Api/Implementation/ColumnApiImpl.d.ts +0 -35
  86. package/src/Api/Implementation/ColumnApiImpl.js +1 -138
  87. package/src/Api/Implementation/ConfigApiImpl.js +2 -1
  88. package/src/Api/Implementation/CustomSortApiImpl.d.ts +1 -5
  89. package/src/Api/Implementation/CustomSortApiImpl.js +0 -16
  90. package/src/Api/Implementation/DashboardApiImpl.d.ts +0 -4
  91. package/src/Api/Implementation/DashboardApiImpl.js +2 -24
  92. package/src/Api/Implementation/DataChangeHistoryApiImpl.d.ts +0 -1
  93. package/src/Api/Implementation/DataChangeHistoryApiImpl.js +0 -5
  94. package/src/Api/Implementation/DataSetApiImpl.d.ts +1 -4
  95. package/src/Api/Implementation/DataSetApiImpl.js +1 -14
  96. package/src/Api/Implementation/ExportApiImpl.d.ts +4 -10
  97. package/src/Api/Implementation/ExportApiImpl.js +15 -34
  98. package/src/Api/Implementation/{QueryLanguageApiImpl.d.ts → ExpressionApiImpl.d.ts} +4 -4
  99. package/src/Api/Implementation/{QueryLanguageApiImpl.js → ExpressionApiImpl.js} +7 -5
  100. package/src/Api/Implementation/FilterApiImpl.d.ts +1 -17
  101. package/src/Api/Implementation/FilterApiImpl.js +0 -53
  102. package/src/Api/Implementation/FlashingCellApiImpl.d.ts +0 -3
  103. package/src/Api/Implementation/FlashingCellApiImpl.js +2 -13
  104. package/src/Api/Implementation/FormatColumnApiImpl.d.ts +2 -34
  105. package/src/Api/Implementation/FormatColumnApiImpl.js +0 -73
  106. package/src/Api/Implementation/FreeTextColumnApiImpl.d.ts +0 -8
  107. package/src/Api/Implementation/FreeTextColumnApiImpl.js +0 -29
  108. package/src/Api/Implementation/GridApiImpl.d.ts +0 -7
  109. package/src/Api/Implementation/GridApiImpl.js +6 -35
  110. package/src/Api/Implementation/LayoutApiImpl.d.ts +1 -6
  111. package/src/Api/Implementation/LayoutApiImpl.js +2 -27
  112. package/src/Api/Implementation/OptionsApiImpl.d.ts +10 -5
  113. package/src/Api/Implementation/OptionsApiImpl.js +19 -7
  114. package/src/Api/Implementation/PlusMinusApiImpl.d.ts +0 -1
  115. package/src/Api/Implementation/PlusMinusApiImpl.js +0 -5
  116. package/src/Api/Implementation/PredicateApiImpl.d.ts +1 -8
  117. package/src/Api/Implementation/PredicateApiImpl.js +2 -30
  118. package/src/Api/Implementation/QueryApiImpl.d.ts +0 -5
  119. package/src/Api/Implementation/QueryApiImpl.js +0 -21
  120. package/src/Api/Implementation/QuickSearchApiImpl.d.ts +0 -1
  121. package/src/Api/Implementation/QuickSearchApiImpl.js +0 -5
  122. package/src/Api/Implementation/ScheduleApiImpl.d.ts +1 -18
  123. package/src/Api/Implementation/ScheduleApiImpl.js +0 -69
  124. package/src/Api/Implementation/ScopeApiImpl.js +1 -1
  125. package/src/Api/Implementation/SettingsPanelApiImpl.d.ts +0 -2
  126. package/src/Api/Implementation/SettingsPanelApiImpl.js +0 -9
  127. package/src/Api/Implementation/ShortcutApiImpl.d.ts +1 -6
  128. package/src/Api/Implementation/ShortcutApiImpl.js +0 -21
  129. package/src/Api/Implementation/SmartEditApiImpl.d.ts +0 -1
  130. package/src/Api/Implementation/SmartEditApiImpl.js +0 -5
  131. package/src/Api/Implementation/StyledColumnApiImpl.d.ts +1 -5
  132. package/src/Api/Implementation/StyledColumnApiImpl.js +2 -17
  133. package/src/Api/Implementation/SystemStatusApiImpl.d.ts +0 -2
  134. package/src/Api/Implementation/SystemStatusApiImpl.js +0 -9
  135. package/src/Api/Implementation/TeamSharingApiImpl.d.ts +0 -5
  136. package/src/Api/Implementation/TeamSharingApiImpl.js +0 -21
  137. package/src/Api/Implementation/ThemeApiImpl.d.ts +0 -4
  138. package/src/Api/Implementation/ThemeApiImpl.js +2 -17
  139. package/src/Api/Implementation/ToolPanelApiImpl.js +2 -2
  140. package/src/Api/Implementation/UserInterfaceApiImpl.d.ts +4 -2
  141. package/src/Api/Implementation/UserInterfaceApiImpl.js +17 -10
  142. package/src/Api/Internal/{ActionInternalApi.d.ts → ActionRowInternalApi.d.ts} +2 -2
  143. package/src/Api/Internal/{ActionInternalApi.js → ActionRowInternalApi.js} +12 -5
  144. package/src/Api/Internal/AdaptableInternalApi.d.ts +1 -10
  145. package/src/Api/Internal/AdaptableInternalApi.js +9 -20
  146. package/src/Api/Internal/AlertInternalApi.js +9 -6
  147. package/src/Api/Internal/CalculatedColumnInternalApi.js +2 -2
  148. package/src/Api/Internal/CustomSortInternalApi.d.ts +1 -1
  149. package/src/Api/Internal/CustomSortInternalApi.js +1 -1
  150. package/src/Api/Internal/DashboardInternalApi.js +2 -0
  151. package/src/Api/Internal/DataSetInternalApi.d.ts +1 -1
  152. package/src/Api/Internal/DataSetInternalApi.js +2 -1
  153. package/src/Api/Internal/ExportInternalApi.js +1 -1
  154. package/src/Api/Internal/{QueryLanguageInternalApi.d.ts → ExpressionnternalApi.d.ts} +1 -1
  155. package/src/Api/Internal/{QueryLanguageInternalApi.js → ExpressionnternalApi.js} +9 -5
  156. package/src/Api/Internal/FilterInternalApi.js +4 -1
  157. package/src/Api/Internal/FormatColumnInternalApi.js +1 -1
  158. package/src/Api/Internal/GridInternalApi.js +8 -0
  159. package/src/Api/Internal/LayoutInternalApi.js +6 -1
  160. package/src/Api/Internal/PredicateInternalApi.js +10 -0
  161. package/src/Api/Internal/QueryInternalApi.js +3 -1
  162. package/src/Api/Internal/SystemStatusInternalApi.js +4 -1
  163. package/src/Api/Internal/TeamSharingInternalApi.js +2 -0
  164. package/src/Api/LayoutApi.d.ts +3 -27
  165. package/src/Api/OptionsApi.d.ts +28 -10
  166. package/src/Api/PlusMinusApi.d.ts +0 -7
  167. package/src/Api/PredicateApi.d.ts +1 -32
  168. package/src/Api/QueryApi.d.ts +0 -23
  169. package/src/Api/QuickSearchApi.d.ts +0 -4
  170. package/src/Api/ScheduleApi.d.ts +0 -81
  171. package/src/Api/SettingsPanelApi.d.ts +0 -11
  172. package/src/Api/ShortcutApi.d.ts +0 -25
  173. package/src/Api/SmartEditApi.d.ts +0 -7
  174. package/src/Api/StyledColumnApi.d.ts +0 -21
  175. package/src/Api/SystemStatusApi.d.ts +0 -11
  176. package/src/Api/TeamSharingApi.d.ts +0 -23
  177. package/src/Api/ThemeApi.d.ts +0 -19
  178. package/src/Api/UserInterfaceApi.d.ts +4 -9
  179. package/src/PredefinedConfig/AlertState.d.ts +11 -5
  180. package/src/PredefinedConfig/Common/AdaptableFormat.d.ts +3 -3
  181. package/src/PredefinedConfig/Common/AdaptableIcon.d.ts +4 -1
  182. package/src/PredefinedConfig/Common/AdaptablePredicate.d.ts +13 -1
  183. package/src/PredefinedConfig/Common/AggregationColumns.d.ts +3 -0
  184. package/src/PredefinedConfig/Common/BaseContext.d.ts +8 -0
  185. package/src/PredefinedConfig/Common/DataChangedScope.d.ts +9 -0
  186. package/src/PredefinedConfig/Common/Entitlement.d.ts +4 -1
  187. package/src/PredefinedConfig/LayoutState.d.ts +0 -6
  188. package/src/PredefinedConfig/StyledColumnState.d.ts +3 -0
  189. package/src/PredefinedConfig/SystemState.d.ts +1 -1
  190. package/src/PredefinedConfig/TeamSharingState.d.ts +1 -1
  191. package/src/PredefinedConfig/ThemeState.d.ts +3 -0
  192. package/src/Strategy/AdaptableModuleBase.js +3 -3
  193. package/src/Strategy/AlertModule.js +3 -3
  194. package/src/Strategy/CalculatedColumnModule.js +2 -2
  195. package/src/Strategy/CellSummaryModule.js +2 -0
  196. package/src/Strategy/DataSetModule.d.ts +1 -1
  197. package/src/Strategy/DataSetModule.js +1 -1
  198. package/src/Strategy/ExportModule.js +4 -0
  199. package/src/Strategy/FlashingCellModule.js +4 -4
  200. package/src/Strategy/FormatColumnModule.js +3 -3
  201. package/src/Strategy/QueryModule.js +1 -1
  202. package/src/Strategy/SmartEditModule.js +2 -0
  203. package/src/Utilities/Defaults/DefaultAdaptableOptions.js +24 -22
  204. package/src/Utilities/ExpressionFunctions/expressionFunctionUtils.js +4 -0
  205. package/src/Utilities/Helpers/AdaptableHelper.js +12 -6
  206. package/src/Utilities/Helpers/FormatHelper.js +7 -0
  207. package/src/Utilities/ObjectFactory.d.ts +2 -2
  208. package/src/Utilities/ObjectFactory.js +6 -4
  209. package/src/Utilities/Services/AlertService.js +1 -1
  210. package/src/Utilities/Services/CalculatedColumnExpressionService.js +2 -2
  211. package/src/Utilities/Services/ChartingService.js +2 -0
  212. package/src/Utilities/Services/EntitlementService.js +2 -2
  213. package/src/Utilities/Services/ModuleService.js +10 -10
  214. package/src/Utilities/Services/QueryLanguageService.js +16 -0
  215. package/src/Utilities/Services/ReportService.js +8 -6
  216. package/src/Utilities/Services/RowEditService.js +4 -2
  217. package/src/Utilities/Services/ValidationService.js +2 -0
  218. package/src/View/AdaptableWizardView/AdaptableConfigurationDialog/UIOptions/UIOptionsActionColumnsForm.js +3 -3
  219. package/src/View/CalculatedColumn/Wizard/CalculatedColumnExpressionWizardSection.js +1 -1
  220. package/src/View/CellSummary/CellSummaryStatusPanel.js +1 -1
  221. package/src/View/Components/AdaptableIconSelector/index.d.ts +6 -0
  222. package/src/View/Components/AdaptableIconSelector/index.js +18 -0
  223. package/src/View/Components/AdaptableObjectList/AdaptableObjectList.js +2 -2
  224. package/src/View/Components/AdaptableViewIcon/index.d.ts +10 -0
  225. package/src/View/Components/AdaptableViewIcon/index.js +18 -0
  226. package/src/View/Components/EntityRulesEditor/Utilities.js +3 -3
  227. package/src/View/Components/ExternalRenderer.js +14 -2
  228. package/src/View/Components/FilterForm/QuickFilterForm.js +4 -0
  229. package/src/View/Components/FilterForm/QuickFilterValues.js +8 -1
  230. package/src/View/Components/Popups/AdaptablePopupAlert.js +2 -0
  231. package/src/View/Components/RangesComponent.d.ts +4 -4
  232. package/src/View/Components/RangesComponent.js +13 -22
  233. package/src/View/Components/ToolPanel/AdaptableToolPanel.js +2 -0
  234. package/src/View/Components/ToolPanel/CustomToolPanelContent.js +11 -1
  235. package/src/View/CustomSort/Wizard/CustomSortColumnWizardSection.js +1 -1
  236. package/src/View/Dashboard/CustomDashboardButton.js +2 -0
  237. package/src/View/Dashboard/CustomToolbarWrapper.js +13 -1
  238. package/src/View/DataChangeHistory/DataChangeHistoryGrid.js +5 -5
  239. package/src/View/DataChangeHistory/buildActionColumnButton.d.ts +2 -2
  240. package/src/View/DataChangeHistory/buildActionColumnButton.js +3 -2
  241. package/src/View/Export/ExportViewPanel.js +4 -4
  242. package/src/View/FormatColumn/Wizard/FormatColumnFormatWizardSection.js +3 -1
  243. package/src/View/GridInfo/GridInfoPopup.d.ts +0 -1
  244. package/src/View/GridInfo/GridInfoPopup.js +1 -2
  245. package/src/View/GridInfo/GridOptionsComponent.js +1 -1
  246. package/src/View/Layout/LayoutViewPanel.js +1 -1
  247. package/src/View/Layout/PivotDetailsPopoup.js +2 -0
  248. package/src/View/Layout/SaveLayoutButton.js +1 -1
  249. package/src/View/Layout/Wizard/LayoutWizard.js +1 -1
  250. package/src/View/Query/Wizard/NamedQueryExpressionWizardSection.js +1 -1
  251. package/src/View/Shortcut/Wizard/ShortcutSettingsWizard.js +1 -1
  252. package/src/View/StyledColumn/Wizard/StyledColumnBadgeSection.js +2 -2
  253. package/src/View/StyledColumn/Wizard/StyledColumnWizardStyleSection/Components/StyledColumnBadgePreview.js +8 -1
  254. package/src/agGrid/ActionColumnRenderer.d.ts +1 -1
  255. package/src/agGrid/ActionColumnRenderer.js +5 -1
  256. package/src/agGrid/Adaptable.d.ts +14 -3
  257. package/src/agGrid/Adaptable.js +138 -38
  258. package/src/agGrid/BadgeRenderer.js +10 -2
  259. package/src/agGrid/CheckboxRenderer.d.ts +1 -2
  260. package/src/agGrid/agGridHelper.js +4 -5
  261. package/src/agGrid/agGridMenuHelper.js +4 -0
  262. package/src/agGrid/attachAddaptableColumnTypes.d.ts +11 -11
  263. package/src/agGrid/editors/AdaptableDateEditor/index.js +2 -0
  264. package/src/agGrid/editors/AdaptableNumberEditor/index.js +2 -2
  265. package/src/components/AdaptableFormComponent/AdaptableFormComponent.js +6 -3
  266. package/src/components/AdaptableIconComponent/index.js +6 -3
  267. package/src/components/ExpressionEditor/BaseEditorInput.js +2 -0
  268. package/src/components/ExpressionEditor/index.js +1 -1
  269. package/src/components/IconSelector/IconSelector.d.ts +2 -0
  270. package/src/components/IconSelector/IconSelector.js +21 -5
  271. package/src/components/Input/NumberInput.d.ts +10 -0
  272. package/src/components/Input/NumberInput.js +46 -0
  273. package/src/metamodel/adaptable.metamodel.d.ts +360 -143
  274. package/src/metamodel/adaptable.metamodel.js +1 -1
  275. package/src/parser/src/types.d.ts +3 -0
  276. package/src/types.d.ts +13 -8
  277. package/version.d.ts +1 -1
  278. package/version.js +1 -1
  279. package/src/AdaptableOptions/GeneralOptions.d.ts +0 -159
  280. package/src/Api/Events/SearchChanged.d.ts +0 -12
  281. package/src/Api/Implementation/ActionApiImpl.d.ts +0 -14
  282. /package/src/AdaptableOptions/{ActionOptions.js → ActionColumnOptions.js} +0 -0
  283. /package/src/AdaptableOptions/{GeneralOptions.js → ActionRowOptions.js} +0 -0
  284. /package/src/{Api/ActionApi.js → AdaptableOptions/CalendarOptions.js} +0 -0
  285. /package/src/{Api/Events/SearchChanged.js → AdaptableOptions/CellSummaryOptions.js} +0 -0
  286. /package/src/{Api/QueryLanguageApi.js → AdaptableOptions/CustomSortOptions.js} +0 -0
@@ -112,7 +112,7 @@ function ExpressionEditor(props) {
112
112
  padding: 5,
113
113
  } }, showColumnIds
114
114
  ? namedQuery.BooleanExpression
115
- : props.api.queryLanguageApi.getAdaptableQueryExpressionWithColumnFriendlyNames(namedQuery)))))));
115
+ : props.api.expressionApi.getAdaptableQueryExpressionWithColumnFriendlyNames(namedQuery)))))));
116
116
  const showDocumentationLinks = props.api.internalApi.isDocumentationLinksDisplayed();
117
117
  const queryDocumentationLink = queryDocumentationLinks[type];
118
118
  return (React.createElement(EditorContext_1.ExpressionEditorContext.Provider, { value: {
@@ -1,5 +1,7 @@
1
1
  import { FunctionComponent } from 'react';
2
+ import { UserInterfaceOptions } from '../../types';
2
3
  export interface IconSelectorProps {
4
+ customIcons?: UserInterfaceOptions['customIcons'];
3
5
  value?: string;
4
6
  onChange: (iconName: string) => void;
5
7
  clearable?: boolean;
@@ -5,11 +5,15 @@ const tslib_1 = require("tslib");
5
5
  const react_1 = tslib_1.__importDefault(require("react"));
6
6
  const rebass_1 = require("rebass");
7
7
  const AdaptableInput_1 = tslib_1.__importDefault(require("../../View/Components/AdaptableInput"));
8
+ const AdaptableIconComponent_1 = require("../AdaptableIconComponent");
8
9
  const icons_1 = tslib_1.__importStar(require("../icons"));
9
10
  const OverlayTrigger_1 = tslib_1.__importDefault(require("../OverlayTrigger"));
10
11
  const SimpleButton_1 = tslib_1.__importDefault(require("../SimpleButton"));
12
+ const IconButton = (props) => {
13
+ return (react_1.default.createElement(SimpleButton_1.default, { onClick: () => props.onClick(), p: 2, variant: props.active ? 'raised' : 'text', tone: props.active ? 'accent' : 'none', icon: props.icon }, props.children));
14
+ };
11
15
  const IconSelector = (props) => {
12
- var _a;
16
+ var _a, _b, _c;
13
17
  const [query, setQuery] = react_1.default.useState('');
14
18
  const allIcons = Object.keys(icons_1.default);
15
19
  const filteredIcons = query
@@ -17,23 +21,35 @@ const IconSelector = (props) => {
17
21
  return iconName.toLowerCase().includes(query.toLowerCase());
18
22
  })
19
23
  : allIcons;
20
- let iconsElements = filteredIcons.map((iconName) => {
24
+ const iconsElements = filteredIcons.map((iconName) => {
21
25
  return (react_1.default.createElement(rebass_1.Flex, { key: iconName },
22
- react_1.default.createElement(SimpleButton_1.default, { onClick: () => props.onChange(iconName), p: 2, variant: iconName === props.value ? 'raised' : 'text', tone: iconName === props.value ? 'accent' : 'none', icon: iconName })));
26
+ react_1.default.createElement(IconButton, { onClick: () => props.onChange(iconName), active: iconName === props.value, icon: iconName })));
27
+ });
28
+ const customIconsElements = (_a = props.customIcons) === null || _a === void 0 ? void 0 : _a.map((def) => {
29
+ return (react_1.default.createElement(IconButton, { key: def.name, active: false, onClick: () => props.onChange(def.name) },
30
+ react_1.default.createElement(AdaptableIconComponent_1.AdaptableIconComponent, { key: def.name, icon: def.icon })));
23
31
  });
24
32
  const popup = (react_1.default.createElement(rebass_1.Box, { className: "ab-IconSelector__Popup" },
25
33
  react_1.default.createElement(rebass_1.Box, { mb: 2 },
26
34
  react_1.default.createElement(rebass_1.Box, { mb: 2, fontSize: 4 }, "Select an Icon"),
27
35
  react_1.default.createElement(AdaptableInput_1.default, { value: query, onChange: (event) => { var _a; return setQuery((_a = event.target.value) !== null && _a !== void 0 ? _a : ''); }, width: "100%" })),
28
- react_1.default.createElement(rebass_1.Flex, { p: 2, style: { width: 300, maxHeight: 300, overflow: 'auto' }, flexWrap: "wrap" }, iconsElements)));
36
+ react_1.default.createElement(rebass_1.Flex, { p: 2, style: { width: 300, maxHeight: 300, overflow: 'auto' }, flexWrap: "wrap" },
37
+ iconsElements,
38
+ " ",
39
+ customIconsElements)));
29
40
  let value = 'No Icon Selected';
30
41
  if (props.value in icons_1.default) {
31
42
  value = (react_1.default.createElement(icons_1.Icon, { style: { display: 'inline-block' }, name: props.value }));
32
43
  }
44
+ else {
45
+ const icon = (_b = props.customIcons) === null || _b === void 0 ? void 0 : _b.find((def) => def.name === props.value);
46
+ if (icon)
47
+ value = react_1.default.createElement(AdaptableIconComponent_1.AdaptableIconComponent, { icon: icon.icon });
48
+ }
33
49
  return (react_1.default.createElement(rebass_1.Flex, { className: "ab-IconSelector" },
34
50
  react_1.default.createElement(OverlayTrigger_1.default, { preventPortalEventPropagation: false, render: () => popup, showEvent: "mouseenter", hideEvent: "mouseleave", hideDelay: 300 },
35
51
  react_1.default.createElement(SimpleButton_1.default, { className: "ab-IconSelector__trigger", textAlign: "center", onClick: () => null, variant: "raised", width: 150, justifyContent: "center" }, value)),
36
- ((_a = props.clearable) !== null && _a !== void 0 ? _a : true) && (react_1.default.createElement(SimpleButton_1.default, { disabled: !props.value, className: "ab-IconSelector__clear-button", ml: 2, onClick: (event) => {
52
+ ((_c = props.clearable) !== null && _c !== void 0 ? _c : true) && (react_1.default.createElement(SimpleButton_1.default, { disabled: !props.value, className: "ab-IconSelector__clear-button", ml: 2, onClick: (event) => {
37
53
  event.stopPropagation();
38
54
  event.preventDefault();
39
55
  props.onChange('');
@@ -0,0 +1,10 @@
1
+ import * as React from 'react';
2
+ import { InputProps } from './index';
3
+ export declare type NumberInputProps = {
4
+ onChange: (value: number) => void;
5
+ } & Omit<InputProps, 'onChange'>;
6
+ /**
7
+ * This component allows - and empty values as intermediery values
8
+ * it calls change only with valid numeric values
9
+ */
10
+ export declare const NumberInput: React.FunctionComponent<NumberInputProps>;
@@ -0,0 +1,46 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.NumberInput = void 0;
4
+ const tslib_1 = require("tslib");
5
+ const React = tslib_1.__importStar(require("react"));
6
+ const index_1 = tslib_1.__importDefault(require("./index"));
7
+ /**
8
+ * This component allows - and empty values as intermediery values
9
+ * it calls change only with valid numeric values
10
+ */
11
+ const NumberInput = (props) => {
12
+ const [value, setValue] = React.useState(() => {
13
+ var _a;
14
+ // awlays controlled
15
+ return (_a = props.value) !== null && _a !== void 0 ? _a : '';
16
+ });
17
+ const handleChange = React.useCallback((event) => {
18
+ const { value } = event.target;
19
+ let newVal = Number(value);
20
+ if (value === '-' || value === '') {
21
+ // we are saving invalid values so we allow values as empty string and '-'
22
+ // there is a validation that prevents the
23
+ newVal = value;
24
+ // the value may be empty or negative
25
+ setValue(value);
26
+ }
27
+ else if (!isNaN(newVal)) {
28
+ setValue(value);
29
+ // only set when a valid numer
30
+ props.onChange(newVal);
31
+ }
32
+ }, []);
33
+ React.useEffect(() => {
34
+ setValue(props.value);
35
+ }, [props.value]);
36
+ const handleBlur = React.useCallback((event) => {
37
+ var _a;
38
+ (_a = props === null || props === void 0 ? void 0 : props.onBlur) === null || _a === void 0 ? void 0 : _a.call(props, event);
39
+ // show the prop value
40
+ if (value !== props.value) {
41
+ setValue(props.value);
42
+ }
43
+ }, [props.value, value]);
44
+ return React.createElement(index_1.default, Object.assign({}, props, { value: value, onBlur: handleBlur, onChange: handleChange }));
45
+ };
46
+ exports.NumberInput = NumberInput;