@cccsaurora/howler-ui 3.1.0-dev.1493 → 3.1.0-dev.1607
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/api/action/execute.d.ts +1 -1
- package/api/action/index.d.ts +10 -6
- package/api/action/index.js +5 -9
- package/api/action/operations.js +2 -2
- package/api/analytic/comments/index.d.ts +4 -6
- package/api/analytic/comments/react.d.ts +2 -2
- package/api/analytic/favourite.d.ts +2 -4
- package/api/analytic/index.d.ts +7 -4
- package/api/analytic/index.js +2 -2
- package/api/analytic/notebooks/index.d.ts +2 -4
- package/api/analytic/owner.d.ts +1 -1
- package/api/auth/apikey.d.ts +2 -2
- package/api/auth/login.d.ts +2 -2
- package/api/configs/index.d.ts +1 -1
- package/api/dossier.d.ts +16 -0
- package/api/{dossier/index.js → dossier.js} +6 -4
- package/api/help.d.ts +2 -2
- package/api/hit/assign.d.ts +6 -2
- package/api/hit/comments/index.d.ts +4 -6
- package/api/hit/comments/react.d.ts +2 -2
- package/api/hit/index.d.ts +3 -8
- package/api/hit/labels.d.ts +2 -2
- package/api/hit/overwrite.d.ts +1 -1
- package/api/hit/transition.d.ts +1 -1
- package/api/index.d.ts +6 -6
- package/api/index.js +7 -6
- package/api/notebook/environments.d.ts +1 -1
- package/api/notebook/index.d.ts +1 -1
- package/api/overview/index.d.ts +4 -4
- package/api/search/action.d.ts +1 -1
- package/api/search/analytic.d.ts +1 -1
- package/api/search/case.d.ts +1 -1
- package/api/search/count/hit.d.ts +1 -1
- package/api/search/dossier.d.ts +1 -1
- package/api/search/eql/hit.d.ts +1 -1
- package/api/search/explain/hit.d.ts +1 -1
- package/api/search/facet/hit.d.ts +1 -1
- package/api/search/fields/hit.js +1 -2
- package/api/search/fields/user.js +2 -4
- package/api/search/grouped/hit.d.ts +1 -1
- package/api/search/grouped/user.js +3 -0
- package/api/search/histogram/hit.d.ts +1 -1
- package/api/search/hit.d.ts +1 -1
- package/api/search/overview.d.ts +1 -1
- package/api/search/sigma/hit.d.ts +1 -1
- package/api/search/template.d.ts +1 -1
- package/api/search/user.d.ts +30 -2
- package/api/search/user.js +3 -0
- package/api/search/view.d.ts +1 -1
- package/api/socket/viewers.d.ts +1 -1
- package/api/socket/viewers.js +1 -1
- package/api/template/index.d.ts +3 -3
- package/api/template/index.js +2 -2
- package/api/user/avatar/index.d.ts +1 -1
- package/api/user/groups.d.ts +1 -1
- package/api/user/index.d.ts +2 -2
- package/api/user/whoami.d.ts +1 -1
- package/api/utils/createPermissionsApi.d.ts +10 -0
- package/api/utils/createPermissionsApi.js +10 -0
- package/api/v2/case/index.d.ts +4 -4
- package/api/v2/case/items.d.ts +3 -3
- package/api/v2/case/rules.d.ts +3 -3
- package/api/v2/fuzzy.d.ts +1 -1
- package/api/v2/search/facet.d.ts +1 -1
- package/api/v2/search/index.d.ts +1 -1
- package/api/view/favourite.d.ts +2 -4
- package/api/view/index.d.ts +9 -5
- package/api/view/index.js +3 -1
- package/branding/AppBrand.d.ts +2 -2
- package/branding/AppBrand.js +4 -6
- package/components/app/App.js +248 -51
- package/components/app/AppContainer.js +1 -1
- package/components/app/drawers/ApiKeyDrawer.js +13 -5
- package/components/app/drawers/AssignUserDrawer.js +11 -4
- package/components/app/hooks/useMatchers.d.ts +3 -3
- package/components/app/hooks/useMatchers.js +12 -12
- package/components/app/hooks/useMatchers.test.js +15 -14
- package/components/app/hooks/useTitle.js +8 -7
- package/components/app/providers/AnalyticProvider.d.ts +1 -1
- package/components/app/providers/AnalyticProvider.js +7 -4
- package/components/app/providers/ApiConfigProvider.d.ts +2 -1
- package/components/app/providers/ApiConfigProvider.js +12 -10
- package/components/app/providers/AppDrawerProvider.js +2 -2
- package/components/app/providers/AvatarProvider.js +18 -11
- package/components/app/providers/FavouritesProvider.js +56 -86
- package/components/app/providers/FieldProvider.js +1 -1
- package/components/app/providers/GridColumnsProvider.d.ts +1 -1
- package/components/app/providers/GridColumnsProvider.js +17 -4
- package/components/app/providers/GridColumnsProvider.test.js +2 -1
- package/components/app/providers/LocalStorageProvider.d.ts +2 -2
- package/components/app/providers/LocalStorageProvider.js +4 -3
- package/components/app/providers/ModalProvider.js +8 -1
- package/components/app/providers/OverviewProvider.js +10 -2
- package/components/app/providers/ParameterProvider.d.ts +7 -7
- package/components/app/providers/ParameterProvider.js +42 -5
- package/components/app/providers/ParameterProvider.test.js +1 -0
- package/components/app/providers/RecordProvider.js +7 -1
- package/components/app/providers/RecordSearchProvider.d.ts +1 -2
- package/components/app/providers/RecordSearchProvider.js +32 -23
- package/components/app/providers/RecordSearchProvider.test.js +2 -1
- package/components/app/providers/SearchResponseProvider.d.ts +9 -6
- package/components/app/providers/SearchResponseProvider.js +37 -19
- package/components/app/providers/SearchResponseProvider.test.js +37 -11
- package/components/app/providers/SocketProvider.js +6 -4
- package/components/app/providers/UserListProvider.d.ts +1 -1
- package/components/app/providers/ViewProvider.d.ts +2 -2
- package/components/app/providers/ViewProvider.js +22 -12
- package/components/app/providers/ViewProvider.test.js +2 -2
- package/components/app/providers/contextUtils.d.ts +1 -0
- package/components/app/providers/contextUtils.js +3 -0
- package/components/elements/Comment.d.ts +1 -1
- package/components/elements/Comment.js +11 -9
- package/components/elements/ContextMenu.js +1 -1
- package/components/elements/ContextMenu.test.js +2 -2
- package/components/elements/EditRow.d.ts +9 -4
- package/components/elements/EditRow.js +5 -4
- package/components/elements/MarkdownEditor.js +1 -1
- package/components/elements/MembershipManagement.test.js +178 -0
- package/components/elements/ObjectDetails.js +6 -6
- package/components/elements/ThemedEditor.js +17 -17
- package/components/elements/UserList.d.ts +2 -0
- package/components/elements/UserList.js +26 -18
- package/components/elements/UserList.test.js +24 -1
- package/components/elements/addons/buttons/CustomButton.d.ts +1 -1
- package/components/elements/addons/buttons/CustomButton.js +2 -2
- package/components/elements/addons/buttons/CustomIconButton.d.ts +1 -1
- package/components/elements/addons/buttons/CustomIconButton.js +3 -3
- package/components/elements/addons/buttons/index.d.ts +1 -1
- package/components/elements/addons/layout/FlexOne.d.ts +2 -2
- package/components/elements/addons/layout/FlexOne.test.js +1 -0
- package/components/elements/addons/layout/FlexPort.d.ts +1 -1
- package/components/elements/addons/layout/FlexPort.js +9 -2
- package/components/elements/addons/layout/FlexVertical.d.ts +2 -2
- package/components/elements/addons/layout/FlexVertical.js +1 -1
- package/components/elements/addons/layout/vsbox/VSBox.d.ts +2 -2
- package/components/elements/addons/layout/vsbox/VSBox.js +5 -4
- package/components/elements/addons/layout/vsbox/VSBoxElement.d.ts +1 -1
- package/components/elements/addons/layout/vsbox/VSBoxHeader.js +4 -3
- package/components/elements/addons/lists/TuiList.d.ts +2 -2
- package/components/elements/addons/lists/TuiList.js +1 -1
- package/components/elements/addons/lists/TuiListBase.d.ts +2 -2
- package/components/elements/addons/lists/TuiListBase.js +4 -4
- package/components/elements/addons/lists/TuiListElement.d.ts +2 -2
- package/components/elements/addons/lists/TuiListElement.js +2 -2
- package/components/elements/addons/lists/TuiListMenu.d.ts +13 -37
- package/components/elements/addons/lists/TuiListMenu.js +8 -8
- package/components/elements/addons/lists/TuiListProvider.d.ts +2 -2
- package/components/elements/addons/lists/TuiListProvider.js +4 -4
- package/components/elements/addons/lists/hooks/useTuiListKeyboard.js +1 -1
- package/components/elements/addons/lists/table/TuiTable.d.ts +1 -1
- package/components/elements/addons/lists/table/TuiTable.js +1 -1
- package/components/elements/addons/lists/table/TuiTableBody.d.ts +1 -1
- package/components/elements/addons/lists/table/TuiTableBody.js +1 -1
- package/components/elements/addons/lists/table/TuiTableHead.d.ts +1 -1
- package/components/elements/addons/lists/table/TuiTableHead.js +1 -1
- package/components/elements/addons/lists/table/TuiTableHeader.d.ts +1 -1
- package/components/elements/addons/lists/table/TuiTableLayout.js +1 -1
- package/components/elements/addons/search/SearchPagination.d.ts +1 -1
- package/components/elements/addons/search/SearchPagination.test.js +1 -1
- package/components/elements/addons/search/SearchTotal.d.ts +1 -1
- package/components/elements/addons/search/phrase/Phrase.d.ts +2 -2
- package/components/elements/addons/search/phrase/Phrase.js +7 -7
- package/components/elements/addons/search/phrase/PhraseConsumer.d.ts +2 -2
- package/components/elements/addons/search/phrase/PhraseLexer.d.ts +1 -1
- package/components/elements/addons/search/phrase/PhraseLexer.js +6 -6
- package/components/elements/addons/search/phrase/WordLexer.test.js +1 -0
- package/components/elements/addons/search/phrase/index.d.ts +2 -2
- package/components/elements/addons/search/phrase/index.js +3 -2
- package/components/elements/addons/search/phrase/word/consumers/WhitespaceConsumer.d.ts +1 -1
- package/components/elements/addons/search/phrase/word/consumers/WhitespaceConsumer.js +1 -1
- package/components/elements/addons/search/phrase/word/consumers/WordConsumer.d.ts +1 -1
- package/components/elements/case/CaseCard.js +10 -4
- package/components/elements/case/CasePreview.js +1 -1
- package/components/elements/display/ActionButton.js +3 -1
- package/components/elements/display/ChipPopper.js +1 -1
- package/components/elements/display/ChipPopper.test.js +1 -0
- package/components/elements/display/Classification.js +6 -5
- package/components/elements/display/ClassificationChip.d.ts +2 -4
- package/components/elements/display/ClassificationChip.js +5 -3
- package/components/elements/display/DocumentationButton.js +1 -1
- package/components/elements/display/DocumentationButton.test.js +1 -1
- package/components/elements/display/HandlebarsMarkdown.js +2 -2
- package/components/elements/display/HowlerAvatar.d.ts +1 -0
- package/components/elements/display/HowlerAvatar.js +5 -4
- package/components/elements/display/HowlerAvatarHeader.js +2 -2
- package/components/elements/display/Image.test.js +1 -0
- package/components/elements/display/ItemManager.d.ts +6 -6
- package/components/elements/display/ItemManager.js +1 -1
- package/components/elements/display/Markdown.js +9 -3
- package/components/elements/display/Modal.js +3 -3
- package/components/elements/display/QueryResultText.js +1 -1
- package/components/elements/display/TextDivider.test.js +1 -0
- package/components/elements/display/TypingIndicator.d.ts +1 -1
- package/components/elements/display/UserPageWrapper.js +2 -2
- package/components/elements/display/handlebars/helpers.js +1 -1
- package/components/elements/display/json/JSONViewer.js +2 -2
- package/components/elements/display/markdownPlugins/tabs.js +4 -0
- package/components/elements/display/modals/CreateActionModal.js +1 -1
- package/components/elements/display/modals/RationaleModal.js +1 -2
- package/components/elements/display/modals/RationaleModal.test.js +9 -5
- package/components/elements/event/EventPreview.js +1 -1
- package/components/elements/hit/HitActions.js +5 -7
- package/components/elements/hit/HitBanner.js +4 -16
- package/components/elements/hit/HitBanner.test.js +11 -20
- package/components/elements/hit/HitLabels.js +23 -13
- package/components/elements/hit/HitLinks.js +4 -4
- package/components/elements/hit/HitNotebooks.js +28 -10
- package/components/elements/hit/HitOutline.js +9 -15
- package/components/elements/hit/HitOutline.test.js +5 -5
- package/components/elements/hit/HitOverview.js +3 -3
- package/components/elements/hit/HitPreview.d.ts +1 -1
- package/components/elements/hit/HitPreview.js +6 -7
- package/components/elements/hit/HitSummary.js +8 -8
- package/components/elements/hit/PivotTooltip.js +1 -1
- package/components/elements/hit/actions/ButtonActions.js +2 -2
- package/components/elements/hit/actions/DropdownActions.js +4 -4
- package/components/elements/hit/aggregate/HitGraph.js +28 -11
- package/components/elements/hit/elements/AnalyticLink.js +2 -2
- package/components/elements/hit/elements/AnalyticLink.test.js +1 -1
- package/components/elements/hit/elements/Assigned.js +1 -1
- package/components/elements/hit/elements/Assigned.test.js +1 -1
- package/components/elements/hit/elements/EscalationChip.js +2 -2
- package/components/elements/hit/elements/HitTimestamp.js +2 -2
- package/components/elements/hit/grid/AddColumnModal.js +2 -2
- package/components/elements/hit/grid/ColumnHeader.js +1 -1
- package/components/elements/hit/grid/RecordRow.js +1 -1
- package/components/elements/hit/grid/RecordTable.d.ts +4 -3
- package/components/elements/hit/grid/RecordTable.js +6 -6
- package/components/elements/hit/related/PivotLink.js +2 -2
- package/components/elements/hit/related/RelatedIcon.js +2 -2
- package/components/elements/hit/related/RelatedLink.js +1 -1
- package/components/elements/hit/related/RelatedRecords.js +1 -1
- package/components/elements/membership/Members.d.ts +6 -0
- package/components/elements/membership/Members.js +14 -0
- package/components/elements/membership/MembershipManagement.d.ts +9 -0
- package/components/elements/membership/MembershipManagement.js +119 -0
- package/components/elements/membership/types.d.ts +7 -0
- package/components/elements/membership/utils.d.ts +2 -0
- package/components/elements/membership/utils.js +6 -0
- package/components/elements/record/RecordComments.js +16 -10
- package/components/elements/record/RecordContextMenu.d.ts +2 -2
- package/components/elements/record/RecordContextMenu.js +11 -5
- package/components/elements/record/RecordContextMenu.test.js +14 -6
- package/components/elements/record/RecordRelated.js +2 -2
- package/components/elements/search/FuzzySearchBar.js +1 -1
- package/components/elements/view/LayoutToggle.d.ts +1 -1
- package/components/elements/view/ViewTitle.js +3 -4
- package/components/hooks/useHitActions.d.ts +1 -1
- package/components/hooks/useHitActions.js +25 -15
- package/components/hooks/useLocalStorage.d.ts +1 -1
- package/components/hooks/useLocalStorage.js +1 -1
- package/components/hooks/useLocalStorageItem.d.ts +11 -1
- package/components/hooks/useLocalStorageItem.js +7 -5
- package/components/hooks/useLocalStorageItem.test.js +23 -0
- package/components/hooks/useMyAccessibility.d.ts +7 -0
- package/components/hooks/useMyAccessibility.js +21 -0
- package/components/hooks/useMyApi.d.ts +1 -1
- package/components/hooks/useMyApi.js +4 -4
- package/components/hooks/useMyChart.d.ts +46 -48
- package/components/hooks/useMyChart.js +30 -9
- package/components/hooks/useMyCookies.d.ts +3 -0
- package/components/hooks/useMyCookies.js +8 -0
- package/components/hooks/useMyLocalStorage.d.ts +8 -2
- package/components/hooks/useMyLocalStorage.js +1 -1
- package/components/hooks/useMyPreferences.d.ts +1 -1
- package/components/hooks/useMyPreferences.js +93 -127
- package/components/hooks/useMyRouter.d.ts +2 -0
- package/components/hooks/useMyRouter.js +24 -0
- package/components/hooks/useMySearch.d.ts +1 -1
- package/components/hooks/useMySearch.js +17 -7
- package/components/hooks/useMySnackbar.js +1 -1
- package/components/hooks/useMyTheme.d.ts +1 -1
- package/components/hooks/useMyTheme.js +13 -8
- package/components/hooks/useMyTheme.test.js +11 -6
- package/components/hooks/useMyUser.d.ts +1 -1
- package/components/hooks/useMyUser.js +6 -5
- package/components/hooks/useMyUserFunctions.d.ts +2 -2
- package/components/hooks/useMyUserFunctions.js +14 -10
- package/components/hooks/useMyUserList.d.ts +1 -1
- package/components/hooks/useMyUtils.js +1 -1
- package/components/hooks/useParamState.js +5 -3
- package/components/hooks/useParamState.test.js +1 -1
- package/components/hooks/useRecordSelection.d.ts +4 -3
- package/components/hooks/useRecordSelection.js +5 -5
- package/components/hooks/useScrollRestoration.js +3 -3
- package/components/logins/Login.d.ts +1 -1
- package/components/logins/Login.js +4 -6
- package/components/logins/auth/OAuthLogin.js +1 -1
- package/components/logins/auth/UserPassLogin.d.ts +1 -1
- package/components/logins/hooks/useLogin.js +10 -6
- package/components/routes/403.js +1 -1
- package/components/routes/403.test.js +7 -3
- package/components/routes/404.js +1 -1
- package/components/routes/404.test.js +7 -3
- package/components/routes/ErrorBoundary.d.ts +2 -2
- package/components/routes/ErrorBoundary.js +2 -2
- package/components/routes/ErrorBoundary.test.js +1 -4
- package/components/routes/ErrorOccured.js +1 -1
- package/components/routes/ErrorOccured.test.js +7 -3
- package/components/routes/Logout.js +3 -4
- package/components/routes/Logout.test.js +12 -11
- package/components/routes/action/edit/ActionEditor.js +38 -30
- package/components/routes/action/shared/ActionReportDisplay.js +1 -1
- package/components/routes/action/shared/OperationEntry.js +2 -2
- package/components/routes/action/shared/OperationStep.js +12 -10
- package/components/routes/action/useMyActionFunctions.d.ts +3 -3
- package/components/routes/action/useMyActionFunctions.js +13 -13
- package/components/routes/action/view/ActionDetails.d.ts +1 -1
- package/components/routes/action/view/ActionDetails.js +46 -26
- package/components/routes/action/view/ActionSearch.js +11 -10
- package/components/routes/action/view/Integrations.js +2 -2
- package/components/routes/action/view/markdown/integrations.en.md.js +1 -1
- package/components/routes/action/view/markdown/integrations.fr.md.js +1 -1
- package/components/routes/admin/users/UserEditor.js +21 -8
- package/components/routes/admin/users/UserSearch.js +10 -9
- package/components/routes/advanced/QueryBuilder.js +17 -11
- package/components/routes/advanced/luceneCompletionProvider.js +42 -21
- package/components/routes/analytics/AnalyticComments.js +19 -14
- package/components/routes/analytics/AnalyticDetails.d.ts +1 -1
- package/components/routes/analytics/AnalyticDetails.js +20 -16
- package/components/routes/analytics/AnalyticHitComments.js +13 -6
- package/components/routes/analytics/AnalyticHitComments.test.js +5 -4
- package/components/routes/analytics/AnalyticNotebooks.js +5 -5
- package/components/routes/analytics/AnalyticOverview.js +28 -15
- package/components/routes/analytics/AnalyticOverviews.js +2 -2
- package/components/routes/analytics/AnalyticSearch.js +11 -10
- package/components/routes/analytics/AnalyticTemplates.js +3 -3
- package/components/routes/analytics/TriageSettings.d.ts +1 -1
- package/components/routes/analytics/TriageSettings.js +1 -1
- package/components/routes/analytics/widgets/Assessment.js +1 -1
- package/components/routes/analytics/widgets/Created.js +9 -9
- package/components/routes/analytics/widgets/Escalation.js +3 -3
- package/components/routes/analytics/widgets/Stacked.js +5 -5
- package/components/routes/analytics/widgets/Status.js +2 -2
- package/components/routes/cases/CaseViewer.js +1 -1
- package/components/routes/cases/CaseViewer.test.js +2 -2
- package/components/routes/cases/Cases.d.ts +1 -1
- package/components/routes/cases/Cases.js +8 -7
- package/components/routes/cases/constants.d.ts +3 -3
- package/components/routes/cases/detail/AlertPanel.js +1 -1
- package/components/routes/cases/detail/AlertPanel.test.js +4 -6
- package/components/routes/cases/detail/CaseDashboard.js +8 -4
- package/components/routes/cases/detail/CaseDashboard.test.js +2 -2
- package/components/routes/cases/detail/CaseDetails.js +7 -2
- package/components/routes/cases/detail/CaseDetails.test.js +1 -1
- package/components/routes/cases/detail/CaseObservables.js +5 -4
- package/components/routes/cases/detail/CaseObservables.test.js +1 -1
- package/components/routes/cases/detail/CaseOverview.js +2 -2
- package/components/routes/cases/detail/CaseRules.js +10 -6
- package/components/routes/cases/detail/CaseRules.test.js +2 -2
- package/components/routes/cases/detail/CaseSearch.js +5 -5
- package/components/routes/cases/detail/CaseSearch.test.js +2 -2
- package/components/routes/cases/detail/CaseSidebar.js +12 -7
- package/components/routes/cases/detail/CaseSidebar.test.js +5 -6
- package/components/routes/cases/detail/CaseTask.js +27 -15
- package/components/routes/cases/detail/CaseTask.test.js +8 -1
- package/components/routes/cases/detail/CaseTimeline.js +8 -8
- package/components/routes/cases/detail/CaseTimeline.test.js +6 -6
- package/components/routes/cases/detail/CreateRuleDialog.js +4 -4
- package/components/routes/cases/detail/CreateRuleDialog.test.js +2 -2
- package/components/routes/cases/detail/ItemPage.js +3 -3
- package/components/routes/cases/detail/MarkdownPage.test.js +0 -4
- package/components/routes/cases/detail/RelatedCasePanel.js +1 -1
- package/components/routes/cases/detail/RelatedCasePanel.test.js +4 -6
- package/components/routes/cases/detail/TaskPanel.js +8 -8
- package/components/routes/cases/detail/TaskPanel.test.js +3 -3
- package/components/routes/cases/detail/aggregates/CaseAggregate.js +1 -1
- package/components/routes/cases/detail/aggregates/SourceAggregate.js +3 -3
- package/components/routes/cases/detail/observables/Observable.js +4 -5
- package/components/routes/cases/detail/observables/Observable.test.js +1 -1
- package/components/routes/cases/detail/observables/ObservableTable.js +3 -3
- package/components/routes/cases/detail/observables/ObservableTable.test.js +1 -1
- package/components/routes/cases/detail/sidebar/CaseFolder.js +24 -20
- package/components/routes/cases/detail/sidebar/CaseFolder.test.js +1 -1
- package/components/routes/cases/detail/sidebar/CaseFolderContextMenu.js +4 -2
- package/components/routes/cases/detail/sidebar/CaseFolderContextMenu.test.js +3 -2
- package/components/routes/cases/detail/sidebar/FolderEntry.js +3 -3
- package/components/routes/cases/detail/sidebar/FolderEntry.test.js +3 -3
- package/components/routes/cases/detail/sidebar/types.d.ts +1 -1
- package/components/routes/cases/detail/sidebar/utils.js +1 -1
- package/components/routes/cases/detail/sidebar/utils.test.js +8 -8
- package/components/routes/cases/detail/utils.d.ts +1 -1
- package/components/routes/cases/detail/utils.js +3 -2
- package/components/routes/cases/hooks/useCase.js +14 -2
- package/components/routes/cases/modals/AddRecordToCaseModal.test.js +1 -1
- package/components/routes/cases/modals/AddToCaseModal.d.ts +1 -1
- package/components/routes/cases/modals/AddToCaseModal.js +2 -2
- package/components/routes/cases/modals/CreateCaseModal.test.js +1 -1
- package/components/routes/cases/modals/ResolveModal.js +8 -5
- package/components/routes/cases/modals/ResolveModal.test.js +5 -5
- package/components/routes/cases/modals/hooks.js +1 -2
- package/components/routes/cases/modals/types.d.ts +1 -1
- package/components/routes/cases/search/CaseAssigneeFilter.js +1 -1
- package/components/routes/cases/search/CaseAssigneeFilter.test.js +8 -3
- package/components/routes/cases/search/CaseStatusFilter.test.js +1 -0
- package/components/routes/cases/utils.d.ts +0 -1
- package/components/routes/cases/utils.js +4 -13
- package/components/routes/dossiers/DossierCard.js +3 -3
- package/components/routes/dossiers/DossierCard.test.js +6 -6
- package/components/routes/dossiers/DossierEditor.js +61 -25
- package/components/routes/dossiers/DossierEditor.test.js +16 -9
- package/components/routes/dossiers/Dossiers.d.ts +1 -1
- package/components/routes/dossiers/Dossiers.js +6 -5
- package/components/routes/dossiers/LeadEditor.d.ts +1 -1
- package/components/routes/dossiers/LeadEditor.js +2 -2
- package/components/routes/dossiers/LeadForm.js +2 -2
- package/components/routes/dossiers/PivotForm.d.ts +1 -1
- package/components/routes/dossiers/PivotForm.js +10 -9
- package/components/routes/events/EventViewer.js +1 -1
- package/components/routes/help/ActionDocumentation.js +2 -2
- package/components/routes/help/ActionIntroductionDocumentation.js +2 -2
- package/components/routes/help/ApiDocumentation.js +3 -4
- package/components/routes/help/AuthDocumentation.js +1 -1
- package/components/routes/help/ClientDocumentation.js +1 -1
- package/components/routes/help/Help.d.ts +1 -1
- package/components/routes/help/Help.js +5 -4
- package/components/routes/help/HitDocumentation.js +3 -3
- package/components/routes/help/HitLabelsDocumentation.js +12 -12
- package/components/routes/help/HitLinksDocumentation.js +2 -2
- package/components/routes/help/HitSchemaDocumentation.js +14 -8
- package/components/routes/help/NotebookDocumentation.js +1 -1
- package/components/routes/help/OverviewDocumentation.js +1 -1
- package/components/routes/help/RetentionDocumentation.js +3 -3
- package/components/routes/help/SearchDocumentation.js +6 -4
- package/components/routes/help/TemplateDocumentation.js +2 -2
- package/components/routes/help/ViewDocumentation.js +1 -1
- package/components/routes/help/markdown/en/views.md.js +1 -1
- package/components/routes/help/markdown/fr/views.md.js +1 -1
- package/components/routes/hits/search/InformationPane.js +8 -8
- package/components/routes/hits/search/QuerySettings.js +1 -1
- package/components/routes/hits/search/QuerySettings.test.js +8 -4
- package/components/routes/hits/search/RecordBrowser.js +12 -9
- package/components/routes/hits/search/RecordQuery.js +13 -10
- package/components/routes/hits/search/SearchPane.js +2 -3
- package/components/routes/hits/search/ViewLink.js +4 -4
- package/components/routes/hits/search/ViewLink.test.js +1 -0
- package/components/routes/hits/search/grid/RecordGrid.js +1 -1
- package/components/routes/hits/search/shared/CustomSort.js +3 -2
- package/components/routes/hits/search/shared/CustomSpan.js +9 -1
- package/components/routes/hits/search/shared/HitFilter.js +8 -3
- package/components/routes/hits/search/shared/HitSort.js +8 -6
- package/components/routes/hits/search/shared/IndexPicker.js +1 -1
- package/components/routes/hits/search/shared/LayoutSettings.js +1 -1
- package/components/routes/hits/search/shared/SearchActionMenu.d.ts +1 -1
- package/components/routes/hits/search/shared/SearchActionMenu.js +1 -1
- package/components/routes/hits/search/shared/SearchSpan.js +1 -1
- package/components/routes/hits/view/HitViewer.js +21 -11
- package/components/routes/hits/view/HitViewer.test.js +2 -2
- package/components/routes/home/AddNewCard.d.ts +2 -1
- package/components/routes/home/AddNewCard.js +7 -4
- package/components/routes/home/AnalyticCard.js +3 -3
- package/components/routes/home/EntryWrapper.js +1 -1
- package/components/routes/home/ViewCard.js +11 -7
- package/components/routes/home/ViewCard.test.js +3 -6
- package/components/routes/home/index.js +20 -17
- package/components/routes/overviews/OverviewCard.js +6 -2
- package/components/routes/overviews/OverviewViewer.d.ts +1 -1
- package/components/routes/overviews/OverviewViewer.js +48 -39
- package/components/routes/overviews/Overviews.d.ts +1 -1
- package/components/routes/overviews/Overviews.js +7 -6
- package/components/routes/overviews/markdownExtendedTokenProvider.test.js +1 -0
- package/components/routes/overviews/startingTemplate.js +1 -1
- package/components/routes/settings/ProfileSection.d.ts +1 -1
- package/components/routes/settings/ProfileSection.js +2 -2
- package/components/routes/settings/SecuritySection.d.ts +1 -1
- package/components/routes/settings/SecuritySection.js +2 -2
- package/components/routes/settings/Settings.js +6 -6
- package/components/routes/templates/TemplateCard.js +1 -1
- package/components/routes/templates/TemplateEditor.d.ts +1 -1
- package/components/routes/templates/TemplateEditor.js +3 -3
- package/components/routes/templates/TemplateViewer.d.ts +1 -1
- package/components/routes/templates/TemplateViewer.js +54 -52
- package/components/routes/templates/Templates.d.ts +1 -1
- package/components/routes/templates/Templates.js +10 -9
- package/components/routes/views/ViewComposer.js +38 -30
- package/components/routes/views/Views.d.ts +2 -1
- package/components/routes/views/Views.js +20 -14
- package/i18n.js +4 -0
- package/locales/en/translation.json +10 -0
- package/locales/fr/translation.json +10 -0
- package/models/entities/HowlerUser.d.ts +1 -1
- package/models/entities/generated/Action.d.ts +3 -1
- package/models/entities/generated/ApiType.d.ts +2 -3
- package/models/entities/generated/Dossier.d.ts +2 -0
- package/models/entities/generated/HowlerDossier.d.ts +2 -0
- package/models/entities/generated/Item.d.ts +2 -2
- package/models/entities/generated/Settings.d.ts +1 -1
- package/models/entities/generated/View.d.ts +2 -0
- package/package.json +102 -118
- package/plugins/HowlerPlugin.d.ts +9 -50
- package/plugins/HowlerPlugin.js +7 -113
- package/plugins/clue/Provider.js +2 -2
- package/plugins/clue/components/ClueLeadForm.js +2 -2
- package/plugins/clue/components/CluePivot.js +6 -7
- package/plugins/clue/components/CluePivotForm.js +26 -15
- package/plugins/clue/components/ClueTypography.js +2 -2
- package/plugins/clue/helpers.js +5 -5
- package/plugins/clue/index.d.ts +2 -2
- package/plugins/clue/index.js +1 -1
- package/plugins/clue/setup.js +1 -1
- package/plugins/clue/utils.d.ts +1 -1
- package/plugins/store.d.ts +26 -43
- package/plugins/store.js +2 -15
- package/rest/AxiosClient.js +3 -3
- package/rest/FetchClient.d.ts +1 -1
- package/rest/FetchClient.js +8 -5
- package/rest/FetchClient.test.js +7 -4
- package/rest/index.d.ts +4 -3
- package/setupTests.d.ts +3 -0
- package/tests/MockLocalStorage.js +2 -1
- package/tests/mocks.d.ts +2 -2
- package/tests/mocks.js +3 -3
- package/tests/server-handlers.js +1 -1
- package/utils/Throttler.js +1 -1
- package/utils/actionUtils.d.ts +1 -1
- package/utils/actionUtils.js +10 -6
- package/utils/classificationParser.js +56 -63
- package/utils/constants.d.ts +0 -17
- package/utils/constants.js +1 -18
- package/utils/exampleHit.d.ts +2 -0
- package/utils/exampleHit.js +18 -0
- package/utils/localStorage.d.ts +2 -2
- package/utils/localStorage.js +1 -1
- package/utils/menuUtils.d.ts +3 -89
- package/utils/menuUtils.js +66 -227
- package/utils/menuUtils.test.js +45 -181
- package/utils/sessionStorage.js +1 -1
- package/utils/sessionStorage.test.js +1 -0
- package/utils/stringUtils.d.ts +1 -1
- package/utils/utils.d.ts +30 -6
- package/utils/utils.js +66 -9
- package/utils/utils.test.js +1 -0
- package/utils/xsrf.d.ts +1 -1
- package/utils/xsrf.js +5 -10
- package/api/dossier/hit.d.ts +0 -2
- package/api/dossier/hit.js +0 -7
- package/api/dossier/index.d.ts +0 -9
- package/commons/components/app/AppConfigs.d.ts +0 -137
- package/commons/components/app/AppConstants.d.ts +0 -10
- package/commons/components/app/AppConstants.js +0 -10
- package/commons/components/app/AppContexts.d.ts +0 -105
- package/commons/components/app/AppContexts.js +0 -21
- package/commons/components/app/AppDefaults.d.ts +0 -6
- package/commons/components/app/AppDefaults.js +0 -40
- package/commons/components/app/AppNotificationService.d.ts +0 -6
- package/commons/components/app/AppNotificationService.js +0 -1
- package/commons/components/app/AppProvider.d.ts +0 -15
- package/commons/components/app/AppProvider.js +0 -41
- package/commons/components/app/AppSearchService.d.ts +0 -21
- package/commons/components/app/AppSearchService.js +0 -1
- package/commons/components/app/AppSkeleton.d.ts +0 -5
- package/commons/components/app/AppSkeleton.js +0 -152
- package/commons/components/app/AppUserService.d.ts +0 -17
- package/commons/components/app/AppUserService.js +0 -1
- package/commons/components/app/hooks/index.d.ts +0 -18
- package/commons/components/app/hooks/index.js +0 -18
- package/commons/components/app/hooks/useApp.d.ts +0 -1
- package/commons/components/app/hooks/useApp.js +0 -5
- package/commons/components/app/hooks/useAppBanner.d.ts +0 -1
- package/commons/components/app/hooks/useAppBanner.js +0 -6
- package/commons/components/app/hooks/useAppBar.d.ts +0 -1
- package/commons/components/app/hooks/useAppBar.js +0 -5
- package/commons/components/app/hooks/useAppBarHeight.d.ts +0 -2
- package/commons/components/app/hooks/useAppBarHeight.js +0 -22
- package/commons/components/app/hooks/useAppBarScrollTrigger.d.ts +0 -1
- package/commons/components/app/hooks/useAppBarScrollTrigger.js +0 -7
- package/commons/components/app/hooks/useAppBreadcrumbs.d.ts +0 -1
- package/commons/components/app/hooks/useAppBreadcrumbs.js +0 -5
- package/commons/components/app/hooks/useAppConfigs.d.ts +0 -59
- package/commons/components/app/hooks/useAppConfigs.js +0 -44
- package/commons/components/app/hooks/useAppLanguage.d.ts +0 -6
- package/commons/components/app/hooks/useAppLanguage.js +0 -17
- package/commons/components/app/hooks/useAppLayout.d.ts +0 -1
- package/commons/components/app/hooks/useAppLayout.js +0 -5
- package/commons/components/app/hooks/useAppLeftNav.d.ts +0 -1
- package/commons/components/app/hooks/useAppLeftNav.js +0 -5
- package/commons/components/app/hooks/useAppLogo.d.ts +0 -1
- package/commons/components/app/hooks/useAppLogo.js +0 -8
- package/commons/components/app/hooks/useAppNotification.d.ts +0 -1
- package/commons/components/app/hooks/useAppNotification.js +0 -5
- package/commons/components/app/hooks/useAppQuickSearch.d.ts +0 -1
- package/commons/components/app/hooks/useAppQuickSearch.js +0 -5
- package/commons/components/app/hooks/useAppSearchService.d.ts +0 -2
- package/commons/components/app/hooks/useAppSearchService.js +0 -5
- package/commons/components/app/hooks/useAppSitemap.d.ts +0 -16
- package/commons/components/app/hooks/useAppSitemap.js +0 -70
- package/commons/components/app/hooks/useAppSwitcher.d.ts +0 -1
- package/commons/components/app/hooks/useAppSwitcher.js +0 -5
- package/commons/components/app/hooks/useAppTheme.d.ts +0 -8
- package/commons/components/app/hooks/useAppTheme.js +0 -12
- package/commons/components/app/hooks/useAppUser.d.ts +0 -2
- package/commons/components/app/hooks/useAppUser.js +0 -5
- package/commons/components/app/providers/AppBarProvider.d.ts +0 -10
- package/commons/components/app/providers/AppBarProvider.js +0 -24
- package/commons/components/app/providers/AppBreadcrumbsProvider.d.ts +0 -6
- package/commons/components/app/providers/AppBreadcrumbsProvider.js +0 -43
- package/commons/components/app/providers/AppLayoutProvider.d.ts +0 -6
- package/commons/components/app/providers/AppLayoutProvider.js +0 -73
- package/commons/components/app/providers/AppLeftNavProvider.d.ts +0 -6
- package/commons/components/app/providers/AppLeftNavProvider.js +0 -22
- package/commons/components/app/providers/AppNotificationProvider.d.ts +0 -6
- package/commons/components/app/providers/AppNotificationProvider.js +0 -31
- package/commons/components/app/providers/AppQuickSearchProvider.d.ts +0 -8
- package/commons/components/app/providers/AppQuickSearchProvider.js +0 -19
- package/commons/components/app/providers/AppSearchServiceProvider.d.ts +0 -6
- package/commons/components/app/providers/AppSearchServiceProvider.js +0 -46
- package/commons/components/app/providers/AppSnackbarProvider.d.ts +0 -3
- package/commons/components/app/providers/AppSnackbarProvider.js +0 -15
- package/commons/components/app/providers/AppSwitcherProvider.d.ts +0 -6
- package/commons/components/app/providers/AppSwitcherProvider.js +0 -10
- package/commons/components/app/providers/AppUserProvider.d.ts +0 -8
- package/commons/components/app/providers/AppUserProvider.js +0 -12
- package/commons/components/breadcrumbs/BreadcrumbIcon.d.ts +0 -6
- package/commons/components/breadcrumbs/BreadcrumbIcon.js +0 -9
- package/commons/components/breadcrumbs/BreadcrumbLastItem.d.ts +0 -7
- package/commons/components/breadcrumbs/BreadcrumbLastItem.js +0 -19
- package/commons/components/breadcrumbs/BreadcrumbLinkItem.d.ts +0 -7
- package/commons/components/breadcrumbs/BreadcrumbLinkItem.js +0 -20
- package/commons/components/breadcrumbs/BreadcrumbList.d.ts +0 -11
- package/commons/components/breadcrumbs/BreadcrumbList.js +0 -44
- package/commons/components/breadcrumbs/Breadcrumbs.d.ts +0 -5
- package/commons/components/breadcrumbs/Breadcrumbs.js +0 -31
- package/commons/components/display/AppAvatar.d.ts +0 -8
- package/commons/components/display/AppAvatar.js +0 -18
- package/commons/components/display/AppInfoPanel.d.ts +0 -5
- package/commons/components/display/AppInfoPanel.js +0 -17
- package/commons/components/display/AppListEmpty.d.ts +0 -2
- package/commons/components/display/AppListEmpty.js +0 -5
- package/commons/components/display/AppToc.d.ts +0 -20
- package/commons/components/display/AppToc.js +0 -98
- package/commons/components/display/hooks/useAppColor.d.ts +0 -5
- package/commons/components/display/hooks/useAppColor.js +0 -10
- package/commons/components/leftnav/LeftNavDrawer.d.ts +0 -3
- package/commons/components/leftnav/LeftNavDrawer.js +0 -99
- package/commons/components/leftnav/LeftNavGroup.d.ts +0 -8
- package/commons/components/leftnav/LeftNavGroup.js +0 -55
- package/commons/components/leftnav/LeftNavItem.d.ts +0 -11
- package/commons/components/leftnav/LeftNavItem.js +0 -29
- package/commons/components/notification/FeedModels.d.ts +0 -64
- package/commons/components/notification/FeedModels.js +0 -94
- package/commons/components/notification/Notification.d.ts +0 -10
- package/commons/components/notification/Notification.js +0 -95
- package/commons/components/notification/elements/NotificationCloseButton.d.ts +0 -3
- package/commons/components/notification/elements/NotificationCloseButton.js +0 -6
- package/commons/components/notification/elements/NotificationContainer.d.ts +0 -16
- package/commons/components/notification/elements/NotificationContainer.js +0 -29
- package/commons/components/notification/elements/NotificationEndOfPage.d.ts +0 -5
- package/commons/components/notification/elements/NotificationEndOfPage.js +0 -36
- package/commons/components/notification/elements/NotificationError.d.ts +0 -2
- package/commons/components/notification/elements/NotificationError.js +0 -10
- package/commons/components/notification/elements/NotificationHeader.d.ts +0 -8
- package/commons/components/notification/elements/NotificationHeader.js +0 -18
- package/commons/components/notification/elements/NotificationItems.d.ts +0 -12
- package/commons/components/notification/elements/NotificationItems.js +0 -12
- package/commons/components/notification/elements/NotificationSkeleton.d.ts +0 -2
- package/commons/components/notification/elements/NotificationSkeleton.js +0 -12
- package/commons/components/notification/elements/NotificationTopNavButton.d.ts +0 -9
- package/commons/components/notification/elements/NotificationTopNavButton.js +0 -9
- package/commons/components/notification/elements/item/NotificationItem.d.ts +0 -5
- package/commons/components/notification/elements/item/NotificationItem.js +0 -25
- package/commons/components/notification/elements/item/NotificationItemAuthor.d.ts +0 -5
- package/commons/components/notification/elements/item/NotificationItemAuthor.js +0 -31
- package/commons/components/notification/elements/item/NotificationItemContent.d.ts +0 -3
- package/commons/components/notification/elements/item/NotificationItemContent.js +0 -9
- package/commons/components/notification/elements/item/NotificationItemDate.d.ts +0 -3
- package/commons/components/notification/elements/item/NotificationItemDate.js +0 -10
- package/commons/components/notification/elements/item/NotificationItemImage.d.ts +0 -4
- package/commons/components/notification/elements/item/NotificationItemImage.js +0 -8
- package/commons/components/notification/elements/item/NotificationItemTag.d.ts +0 -4
- package/commons/components/notification/elements/item/NotificationItemTag.js +0 -12
- package/commons/components/notification/elements/item/NotificationItemTitle.d.ts +0 -3
- package/commons/components/notification/elements/item/NotificationItemTitle.js +0 -15
- package/commons/components/notification/index.d.ts +0 -2
- package/commons/components/notification/index.js +0 -2
- package/commons/components/pages/PageCardCentered.d.ts +0 -5
- package/commons/components/pages/PageCardCentered.js +0 -30
- package/commons/components/pages/PageCenter.d.ts +0 -9
- package/commons/components/pages/PageCenter.js +0 -20
- package/commons/components/pages/PageContent.d.ts +0 -8
- package/commons/components/pages/PageContent.js +0 -8
- package/commons/components/pages/PageFullScreen.d.ts +0 -11
- package/commons/components/pages/PageFullScreen.js +0 -40
- package/commons/components/pages/PageFullWidth.d.ts +0 -11
- package/commons/components/pages/PageFullWidth.js +0 -7
- package/commons/components/pages/PageHeader.d.ts +0 -23
- package/commons/components/pages/PageHeader.js +0 -27
- package/commons/components/pages/hooks/usePageProps.d.ts +0 -24
- package/commons/components/pages/hooks/usePageProps.js +0 -19
- package/commons/components/search/AppSearch.d.ts +0 -1
- package/commons/components/search/AppSearch.js +0 -135
- package/commons/components/search/AppSearchInput.d.ts +0 -12
- package/commons/components/search/AppSearchInput.js +0 -35
- package/commons/components/search/AppSearchResult.d.ts +0 -5
- package/commons/components/search/AppSearchResult.js +0 -28
- package/commons/components/topnav/AppBar.d.ts +0 -6
- package/commons/components/topnav/AppBar.js +0 -80
- package/commons/components/topnav/AppName.d.ts +0 -5
- package/commons/components/topnav/AppName.js +0 -31
- package/commons/components/topnav/AppSwitcher.d.ts +0 -3
- package/commons/components/topnav/AppSwitcher.js +0 -44
- package/commons/components/topnav/Notifications.d.ts +0 -2
- package/commons/components/topnav/Notifications.js +0 -8
- package/commons/components/topnav/ThemeSelection.d.ts +0 -3
- package/commons/components/topnav/ThemeSelection.js +0 -33
- package/commons/components/topnav/ThemeSelectionIcon.d.ts +0 -2
- package/commons/components/topnav/ThemeSelectionIcon.js +0 -16
- package/commons/components/topnav/UserProfile.d.ts +0 -6
- package/commons/components/topnav/UserProfile.js +0 -71
- package/commons/components/utils/hooks/useClipboard.d.ts +0 -3
- package/commons/components/utils/hooks/useClipboard.js +0 -29
- package/commons/components/utils/hooks/useEnv.d.ts +0 -1
- package/commons/components/utils/hooks/useEnv.js +0 -11
- package/commons/components/utils/hooks/useFullscreenStatus.d.ts +0 -2
- package/commons/components/utils/hooks/useFullscreenStatus.js +0 -41
- package/commons/components/utils/hooks/useGravatar.d.ts +0 -2
- package/commons/components/utils/hooks/useGravatar.js +0 -9
- package/commons/components/utils/hooks/useLocalStorage.d.ts +0 -12
- package/commons/components/utils/hooks/useLocalStorage.js +0 -52
- package/commons/components/utils/hooks/useLocalStorageItem.d.ts +0 -14
- package/commons/components/utils/hooks/useLocalStorageItem.js +0 -39
- package/commons/components/utils/hooks/useThemeBuilder.d.ts +0 -7
- package/commons/components/utils/hooks/useThemeBuilder.js +0 -48
- package/commons/components/utils/keyboard.d.ts +0 -30
- package/commons/components/utils/keyboard.js +0 -50
- package/components/hooks/useMySitemap.d.ts +0 -3
- package/components/hooks/useMySitemap.js +0 -219
- /package/{commons/components/app/AppConfigs.js → components/elements/MembershipManagement.test.d.ts} +0 -0
|
@@ -6,5 +6,5 @@ type SearchPaginationProps = Omit<PaginationProps, 'onChange'> & {
|
|
|
6
6
|
removeCount?: number;
|
|
7
7
|
onChange: (nextOffset: number) => void;
|
|
8
8
|
};
|
|
9
|
-
declare const SearchPagination: ({ limit, offset, total, removeCount, onChange, ...paginationProps }: SearchPaginationProps) => import("react
|
|
9
|
+
declare const SearchPagination: ({ limit, offset, total, removeCount, onChange, ...paginationProps }: SearchPaginationProps) => import("react").JSX.Element | null;
|
|
10
10
|
export default SearchPagination;
|
|
@@ -41,7 +41,7 @@ describe('SearchPagination', () => {
|
|
|
41
41
|
render(_jsx(SearchPagination, { ...defaultProps, offset: 50 }));
|
|
42
42
|
// offset 50 with limit 25 = page 3
|
|
43
43
|
const page3 = screen.getByText('3');
|
|
44
|
-
expect(page3.closest('button')).toHaveAttribute('aria-current', '
|
|
44
|
+
expect(page3.closest('button')).toHaveAttribute('aria-current', 'page');
|
|
45
45
|
});
|
|
46
46
|
});
|
|
47
47
|
describe('interaction', () => {
|
|
@@ -4,5 +4,5 @@ type SearchTotalProps = TypographyProps & {
|
|
|
4
4
|
offset: number;
|
|
5
5
|
pageLength: number;
|
|
6
6
|
};
|
|
7
|
-
declare const SearchTotal: ({ total, offset, pageLength, ...typographyProps }: SearchTotalProps) => import("react
|
|
7
|
+
declare const SearchTotal: ({ total, offset, pageLength, ...typographyProps }: SearchTotalProps) => import("react").JSX.Element;
|
|
8
8
|
export default SearchTotal;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { type TextFieldProps } from '@mui/material';
|
|
2
|
-
import { parseEvent } from '@
|
|
2
|
+
import { parseEvent } from '@tui/core';
|
|
3
3
|
import { type ReactElement } from 'react';
|
|
4
4
|
import type { PhraseSuggester } from '.';
|
|
5
5
|
import type PhraseLexer from './PhraseLexer';
|
|
@@ -15,5 +15,5 @@ export type PhraseProps = Omit<TextFieldProps, 'onChange' | 'onKeyDown' | 'varia
|
|
|
15
15
|
onChange: (phrase: string) => void;
|
|
16
16
|
onKeyDown?: (event: ReturnType<typeof parseEvent>) => void;
|
|
17
17
|
};
|
|
18
|
-
declare const Phrase: ({ value, variant, suggestions, lexer, suggester, debug, startAdornment, endAdornment, onChange, onKeyDown, ...props }: PhraseProps) => import("react
|
|
18
|
+
declare const Phrase: ({ value, variant, suggestions, lexer, suggester, debug, startAdornment, endAdornment, onChange, onKeyDown, ...props }: PhraseProps) => import("react").JSX.Element;
|
|
19
19
|
export default Phrase;
|
|
@@ -1,15 +1,15 @@
|
|
|
1
1
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
2
|
import { ClickAwayListener, InputAdornment, ListItemText, MenuItem, MenuList, Paper, Popper, TextField } from '@mui/material';
|
|
3
|
-
import { parseEvent } from '@
|
|
3
|
+
import { parseEvent } from '@tui/core';
|
|
4
4
|
import { useEffect, useRef, useState } from 'react';
|
|
5
5
|
import WordLexer from './word/WordLexer';
|
|
6
6
|
import WordSuggestor from './word/WordSuggester';
|
|
7
7
|
const Phrase = ({ value = '', variant = 'outlined', suggestions = [], lexer, suggester, debug, startAdornment, endAdornment, onChange, onKeyDown, ...props }) => {
|
|
8
|
-
const containerRef = useRef();
|
|
9
|
-
const inputRef = useRef();
|
|
10
|
-
const menuRef = useRef();
|
|
8
|
+
const containerRef = useRef(null);
|
|
9
|
+
const inputRef = useRef(null);
|
|
10
|
+
const menuRef = useRef(null);
|
|
11
11
|
const lexerRef = useRef(lexer || new WordLexer());
|
|
12
|
-
const analysisRef = useRef();
|
|
12
|
+
const analysisRef = useRef(null);
|
|
13
13
|
const suggesterRef = useRef(suggester || new WordSuggestor(suggestions));
|
|
14
14
|
const [optionsOpen, setOptionsOpen] = useState(false);
|
|
15
15
|
const [options, setOptions] = useState(suggestions);
|
|
@@ -63,7 +63,7 @@ const Phrase = ({ value = '', variant = 'outlined', suggestions = [], lexer, sug
|
|
|
63
63
|
onKeyDown(parsedEvent);
|
|
64
64
|
}
|
|
65
65
|
};
|
|
66
|
-
const _onSelectCapture = event => {
|
|
66
|
+
const _onSelectCapture = (event) => {
|
|
67
67
|
if (optionsOpen) {
|
|
68
68
|
_suggest(event.target.value);
|
|
69
69
|
}
|
|
@@ -80,7 +80,7 @@ const Phrase = ({ value = '', variant = 'outlined', suggestions = [], lexer, sug
|
|
|
80
80
|
onSelectCapture: _onSelectCapture,
|
|
81
81
|
startAdornment: startAdornment && _jsx(InputAdornment, { position: "start", children: startAdornment }),
|
|
82
82
|
endAdornment: endAdornment && _jsx(InputAdornment, { position: "end", children: endAdornment })
|
|
83
|
-
} }), _jsx(Popper, { anchorEl: containerRef.current, style: { width: '100%', zIndex: 100 }, open: optionsOpen && (options.length > 0 || (debug && analysisRef.current?.tokens
|
|
83
|
+
} }), _jsx(Popper, { anchorEl: containerRef.current, style: { width: '100%', zIndex: 100 }, open: optionsOpen && (options.length > 0 || (debug === true && (analysisRef.current?.tokens?.length ?? 0) > 0)), disablePortal: true, children: _jsx(Paper, { elevation: 1, sx: { maxHeight: 200, overflow: 'auto', borderTopRightRadius: 0, borderTopLeftRadius: 0 }, children: _jsx(MenuList, { ref: menuRef, onKeyDown: _onMenuKeyDown, sx: {
|
|
84
84
|
'&:focus': {
|
|
85
85
|
outline: 'none'
|
|
86
86
|
}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import type { PhraseToken } from '.';
|
|
2
2
|
import type PhraseLexer from './PhraseLexer';
|
|
3
3
|
export default abstract class PhraseConsumer<L extends PhraseLexer> {
|
|
4
|
-
protected _buffer:
|
|
4
|
+
protected _buffer: string[];
|
|
5
5
|
reset(): void;
|
|
6
6
|
init(buffer: string[], _lexer?: L): void;
|
|
7
7
|
append(next: string, _lexer?: L): void;
|
|
@@ -9,5 +9,5 @@ export default abstract class PhraseConsumer<L extends PhraseLexer> {
|
|
|
9
9
|
endsWithAny(...values: string[]): boolean;
|
|
10
10
|
test(regex: RegExp): boolean;
|
|
11
11
|
abstract lock(lexer: L): boolean;
|
|
12
|
-
abstract consume(lexer: L): PhraseToken;
|
|
12
|
+
abstract consume(lexer: L): PhraseToken | null;
|
|
13
13
|
}
|
|
@@ -10,7 +10,7 @@ export default abstract class PhraseLexer {
|
|
|
10
10
|
private _endIndex;
|
|
11
11
|
private find;
|
|
12
12
|
parse(phrase: string, cursor?: number): PhraseAnalysis;
|
|
13
|
-
lock(): PhraseConsumer<PhraseLexer
|
|
13
|
+
lock(): PhraseConsumer<PhraseLexer> | undefined;
|
|
14
14
|
buffer(): string[];
|
|
15
15
|
bufferValue(): string;
|
|
16
16
|
start(): number;
|
|
@@ -1,15 +1,15 @@
|
|
|
1
1
|
export default class PhraseLexer {
|
|
2
|
-
_phrase =
|
|
3
|
-
_buffer =
|
|
4
|
-
_tokens =
|
|
5
|
-
_consumers =
|
|
2
|
+
_phrase = '';
|
|
3
|
+
_buffer = [];
|
|
4
|
+
_tokens = [];
|
|
5
|
+
_consumers = [];
|
|
6
6
|
_consumer = null;
|
|
7
7
|
_startIndex = 0;
|
|
8
8
|
_endIndex = -1;
|
|
9
9
|
find(cursor, tokens) {
|
|
10
10
|
const index = tokens.findIndex(t => t.startIndex <= cursor && cursor <= t.endIndex);
|
|
11
11
|
const token = tokens.at(index);
|
|
12
|
-
return { index, token };
|
|
12
|
+
return { index, token: token };
|
|
13
13
|
}
|
|
14
14
|
parse(phrase, cursor = 0) {
|
|
15
15
|
this._phrase = phrase;
|
|
@@ -29,7 +29,7 @@ export default class PhraseLexer {
|
|
|
29
29
|
let newLock = false;
|
|
30
30
|
// Try to find a consumer to lock on.
|
|
31
31
|
if (!this._consumer) {
|
|
32
|
-
this._consumer = this.lock();
|
|
32
|
+
this._consumer = this.lock() ?? null;
|
|
33
33
|
if (this._consumer) {
|
|
34
34
|
newLock = true;
|
|
35
35
|
// console.log('new lock...');
|
|
@@ -27,7 +27,7 @@ export type PhraseSuggestorValue = {
|
|
|
27
27
|
};
|
|
28
28
|
export declare class PhraseBuffer {
|
|
29
29
|
constructor(type?: string);
|
|
30
|
-
private type
|
|
30
|
+
private type?;
|
|
31
31
|
private startIndex;
|
|
32
32
|
private endIndex;
|
|
33
33
|
private buffer;
|
|
@@ -36,5 +36,5 @@ export declare class PhraseBuffer {
|
|
|
36
36
|
value(): string;
|
|
37
37
|
start(index?: number): number;
|
|
38
38
|
end(index?: number): number;
|
|
39
|
-
token(): PhraseToken;
|
|
39
|
+
token(): PhraseToken | null;
|
|
40
40
|
}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { notNil } from '@cccsaurora/howler-ui/utils/utils';
|
|
1
2
|
export class PhraseBuffer {
|
|
2
3
|
constructor(type) {
|
|
3
4
|
this.type = type;
|
|
@@ -21,13 +22,13 @@ export class PhraseBuffer {
|
|
|
21
22
|
return this.buffer.join('');
|
|
22
23
|
}
|
|
23
24
|
start(index) {
|
|
24
|
-
if (index
|
|
25
|
+
if (notNil(index)) {
|
|
25
26
|
this.startIndex = index;
|
|
26
27
|
}
|
|
27
28
|
return this.startIndex;
|
|
28
29
|
}
|
|
29
30
|
end(index) {
|
|
30
|
-
if (index
|
|
31
|
+
if (notNil(index)) {
|
|
31
32
|
this.endIndex = index;
|
|
32
33
|
}
|
|
33
34
|
return this.endIndex;
|
|
@@ -3,5 +3,5 @@ import PhraseConsumer from '../../PhraseConsumer';
|
|
|
3
3
|
import type PhraseLexer from '../../PhraseLexer';
|
|
4
4
|
export default class WhitespaceConsumer extends PhraseConsumer<PhraseLexer> {
|
|
5
5
|
lock(lexer: PhraseLexer): boolean;
|
|
6
|
-
consume(lexer: PhraseLexer): PhraseToken;
|
|
6
|
+
consume(lexer: PhraseLexer): PhraseToken | null;
|
|
7
7
|
}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import PhraseConsumer from '../../PhraseConsumer';
|
|
2
2
|
export default class WhitespaceConsumer extends PhraseConsumer {
|
|
3
3
|
lock(lexer) {
|
|
4
|
-
return lexer.bufferValue().match(/\s/) && lexer.ahead(1) !== ' ';
|
|
4
|
+
return !!lexer.bufferValue().match(/\s/) && lexer.ahead(1) !== ' ';
|
|
5
5
|
}
|
|
6
6
|
consume(lexer) {
|
|
7
7
|
if (lexer.ahead(1) !== ' ') {
|
|
@@ -3,5 +3,5 @@ import PhraseConsumer from '../../PhraseConsumer';
|
|
|
3
3
|
import type PhraseLexer from '../../PhraseLexer';
|
|
4
4
|
export default class WordConsumer extends PhraseConsumer<PhraseLexer> {
|
|
5
5
|
lock(lexer: PhraseLexer): boolean;
|
|
6
|
-
consume(lexer: PhraseLexer): PhraseToken;
|
|
6
|
+
consume(lexer: PhraseLexer): PhraseToken | null;
|
|
7
7
|
}
|
|
@@ -27,17 +27,23 @@ const CaseCard = ({ case: providedCase, caseId, className, slotProps }) => {
|
|
|
27
27
|
}, [providedCase]);
|
|
28
28
|
useEffect(() => {
|
|
29
29
|
if (caseId) {
|
|
30
|
-
void dispatchApi(api.v2.case.get(caseId), { throwError: false }).then(
|
|
30
|
+
void dispatchApi(api.v2.case.get(caseId), { throwError: false }).then(result => {
|
|
31
|
+
if (result) {
|
|
32
|
+
setCase(result);
|
|
33
|
+
}
|
|
34
|
+
});
|
|
31
35
|
}
|
|
32
36
|
}, [caseId, dispatchApi]);
|
|
33
37
|
if (!_case) {
|
|
34
38
|
return _jsx(Skeleton, { variant: "rounded", height: 250, sx: { mb: 1 }, className: className });
|
|
35
39
|
}
|
|
40
|
+
const statusColor = STATUS_COLORS[_case.status];
|
|
36
41
|
return (_jsx(HowlerCard, { ...slotProps?.card, sx: [
|
|
37
|
-
{ p: 1, mb: 1, borderColor: theme.palette[
|
|
42
|
+
{ p: 1, mb: 1, borderColor: statusColor ? theme.palette[statusColor].main : undefined },
|
|
38
43
|
...(Array.isArray(slotProps?.card?.sx) ? slotProps.card.sx : slotProps?.card?.sx ? [slotProps.card.sx] : [])
|
|
39
|
-
], className: className, children: _jsx(Stack, { direction: "row", alignItems: "start", spacing: 1, children: _jsxs(Stack, { sx: { flex: 1 }, spacing: 1, children: [_jsxs(Stack, { direction: "row", spacing: 1, alignItems: "center", children: [_jsx(Typography, { variant: "h6", display: "flex", alignItems: "start", children: _case.title }), _jsx(StatusIcon, { status: _case.status }), _jsx("div", { style: { flex: 1 } }), _case.start && _case.end && (_jsx(Tooltip, { title: dayjs(_case.updated).toString(), children: _jsx(Chip, { icon: _jsx(HourglassBottom, { fontSize: "small" }), size: "small", label: twitterShort(_case.start) + ' - ' + twitterShort(_case.end) }) })), _jsx(Tooltip, { title: dayjs(_case.updated).toString(), children: _jsx(Chip, { icon: _jsx(UpdateOutlined, { fontSize: "small" }), size: "small", label: twitterShort(_case.updated) }) })] }), _jsx(Typography, { variant: "caption", color: "textSecondary", children: _case.summary
|
|
40
|
-
|
|
44
|
+
], className: className, children: _jsx(Stack, { direction: "row", alignItems: "start", spacing: 1, children: _jsxs(Stack, { sx: { flex: 1 }, spacing: 1, children: [_jsxs(Stack, { direction: "row", spacing: 1, alignItems: "center", children: [_jsx(Typography, { variant: "h6", display: "flex", alignItems: "start", children: _case.title }), _jsx(StatusIcon, { status: _case.status }), _jsx("div", { style: { flex: 1 } }), _case.start && _case.end && (_jsx(Tooltip, { title: dayjs(_case.updated).toString(), children: _jsx(Chip, { icon: _jsx(HourglassBottom, { fontSize: "small" }), size: "small", label: twitterShort(_case.start) + ' - ' + twitterShort(_case.end) }) })), _jsx(Tooltip, { title: dayjs(_case.updated).toString(), children: _jsx(Chip, { icon: _jsx(UpdateOutlined, { fontSize: "small" }), size: "small", label: twitterShort(_case.updated) }) })] }), _jsx(Typography, { variant: "caption", color: "textSecondary", children: _case.summary?.trim().split('\n')[0] }), (_case.participants?.length ?? 0) > 0 && (_jsxs(_Fragment, { children: [_jsx(Divider, { flexItem: true }), _jsx(Stack, { direction: "row", spacing: 1, children: _case.participants?.map(participant => (_jsx(HowlerAvatar, { sx: { height: '20px', width: '20px' }, userId: participant }, participant))) })] })), _jsx(Divider, { flexItem: true }), _jsxs(Grid, { container: true, spacing: 0.5, sx: { ml: `${theme.spacing(-0.5)} !important`, mt: `${theme.spacing(0.5)} !important` }, children: [_case.targets?.map(indicator => (_jsx(Grid, { children: _jsx(PluginChip, { size: "small", color: "primary", context: "casecard", variant: "outlined", value: indicator, label: indicator }) }, indicator))), (_case.targets?.length ?? 0) > 0 &&
|
|
45
|
+
((_case.indicators?.length ?? 0) > 0 || (_case.threats?.length ?? 0) > 0) && (_jsx(Grid, { children: _jsx(Divider, { orientation: "vertical" }) })), _case.indicators?.map(indicator => (_jsx(Grid, { children: _jsx(PluginChip, { variant: "outlined", context: "casecard", value: indicator, label: indicator }) }, indicator))), (_case.indicators?.length ?? 0) > 0 && (_case.threats?.length ?? 0) > 0 && (_jsx(Grid, { children: _jsx(Divider, { orientation: "vertical" }) })), _case.threats?.map(indicator => (_jsx(Grid, { children: _jsx(PluginChip, { size: "small", color: "warning", variant: "outlined", context: "casecard", value: indicator, label: indicator }) }, indicator)))] }), (_case.tasks?.length ?? 0) > 0 && (_jsxs(_Fragment, { children: [_jsx(Divider, { flexItem: true }), _jsxs(Stack, { spacing: 0.5, alignItems: "start", children: [_case.tasks.some(task => task.complete) && (_jsx(Chip, { size: "small", color: "success", icon: _jsx(CheckCircleOutline, {}), label: `${countBy(_case.tasks, task => task.complete).true} ${t('complete')}` })), _case
|
|
46
|
+
.tasks.filter(task => !task.complete)
|
|
41
47
|
.map(task => (_jsx(Chip, { icon: _jsx(RadioButtonUnchecked, {}), label: task.summary }, task.id)))] })] }))] }) }) }, _case.case_id));
|
|
42
48
|
};
|
|
43
49
|
export default CaseCard;
|
|
@@ -12,6 +12,6 @@ const CasePreview = ({ case: _case }) => {
|
|
|
12
12
|
const { t } = useTranslation();
|
|
13
13
|
const theme = useTheme();
|
|
14
14
|
const taskCounts = countBy(_case.tasks, task => task.complete);
|
|
15
|
-
return (_jsxs(Stack, { flex: 1, spacing: 1, sx: { overflow: 'hidden', borderBottom: `thin solid ${theme.palette.divider}`, pb: 1, mb: 0 }, children: [_jsxs(Stack, { direction: "row", spacing: 1, children: [_jsxs(Stack, { spacing: 1, children: [_jsx(Typography, { variant: "body1", fontWeight: "bold", children: _case.title }), _jsx(Typography, { variant: "caption", color: "textSecondary", children: _case.summary
|
|
15
|
+
return (_jsxs(Stack, { flex: 1, spacing: 1, sx: { overflow: 'hidden', borderBottom: `thin solid ${theme.palette.divider}`, pb: 1, mb: 0 }, children: [_jsxs(Stack, { direction: "row", spacing: 1, children: [_jsxs(Stack, { spacing: 1, children: [_jsx(Typography, { variant: "body1", fontWeight: "bold", children: _case.title }), _jsx(Typography, { variant: "caption", color: "textSecondary", children: _case.summary?.trim().split('\n')[0] })] }), _jsx(StatusIcon, { status: _case.status }), _jsx("div", { style: { flex: 1 } }), _jsxs(Stack, { spacing: 1, alignItems: "end", children: [_case.start && _case.end && (_jsx(Tooltip, { title: dayjs(_case.updated).toString(), children: _jsx(Chip, { icon: _jsx(HourglassBottom, { fontSize: "small" }), size: "small", label: twitterShort(_case.start) + ' - ' + twitterShort(_case.end) }) })), _jsx(Tooltip, { title: dayjs(_case.updated).toString(), children: _jsx(Chip, { icon: _jsx(UpdateOutlined, { fontSize: "small" }), size: "small", label: twitterShort(_case.updated) }) })] })] }), _jsxs(Stack, { direction: "row", spacing: 1, children: [(_case.participants?.length ?? 0) > 0 && (_jsx(Stack, { direction: "row", spacing: 1, children: _case.participants?.map(participant => (_jsx(HowlerAvatar, { sx: { height: '24px', width: '24px' }, userId: participant }, participant))) })), _jsx(Chip, { color: "success", icon: _jsx(CheckCircleOutline, {}), label: `${taskCounts.true ?? 0} ${t('complete')}` }), _jsx(Chip, { icon: _jsx(RadioButtonUnchecked, {}), label: `${taskCounts.false ?? 0} ${t('incomplete')}` })] })] }));
|
|
16
16
|
};
|
|
17
17
|
export default memo(CasePreview);
|
|
@@ -11,7 +11,9 @@ const ActionButton = ({ actionId, hitId, label, ...otherProps }) => {
|
|
|
11
11
|
const { executeAction } = useMyActionFunctions();
|
|
12
12
|
const [action, setAction] = useState(null);
|
|
13
13
|
useEffect(() => {
|
|
14
|
-
void dispatchApi(api.search.action.post({ query: `action_id:${actionId}`, rows: 1 })).then(result =>
|
|
14
|
+
void dispatchApi(api.search.action.post({ query: `action_id:${actionId}`, rows: 1 })).then(result => {
|
|
15
|
+
setAction(result?.items[0] ?? null);
|
|
16
|
+
});
|
|
15
17
|
}, [actionId, dispatchApi]);
|
|
16
18
|
if (!actionId || !hitId) {
|
|
17
19
|
return (_jsxs(Stack, { spacing: 1, children: [_jsx("strong", { style: { color: 'red' }, children: t('markdown.error') }), _jsx("code", { style: { fontSize: '0.8rem' }, children: t('markdown.actionbutton.error') })] }));
|
|
@@ -12,7 +12,7 @@ const ChipPopper = ({ icon, deleteIcon, label, children, minWidth, placement = '
|
|
|
12
12
|
handleToggle(!show);
|
|
13
13
|
e.stopPropagation();
|
|
14
14
|
e.preventDefault();
|
|
15
|
-
}, onDelete: onDelete ?? (toggleOnDelete ? () => handleToggle(!show) :
|
|
15
|
+
}, onDelete: onDelete ?? (toggleOnDelete ? () => handleToggle(!show) : undefined), ref: setAnchorEl, sx: [
|
|
16
16
|
theme => ({
|
|
17
17
|
position: 'relative',
|
|
18
18
|
zIndex: 1,
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
2
|
/// <reference types="vitest" />
|
|
3
|
+
// @ts-nocheck
|
|
3
4
|
import { Info } from '@mui/icons-material';
|
|
4
5
|
import { render, screen, waitFor } from '@testing-library/react';
|
|
5
6
|
import userEvent, {} from '@testing-library/user-event';
|
|
@@ -4,19 +4,20 @@ import { ApiConfigContext } from '@cccsaurora/howler-ui/components/app/providers
|
|
|
4
4
|
import { useContext, useMemo } from 'react';
|
|
5
5
|
import { useTranslation } from 'react-i18next';
|
|
6
6
|
const Classification = () => {
|
|
7
|
-
const { config } = useContext(ApiConfigContext);
|
|
7
|
+
const { config, loaded } = useContext(ApiConfigContext);
|
|
8
8
|
const { t } = useTranslation();
|
|
9
9
|
const theme = useTheme();
|
|
10
10
|
const isSm = useMediaQuery(theme.breakpoints.down('md'));
|
|
11
|
+
const c12nDef = loaded ? config.c12nDef : null;
|
|
11
12
|
const label = useMemo(() => {
|
|
12
13
|
if (isSm) {
|
|
13
|
-
return
|
|
14
|
+
return c12nDef?.RESTRICTED?.replace(/[a-z]/g, '').replace(/ /g, '') ?? '???';
|
|
14
15
|
}
|
|
15
16
|
else {
|
|
16
|
-
return
|
|
17
|
+
return c12nDef?.RESTRICTED ?? 'Unknown';
|
|
17
18
|
}
|
|
18
|
-
}, [
|
|
19
|
-
const color = useMemo(() => (
|
|
19
|
+
}, [c12nDef?.RESTRICTED, isSm]);
|
|
20
|
+
const color = useMemo(() => (c12nDef?.levels_styles_map?.[label.replace(/\/\/.+/, '')]?.color ?? 'default'), [c12nDef?.levels_styles_map, label]);
|
|
20
21
|
return _jsx(Chip, { label: t(label), color: color, sx: { mr: 1, fontSize: '.9rem', p: 2, textTransform: 'uppercase' } });
|
|
21
22
|
};
|
|
22
23
|
export default Classification;
|
|
@@ -6,9 +6,7 @@ interface EnrichedChipProps {
|
|
|
6
6
|
format?: FormatProp;
|
|
7
7
|
isMobile?: boolean;
|
|
8
8
|
}
|
|
9
|
-
declare const _default: React.NamedExoticComponent<EnrichedChipProps & ChipOwnProps & import("@mui/material/OverridableComponent").CommonProps & Omit<
|
|
10
|
-
|
|
11
|
-
}, "avatar" | "children" | "className" | "classes" | "clickable" | "color" | "deleteIcon" | "disabled" | "icon" | "label" | "onDelete" | "size" | "skipFocusWhenDisabled" | "style" | "sx" | "tabIndex" | "variant"> & {
|
|
12
|
-
component?: React.ElementType;
|
|
9
|
+
declare const _default: React.NamedExoticComponent<EnrichedChipProps & ChipOwnProps & import("@mui/material").ChipSlotsAndSlotProps & import("@mui/material/OverridableComponent").CommonProps & Omit<React.DetailedHTMLProps<React.HTMLAttributes<HTMLDivElement>, HTMLDivElement>, "avatar" | "children" | "className" | "classes" | "clickable" | "color" | "deleteIcon" | "disabled" | "icon" | "label" | "onDelete" | "size" | "skipFocusWhenDisabled" | "slotProps" | "slots" | "style" | "sx" | "tabIndex" | "variant"> & {
|
|
10
|
+
component?: React.ElementType | undefined;
|
|
13
11
|
}>;
|
|
14
12
|
export default _default;
|
|
@@ -19,15 +19,17 @@ const ClassificationChip = React.memo(({ classification, format = 'short', isMob
|
|
|
19
19
|
return normalizedClassification(parts, config.c12nDef, format, isMobile);
|
|
20
20
|
}, [classification, config.c12nDef, format, isMobile, parts]);
|
|
21
21
|
const chipProps = useMemo(() => {
|
|
22
|
-
const definedColor =
|
|
23
|
-
|
|
22
|
+
const definedColor = parts
|
|
23
|
+
? config.c12nDef?.levels_styles_map[config.c12nDef?.levels_map[parts.lvlIdx]]?.color
|
|
24
|
+
: undefined;
|
|
25
|
+
if (THEME_TYPES.includes(definedColor ?? '')) {
|
|
24
26
|
return { color: definedColor };
|
|
25
27
|
}
|
|
26
28
|
if (definedColor) {
|
|
27
29
|
return { sx: { color: definedColor } };
|
|
28
30
|
}
|
|
29
31
|
return { color: 'default' };
|
|
30
|
-
}, [config.c12nDef?.levels_map, config.c12nDef?.levels_styles_map, parts
|
|
32
|
+
}, [config.c12nDef?.levels_map, config.c12nDef?.levels_styles_map, parts]);
|
|
31
33
|
return (_jsx(Tooltip, { title: classification, children: _jsx(Chip, { variant: otherProps.variant || 'outlined', label: normalized, ...chipProps, ...otherProps, sx: [
|
|
32
34
|
...(Array.isArray(chipProps.sx) ? chipProps.sx : [chipProps.sx]),
|
|
33
35
|
...(Array.isArray(otherProps.sx) ? otherProps.sx : [otherProps.sx])
|
|
@@ -3,7 +3,7 @@ import { Help } from '@mui/icons-material';
|
|
|
3
3
|
import { IconButton, Tooltip } from '@mui/material';
|
|
4
4
|
import { useMemo } from 'react';
|
|
5
5
|
import { useTranslation } from 'react-i18next';
|
|
6
|
-
import { Link, useLocation } from 'react-router
|
|
6
|
+
import { Link, useLocation } from 'react-router';
|
|
7
7
|
const DocumentationButton = () => {
|
|
8
8
|
const { t } = useTranslation();
|
|
9
9
|
const location = useLocation();
|
|
@@ -5,7 +5,7 @@ vi.mock('react-i18next', () => ({
|
|
|
5
5
|
}));
|
|
6
6
|
// Hoist the mutable location object so the mock factory can reference it
|
|
7
7
|
const mockLocation = vi.hoisted(() => ({ pathname: '/' }));
|
|
8
|
-
vi.mock('react-router
|
|
8
|
+
vi.mock('react-router', async () => {
|
|
9
9
|
const { forwardRef } = await import('react');
|
|
10
10
|
return {
|
|
11
11
|
useLocation: () => ({ ...mockLocation }),
|
|
@@ -105,10 +105,10 @@ ${err.hint ? `<br/><span style="color: gray; font-family: monospace;">${err.hint
|
|
|
105
105
|
setRendered(`
|
|
106
106
|
<h2 style="color: red">${t('markdown.error')}</h2>
|
|
107
107
|
|
|
108
|
-
**\`${err.toString()}\`**
|
|
108
|
+
**\`${err instanceof Error ? err.toString() : String(err)}\`**
|
|
109
109
|
|
|
110
110
|
<code style="font-size: 0.8rem"><pre>
|
|
111
|
-
${err.stack}
|
|
111
|
+
${err instanceof Error ? err.stack : ''}
|
|
112
112
|
</pre></code>
|
|
113
113
|
`);
|
|
114
114
|
}
|
|
@@ -5,12 +5,13 @@ import { memo, useCallback, useContext, useEffect, useState } from 'react';
|
|
|
5
5
|
import { useTranslation } from 'react-i18next';
|
|
6
6
|
import { nameToInitials } from '@cccsaurora/howler-ui/utils/stringUtils';
|
|
7
7
|
import { stringToColor } from '@cccsaurora/howler-ui/utils/utils';
|
|
8
|
-
const HowlerAvatar = ({ userId, ...avatarProps }) => {
|
|
8
|
+
const HowlerAvatar = ({ userId, label: _label, ...avatarProps }) => {
|
|
9
9
|
const { t } = useTranslation();
|
|
10
10
|
const { getAvatar } = useContext(AvatarContext);
|
|
11
11
|
const theme = useTheme();
|
|
12
12
|
const [props, setProps] = useState();
|
|
13
|
-
const
|
|
13
|
+
const label = _label ||
|
|
14
|
+
(userId && userId.toLowerCase() !== 'unassigned' ? userId : t('app.drawer.hit.assignment.unassigned.name'));
|
|
14
15
|
const stringAvatar = useCallback((name) => {
|
|
15
16
|
return {
|
|
16
17
|
sx: {
|
|
@@ -31,14 +32,14 @@ const HowlerAvatar = ({ userId, ...avatarProps }) => {
|
|
|
31
32
|
// eslint-disable-next-line no-console
|
|
32
33
|
console.debug(e);
|
|
33
34
|
setProps({
|
|
34
|
-
src:
|
|
35
|
+
src: undefined
|
|
35
36
|
});
|
|
36
37
|
});
|
|
37
38
|
}
|
|
38
39
|
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
39
40
|
}, [userId]);
|
|
40
41
|
if (userId) {
|
|
41
|
-
return (_jsx(Tooltip, { title:
|
|
42
|
+
return (_jsx(Tooltip, { title: label, children: _jsx(Avatar, { "aria-label": label, ...avatarProps, ...props, sx: { ...avatarProps?.sx, ...props?.sx } }) }));
|
|
42
43
|
}
|
|
43
44
|
else {
|
|
44
45
|
return (_jsx(Avatar, { "aria-label": t('unknown'), ...avatarProps, ...props, sx: { ...avatarProps?.sx, ...props?.sx } }));
|
|
@@ -6,7 +6,7 @@ const AvatarContainer = styled(Grid)(({ theme }) => ({
|
|
|
6
6
|
}));
|
|
7
7
|
const HowlerAvatarHeader = ({ user }) => {
|
|
8
8
|
const theme = useTheme();
|
|
9
|
-
return (_jsx(AvatarContainer, {
|
|
9
|
+
return (_jsx(AvatarContainer, { size: { sm: 12, md: 2 }, children: _jsxs(Grid, { container: true, spacing: 2, justifyContent: "center", children: [_jsx(Grid, { children: _jsx(HowlerAvatar, { userId: user?.username, sx: {
|
|
10
10
|
width: theme.spacing(16),
|
|
11
11
|
height: theme.spacing(16),
|
|
12
12
|
[theme.breakpoints.down('sm')]: {
|
|
@@ -14,6 +14,6 @@ const HowlerAvatarHeader = ({ user }) => {
|
|
|
14
14
|
height: theme.spacing(24)
|
|
15
15
|
},
|
|
16
16
|
margin: '0 1rem'
|
|
17
|
-
} }) }), _jsx(Grid, {
|
|
17
|
+
} }) }), _jsx(Grid, { size: 12, children: _jsx(Typography, { textAlign: "center", children: user?.name ?? '' }) })] }) }));
|
|
18
18
|
};
|
|
19
19
|
export default HowlerAvatarHeader;
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import type { SearchResponseState } from '@cccsaurora/howler-ui/components/app/providers/SearchResponseProvider';
|
|
2
2
|
import type { TuiListItemOnSelect, TuiListItemRenderer } from '@cccsaurora/howler-ui/components/elements/addons/lists';
|
|
3
|
-
import type {
|
|
4
|
-
interface ItemManagerProps {
|
|
3
|
+
import type { ReactNode } from 'react';
|
|
4
|
+
interface ItemManagerProps<T = unknown> {
|
|
5
5
|
aboveSearch?: ReactNode;
|
|
6
6
|
afterSearch?: ReactNode;
|
|
7
7
|
belowSearch?: ReactNode;
|
|
@@ -10,10 +10,10 @@ interface ItemManagerProps {
|
|
|
10
10
|
onPageChange: (nextOffset: number) => void;
|
|
11
11
|
onSearch: () => void;
|
|
12
12
|
onCreate?: () => void;
|
|
13
|
-
onSelect?: TuiListItemOnSelect<
|
|
13
|
+
onSelect?: TuiListItemOnSelect<T>;
|
|
14
14
|
phrase: string;
|
|
15
|
-
renderer: TuiListItemRenderer<
|
|
16
|
-
response
|
|
15
|
+
renderer: TuiListItemRenderer<T>;
|
|
16
|
+
response?: SearchResponseState<T>;
|
|
17
17
|
searchAdornment?: ReactNode;
|
|
18
18
|
searching: boolean;
|
|
19
19
|
createPrompt?: string;
|
|
@@ -21,5 +21,5 @@ interface ItemManagerProps {
|
|
|
21
21
|
setPhrase: (value: string) => void;
|
|
22
22
|
createIcon?: ReactNode;
|
|
23
23
|
}
|
|
24
|
-
declare const ItemManager:
|
|
24
|
+
declare const ItemManager: <T = unknown>({ aboveSearch, afterSearch, belowSearch, searchFilters, hasError, onPageChange, onSearch, onSelect, onCreate, phrase, renderer, response, searchAdornment, searching, createPrompt, searchPrompt, setPhrase, createIcon }: ItemManagerProps<T>) => import("react").JSX.Element;
|
|
25
25
|
export default ItemManager;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
2
|
import { Box, Fab, IconButton, LinearProgress, Stack, Tooltip, Typography, useMediaQuery } from '@mui/material';
|
|
3
|
-
import PageCenter from '@
|
|
3
|
+
import { PageCenter } from '@tui/core';
|
|
4
4
|
import { useTranslation } from 'react-i18next';
|
|
5
5
|
import { Add, Search } from '@mui/icons-material';
|
|
6
6
|
import { TuiList } from '@cccsaurora/howler-ui/components/elements/addons/lists';
|
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import { useAppTheme } from '@tui/core';
|
|
2
3
|
/* eslint-disable prefer-arrow/prefer-arrow-functions */
|
|
3
4
|
import { Alert, Box, darken, lighten, Paper, Table, TableCell, TableContainer, TableHead, TableRow, useTheme } from '@mui/material';
|
|
4
|
-
import { useAppTheme } from '@cccsaurora/howler-ui/commons/components/app/hooks';
|
|
5
5
|
import mermaid from 'mermaid';
|
|
6
6
|
import { memo, useEffect } from 'react';
|
|
7
7
|
import { useTranslation } from 'react-i18next';
|
|
8
8
|
import ReactMarkdown from 'react-markdown';
|
|
9
|
-
import { Link } from 'react-router
|
|
9
|
+
import { Link } from 'react-router';
|
|
10
10
|
import SyntaxHighlighter from 'react-syntax-highlighter/dist/esm/prism-async-light';
|
|
11
11
|
import { oneDark, oneLight } from 'react-syntax-highlighter/dist/esm/styles/prism';
|
|
12
12
|
import rehypeRaw from 'rehype-raw';
|
|
@@ -25,7 +25,10 @@ const customComponents = (type, children) => {
|
|
|
25
25
|
return _jsx(Notebook, { ipynb: child });
|
|
26
26
|
}
|
|
27
27
|
else if (type === 'tabs') {
|
|
28
|
-
return (_jsx(DynamicTabs, { tabs: JSON.parse(child).map(t => ({
|
|
28
|
+
return (_jsx(DynamicTabs, { tabs: JSON.parse(child).map(t => ({
|
|
29
|
+
title: t.title,
|
|
30
|
+
children: customComponents(t.lang, t.value)
|
|
31
|
+
})) }));
|
|
29
32
|
}
|
|
30
33
|
else {
|
|
31
34
|
return _jsx("code", { children: child });
|
|
@@ -57,6 +60,9 @@ const Markdown = ({ md, components = {}, disableLinks = false }) => {
|
|
|
57
60
|
});
|
|
58
61
|
return (_jsx(ReactMarkdown, { remarkPlugins: [remarkGfm, codeTabs], rehypePlugins: [rehypeRaw], urlTransform: (value) => value, components: {
|
|
59
62
|
code({ node, className, children, ...props }) {
|
|
63
|
+
if (!node) {
|
|
64
|
+
return (_jsx("code", { className: className, ...props, children: children }));
|
|
65
|
+
}
|
|
60
66
|
if (node.children?.length === 1 && node.children[0].type === 'text') {
|
|
61
67
|
if (node.children[0].value.startsWith('t(')) {
|
|
62
68
|
return _jsx("span", { children: t(node.children[0].value.replace(/t\((.+)\)/, '$1')) });
|
|
@@ -14,9 +14,9 @@ const Modal = () => {
|
|
|
14
14
|
position: 'absolute',
|
|
15
15
|
top: '50%',
|
|
16
16
|
left: '50%',
|
|
17
|
-
maxWidth: options
|
|
18
|
-
maxHeight: options
|
|
19
|
-
height: has(options, 'height') ? options
|
|
17
|
+
maxWidth: options?.maxWidth || '1200px',
|
|
18
|
+
maxHeight: options?.maxHeight || '400px',
|
|
19
|
+
height: has(options, 'height') ? options?.height : 'auto',
|
|
20
20
|
transform: 'translate(-50%, -50%)',
|
|
21
21
|
backgroundColor: 'background.paper',
|
|
22
22
|
borderRadius: theme.shape.borderRadius,
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
2
|
import { Typography } from '@mui/material';
|
|
3
3
|
import { useTranslation } from 'react-i18next';
|
|
4
|
-
import { Link } from 'react-router
|
|
4
|
+
import { Link } from 'react-router';
|
|
5
5
|
const QueryResultText = ({ count, query, mb = 0.5 }) => {
|
|
6
6
|
const { t } = useTranslation();
|
|
7
7
|
return (_jsxs(Typography, { sx: theme => ({
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
declare const TypingIndicator: () => import("react
|
|
1
|
+
declare const TypingIndicator: () => import("react").JSX.Element;
|
|
2
2
|
export default TypingIndicator;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import { PageCenter } from '@tui/core';
|
|
2
3
|
import { Grid, Stack } from '@mui/material';
|
|
3
|
-
import PageCenter from '@cccsaurora/howler-ui/commons/components/pages/PageCenter';
|
|
4
4
|
import HowlerAvatarHeader from './HowlerAvatarHeader';
|
|
5
|
-
const UserPageWrapper = ({ user, children }) => (_jsx(PageCenter, { textAlign: "left", mt: 6, children: _jsxs(Grid, { container: true, spacing: 2, justifyContent: "center", children: [_jsx(HowlerAvatarHeader, { user: user }), _jsx(Grid, {
|
|
5
|
+
const UserPageWrapper = ({ user, children }) => (_jsx(PageCenter, { textAlign: "left", mt: 6, children: _jsxs(Grid, { container: true, spacing: 2, justifyContent: "center", children: [_jsx(HowlerAvatarHeader, { user: user }), _jsx(Grid, { size: { sm: 12, md: 9 }, children: _jsx(Stack, { direction: "column", spacing: 2, children: children }) })] }) }));
|
|
6
6
|
export default UserPageWrapper;
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import { AppListEmpty } from '@tui/core';
|
|
2
3
|
/* eslint-disable no-console */
|
|
3
4
|
import { Paper, Table, TableBody, TableCell, TableHead, TableRow } from '@mui/material';
|
|
4
|
-
import AppListEmpty from '@cccsaurora/howler-ui/commons/components/display/AppListEmpty';
|
|
5
5
|
import HitCard from '@cccsaurora/howler-ui/components/elements/hit/HitCard';
|
|
6
6
|
import { HitLayout } from '@cccsaurora/howler-ui/components/elements/hit/HitLayout';
|
|
7
7
|
import { flatten } from 'flat';
|