@imposium-hub/components 2.14.11 → 2.15.0-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.
- package/dist/cjs/components/app-wrapper/AppWrapper.d.ts +1 -6
- package/dist/cjs/components/app-wrapper/AppWrapper.js +4 -8
- package/dist/cjs/components/app-wrapper/AppWrapper.js.map +1 -1
- package/dist/cjs/components/app-wrapper/AppWrapperV2.d.ts +26 -0
- package/dist/cjs/components/app-wrapper/AppWrapperV2.js +266 -0
- package/dist/cjs/components/app-wrapper/AppWrapperV2.js.map +1 -0
- package/dist/cjs/components/app-wrapper/AppWrapperV3.d.ts +19 -0
- package/dist/cjs/components/app-wrapper/AppWrapperV3.js +195 -0
- package/dist/cjs/components/app-wrapper/AppWrapperV3.js.map +1 -0
- package/dist/cjs/components/app-wrapper/AppWrapper_BACKUP_73190.d.ts +27 -0
- package/dist/cjs/components/app-wrapper/AppWrapper_BACKUP_73190.js +243 -0
- package/dist/cjs/components/app-wrapper/AppWrapper_BACKUP_73190.js.map +1 -0
- package/dist/cjs/components/app-wrapper/AppWrapper_BASE_73190.d.ts +28 -0
- package/dist/cjs/components/app-wrapper/AppWrapper_BASE_73190.js +255 -0
- package/dist/cjs/components/app-wrapper/AppWrapper_BASE_73190.js.map +1 -0
- package/dist/cjs/components/app-wrapper/AppWrapper_LOCAL_73190.d.ts +27 -0
- package/dist/cjs/components/app-wrapper/AppWrapper_LOCAL_73190.js +243 -0
- package/dist/cjs/components/app-wrapper/AppWrapper_LOCAL_73190.js.map +1 -0
- package/dist/cjs/components/app-wrapper/AppWrapper_REMOTE_73190.d.ts +28 -0
- package/dist/cjs/components/app-wrapper/AppWrapper_REMOTE_73190.js +251 -0
- package/dist/cjs/components/app-wrapper/AppWrapper_REMOTE_73190.js.map +1 -0
- package/dist/cjs/components/assets/AssetsUploadMenu.js +5 -5
- package/dist/cjs/components/auth-gate/AuthGate.d.ts +2 -0
- package/dist/cjs/components/auth-gate/AuthGate.js +105 -0
- package/dist/cjs/components/auth-gate/AuthGate.js.map +1 -0
- package/dist/cjs/components/change-report/ChangeReportTree.d.ts +10 -0
- package/dist/cjs/components/change-report/ChangeReportTree.js +95 -0
- package/dist/cjs/components/change-report/ChangeReportTree.js.map +1 -0
- package/dist/cjs/components/context-menu/AnimateComponent.d.ts +0 -1
- package/dist/cjs/components/context-menu/AnimateComponent.js.map +1 -1
- package/dist/cjs/components/context-menu/ContextMenu.d.ts +0 -1
- package/dist/cjs/components/context-menu/ContextMenu.js +6 -6
- package/dist/cjs/components/context-menu/ContextMenu.js.map +1 -1
- package/dist/cjs/components/context-menu/ContextMenuItem.d.ts +0 -1
- package/dist/cjs/components/context-menu/ContextMenuItem.js.map +1 -1
- package/dist/cjs/components/context-menu/ContextMenuTrigger.d.ts +0 -1
- package/dist/cjs/components/context-menu/ContextMenuTrigger.js.map +1 -1
- package/dist/cjs/components/context-menu/SubMenu.d.ts +0 -1
- package/dist/cjs/components/context-menu/SubMenu.js.map +1 -1
- package/dist/cjs/components/dropdown/{Dropdown.stories.js → dropdown.stories.js} +1 -1
- package/dist/cjs/components/dropdown/{Dropdown.stories.js.map → dropdown.stories.js.map} +1 -1
- package/dist/cjs/components/edit-guide-modal/EditGuideModal.d.ts +8 -0
- package/dist/cjs/components/edit-guide-modal/EditGuideModal.js +132 -0
- package/dist/cjs/components/edit-guide-modal/EditGuideModal.js.map +1 -0
- package/dist/cjs/components/edit-marker-modal/EditMarkerModal.d.ts +8 -0
- package/dist/cjs/components/edit-marker-modal/EditMarkerModal.js +104 -0
- package/dist/cjs/components/edit-marker-modal/EditMarkerModal.js.map +1 -0
- package/dist/cjs/components/error-message-preview/ErrorMessagePreview.d.ts +15 -0
- package/dist/cjs/components/error-message-preview/ErrorMessagePreview.js +91 -0
- package/dist/cjs/components/error-message-preview/ErrorMessagePreview.js.map +1 -0
- package/dist/cjs/components/feature-flag-wrapper/FeatureFlagWrapper.d.ts +7 -0
- package/dist/cjs/components/feature-flag-wrapper/FeatureFlagWrapper.js +48 -0
- package/dist/cjs/components/feature-flag-wrapper/FeatureFlagWrapper.js.map +1 -0
- package/dist/cjs/components/header/Header_BACKUP_73021.d.ts +33 -0
- package/dist/cjs/components/header/Header_BACKUP_73021.js +393 -0
- package/dist/cjs/components/header/Header_BACKUP_73021.js.map +1 -0
- package/dist/cjs/components/header/Header_BASE_73021.d.ts +29 -0
- package/dist/cjs/components/header/Header_BASE_73021.js +376 -0
- package/dist/cjs/components/header/Header_BASE_73021.js.map +1 -0
- package/dist/cjs/components/header/Header_LOCAL_73021.d.ts +33 -0
- package/dist/cjs/components/header/Header_LOCAL_73021.js +382 -0
- package/dist/cjs/components/header/Header_LOCAL_73021.js.map +1 -0
- package/dist/cjs/components/header/Header_REMOTE_73021.d.ts +30 -0
- package/dist/cjs/components/header/Header_REMOTE_73021.js +386 -0
- package/dist/cjs/components/header/Header_REMOTE_73021.js.map +1 -0
- package/dist/cjs/components/header/StoryDropdown.d.ts +6 -0
- package/dist/cjs/components/header/StoryDropdown.js +111 -0
- package/dist/cjs/components/header/StoryDropdown.js.map +1 -0
- package/dist/cjs/components/number-field/NumberField.d.ts +2 -3
- package/dist/cjs/components/number-field/NumberField.js +19 -23
- package/dist/cjs/components/number-field/NumberField.js.map +1 -1
- package/dist/cjs/components/portal/Portal.d.ts +0 -1
- package/dist/cjs/components/portal/Portal.js.map +1 -1
- package/dist/cjs/components/publish-wizard/PublishWizard.d.ts +5 -4
- package/dist/cjs/components/publish-wizard/PublishWizard.js +104 -38
- package/dist/cjs/components/publish-wizard/PublishWizard.js.map +1 -1
- package/dist/cjs/components/replace-files-modal/ReplaceFilesModal.d.ts +11 -0
- package/dist/cjs/components/replace-files-modal/ReplaceFilesModal.js +213 -0
- package/dist/cjs/components/replace-files-modal/ReplaceFilesModal.js.map +1 -0
- package/dist/cjs/components/service-icon/ServiceIcon.test.d.ts +0 -0
- package/dist/cjs/components/service-icon/ServiceIcon.test.js +1 -0
- package/dist/cjs/components/service-icon/ServiceIcon.test.js.map +1 -0
- package/dist/cjs/components/story-previewer/StoryPreviewer.js +2 -15
- package/dist/cjs/components/story-previewer/StoryPreviewer.js.map +1 -1
- package/dist/cjs/components/tabs/Tabs.d.ts +4 -12
- package/dist/cjs/components/tabs/Tabs.js +3 -21
- package/dist/cjs/components/tabs/Tabs.js.map +1 -1
- package/dist/cjs/components/tabs/Tabs.stories.d.ts +3 -1
- package/dist/cjs/components/tag/Tag.test.d.ts +0 -0
- package/dist/cjs/components/tag/Tag.test.js +1 -0
- package/dist/cjs/components/tag/Tag.test.js.map +1 -0
- package/dist/cjs/constants/copy.d.ts +9 -0
- package/dist/cjs/constants/copy.js +13 -2
- package/dist/cjs/constants/copy.js.map +1 -1
- package/dist/cjs/constants/snippets.d.ts +18 -0
- package/dist/cjs/constants/snippets.js +3 -0
- package/dist/cjs/constants/snippets.js.map +1 -0
- package/dist/cjs/index.d.ts +4 -2
- package/dist/cjs/index.js +4 -36
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/redux/actions/auth.d.ts +9 -0
- package/dist/cjs/redux/actions/auth.js +30 -0
- package/dist/cjs/redux/actions/auth.js.map +1 -0
- package/dist/cjs/redux/reducers/auth.d.ts +3 -0
- package/dist/cjs/redux/reducers/auth.js +67 -0
- package/dist/cjs/redux/reducers/auth.js.map +1 -0
- package/dist/cjs/services/API.d.ts +2 -0
- package/dist/cjs/services/API.js +6 -0
- package/dist/cjs/services/API.js.map +1 -1
- package/dist/cjs/services/Auth0.d.ts +18 -0
- package/dist/cjs/services/Auth0.js +102 -0
- package/dist/cjs/services/Auth0.js.map +1 -0
- package/dist/cjs/services/Session.d.ts +26 -0
- package/dist/cjs/services/Session.js +155 -0
- package/dist/cjs/services/Session.js.map +1 -0
- package/dist/cjs/utils/routing.d.ts +2 -4
- package/dist/cjs/utils/routing.js +4 -8
- package/dist/cjs/utils/routing.js.map +1 -1
- package/dist/esm/components/app-wrapper/AppWrapper.d.ts +1 -6
- package/dist/esm/components/app-wrapper/AppWrapper.js +5 -9
- package/dist/esm/components/app-wrapper/AppWrapper.js.map +1 -1
- package/dist/esm/components/app-wrapper/AppWrapperV2.d.ts +26 -0
- package/dist/esm/components/app-wrapper/AppWrapperV2.js +142 -0
- package/dist/esm/components/app-wrapper/AppWrapperV2.js.map +1 -0
- package/dist/esm/components/app-wrapper/AppWrapperV3.d.ts +19 -0
- package/dist/esm/components/app-wrapper/AppWrapperV3.js +88 -0
- package/dist/esm/components/app-wrapper/AppWrapperV3.js.map +1 -0
- package/dist/esm/components/app-wrapper/AppWrapper_BACKUP_73190.d.ts +27 -0
- package/dist/esm/components/app-wrapper/AppWrapper_BACKUP_73190.js +194 -0
- package/dist/esm/components/app-wrapper/AppWrapper_BACKUP_73190.js.map +1 -0
- package/dist/esm/components/app-wrapper/AppWrapper_BASE_73190.d.ts +28 -0
- package/dist/esm/components/app-wrapper/AppWrapper_BASE_73190.js +208 -0
- package/dist/esm/components/app-wrapper/AppWrapper_BASE_73190.js.map +1 -0
- package/dist/esm/components/app-wrapper/AppWrapper_LOCAL_73190.d.ts +27 -0
- package/dist/esm/components/app-wrapper/AppWrapper_LOCAL_73190.js +194 -0
- package/dist/esm/components/app-wrapper/AppWrapper_LOCAL_73190.js.map +1 -0
- package/dist/esm/components/app-wrapper/AppWrapper_REMOTE_73190.d.ts +28 -0
- package/dist/esm/components/app-wrapper/AppWrapper_REMOTE_73190.js +204 -0
- package/dist/esm/components/app-wrapper/AppWrapper_REMOTE_73190.js.map +1 -0
- package/dist/esm/components/assets/AssetsUploadMenu.js +5 -5
- package/dist/esm/components/auth-gate/AuthGate.d.ts +2 -0
- package/dist/esm/components/auth-gate/AuthGate.js +59 -0
- package/dist/esm/components/auth-gate/AuthGate.js.map +1 -0
- package/dist/esm/components/change-report/ChangeReportTree.d.ts +10 -0
- package/dist/esm/components/change-report/ChangeReportTree.js +42 -0
- package/dist/esm/components/change-report/ChangeReportTree.js.map +1 -0
- package/dist/esm/components/context-menu/AnimateComponent.d.ts +0 -1
- package/dist/esm/components/context-menu/AnimateComponent.js.map +1 -1
- package/dist/esm/components/context-menu/ContextMenu.d.ts +0 -1
- package/dist/esm/components/context-menu/ContextMenu.js +1 -2
- package/dist/esm/components/context-menu/ContextMenu.js.map +1 -1
- package/dist/esm/components/context-menu/ContextMenuItem.d.ts +0 -1
- package/dist/esm/components/context-menu/ContextMenuItem.js.map +1 -1
- package/dist/esm/components/context-menu/ContextMenuTrigger.d.ts +0 -1
- package/dist/esm/components/context-menu/ContextMenuTrigger.js.map +1 -1
- package/dist/esm/components/context-menu/SubMenu.d.ts +0 -1
- package/dist/esm/components/context-menu/SubMenu.js.map +1 -1
- package/dist/esm/components/dropdown/{Dropdown.stories.js → dropdown.stories.js} +1 -1
- package/dist/esm/components/dropdown/{Dropdown.stories.js.map → dropdown.stories.js.map} +1 -1
- package/dist/esm/components/edit-guide-modal/EditGuideModal.d.ts +8 -0
- package/dist/esm/components/edit-guide-modal/EditGuideModal.js +65 -0
- package/dist/esm/components/edit-guide-modal/EditGuideModal.js.map +1 -0
- package/dist/esm/components/edit-marker-modal/EditMarkerModal.d.ts +8 -0
- package/dist/esm/components/edit-marker-modal/EditMarkerModal.js +72 -0
- package/dist/esm/components/edit-marker-modal/EditMarkerModal.js.map +1 -0
- package/dist/esm/components/error-message-preview/ErrorMessagePreview.d.ts +15 -0
- package/dist/esm/components/error-message-preview/ErrorMessagePreview.js +35 -0
- package/dist/esm/components/error-message-preview/ErrorMessagePreview.js.map +1 -0
- package/dist/esm/components/feature-flag-wrapper/FeatureFlagWrapper.d.ts +7 -0
- package/dist/esm/components/feature-flag-wrapper/FeatureFlagWrapper.js +10 -0
- package/dist/esm/components/feature-flag-wrapper/FeatureFlagWrapper.js.map +1 -0
- package/dist/esm/components/header/Header_BACKUP_73021.d.ts +33 -0
- package/dist/esm/components/header/Header_BACKUP_73021.js +336 -0
- package/dist/esm/components/header/Header_BACKUP_73021.js.map +1 -0
- package/dist/esm/components/header/Header_BASE_73021.d.ts +29 -0
- package/dist/esm/components/header/Header_BASE_73021.js +322 -0
- package/dist/esm/components/header/Header_BASE_73021.js.map +1 -0
- package/dist/esm/components/header/Header_LOCAL_73021.d.ts +33 -0
- package/dist/esm/components/header/Header_LOCAL_73021.js +328 -0
- package/dist/esm/components/header/Header_LOCAL_73021.js.map +1 -0
- package/dist/esm/components/header/Header_REMOTE_73021.d.ts +30 -0
- package/dist/esm/components/header/Header_REMOTE_73021.js +329 -0
- package/dist/esm/components/header/Header_REMOTE_73021.js.map +1 -0
- package/dist/esm/components/header/StoryDropdown.d.ts +6 -0
- package/dist/esm/components/header/StoryDropdown.js +82 -0
- package/dist/esm/components/header/StoryDropdown.js.map +1 -0
- package/dist/esm/components/number-field/NumberField.d.ts +2 -3
- package/dist/esm/components/number-field/NumberField.js +19 -18
- package/dist/esm/components/number-field/NumberField.js.map +1 -1
- package/dist/esm/components/portal/Portal.d.ts +0 -1
- package/dist/esm/components/portal/Portal.js.map +1 -1
- package/dist/esm/components/publish-wizard/PublishWizard.d.ts +5 -4
- package/dist/esm/components/publish-wizard/PublishWizard.js +92 -38
- package/dist/esm/components/publish-wizard/PublishWizard.js.map +1 -1
- package/dist/esm/components/replace-files-modal/ReplaceFilesModal.d.ts +11 -0
- package/dist/esm/components/replace-files-modal/ReplaceFilesModal.js +141 -0
- package/dist/esm/components/replace-files-modal/ReplaceFilesModal.js.map +1 -0
- package/dist/esm/components/service-icon/ServiceIcon.test.d.ts +0 -0
- package/dist/esm/components/service-icon/ServiceIcon.test.js +1 -0
- package/dist/esm/components/service-icon/ServiceIcon.test.js.map +1 -0
- package/dist/esm/components/story-previewer/StoryPreviewer.js +2 -14
- package/dist/esm/components/story-previewer/StoryPreviewer.js.map +1 -1
- package/dist/esm/components/tabs/Tabs.d.ts +4 -12
- package/dist/esm/components/tabs/Tabs.js +4 -11
- package/dist/esm/components/tabs/Tabs.js.map +1 -1
- package/dist/esm/components/tabs/Tabs.stories.d.ts +3 -1
- package/dist/esm/components/tag/Tag.test.d.ts +0 -0
- package/dist/esm/components/tag/Tag.test.js +1 -0
- package/dist/esm/components/tag/Tag.test.js.map +1 -0
- package/dist/esm/constants/copy.d.ts +9 -0
- package/dist/esm/constants/copy.js +13 -2
- package/dist/esm/constants/copy.js.map +1 -1
- package/dist/esm/constants/snippets.d.ts +18 -0
- package/dist/esm/constants/snippets.js +2 -0
- package/dist/esm/constants/snippets.js.map +1 -0
- package/dist/esm/index.d.ts +4 -2
- package/dist/esm/index.js +3 -2
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/redux/actions/auth.d.ts +9 -0
- package/dist/esm/redux/actions/auth.js +25 -0
- package/dist/esm/redux/actions/auth.js.map +1 -0
- package/dist/esm/redux/reducers/auth.d.ts +3 -0
- package/dist/esm/redux/reducers/auth.js +27 -0
- package/dist/esm/redux/reducers/auth.js.map +1 -0
- package/dist/esm/services/API.d.ts +2 -0
- package/dist/esm/services/API.js +6 -0
- package/dist/esm/services/API.js.map +1 -1
- package/dist/esm/services/Auth0.d.ts +18 -0
- package/dist/esm/services/Auth0.js +68 -0
- package/dist/esm/services/Auth0.js.map +1 -0
- package/dist/esm/services/Session.d.ts +26 -0
- package/dist/esm/services/Session.js +107 -0
- package/dist/esm/services/Session.js.map +1 -0
- package/dist/esm/utils/routing.d.ts +2 -4
- package/dist/esm/utils/routing.js +3 -6
- package/dist/esm/utils/routing.js.map +1 -1
- package/dist/styles.css +130 -3
- package/dist/styles.less +215 -64
- package/less/components/assets.less +5 -6
- package/less/components/auth-gate.less +1 -1
- package/less/components/change-report.less +115 -0
- package/less/components/data-table.less +2 -2
- package/less/components/determinate-loader.less +2 -2
- package/less/components/font-preview.less +1 -1
- package/less/components/form-field.less +5 -5
- package/less/components/header.less +30 -30
- package/less/components/modal.less +2 -2
- package/less/components/player.less +2 -2
- package/less/components/publish-wizard.less +36 -0
- package/less/components/section.less +2 -2
- package/less/components/static-composition-editor.less +4 -4
- package/less/components/story-previewer.less +4 -4
- package/less/components/tabs.less +3 -3
- package/less/entry.less +1 -0
- package/package.json +13 -24
- package/src/components/app-wrapper/AppWrapper.tsx +10 -18
- package/src/components/assets/AssetsUploadMenu.tsx +5 -5
- package/src/components/change-report/ChangeReportTree.tsx +125 -0
- package/src/components/context-menu/AnimateComponent.tsx +0 -1
- package/src/components/context-menu/ContextMenu.tsx +13 -15
- package/src/components/context-menu/ContextMenuItem.tsx +0 -1
- package/src/components/context-menu/ContextMenuTrigger.tsx +0 -1
- package/src/components/context-menu/SubMenu.tsx +0 -1
- package/src/components/number-field/NumberField.tsx +24 -33
- package/src/components/portal/Portal.tsx +0 -1
- package/src/components/publish-wizard/PublishWizard.tsx +145 -46
- package/src/components/service-icon/ServiceIcon.test.tsx +0 -0
- package/src/components/story-previewer/StoryPreviewer.tsx +8 -21
- package/src/components/tabs/Tabs.tsx +8 -25
- package/src/components/tag/Tag.test.tsx +0 -0
- package/src/constants/copy.ts +16 -2
- package/src/constants/snippets.ts +25 -0
- package/src/index.ts +7 -2
- package/src/services/API.ts +8 -0
- package/src/utils/routing.ts +6 -10
- package/tsconfig.json +1 -1
- package/src/components/advanced-number-field/AdvancedNumberField.test.tsx +0 -724
- package/src/components/anchor-field/AnchorField.test.tsx +0 -130
- package/src/components/asset-details/AssetDetails.test.tsx +0 -494
- package/src/components/assets/AssetField.test.tsx +0 -449
- package/src/components/assets/AssetsTableAssetIdCell.test.tsx +0 -142
- package/src/components/assets/AssetsTableAssetIdFilter.test.tsx +0 -95
- package/src/components/assets/AssetsTableComplexTagCell.test.tsx +0 -161
- package/src/components/assets/AssetsTableDateCell.test.tsx +0 -106
- package/src/components/assets/AssetsTableDropzone.test.tsx +0 -132
- package/src/components/assets/AssetsTableDurationCell.test.tsx +0 -119
- package/src/components/assets/AssetsTableGlobalCell.test.tsx +0 -46
- package/src/components/assets/AssetsTableNameCell.test.tsx +0 -166
- package/src/components/assets/AssetsTableNameFilter.test.tsx +0 -95
- package/src/components/assets/AssetsTablePreviewCell.test.tsx +0 -191
- package/src/components/assets/AssetsTableRateCell.test.tsx +0 -87
- package/src/components/assets/AssetsTableSelectCell.test.tsx +0 -156
- package/src/components/assets/AssetsTableSelectFilter.test.tsx +0 -119
- package/src/components/assets/AssetsTableStatusCell.test.tsx +0 -60
- package/src/components/number-field/NumberField.test.tsx +0 -383
- package/src/components/text-field/TextField.test.tsx +0 -988
- package/src/test/setup.ts +0 -91
- package/src/test/utils.tsx +0 -44
- package/tsconfig.eslint.json +0 -8
- package/vitest.config.ts +0 -31
- /package/dist/cjs/components/dropdown/{Dropdown.stories.d.ts → dropdown.stories.d.ts} +0 -0
- /package/dist/esm/components/dropdown/{Dropdown.stories.d.ts → dropdown.stories.d.ts} +0 -0
- /package/src/components/dropdown/{Dropdown.stories.tsx → dropdown.stories.tsx} +0 -0
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@imposium-hub/components",
|
|
3
|
-
"version": "2.
|
|
3
|
+
"version": "2.15.0-0",
|
|
4
4
|
"description": "React & Typescript component / asset library for Imposium front-ends",
|
|
5
5
|
"main": "./dist/cjs/index.js",
|
|
6
6
|
"module": "./dist/esm/index.js",
|
|
@@ -22,11 +22,7 @@
|
|
|
22
22
|
"release-as": "bash scripts/release-as.sh",
|
|
23
23
|
"format": "prettier --write \"**/*.{,js,json,jsx,ts,tsx,md}\"",
|
|
24
24
|
"check-formatting": "prettier --check \"**/*.{,js,json,jsx,ts,tsx,md}\"",
|
|
25
|
-
"storybook": "npm run build && start-storybook -p 6066"
|
|
26
|
-
"test": "vitest",
|
|
27
|
-
"test:run": "vitest run",
|
|
28
|
-
"test:coverage": "vitest run --coverage",
|
|
29
|
-
"test:watch": "vitest --watch"
|
|
25
|
+
"storybook": "npm run build && start-storybook -p 6066"
|
|
30
26
|
},
|
|
31
27
|
"repository": {
|
|
32
28
|
"type": "git",
|
|
@@ -40,15 +36,15 @@
|
|
|
40
36
|
"homepage": "https://github.com/NickelMedia/Imposium-Hub-Components#readme",
|
|
41
37
|
"dependencies": {
|
|
42
38
|
"@imposium-hub/react-color": "^2.19.4",
|
|
43
|
-
"@imposium-hub/react-textarea-autocomplete": "^4.9.13-6",
|
|
44
39
|
"@innovid/feature-flags-react": "^1.1.0-6",
|
|
40
|
+
"@imposium-hub/react-textarea-autocomplete": "^4.9.13-6",
|
|
45
41
|
"ansi_up": "^5.1.0",
|
|
46
42
|
"cogo-toast": "^4.2.3",
|
|
47
43
|
"export-to-csv": "^0.2.1",
|
|
48
44
|
"file-saver": "^2.0.5",
|
|
49
45
|
"imposium-js-sdk": "^3.5.6",
|
|
50
46
|
"js-cookie": "^2.2.1",
|
|
51
|
-
"lodash": "^4.
|
|
47
|
+
"lodash": "^4.17.21",
|
|
52
48
|
"moize": "^6.1.0",
|
|
53
49
|
"moment": "^2.29.1",
|
|
54
50
|
"react-hotkeys-hook": "^4.4.1",
|
|
@@ -70,13 +66,13 @@
|
|
|
70
66
|
"axios": "^1.9.0",
|
|
71
67
|
"hotkeys-js": "^3.6.12",
|
|
72
68
|
"localforage": "^1.7.3",
|
|
73
|
-
"react": "^
|
|
69
|
+
"react": "^17.0.1",
|
|
74
70
|
"react-dnd": "^16.0.1",
|
|
75
71
|
"react-dnd-html5-backend": "^16.0.1",
|
|
76
|
-
"react-dom": "^
|
|
72
|
+
"react-dom": "^17.0.2",
|
|
77
73
|
"react-dropzone": "^10.1.6",
|
|
78
74
|
"react-redux": "^5.0.7",
|
|
79
|
-
"react-resize-detector": "^
|
|
75
|
+
"react-resize-detector": "^6.7.1",
|
|
80
76
|
"react-router": "^3.2.6",
|
|
81
77
|
"react-spinners": "^0.6.1",
|
|
82
78
|
"react-table": "^7.7.0",
|
|
@@ -103,14 +99,12 @@
|
|
|
103
99
|
"@storybook/addon-storysource": "^8.6.14",
|
|
104
100
|
"@storybook/react": "^8.6.14",
|
|
105
101
|
"@storybook/testing-library": "^0.2.1",
|
|
106
|
-
"@testing-library/react": "^16.3.2",
|
|
107
102
|
"@types/hoist-non-react-statics": "^3.3.1",
|
|
108
103
|
"@types/offscreencanvas": "^2019.6.4",
|
|
109
|
-
"@types/react": "^
|
|
104
|
+
"@types/react": "^17.0.37",
|
|
110
105
|
"@types/resize-observer-browser": "^0.1.5",
|
|
111
106
|
"@typescript-eslint/eslint-plugin": "^5.26.0",
|
|
112
107
|
"@typescript-eslint/parser": "^5.26.0",
|
|
113
|
-
"@vitest/coverage-v8": "^4.1.3",
|
|
114
108
|
"axios": "^1.9.0",
|
|
115
109
|
"concurrently": "^7.1.0",
|
|
116
110
|
"dpop": "^2.1.1",
|
|
@@ -120,20 +114,19 @@
|
|
|
120
114
|
"eslint-plugin-prefer-arrow": "^1.2.3",
|
|
121
115
|
"eslint-plugin-unused-imports": "^2.0.0",
|
|
122
116
|
"hotkeys-js": "^3.6.12",
|
|
123
|
-
"jsdom": "^29.0.2",
|
|
124
117
|
"less": "^4.1.2",
|
|
125
118
|
"less-plugin-clean-css": "^1.5.1",
|
|
126
119
|
"localforage": "^1.7.3",
|
|
127
120
|
"np": "^10.2.0",
|
|
128
121
|
"onchange": "^7.1.0",
|
|
129
122
|
"prettier": "^2.6.2",
|
|
130
|
-
"react": "^
|
|
123
|
+
"react": "^17.0.1",
|
|
131
124
|
"react-dnd": "^16.0.1",
|
|
132
125
|
"react-dnd-html5-backend": "^16.0.1",
|
|
133
|
-
"react-dom": "^
|
|
126
|
+
"react-dom": "^17.0.2",
|
|
134
127
|
"react-dropzone": "^10.1.6",
|
|
135
128
|
"react-redux": "^5.0.7",
|
|
136
|
-
"react-resize-detector": "^
|
|
129
|
+
"react-resize-detector": "^6.7.1",
|
|
137
130
|
"react-router": "^3.2.6",
|
|
138
131
|
"react-spinners": "^0.6.1",
|
|
139
132
|
"react-table": "^7.7.0",
|
|
@@ -142,17 +135,13 @@
|
|
|
142
135
|
"sb": "^8.6.14",
|
|
143
136
|
"smpte-timecode": "^1.2.3",
|
|
144
137
|
"storybook-dark-mode": "^3.0.3",
|
|
145
|
-
"typescript": "^5.3.3"
|
|
146
|
-
"vitest": "^4.1.3"
|
|
138
|
+
"typescript": "^5.3.3"
|
|
147
139
|
},
|
|
148
140
|
"eslintConfig": {
|
|
149
141
|
"root": true,
|
|
150
142
|
"extends": [
|
|
151
143
|
"@imposium-hub/eslint-config/typescript-react"
|
|
152
|
-
]
|
|
153
|
-
"parserOptions": {
|
|
154
|
-
"project": "./tsconfig.eslint.json"
|
|
155
|
-
}
|
|
144
|
+
]
|
|
156
145
|
},
|
|
157
146
|
"prettier": "@imposium-hub/prettier-config",
|
|
158
147
|
"overrides": {
|
|
@@ -5,18 +5,13 @@ import { ConfirmModal } from '../confirm-modal/ConfirmModal';
|
|
|
5
5
|
import { IImposiumAPI } from '../../services/API';
|
|
6
6
|
import { ICrmApi } from '../../services/CrmApi';
|
|
7
7
|
import { useAuth0 } from '@auth0/auth0-react';
|
|
8
|
-
import {
|
|
8
|
+
import { replaceRoute } from '../../utils/routing';
|
|
9
9
|
import { FontAwesomeIcon } from '@fortawesome/react-fontawesome';
|
|
10
10
|
import { faExclamationTriangle } from '@fortawesome/pro-light-svg-icons';
|
|
11
11
|
import { initPendo } from '../../utils/pendo';
|
|
12
12
|
import { TOKEN_TYPE, FlagsProvider } from '@innovid/feature-flags-react';
|
|
13
13
|
import { useMemo } from 'react';
|
|
14
14
|
|
|
15
|
-
export interface ICompatibleHistory {
|
|
16
|
-
push: (route: string) => void;
|
|
17
|
-
replace: (route: string) => void;
|
|
18
|
-
}
|
|
19
|
-
|
|
20
15
|
export interface IAppWrapperProps {
|
|
21
16
|
appLabel: string;
|
|
22
17
|
environment: string;
|
|
@@ -37,8 +32,6 @@ export interface IAppWrapperProps {
|
|
|
37
32
|
hideDocs?: boolean;
|
|
38
33
|
hideOrgPicker?: boolean;
|
|
39
34
|
growthBookId?: string;
|
|
40
|
-
history: ICompatibleHistory;
|
|
41
|
-
children?: React.ReactNode;
|
|
42
35
|
}
|
|
43
36
|
|
|
44
37
|
export const APP_WRAPPER_ERROR_STATES = {
|
|
@@ -69,16 +62,13 @@ export const AppWrapper: React.FC<IAppWrapperProps> = (props) => {
|
|
|
69
62
|
environment,
|
|
70
63
|
appLabel,
|
|
71
64
|
allowNoStories,
|
|
72
|
-
growthBookId
|
|
73
|
-
history
|
|
65
|
+
growthBookId
|
|
74
66
|
} = props;
|
|
75
67
|
const { isAuthenticated, isLoading, getAccessTokenSilently, loginWithRedirect, logout, user } =
|
|
76
68
|
useAuth0();
|
|
77
69
|
const [errorState, setErrorState] = React.useState(null);
|
|
78
70
|
const [auth0Token, setAuth0Token] = React.useState(null);
|
|
79
71
|
|
|
80
|
-
configureHistory(history);
|
|
81
|
-
|
|
82
72
|
React.useEffect(() => {
|
|
83
73
|
void getAccessTokenSilently().then((token) => {
|
|
84
74
|
if (token) {
|
|
@@ -189,10 +179,7 @@ export const AppWrapper: React.FC<IAppWrapperProps> = (props) => {
|
|
|
189
179
|
onAuthenticated(organization_id, story_id);
|
|
190
180
|
|
|
191
181
|
if (!hideStoryPicker) {
|
|
192
|
-
|
|
193
|
-
? `/${organization_id}/${story_id}`
|
|
194
|
-
: `/${organization_id}`;
|
|
195
|
-
replaceRoute(route);
|
|
182
|
+
replaceRoute(`/${organization_id}/${story_id}`);
|
|
196
183
|
} else {
|
|
197
184
|
replaceRoute(`/${organization_id}`);
|
|
198
185
|
}
|
|
@@ -288,7 +275,7 @@ export const AppWrapper: React.FC<IAppWrapperProps> = (props) => {
|
|
|
288
275
|
// If we're not loading, and we're not authenticated, call login, and cache story + org ID from URL if it's there
|
|
289
276
|
} else if (!isLoading && !isAuthenticated) {
|
|
290
277
|
void loginWithRedirect({
|
|
291
|
-
appState: { returnTo: window.location.
|
|
278
|
+
appState: { returnTo: window.location.href }
|
|
292
279
|
});
|
|
293
280
|
}
|
|
294
281
|
};
|
|
@@ -381,9 +368,14 @@ export const ERROR_DESCRIPTIONS = {
|
|
|
381
368
|
export interface AppWrappeErrorProps {
|
|
382
369
|
error: string;
|
|
383
370
|
email: string;
|
|
371
|
+
onCreateStory?: () => void;
|
|
384
372
|
}
|
|
385
373
|
|
|
386
|
-
export const AppWrapperErrors: React.FC<AppWrappeErrorProps> = ({
|
|
374
|
+
export const AppWrapperErrors: React.FC<AppWrappeErrorProps> = ({
|
|
375
|
+
error,
|
|
376
|
+
email,
|
|
377
|
+
onCreateStory
|
|
378
|
+
}) => {
|
|
387
379
|
return (
|
|
388
380
|
<div className='no-access'>
|
|
389
381
|
<FontAwesomeIcon
|
|
@@ -230,7 +230,7 @@ class AssetsUploadMenu extends React.PureComponent<IAssetsUploadMenuProps, IAsse
|
|
|
230
230
|
|
|
231
231
|
const delimiterSelector = tagByDelimiter && (
|
|
232
232
|
<SelectField
|
|
233
|
-
width='
|
|
233
|
+
width='35%'
|
|
234
234
|
options={DELIMITER_OPTIONS}
|
|
235
235
|
value={delimiter}
|
|
236
236
|
onChange={(c) => {
|
|
@@ -304,7 +304,7 @@ class AssetsUploadMenu extends React.PureComponent<IAssetsUploadMenuProps, IAsse
|
|
|
304
304
|
ref={this.menuRef}>
|
|
305
305
|
<div className='uploads-controls'>
|
|
306
306
|
<CheckboxField
|
|
307
|
-
width='
|
|
307
|
+
width='50%'
|
|
308
308
|
label={copy.uploads.autoTagDelimiter}
|
|
309
309
|
value={tagByDelimiter}
|
|
310
310
|
onChange={() =>
|
|
@@ -313,20 +313,20 @@ class AssetsUploadMenu extends React.PureComponent<IAssetsUploadMenuProps, IAsse
|
|
|
313
313
|
/>
|
|
314
314
|
{delimiterSelector}
|
|
315
315
|
<CheckboxField
|
|
316
|
-
width='
|
|
316
|
+
width='50%'
|
|
317
317
|
label={copy.uploads.manualTagging}
|
|
318
318
|
value={tagManually}
|
|
319
319
|
onChange={() => this.uploadsSetting({ tagManually: !tagManually })}
|
|
320
320
|
/>
|
|
321
321
|
<CheckboxField
|
|
322
|
-
width='
|
|
322
|
+
width='50%'
|
|
323
323
|
label={copy.uploads.autoTagFilname}
|
|
324
324
|
value={tagByFileName}
|
|
325
325
|
onChange={() => this.uploadsSetting({ tagByFileName: !tagByFileName })}
|
|
326
326
|
/>
|
|
327
327
|
{!fromCrM && (
|
|
328
328
|
<CheckboxField
|
|
329
|
-
width='
|
|
329
|
+
width='50%'
|
|
330
330
|
label={copy.uploads.assignToProjectInput}
|
|
331
331
|
info={copy.uploads.assignToProjectInfo}
|
|
332
332
|
value={!assignToStory}
|
|
@@ -0,0 +1,125 @@
|
|
|
1
|
+
import * as React from 'react';
|
|
2
|
+
import { IChangeReportNode, IChangeReportSection } from '../../constants/snippets';
|
|
3
|
+
import * as copy from '../../constants/copy';
|
|
4
|
+
|
|
5
|
+
interface IChangeReportTreeProps {
|
|
6
|
+
sections: IChangeReportSection[] | null;
|
|
7
|
+
defaultExpanded?: boolean;
|
|
8
|
+
emptyMessage?: string;
|
|
9
|
+
loadingMessage?: string;
|
|
10
|
+
}
|
|
11
|
+
|
|
12
|
+
interface IChangeReportNodeProps {
|
|
13
|
+
node: IChangeReportNode;
|
|
14
|
+
defaultExpanded: boolean;
|
|
15
|
+
depth: number;
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
const STATUS_LABELS: Record<IChangeReportNode['status'], string> = {
|
|
19
|
+
added: copy.publish.statusAdded,
|
|
20
|
+
removed: copy.publish.statusRemoved,
|
|
21
|
+
modified: copy.publish.statusModified
|
|
22
|
+
};
|
|
23
|
+
|
|
24
|
+
const ChangeReportNode: React.FC<IChangeReportNodeProps> = ({ node, defaultExpanded, depth }) => {
|
|
25
|
+
const [expanded, setExpanded] = React.useState(defaultExpanded);
|
|
26
|
+
|
|
27
|
+
const hasChildren = node.children && node.children.length > 0;
|
|
28
|
+
const hasValues = node.oldValue !== undefined || node.newValue !== undefined;
|
|
29
|
+
|
|
30
|
+
const oldDisplay =
|
|
31
|
+
node.oldValue === null || node.oldValue === '' || node.oldValue === undefined
|
|
32
|
+
? '*empty*'
|
|
33
|
+
: node.oldValue;
|
|
34
|
+
const newDisplay =
|
|
35
|
+
node.newValue === null || node.newValue === '' || node.newValue === undefined
|
|
36
|
+
? '*empty*'
|
|
37
|
+
: node.newValue;
|
|
38
|
+
|
|
39
|
+
return (
|
|
40
|
+
<div
|
|
41
|
+
className='change-report-node'
|
|
42
|
+
style={{ paddingLeft: depth * 16 }}>
|
|
43
|
+
<div className='change-report-node-row'>
|
|
44
|
+
{hasChildren && (
|
|
45
|
+
<span
|
|
46
|
+
className={`change-report-toggle ${
|
|
47
|
+
expanded ? 'change-report-toggle--expanded' : ''
|
|
48
|
+
}`}
|
|
49
|
+
onClick={() => setExpanded(!expanded)}>
|
|
50
|
+
▶
|
|
51
|
+
</span>
|
|
52
|
+
)}
|
|
53
|
+
{!hasChildren && <span className='change-report-toggle-placeholder' />}
|
|
54
|
+
<span className={`change-report-status change-report-status--${node.status}`}>
|
|
55
|
+
{STATUS_LABELS[node.status]}
|
|
56
|
+
</span>
|
|
57
|
+
<span className='change-report-label'>{node.label}</span>
|
|
58
|
+
{hasValues && (
|
|
59
|
+
<span className='change-report-values'>
|
|
60
|
+
<span className='change-report-value change-report-value--old'>
|
|
61
|
+
{oldDisplay}
|
|
62
|
+
</span>
|
|
63
|
+
<span className='change-report-value-arrow'>→</span>
|
|
64
|
+
<span className='change-report-value change-report-value--new'>
|
|
65
|
+
{newDisplay}
|
|
66
|
+
</span>
|
|
67
|
+
</span>
|
|
68
|
+
)}
|
|
69
|
+
</div>
|
|
70
|
+
{hasChildren && expanded && (
|
|
71
|
+
<div className='change-report-children'>
|
|
72
|
+
{node.children.map((child, i) => (
|
|
73
|
+
<ChangeReportNode
|
|
74
|
+
key={i}
|
|
75
|
+
node={child}
|
|
76
|
+
defaultExpanded={defaultExpanded}
|
|
77
|
+
depth={depth + 1}
|
|
78
|
+
/>
|
|
79
|
+
))}
|
|
80
|
+
</div>
|
|
81
|
+
)}
|
|
82
|
+
</div>
|
|
83
|
+
);
|
|
84
|
+
};
|
|
85
|
+
|
|
86
|
+
const ChangeReportTree: React.FC<IChangeReportTreeProps> = ({
|
|
87
|
+
sections,
|
|
88
|
+
defaultExpanded = true,
|
|
89
|
+
emptyMessage = copy.publish.noChangesMessage,
|
|
90
|
+
loadingMessage = copy.publish.loadingChangesMessage
|
|
91
|
+
}) => {
|
|
92
|
+
if (sections === null) {
|
|
93
|
+
return (
|
|
94
|
+
<div className='change-report-tree change-report-tree--loading'>{loadingMessage}</div>
|
|
95
|
+
);
|
|
96
|
+
}
|
|
97
|
+
|
|
98
|
+
if (sections.length === 0) {
|
|
99
|
+
return <div className='change-report-tree change-report-tree--empty'>{emptyMessage}</div>;
|
|
100
|
+
}
|
|
101
|
+
|
|
102
|
+
return (
|
|
103
|
+
<div className='change-report-tree'>
|
|
104
|
+
{sections.map((section, i) => (
|
|
105
|
+
<div
|
|
106
|
+
key={i}
|
|
107
|
+
className='change-report-section'>
|
|
108
|
+
<div className='change-report-section-heading'>{section.section}</div>
|
|
109
|
+
<div className='change-report-section-nodes'>
|
|
110
|
+
{section.nodes.map((node, j) => (
|
|
111
|
+
<ChangeReportNode
|
|
112
|
+
key={j}
|
|
113
|
+
node={node}
|
|
114
|
+
defaultExpanded={defaultExpanded}
|
|
115
|
+
depth={0}
|
|
116
|
+
/>
|
|
117
|
+
))}
|
|
118
|
+
</div>
|
|
119
|
+
</div>
|
|
120
|
+
))}
|
|
121
|
+
</div>
|
|
122
|
+
);
|
|
123
|
+
};
|
|
124
|
+
|
|
125
|
+
export default ChangeReportTree;
|
|
@@ -14,23 +14,20 @@ interface IContextMenuProps {
|
|
|
14
14
|
preventHideOnScroll?: boolean;
|
|
15
15
|
preventHideOnResize?: boolean;
|
|
16
16
|
animation?: string;
|
|
17
|
-
children: React.ReactNode;
|
|
18
17
|
}
|
|
19
18
|
|
|
20
|
-
const ContextMenu: React.FC<IContextMenuProps> = (
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
} = props;
|
|
33
|
-
|
|
19
|
+
const ContextMenu: React.FC<IContextMenuProps> = ({
|
|
20
|
+
id,
|
|
21
|
+
children,
|
|
22
|
+
appendTo,
|
|
23
|
+
hideOnLeave,
|
|
24
|
+
onMouseLeave,
|
|
25
|
+
onHide,
|
|
26
|
+
onShow,
|
|
27
|
+
preventHideOnScroll,
|
|
28
|
+
preventHideOnResize,
|
|
29
|
+
animation
|
|
30
|
+
}) => {
|
|
34
31
|
const contextMenuEl = useRef(null);
|
|
35
32
|
const [isVisible, setVisible] = useState(false);
|
|
36
33
|
const [top, setTop] = useState('');
|
|
@@ -175,6 +172,7 @@ const ContextMenu: React.FC<IContextMenuProps> = (props: IContextMenuProps) => {
|
|
|
175
172
|
};
|
|
176
173
|
|
|
177
174
|
export default ContextMenu;
|
|
175
|
+
|
|
178
176
|
ContextMenu.defaultProps = {
|
|
179
177
|
appendTo: null,
|
|
180
178
|
hideOnLeave: false,
|
|
@@ -2,20 +2,12 @@ import * as React from 'react';
|
|
|
2
2
|
import FieldWrapper from '../field-wrapper/FieldWrapper';
|
|
3
3
|
import { IToolTipConfig } from '../Tooltip';
|
|
4
4
|
|
|
5
|
-
export const validateNumInput = (val: number, min?: number, max?: number) => {
|
|
6
|
-
if ((min !== undefined && val < min) || (max !== undefined && val > max)) {
|
|
7
|
-
return false;
|
|
8
|
-
} else {
|
|
9
|
-
return true;
|
|
10
|
-
}
|
|
11
|
-
};
|
|
12
|
-
|
|
13
5
|
interface INumberFieldProps {
|
|
14
6
|
buttons?: any;
|
|
15
7
|
label?: any;
|
|
16
8
|
placeholder?: string;
|
|
17
9
|
readOnly?: boolean;
|
|
18
|
-
value: number
|
|
10
|
+
value: number;
|
|
19
11
|
tooltip?: IToolTipConfig | string;
|
|
20
12
|
width?: string | number;
|
|
21
13
|
onChange?(e): void;
|
|
@@ -60,47 +52,46 @@ class NumberField extends React.PureComponent<INumberFieldProps, INumberFieldSta
|
|
|
60
52
|
if (this.props.focusOnMount && this.inputRef.current) {
|
|
61
53
|
this.inputRef.current.focus();
|
|
62
54
|
}
|
|
63
|
-
this.setState(
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
() => {
|
|
68
|
-
this.validateValue(this.props.value);
|
|
69
|
-
}
|
|
70
|
-
);
|
|
55
|
+
this.setState({
|
|
56
|
+
error: false,
|
|
57
|
+
value: this.props.value
|
|
58
|
+
});
|
|
71
59
|
}
|
|
72
60
|
|
|
73
61
|
public componentDidUpdate(prevProps): void {
|
|
74
62
|
if (prevProps.value !== this.props.value) {
|
|
75
|
-
this.setState(
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
() => {
|
|
80
|
-
this.validateValue(this.props.value);
|
|
81
|
-
}
|
|
82
|
-
);
|
|
63
|
+
this.setState({
|
|
64
|
+
error: false,
|
|
65
|
+
value: this.props.value
|
|
66
|
+
});
|
|
83
67
|
}
|
|
84
68
|
}
|
|
85
69
|
|
|
86
|
-
private
|
|
70
|
+
private validate(e) {
|
|
87
71
|
const { max, min } = this.props;
|
|
88
|
-
const
|
|
89
|
-
this.setState({
|
|
72
|
+
const val = e.target.value;
|
|
73
|
+
this.setState({ value: val });
|
|
74
|
+
if (min || max) {
|
|
75
|
+
if (val < min || val > max) {
|
|
76
|
+
this.setState({ error: true });
|
|
77
|
+
} else {
|
|
78
|
+
this.setState({ error: false });
|
|
79
|
+
this.onChange(e);
|
|
80
|
+
}
|
|
81
|
+
} else {
|
|
82
|
+
this.onChange(e);
|
|
83
|
+
}
|
|
90
84
|
}
|
|
91
85
|
|
|
92
86
|
private onChange(e) {
|
|
93
87
|
let val = e.target.value;
|
|
94
|
-
|
|
95
|
-
this.validateValue(val);
|
|
96
|
-
|
|
97
88
|
if (val === '' || val === null) {
|
|
98
89
|
val = this.props.min;
|
|
99
90
|
} else {
|
|
100
91
|
val = parseFloat(val);
|
|
101
92
|
}
|
|
102
93
|
|
|
103
|
-
this.
|
|
94
|
+
this.props.onChange(val);
|
|
104
95
|
}
|
|
105
96
|
|
|
106
97
|
private onKeyDownHandler(e) {
|
|
@@ -210,7 +201,7 @@ class NumberField extends React.PureComponent<INumberFieldProps, INumberFieldSta
|
|
|
210
201
|
onKeyDown={(e) => this.onKeyDownHandler(e)}
|
|
211
202
|
onFocus={() => this.onSelectFocus()}
|
|
212
203
|
onBlur={(e) => this.onSelectBlur(e)}
|
|
213
|
-
onChange={(e) => this.
|
|
204
|
+
onChange={(e) => this.validate(e)}
|
|
214
205
|
/>
|
|
215
206
|
</FieldWrapper>
|
|
216
207
|
);
|