@imposium-hub/components 2.13.6 → 2.13.8-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 (289) hide show
  1. package/dist/cjs/components/advanced-number-field/AdvancedNumberField.d.ts +9 -0
  2. package/dist/cjs/components/advanced-number-field/AdvancedNumberField.js +2 -2
  3. package/dist/cjs/components/advanced-number-field/AdvancedNumberField.js.map +1 -1
  4. package/dist/cjs/components/button-group-field/ButtonGroupField.d.ts +9 -0
  5. package/dist/cjs/components/button-group-field/ButtonGroupField.js +38 -20
  6. package/dist/cjs/components/button-group-field/ButtonGroupField.js.map +1 -1
  7. package/dist/cjs/components/checkbox-field/CheckboxField.d.ts +8 -0
  8. package/dist/cjs/components/checkbox-field/CheckboxField.js +2 -2
  9. package/dist/cjs/components/checkbox-field/CheckboxField.js.map +1 -1
  10. package/dist/cjs/components/color-field/ColorField.d.ts +8 -0
  11. package/dist/cjs/components/color-field/ColorField.js +2 -2
  12. package/dist/cjs/components/color-field/ColorField.js.map +1 -1
  13. package/dist/cjs/components/config-variable-button/ConfigVariableButton.d.ts +43 -0
  14. package/dist/cjs/components/config-variable-button/ConfigVariableButton.js +106 -0
  15. package/dist/cjs/components/config-variable-button/ConfigVariableButton.js.map +1 -0
  16. package/dist/cjs/components/controlled-list/ControlledList.d.ts +6 -2
  17. package/dist/cjs/components/controlled-list/ControlledList.js +22 -6
  18. package/dist/cjs/components/controlled-list/ControlledList.js.map +1 -1
  19. package/dist/cjs/components/data-table/Paginator.js +1 -1
  20. package/dist/cjs/components/data-table/Paginator.js.map +1 -1
  21. package/dist/cjs/components/dropdown/dropdown.stories.js +1 -1
  22. package/dist/cjs/components/dropdown/dropdown.stories.js.map +1 -1
  23. package/dist/cjs/components/field-wrapper/FieldWrapper.d.ts +11 -0
  24. package/dist/cjs/components/field-wrapper/FieldWrapper.js +25 -6
  25. package/dist/cjs/components/field-wrapper/FieldWrapper.js.map +1 -1
  26. package/dist/cjs/components/font-field/FontField.d.ts +20 -0
  27. package/dist/cjs/components/font-field/FontField.js +47 -0
  28. package/dist/cjs/components/font-field/FontField.js.map +1 -0
  29. package/dist/cjs/components/icon-toggle/IconToggle.d.ts +16 -0
  30. package/dist/cjs/components/icon-toggle/IconToggle.js +24 -0
  31. package/dist/cjs/components/icon-toggle/IconToggle.js.map +1 -0
  32. package/dist/cjs/components/number-field/NumberField.d.ts +9 -0
  33. package/dist/cjs/components/number-field/NumberField.js +2 -5
  34. package/dist/cjs/components/number-field/NumberField.js.map +1 -1
  35. package/dist/cjs/components/select-field/SelectField.d.ts +8 -0
  36. package/dist/cjs/components/select-field/SelectField.js +2 -2
  37. package/dist/cjs/components/select-field/SelectField.js.map +1 -1
  38. package/dist/cjs/components/slider-field/SliderField.d.ts +9 -0
  39. package/dist/cjs/components/slider-field/SliderField.js +2 -2
  40. package/dist/cjs/components/slider-field/SliderField.js.map +1 -1
  41. package/dist/cjs/components/text-area-autocomplete/TextAreaAutocomplete.d.ts +19 -0
  42. package/dist/cjs/components/text-area-autocomplete/TextAreaAutocomplete.js +27 -0
  43. package/dist/cjs/components/text-area-autocomplete/TextAreaAutocomplete.js.map +1 -0
  44. package/dist/cjs/components/variables-dropdown/VariableDropdown.d.ts +12 -0
  45. package/dist/cjs/components/variables-dropdown/VariableDropdown.js +66 -0
  46. package/dist/cjs/components/variables-dropdown/VariableDropdown.js.map +1 -0
  47. package/dist/cjs/constants/copy.d.ts +3 -0
  48. package/dist/cjs/constants/copy.js +4 -1
  49. package/dist/cjs/constants/copy.js.map +1 -1
  50. package/dist/cjs/constants/fonts.d.ts +6 -0
  51. package/dist/cjs/constants/fonts.js +300 -0
  52. package/dist/cjs/constants/fonts.js.map +1 -0
  53. package/dist/cjs/constants/icons.d.ts +2 -0
  54. package/dist/cjs/constants/icons.js +3 -1
  55. package/dist/cjs/constants/icons.js.map +1 -1
  56. package/dist/cjs/constants/variables.d.ts +4 -0
  57. package/dist/cjs/constants/variables.js +13 -1
  58. package/dist/cjs/constants/variables.js.map +1 -1
  59. package/dist/cjs/index.d.ts +6 -2
  60. package/dist/cjs/index.js +9 -1
  61. package/dist/cjs/index.js.map +1 -1
  62. package/dist/cjs/interfaces/field.d.ts +0 -0
  63. package/dist/cjs/interfaces/field.js +1 -0
  64. package/dist/cjs/interfaces/field.js.map +1 -0
  65. package/dist/cjs/utils/override.d.ts +11 -0
  66. package/dist/cjs/utils/override.js +15 -0
  67. package/dist/cjs/utils/override.js.map +1 -0
  68. package/dist/esm/components/advanced-number-field/AdvancedNumberField.d.ts +9 -0
  69. package/dist/esm/components/advanced-number-field/AdvancedNumberField.js +2 -2
  70. package/dist/esm/components/advanced-number-field/AdvancedNumberField.js.map +1 -1
  71. package/dist/esm/components/button-group-field/ButtonGroupField.d.ts +9 -0
  72. package/dist/esm/components/button-group-field/ButtonGroupField.js +38 -20
  73. package/dist/esm/components/button-group-field/ButtonGroupField.js.map +1 -1
  74. package/dist/esm/components/checkbox-field/CheckboxField.d.ts +8 -0
  75. package/dist/esm/components/checkbox-field/CheckboxField.js +2 -2
  76. package/dist/esm/components/checkbox-field/CheckboxField.js.map +1 -1
  77. package/dist/esm/components/color-field/ColorField.d.ts +8 -0
  78. package/dist/esm/components/color-field/ColorField.js +2 -2
  79. package/dist/esm/components/color-field/ColorField.js.map +1 -1
  80. package/dist/esm/components/config-variable-button/ConfigVariableButton.d.ts +43 -0
  81. package/dist/esm/components/config-variable-button/ConfigVariableButton.js +49 -0
  82. package/dist/esm/components/config-variable-button/ConfigVariableButton.js.map +1 -0
  83. package/dist/esm/components/controlled-list/ControlledList.d.ts +6 -2
  84. package/dist/esm/components/controlled-list/ControlledList.js +24 -7
  85. package/dist/esm/components/controlled-list/ControlledList.js.map +1 -1
  86. package/dist/esm/components/data-table/Paginator.js +1 -1
  87. package/dist/esm/components/data-table/Paginator.js.map +1 -1
  88. package/dist/esm/components/dropdown/dropdown.stories.js +1 -1
  89. package/dist/esm/components/dropdown/dropdown.stories.js.map +1 -1
  90. package/dist/esm/components/field-wrapper/FieldWrapper.d.ts +11 -0
  91. package/dist/esm/components/field-wrapper/FieldWrapper.js +24 -6
  92. package/dist/esm/components/field-wrapper/FieldWrapper.js.map +1 -1
  93. package/dist/esm/components/font-field/FontField.d.ts +20 -0
  94. package/dist/esm/components/font-field/FontField.js +17 -0
  95. package/dist/esm/components/font-field/FontField.js.map +1 -0
  96. package/dist/esm/components/icon-toggle/IconToggle.d.ts +16 -0
  97. package/dist/esm/components/icon-toggle/IconToggle.js +18 -0
  98. package/dist/esm/components/icon-toggle/IconToggle.js.map +1 -0
  99. package/dist/esm/components/number-field/NumberField.d.ts +9 -0
  100. package/dist/esm/components/number-field/NumberField.js +2 -5
  101. package/dist/esm/components/number-field/NumberField.js.map +1 -1
  102. package/dist/esm/components/select-field/SelectField.d.ts +8 -0
  103. package/dist/esm/components/select-field/SelectField.js +2 -2
  104. package/dist/esm/components/select-field/SelectField.js.map +1 -1
  105. package/dist/esm/components/slider-field/SliderField.d.ts +9 -0
  106. package/dist/esm/components/slider-field/SliderField.js +2 -2
  107. package/dist/esm/components/slider-field/SliderField.js.map +1 -1
  108. package/dist/esm/components/text-area-autocomplete/TextAreaAutocomplete.d.ts +19 -0
  109. package/dist/esm/components/text-area-autocomplete/TextAreaAutocomplete.js +20 -0
  110. package/dist/esm/components/text-area-autocomplete/TextAreaAutocomplete.js.map +1 -0
  111. package/dist/esm/components/variables-dropdown/VariableDropdown.d.ts +12 -0
  112. package/dist/esm/components/variables-dropdown/VariableDropdown.js +50 -0
  113. package/dist/esm/components/variables-dropdown/VariableDropdown.js.map +1 -0
  114. package/dist/esm/constants/copy.d.ts +3 -0
  115. package/dist/esm/constants/copy.js +3 -0
  116. package/dist/esm/constants/copy.js.map +1 -1
  117. package/dist/esm/constants/fonts.d.ts +6 -0
  118. package/dist/esm/constants/fonts.js +297 -0
  119. package/dist/esm/constants/fonts.js.map +1 -0
  120. package/dist/esm/constants/icons.d.ts +2 -0
  121. package/dist/esm/constants/icons.js +4 -2
  122. package/dist/esm/constants/icons.js.map +1 -1
  123. package/dist/esm/constants/variables.d.ts +4 -0
  124. package/dist/esm/constants/variables.js +11 -0
  125. package/dist/esm/constants/variables.js.map +1 -1
  126. package/dist/esm/index.d.ts +6 -2
  127. package/dist/esm/index.js +5 -1
  128. package/dist/esm/index.js.map +1 -1
  129. package/dist/esm/interfaces/field.d.ts +0 -0
  130. package/dist/esm/interfaces/field.js +1 -0
  131. package/dist/esm/interfaces/field.js.map +1 -0
  132. package/dist/esm/utils/override.d.ts +11 -0
  133. package/dist/esm/utils/override.js +9 -0
  134. package/dist/esm/utils/override.js.map +1 -0
  135. package/dist/styles.css +130 -13
  136. package/dist/styles.less +369 -209
  137. package/less/components/button.less +5 -1
  138. package/less/components/controlled-list.less +122 -13
  139. package/less/components/dropdown.less +3 -0
  140. package/less/components/font-picker.less +18 -14
  141. package/less/components/form-field.less +224 -182
  142. package/package.json +3 -1
  143. package/src/components/advanced-number-field/AdvancedNumberField.tsx +33 -4
  144. package/src/components/button-group-field/ButtonGroupField.tsx +110 -39
  145. package/src/components/checkbox-field/CheckboxField.tsx +36 -3
  146. package/src/components/color-field/ColorField.tsx +29 -4
  147. package/src/components/config-variable-button/ConfigVariableButton.tsx +144 -0
  148. package/src/components/controlled-list/ControlledList.tsx +68 -14
  149. package/src/components/data-table/Paginator.tsx +1 -1
  150. package/src/components/field-wrapper/FieldWrapper.tsx +80 -6
  151. package/src/components/font-field/FontField.tsx +78 -0
  152. package/src/components/icon-toggle/IconToggle.tsx +63 -0
  153. package/src/components/number-field/NumberField.tsx +34 -8
  154. package/src/components/select-field/SelectField.tsx +29 -4
  155. package/src/components/slider-field/SliderField.tsx +32 -2
  156. package/src/components/text-area-autocomplete/TextAreaAutocomplete.tsx +80 -0
  157. package/src/components/variables-dropdown/VariableDropdown.tsx +98 -0
  158. package/src/constants/copy.ts +4 -0
  159. package/src/constants/fonts.ts +296 -0
  160. package/src/constants/icons.tsx +6 -1
  161. package/src/constants/variables.ts +16 -0
  162. package/src/index.ts +11 -2
  163. package/dist/cjs/components/app-wrapper/AppWrapperV2.d.ts +0 -26
  164. package/dist/cjs/components/app-wrapper/AppWrapperV2.js +0 -266
  165. package/dist/cjs/components/app-wrapper/AppWrapperV2.js.map +0 -1
  166. package/dist/cjs/components/app-wrapper/AppWrapperV3.d.ts +0 -19
  167. package/dist/cjs/components/app-wrapper/AppWrapperV3.js +0 -195
  168. package/dist/cjs/components/app-wrapper/AppWrapperV3.js.map +0 -1
  169. package/dist/cjs/components/app-wrapper/AppWrapper_BACKUP_73190.d.ts +0 -27
  170. package/dist/cjs/components/app-wrapper/AppWrapper_BACKUP_73190.js +0 -243
  171. package/dist/cjs/components/app-wrapper/AppWrapper_BACKUP_73190.js.map +0 -1
  172. package/dist/cjs/components/app-wrapper/AppWrapper_BASE_73190.d.ts +0 -28
  173. package/dist/cjs/components/app-wrapper/AppWrapper_BASE_73190.js +0 -255
  174. package/dist/cjs/components/app-wrapper/AppWrapper_BASE_73190.js.map +0 -1
  175. package/dist/cjs/components/app-wrapper/AppWrapper_LOCAL_73190.d.ts +0 -27
  176. package/dist/cjs/components/app-wrapper/AppWrapper_LOCAL_73190.js +0 -243
  177. package/dist/cjs/components/app-wrapper/AppWrapper_LOCAL_73190.js.map +0 -1
  178. package/dist/cjs/components/app-wrapper/AppWrapper_REMOTE_73190.d.ts +0 -28
  179. package/dist/cjs/components/app-wrapper/AppWrapper_REMOTE_73190.js +0 -251
  180. package/dist/cjs/components/app-wrapper/AppWrapper_REMOTE_73190.js.map +0 -1
  181. package/dist/cjs/components/auth-gate/AuthGate.d.ts +0 -2
  182. package/dist/cjs/components/auth-gate/AuthGate.js +0 -105
  183. package/dist/cjs/components/auth-gate/AuthGate.js.map +0 -1
  184. package/dist/cjs/components/edit-guide-modal/EditGuideModal.d.ts +0 -8
  185. package/dist/cjs/components/edit-guide-modal/EditGuideModal.js +0 -132
  186. package/dist/cjs/components/edit-guide-modal/EditGuideModal.js.map +0 -1
  187. package/dist/cjs/components/edit-marker-modal/EditMarkerModal.d.ts +0 -8
  188. package/dist/cjs/components/edit-marker-modal/EditMarkerModal.js +0 -104
  189. package/dist/cjs/components/edit-marker-modal/EditMarkerModal.js.map +0 -1
  190. package/dist/cjs/components/error-message-preview/ErrorMessagePreview.d.ts +0 -15
  191. package/dist/cjs/components/error-message-preview/ErrorMessagePreview.js +0 -91
  192. package/dist/cjs/components/error-message-preview/ErrorMessagePreview.js.map +0 -1
  193. package/dist/cjs/components/feature-flag-wrapper/FeatureFlagWrapper.d.ts +0 -7
  194. package/dist/cjs/components/feature-flag-wrapper/FeatureFlagWrapper.js +0 -48
  195. package/dist/cjs/components/feature-flag-wrapper/FeatureFlagWrapper.js.map +0 -1
  196. package/dist/cjs/components/header/Header_BACKUP_73021.d.ts +0 -33
  197. package/dist/cjs/components/header/Header_BACKUP_73021.js +0 -393
  198. package/dist/cjs/components/header/Header_BACKUP_73021.js.map +0 -1
  199. package/dist/cjs/components/header/Header_BASE_73021.d.ts +0 -29
  200. package/dist/cjs/components/header/Header_BASE_73021.js +0 -376
  201. package/dist/cjs/components/header/Header_BASE_73021.js.map +0 -1
  202. package/dist/cjs/components/header/Header_LOCAL_73021.d.ts +0 -33
  203. package/dist/cjs/components/header/Header_LOCAL_73021.js +0 -382
  204. package/dist/cjs/components/header/Header_LOCAL_73021.js.map +0 -1
  205. package/dist/cjs/components/header/Header_REMOTE_73021.d.ts +0 -30
  206. package/dist/cjs/components/header/Header_REMOTE_73021.js +0 -386
  207. package/dist/cjs/components/header/Header_REMOTE_73021.js.map +0 -1
  208. package/dist/cjs/components/header/StoryDropdown.d.ts +0 -6
  209. package/dist/cjs/components/header/StoryDropdown.js +0 -111
  210. package/dist/cjs/components/header/StoryDropdown.js.map +0 -1
  211. package/dist/cjs/components/replace-files-modal/ReplaceFilesModal.d.ts +0 -11
  212. package/dist/cjs/components/replace-files-modal/ReplaceFilesModal.js +0 -213
  213. package/dist/cjs/components/replace-files-modal/ReplaceFilesModal.js.map +0 -1
  214. package/dist/cjs/redux/actions/auth.d.ts +0 -9
  215. package/dist/cjs/redux/actions/auth.js +0 -30
  216. package/dist/cjs/redux/actions/auth.js.map +0 -1
  217. package/dist/cjs/redux/reducers/auth.d.ts +0 -3
  218. package/dist/cjs/redux/reducers/auth.js +0 -67
  219. package/dist/cjs/redux/reducers/auth.js.map +0 -1
  220. package/dist/cjs/services/Auth0.d.ts +0 -18
  221. package/dist/cjs/services/Auth0.js +0 -102
  222. package/dist/cjs/services/Auth0.js.map +0 -1
  223. package/dist/cjs/services/Session.d.ts +0 -26
  224. package/dist/cjs/services/Session.js +0 -155
  225. package/dist/cjs/services/Session.js.map +0 -1
  226. package/dist/esm/components/app-wrapper/AppWrapperV2.d.ts +0 -26
  227. package/dist/esm/components/app-wrapper/AppWrapperV2.js +0 -142
  228. package/dist/esm/components/app-wrapper/AppWrapperV2.js.map +0 -1
  229. package/dist/esm/components/app-wrapper/AppWrapperV3.d.ts +0 -19
  230. package/dist/esm/components/app-wrapper/AppWrapperV3.js +0 -88
  231. package/dist/esm/components/app-wrapper/AppWrapperV3.js.map +0 -1
  232. package/dist/esm/components/app-wrapper/AppWrapper_BACKUP_73190.d.ts +0 -27
  233. package/dist/esm/components/app-wrapper/AppWrapper_BACKUP_73190.js +0 -194
  234. package/dist/esm/components/app-wrapper/AppWrapper_BACKUP_73190.js.map +0 -1
  235. package/dist/esm/components/app-wrapper/AppWrapper_BASE_73190.d.ts +0 -28
  236. package/dist/esm/components/app-wrapper/AppWrapper_BASE_73190.js +0 -208
  237. package/dist/esm/components/app-wrapper/AppWrapper_BASE_73190.js.map +0 -1
  238. package/dist/esm/components/app-wrapper/AppWrapper_LOCAL_73190.d.ts +0 -27
  239. package/dist/esm/components/app-wrapper/AppWrapper_LOCAL_73190.js +0 -194
  240. package/dist/esm/components/app-wrapper/AppWrapper_LOCAL_73190.js.map +0 -1
  241. package/dist/esm/components/app-wrapper/AppWrapper_REMOTE_73190.d.ts +0 -28
  242. package/dist/esm/components/app-wrapper/AppWrapper_REMOTE_73190.js +0 -204
  243. package/dist/esm/components/app-wrapper/AppWrapper_REMOTE_73190.js.map +0 -1
  244. package/dist/esm/components/auth-gate/AuthGate.d.ts +0 -2
  245. package/dist/esm/components/auth-gate/AuthGate.js +0 -59
  246. package/dist/esm/components/auth-gate/AuthGate.js.map +0 -1
  247. package/dist/esm/components/edit-guide-modal/EditGuideModal.d.ts +0 -8
  248. package/dist/esm/components/edit-guide-modal/EditGuideModal.js +0 -65
  249. package/dist/esm/components/edit-guide-modal/EditGuideModal.js.map +0 -1
  250. package/dist/esm/components/edit-marker-modal/EditMarkerModal.d.ts +0 -8
  251. package/dist/esm/components/edit-marker-modal/EditMarkerModal.js +0 -72
  252. package/dist/esm/components/edit-marker-modal/EditMarkerModal.js.map +0 -1
  253. package/dist/esm/components/error-message-preview/ErrorMessagePreview.d.ts +0 -15
  254. package/dist/esm/components/error-message-preview/ErrorMessagePreview.js +0 -35
  255. package/dist/esm/components/error-message-preview/ErrorMessagePreview.js.map +0 -1
  256. package/dist/esm/components/feature-flag-wrapper/FeatureFlagWrapper.d.ts +0 -7
  257. package/dist/esm/components/feature-flag-wrapper/FeatureFlagWrapper.js +0 -10
  258. package/dist/esm/components/feature-flag-wrapper/FeatureFlagWrapper.js.map +0 -1
  259. package/dist/esm/components/header/Header_BACKUP_73021.d.ts +0 -33
  260. package/dist/esm/components/header/Header_BACKUP_73021.js +0 -336
  261. package/dist/esm/components/header/Header_BACKUP_73021.js.map +0 -1
  262. package/dist/esm/components/header/Header_BASE_73021.d.ts +0 -29
  263. package/dist/esm/components/header/Header_BASE_73021.js +0 -322
  264. package/dist/esm/components/header/Header_BASE_73021.js.map +0 -1
  265. package/dist/esm/components/header/Header_LOCAL_73021.d.ts +0 -33
  266. package/dist/esm/components/header/Header_LOCAL_73021.js +0 -328
  267. package/dist/esm/components/header/Header_LOCAL_73021.js.map +0 -1
  268. package/dist/esm/components/header/Header_REMOTE_73021.d.ts +0 -30
  269. package/dist/esm/components/header/Header_REMOTE_73021.js +0 -329
  270. package/dist/esm/components/header/Header_REMOTE_73021.js.map +0 -1
  271. package/dist/esm/components/header/StoryDropdown.d.ts +0 -6
  272. package/dist/esm/components/header/StoryDropdown.js +0 -82
  273. package/dist/esm/components/header/StoryDropdown.js.map +0 -1
  274. package/dist/esm/components/replace-files-modal/ReplaceFilesModal.d.ts +0 -11
  275. package/dist/esm/components/replace-files-modal/ReplaceFilesModal.js +0 -141
  276. package/dist/esm/components/replace-files-modal/ReplaceFilesModal.js.map +0 -1
  277. package/dist/esm/redux/actions/auth.d.ts +0 -9
  278. package/dist/esm/redux/actions/auth.js +0 -25
  279. package/dist/esm/redux/actions/auth.js.map +0 -1
  280. package/dist/esm/redux/reducers/auth.d.ts +0 -3
  281. package/dist/esm/redux/reducers/auth.js +0 -27
  282. package/dist/esm/redux/reducers/auth.js.map +0 -1
  283. package/dist/esm/services/Auth0.d.ts +0 -18
  284. package/dist/esm/services/Auth0.js +0 -68
  285. package/dist/esm/services/Auth0.js.map +0 -1
  286. package/dist/esm/services/Session.d.ts +0 -26
  287. package/dist/esm/services/Session.js +0 -107
  288. package/dist/esm/services/Session.js.map +0 -1
  289. /package/src/components/dropdown/{dropdown.stories.tsx → Dropdown.stories.tsx} +0 -0
@@ -3,6 +3,9 @@ import { generateUUID } from '../../Util';
3
3
  import { renderTooltipProps, renderTooltip, IToolTipConfig } from '../Tooltip';
4
4
  import { ICON_TIMES_CIRCLE, ICON_INFO_CIRCLE } from '../../constants/icons';
5
5
  import Button from '../button/Button';
6
+ import { fieldLabel } from '../config-variable-button/ConfigVariableButton';
7
+ import ControlledList from '../controlled-list/ControlledList';
8
+ import { getOverrideHandler } from '../../constants/variables';
6
9
 
7
10
  interface IFieldWrapperProps {
8
11
  buttons?: any;
@@ -15,6 +18,20 @@ interface IFieldWrapperProps {
15
18
  labelPosition?: string;
16
19
  labelWidth?: string | number;
17
20
  header?: boolean;
21
+
22
+ type?: any;
23
+ override?: any;
24
+ showCopyPropIds?: boolean;
25
+ propKey?: string;
26
+ setOverride?(e): void;
27
+ removeOverride?(): void;
28
+ inventory?: any;
29
+ onClose?(e: boolean): void;
30
+ activeOverride?: string;
31
+
32
+ buttonGroup?: boolean;
33
+
34
+ previewMultiplier?: number;
18
35
  }
19
36
 
20
37
  interface IFieldWrapperState {
@@ -43,17 +60,44 @@ class FieldWrapper extends React.PureComponent<IFieldWrapperProps, IFieldWrapper
43
60
  }
44
61
 
45
62
  private getLabelClass() {
46
- if (!this.props.label) {
63
+ const { propKey, label, labelPosition } = this.props;
64
+
65
+ if (!label && propKey) {
66
+ return 'label-left';
67
+ } else if (!label) {
47
68
  return 'no-label';
48
69
  } else {
49
- const labelPos = this.props.labelPosition ? this.props.labelPosition : 'left';
70
+ const labelPos = labelPosition ? labelPosition : 'left';
50
71
  return `label-${labelPos}`;
51
72
  }
52
73
  }
53
74
 
54
75
  private renderLabel() {
55
76
  const { showInfo } = this.state;
56
- const { info, label, labelWidth } = this.props;
77
+ const {
78
+ info,
79
+ labelWidth,
80
+ propKey,
81
+ showCopyPropIds,
82
+ inventory,
83
+ setOverride,
84
+ onClose,
85
+ activeOverride,
86
+ removeOverride,
87
+ type
88
+ } = this.props;
89
+
90
+ const label = fieldLabel(
91
+ this.props.label,
92
+ propKey,
93
+ showCopyPropIds,
94
+ type,
95
+ inventory,
96
+ (o) => setOverride(o),
97
+ (o) => onClose(o),
98
+ activeOverride,
99
+ () => removeOverride()
100
+ );
57
101
 
58
102
  const iconInfo = showInfo ? ICON_TIMES_CIRCLE : ICON_INFO_CIRCLE;
59
103
  const style = {};
@@ -88,9 +132,39 @@ class FieldWrapper extends React.PureComponent<IFieldWrapperProps, IFieldWrapper
88
132
  }
89
133
 
90
134
  public render() {
91
- const { label, width, customClass, header } = this.props;
135
+ const {
136
+ label,
137
+ width,
138
+ header,
139
+ propKey,
140
+ override,
141
+ inventory,
142
+ type,
143
+ customClass,
144
+ buttonGroup,
145
+ previewMultiplier
146
+ } = this.props;
92
147
  const labelJSX = this.renderLabel();
93
148
 
149
+ const { hasOverride, previewItem } = getOverrideHandler(propKey, override, inventory);
150
+
151
+ const className = hasOverride ? `${customClass} override_variable ${type}` : customClass;
152
+
153
+ const children = () => {
154
+ if (hasOverride && !buttonGroup) {
155
+ return (
156
+ <ControlledList
157
+ items={[previewItem]}
158
+ removable={true}
159
+ type={type}
160
+ previewMultiplier={previewMultiplier}
161
+ />
162
+ );
163
+ } else {
164
+ return this.props.children;
165
+ }
166
+ };
167
+
94
168
  const style = {};
95
169
  let fieldProps = {};
96
170
  if (!label) {
@@ -104,13 +178,13 @@ class FieldWrapper extends React.PureComponent<IFieldWrapperProps, IFieldWrapper
104
178
  <>
105
179
  {header && this.renderButtons()}
106
180
  <div
107
- className={`form-field ${customClass} ${this.getLabelClass()}`}
181
+ className={`form-field ${className} ${this.getLabelClass()}`}
108
182
  style={style}>
109
183
  {labelJSX}
110
184
  <div
111
185
  className={`form-field-content ${this.getLabelClass()}`}
112
186
  {...fieldProps}>
113
- {this.props.children}
187
+ {children()}
114
188
  {!header && this.renderButtons()}
115
189
  </div>
116
190
  {renderTooltip(this.tooltipId, this.props.tooltip)}
@@ -0,0 +1,78 @@
1
+ import FieldWrapper from '../field-wrapper/FieldWrapper';
2
+ import React from 'react';
3
+ import FontPicker from '../font-picker/FontPicker';
4
+ import { fontField } from '../../constants/copy';
5
+ import { DEFAULT_FONTS } from '../../constants/fonts';
6
+
7
+ interface IFontFieldProps {
8
+ font: string;
9
+ availableFonts: any[];
10
+ apiKey: string;
11
+ onChange: (font: string) => void;
12
+ width?: string | number;
13
+ labelPosition?: string;
14
+ label?: any;
15
+
16
+ override?: any;
17
+ showCopyPropIds?: boolean;
18
+ propKey?: string;
19
+ setOverride?(e): void;
20
+ removeOverride?(): void;
21
+ inventory?: any;
22
+ onClose?(e: boolean): void;
23
+ activeOverride: string;
24
+ }
25
+
26
+ const FontField = (props: IFontFieldProps) => {
27
+ const {
28
+ font,
29
+ availableFonts,
30
+ apiKey,
31
+ onChange,
32
+ width,
33
+ labelPosition,
34
+ label,
35
+ override,
36
+ showCopyPropIds,
37
+ propKey,
38
+ setOverride,
39
+ removeOverride,
40
+ inventory,
41
+ onClose,
42
+ activeOverride
43
+ } = props;
44
+
45
+ const customAvailableFonts = availableFonts.map((asset) => asset.name);
46
+ const standardFonts = DEFAULT_FONTS.map((f) => f.name);
47
+ const availableAssets = [...standardFonts, ...customAvailableFonts].sort();
48
+ const fontCheck = availableAssets.includes(font);
49
+ const fontValue = fontCheck ? font : fontField.fontNotFound;
50
+
51
+ return (
52
+ <FieldWrapper
53
+ customClass='font-field'
54
+ label={label}
55
+ labelPosition={labelPosition}
56
+ width={width}
57
+ propKey={propKey}
58
+ showCopyPropIds={showCopyPropIds}
59
+ inventory={inventory}
60
+ setOverride={setOverride}
61
+ onClose={onClose}
62
+ activeOverride={activeOverride}
63
+ removeOverride={removeOverride}
64
+ override={override}
65
+ type='text'>
66
+ <FontPicker
67
+ apiKey={apiKey}
68
+ activeFontFamily={fontValue}
69
+ families={availableAssets}
70
+ defaultFonts={DEFAULT_FONTS}
71
+ customFonts={availableFonts}
72
+ onChange={onChange}
73
+ />
74
+ </FieldWrapper>
75
+ );
76
+ };
77
+
78
+ export default FontField;
@@ -0,0 +1,63 @@
1
+ import React from 'react';
2
+ import { getConfigVariableButton } from '../config-variable-button/ConfigVariableButton';
3
+ import { getOverrideHandler } from '../../constants/variables';
4
+
5
+ interface IIconToggleProps {
6
+ selected: boolean;
7
+ onChange(selected: boolean): any;
8
+ icon: any;
9
+
10
+ override?: any;
11
+ showCopyPropIds?: boolean;
12
+ propKey?: string;
13
+ setOverride?(e): void;
14
+ removeOverride?(): void;
15
+ inventory?: any;
16
+ onClose?(e: boolean): void;
17
+ activeOverride?: string;
18
+ }
19
+
20
+ const IconToggle: React.FC<IIconToggleProps> = ({
21
+ icon,
22
+ selected,
23
+ onChange,
24
+ override,
25
+ showCopyPropIds,
26
+ propKey,
27
+ setOverride,
28
+ removeOverride,
29
+ inventory,
30
+ onClose,
31
+ activeOverride
32
+ }) => {
33
+ const content = selected ? icon : null;
34
+
35
+ const { hasOverride } = getOverrideHandler(propKey, override, inventory);
36
+
37
+ const inputField = () => {
38
+ if (hasOverride || showCopyPropIds) {
39
+ return getConfigVariableButton(
40
+ showCopyPropIds,
41
+ 'boolean',
42
+ inventory,
43
+ (o) => setOverride(o),
44
+ (o) => onClose(o),
45
+ icon,
46
+ activeOverride,
47
+ () => removeOverride()
48
+ );
49
+ } else {
50
+ return (
51
+ <div
52
+ className='icon-toggle'
53
+ onClick={() => onChange(!selected)}>
54
+ {content}
55
+ </div>
56
+ );
57
+ }
58
+ };
59
+
60
+ return inputField();
61
+ };
62
+
63
+ export default IconToggle;
@@ -18,6 +18,17 @@ interface INumberFieldProps {
18
18
  max?: number;
19
19
  onBlur?(e): void;
20
20
  focusOnMount?: boolean;
21
+
22
+ override?: any;
23
+ showCopyPropIds?: boolean;
24
+ propKey?: string;
25
+ setOverride?(e): void;
26
+ removeOverride?(): void;
27
+ inventory?: any;
28
+ onClose?(e: boolean): void;
29
+ activeOverride?: string;
30
+
31
+ previewMultiplier?: number;
21
32
  }
22
33
 
23
34
  interface INumberFieldState {
@@ -122,17 +133,24 @@ class NumberField extends React.PureComponent<INumberFieldProps, INumberFieldSta
122
133
  let error: string = null;
123
134
 
124
135
  const {
125
- label,
126
136
  placeholder,
127
137
  width,
128
138
  readOnly,
129
- buttons,
130
139
  tooltip,
131
140
  info,
132
141
  labelPosition,
133
142
  labelWidth,
134
143
  min,
135
- max
144
+ max,
145
+ showCopyPropIds,
146
+ propKey,
147
+ override,
148
+ inventory,
149
+ setOverride,
150
+ removeOverride,
151
+ onClose,
152
+ activeOverride,
153
+ previewMultiplier
136
154
  } = this.props;
137
155
  let value: any = this.state.value;
138
156
  if (value === null) {
@@ -154,15 +172,23 @@ class NumberField extends React.PureComponent<INumberFieldProps, INumberFieldSta
154
172
  return (
155
173
  <FieldWrapper
156
174
  customClass={`number-field ${this.state.error ? 'invalid' : ''}`}
157
- // draggableValue = {true}
158
- // onDrag = {(v)=>this.handleLabelDrag(v)}
159
- label={label}
175
+ label={this.props.label}
160
176
  tooltip={tooltip}
161
- buttons={buttons}
177
+ buttons={this.props.buttons}
162
178
  info={error}
163
179
  labelPosition={labelPosition}
164
180
  labelWidth={labelWidth}
165
- width={width}>
181
+ width={width}
182
+ propKey={propKey}
183
+ showCopyPropIds={showCopyPropIds}
184
+ inventory={inventory}
185
+ setOverride={setOverride}
186
+ onClose={onClose}
187
+ activeOverride={activeOverride}
188
+ removeOverride={removeOverride}
189
+ override={override}
190
+ type='number'
191
+ previewMultiplier={previewMultiplier}>
166
192
  <input
167
193
  ref={this.inputRef}
168
194
  type='number'
@@ -23,6 +23,15 @@ interface ISelectFieldProps {
23
23
  showCopy?: boolean;
24
24
  onNotification?(e): void;
25
25
  onError?(e): void;
26
+
27
+ override?: any;
28
+ showCopyPropIds?: boolean;
29
+ propKey?: string;
30
+ setOverride?(e): void;
31
+ removeOverride?(): void;
32
+ inventory?: any;
33
+ onClose?(e: boolean): void;
34
+ activeOverride?: string;
26
35
  }
27
36
 
28
37
  class SelectField extends React.PureComponent<ISelectFieldProps> {
@@ -68,7 +77,6 @@ class SelectField extends React.PureComponent<ISelectFieldProps> {
68
77
 
69
78
  public render() {
70
79
  const {
71
- label,
72
80
  showCopy,
73
81
  options,
74
82
  value,
@@ -80,7 +88,15 @@ class SelectField extends React.PureComponent<ISelectFieldProps> {
80
88
  info,
81
89
  labelPosition,
82
90
  labelWidth,
83
- disableFirst
91
+ disableFirst,
92
+ propKey,
93
+ override,
94
+ inventory,
95
+ setOverride,
96
+ removeOverride,
97
+ onClose,
98
+ showCopyPropIds,
99
+ activeOverride
84
100
  } = this.props;
85
101
 
86
102
  const selectValue = value === null || value === undefined ? '' : value;
@@ -147,13 +163,22 @@ class SelectField extends React.PureComponent<ISelectFieldProps> {
147
163
  return (
148
164
  <FieldWrapper
149
165
  customClass='select-field'
150
- label={label}
166
+ label={this.props.label}
151
167
  tooltip={tooltip}
152
168
  buttons={btns}
153
169
  info={info}
154
170
  labelPosition={labelPosition}
155
171
  labelWidth={labelWidth}
156
- width={width}>
172
+ width={width}
173
+ propKey={propKey}
174
+ showCopyPropIds={showCopyPropIds}
175
+ inventory={inventory}
176
+ setOverride={setOverride}
177
+ onClose={onClose}
178
+ activeOverride={activeOverride}
179
+ removeOverride={removeOverride}
180
+ override={override}
181
+ type='text'>
157
182
  <select
158
183
  value={selectValue}
159
184
  onChange={(e) => this.onChange(e)}
@@ -17,6 +17,17 @@ interface ISliderFieldProps {
17
17
  labelPosition?: string;
18
18
  labelWidth?: string | number;
19
19
  enabledToggle?: boolean;
20
+
21
+ override?: any;
22
+ showCopyPropIds?: boolean;
23
+ propKey?: string;
24
+ setOverride?(e): void;
25
+ removeOverride?(): void;
26
+ inventory?: any;
27
+ onClose?(e: boolean): void;
28
+ activeOverride?: string;
29
+
30
+ previewMultiplier?: number;
20
31
  }
21
32
 
22
33
  interface ISliderFieldState {
@@ -92,7 +103,16 @@ class SliderField extends React.PureComponent<ISliderFieldProps, ISliderFieldSta
92
103
  info,
93
104
  labelPosition,
94
105
  labelWidth,
95
- enabledToggle
106
+ enabledToggle,
107
+ propKey,
108
+ showCopyPropIds,
109
+ inventory,
110
+ setOverride,
111
+ onClose,
112
+ activeOverride,
113
+ removeOverride,
114
+ override,
115
+ previewMultiplier
96
116
  } = this.props;
97
117
  const { tempValue } = this.state;
98
118
  const valueSet = value !== null && value !== undefined;
@@ -109,7 +129,17 @@ class SliderField extends React.PureComponent<ISliderFieldProps, ISliderFieldSta
109
129
  info={info}
110
130
  labelPosition={labelPosition}
111
131
  labelWidth={labelWidth}
112
- width={width}>
132
+ width={width}
133
+ propKey={propKey}
134
+ showCopyPropIds={showCopyPropIds}
135
+ inventory={inventory}
136
+ setOverride={setOverride}
137
+ onClose={onClose}
138
+ activeOverride={activeOverride}
139
+ removeOverride={removeOverride}
140
+ override={override}
141
+ type='number'
142
+ previewMultiplier={previewMultiplier}>
113
143
  {enabledToggle && (
114
144
  <div
115
145
  className='checkbox'
@@ -0,0 +1,80 @@
1
+ import React from 'react';
2
+ import ReactTextareaAutocomplete from '@imposium-hub/react-textarea-autocomplete';
3
+ import FieldWrapper from '../field-wrapper/FieldWrapper';
4
+ import Spinner from '../spinner/Spinner';
5
+
6
+ interface ITextAreaAutocompleteProps {
7
+ options: any;
8
+ variables: any;
9
+ varsData: any;
10
+ variableItem: any;
11
+ onChange?(e: any): void;
12
+ label?: any;
13
+
14
+ override?: any;
15
+ showCopyPropIds?: boolean;
16
+ propKey?: string;
17
+ setOverride?(e): void;
18
+ removeOverride?(): void;
19
+ inventory?: any;
20
+ onClose?(e: boolean): void;
21
+ activeOverride?: string;
22
+ }
23
+
24
+ const TextAreaAutocomplete = (props: ITextAreaAutocompleteProps) => {
25
+ const {
26
+ options,
27
+ showCopyPropIds,
28
+ inventory,
29
+ override,
30
+ setOverride,
31
+ removeOverride,
32
+ onClose,
33
+ propKey,
34
+ varsData,
35
+ variableItem,
36
+ onChange,
37
+ activeOverride,
38
+ label
39
+ } = props;
40
+
41
+ return (
42
+ <FieldWrapper
43
+ label={label}
44
+ labelPosition='top'
45
+ customClass='text-area-field autocomplete'
46
+ propKey={propKey}
47
+ showCopyPropIds={showCopyPropIds}
48
+ inventory={inventory}
49
+ setOverride={setOverride}
50
+ onClose={onClose}
51
+ activeOverride={activeOverride}
52
+ removeOverride={removeOverride}
53
+ override={override}
54
+ type='textarea'>
55
+ <ReactTextareaAutocomplete
56
+ key='text-autocomplete'
57
+ onChange={(e) => onChange(e.target.value)}
58
+ value={options['content']}
59
+ loadingComponent={() => <Spinner />}
60
+ movePopupAsYouType
61
+ minChar={0}
62
+ tabOrEnter={true}
63
+ trigger={{
64
+ '{': {
65
+ dataProvider: (d) => {
66
+ const filtered = varsData.filter((f) =>
67
+ f.name.toLowerCase().startsWith(d)
68
+ );
69
+ return filtered;
70
+ },
71
+ component: variableItem,
72
+ output: (value) => `{{${value.name}}}`
73
+ }
74
+ }}
75
+ />
76
+ </FieldWrapper>
77
+ );
78
+ };
79
+
80
+ export default TextAreaAutocomplete;
@@ -0,0 +1,98 @@
1
+ import React from 'react';
2
+ import { ICON_TIMES, ICON_WARNING } from '../../constants/icons';
3
+ import { ControlListType } from '../controlled-list/ControlledList';
4
+ import Button from '../button/Button';
5
+ import { renderTooltip, renderTooltipProps } from '../Tooltip';
6
+ import { generateUUID } from '../../Util';
7
+
8
+ interface IVariableDropDownProps {
9
+ returnVariables: boolean;
10
+ type: ControlListType;
11
+ inventory: any;
12
+ setOverride?(e): void;
13
+ removeOverride?(): void;
14
+ activeOverride?: string;
15
+ }
16
+
17
+ const VariableDropDown: React.FC<IVariableDropDownProps> = (props: IVariableDropDownProps) => {
18
+ const { returnVariables, inventory, setOverride, removeOverride, activeOverride } = props;
19
+
20
+ const type = props.type === 'textarea' ? 'text' : props.type;
21
+ const include = type ? [type.toLowerCase()] : [];
22
+
23
+ const variableOptions = [];
24
+
25
+ if (returnVariables) {
26
+ for (const key in inventory) {
27
+ if (inventory.hasOwnProperty(key)) {
28
+ const variable = inventory[key];
29
+
30
+ if (include.indexOf(variable.type.toLowerCase()) !== -1 || include.length === 0) {
31
+ variableOptions.push(variable);
32
+ }
33
+ }
34
+ }
35
+
36
+ const warningTooltipId = `imposium-button-${generateUUID()}`;
37
+ const warning = (
38
+ <div
39
+ className='warning'
40
+ {...renderTooltipProps(warningTooltipId, 'No variable preview')}>
41
+ {ICON_WARNING}
42
+ {renderTooltip(warningTooltipId, 'No variable preview')}
43
+ </div>
44
+ );
45
+
46
+ const removeButton = (
47
+ <div className='buttons'>
48
+ <Button
49
+ onClick={() => removeOverride()}
50
+ size='small'
51
+ style='subtle'
52
+ color='danger'>
53
+ {ICON_TIMES}
54
+ </Button>
55
+ </div>
56
+ );
57
+
58
+ const variableOption = () => {
59
+ const options = variableOptions.map((variable) => {
60
+ const hasPreviewItem =
61
+ variable.previewItem.src !== null && variable.previewItem.src !== undefined;
62
+
63
+ const className = `variable-name ${
64
+ activeOverride === variable.name ? 'active' : ''
65
+ }`;
66
+
67
+ const showRemoveButton = activeOverride === variable.name ? removeButton : null;
68
+ const showWarning = !hasPreviewItem && warning;
69
+
70
+ const onClickHandler = () => {
71
+ if (activeOverride === variable.name) return;
72
+ setOverride(variable);
73
+ };
74
+
75
+ return (
76
+ <div
77
+ className='color-options-menu'
78
+ key={variable.id.toString()}>
79
+ <div
80
+ className='color-option-list'
81
+ onClick={onClickHandler}>
82
+ <div className={className}>
83
+ <p>{variable.name}</p>
84
+ {showRemoveButton}
85
+ {showWarning}
86
+ </div>
87
+ </div>
88
+ </div>
89
+ );
90
+ });
91
+
92
+ return options;
93
+ };
94
+ return <>{variableOption()}</>;
95
+ }
96
+ };
97
+
98
+ export default VariableDropDown;
@@ -287,3 +287,7 @@ export const confirm: any = {
287
287
  no: 'No',
288
288
  cancel: 'Cancel'
289
289
  };
290
+
291
+ export const fontField = {
292
+ fontNotFound: 'Font not found'
293
+ };