@cratis/showrunner.usher.react 0.0.0-bootstrap.0 → 0.0.0-stage
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/README.md +2 -71
- package/package.json +4 -83
- package/Buttons/MyIssuesButton.tsx +0 -78
- package/Buttons/ReportButton.tsx +0 -51
- package/Buttons/buttonModels.ts +0 -55
- package/Buttons/index.ts +0 -6
- package/Correlation/CorrelationTracker.ts +0 -51
- package/Correlation/index.ts +0 -5
- package/Correlation/withCorrelationIdHeader.ts +0 -44
- package/Icons.tsx +0 -29
- package/Issues/IssueView/AccessPanel.tsx +0 -85
- package/Issues/IssueView/GrantAccessDialog.tsx +0 -56
- package/Issues/IssueView/IdentityPanel.tsx +0 -38
- package/Issues/IssueView/IssueActions.tsx +0 -52
- package/Issues/IssueView/IssueConversationPanel.tsx +0 -89
- package/Issues/IssueView/IssueHeader.tsx +0 -69
- package/Issues/IssueView/IssueView.tsx +0 -74
- package/Issues/IssueView/QuestionBanner.tsx +0 -27
- package/Issues/IssueView/ReopenIssueDialog.tsx +0 -37
- package/Issues/IssueView/ShareIdentityDialog.tsx +0 -37
- package/Issues/IssueView/StatusStrip.tsx +0 -42
- package/Issues/IssueView/SupportSessions.tsx +0 -59
- package/Issues/IssueView/index.ts +0 -15
- package/Issues/MyIssues/IssueList.tsx +0 -78
- package/Issues/MyIssues/MyIssuesDialog.tsx +0 -64
- package/Issues/MyIssues/MyIssuesNavigation.ts +0 -61
- package/Issues/MyIssues/index.ts +0 -6
- package/Issues/MyIssuesList.ts +0 -33
- package/Issues/accessStatus.ts +0 -68
- package/Issues/conversationMessages.ts +0 -136
- package/Issues/index.ts +0 -12
- package/Issues/issueStates.ts +0 -69
- package/Issues/sessionActivity.ts +0 -43
- package/Issues/useAccessStatus.ts +0 -24
- package/Issues/webAddress.ts +0 -22
- package/Labels/UsherLabels.ts +0 -365
- package/Labels/defaultUsherLabels.ts +0 -178
- package/Labels/format.ts +0 -13
- package/Labels/index.ts +0 -7
- package/Labels/resolveLabels.ts +0 -36
- package/Provider/UsherBoundary.tsx +0 -30
- package/Provider/UsherContext.ts +0 -109
- package/Provider/UsherProvider.tsx +0 -134
- package/Provider/index.ts +0 -7
- package/Provider/useUsher.ts +0 -72
- package/Reporting/AccessChoice.ts +0 -107
- package/Reporting/AccessFields.tsx +0 -74
- package/Reporting/AccessNotice.tsx +0 -33
- package/Reporting/ReportErrorDialog.tsx +0 -94
- package/Reporting/ReportIssueDialog.tsx +0 -80
- package/Reporting/ReportLimits.ts +0 -24
- package/Reporting/ReportSent.ts +0 -12
- package/Reporting/SentWithReport.tsx +0 -37
- package/Reporting/TechnicalDetails.tsx +0 -60
- package/Reporting/durationOptions.ts +0 -31
- package/Reporting/formatLocation.ts +0 -27
- package/Reporting/index.ts +0 -16
- package/Reporting/reportValues.ts +0 -150
- package/Reporting/useAccessChoice.ts +0 -53
- package/dist/cjs/Buttons/MyIssuesButton.d.ts +0 -14
- package/dist/cjs/Buttons/MyIssuesButton.d.ts.map +0 -1
- package/dist/cjs/Buttons/MyIssuesButton.js +0 -76
- package/dist/cjs/Buttons/MyIssuesButton.js.map +0 -1
- package/dist/cjs/Buttons/ReportButton.d.ts +0 -8
- package/dist/cjs/Buttons/ReportButton.d.ts.map +0 -1
- package/dist/cjs/Buttons/ReportButton.js +0 -34
- package/dist/cjs/Buttons/ReportButton.js.map +0 -1
- package/dist/cjs/Buttons/buttonModels.d.ts +0 -10
- package/dist/cjs/Buttons/buttonModels.d.ts.map +0 -1
- package/dist/cjs/Buttons/buttonModels.js +0 -44
- package/dist/cjs/Buttons/buttonModels.js.map +0 -1
- package/dist/cjs/Buttons/index.d.ts +0 -4
- package/dist/cjs/Buttons/index.d.ts.map +0 -1
- package/dist/cjs/Correlation/CorrelationTracker.d.ts +0 -10
- package/dist/cjs/Correlation/CorrelationTracker.d.ts.map +0 -1
- package/dist/cjs/Correlation/CorrelationTracker.js +0 -50
- package/dist/cjs/Correlation/CorrelationTracker.js.map +0 -1
- package/dist/cjs/Correlation/index.d.ts +0 -3
- package/dist/cjs/Correlation/index.d.ts.map +0 -1
- package/dist/cjs/Correlation/withCorrelationIdHeader.d.ts +0 -6
- package/dist/cjs/Correlation/withCorrelationIdHeader.d.ts.map +0 -1
- package/dist/cjs/Correlation/withCorrelationIdHeader.js +0 -39
- package/dist/cjs/Correlation/withCorrelationIdHeader.js.map +0 -1
- package/dist/cjs/Icons.d.ts +0 -4
- package/dist/cjs/Icons.d.ts.map +0 -1
- package/dist/cjs/Icons.js +0 -53
- package/dist/cjs/Icons.js.map +0 -1
- package/dist/cjs/Issues/IssueView/AccessPanel.d.ts +0 -6
- package/dist/cjs/Issues/IssueView/AccessPanel.d.ts.map +0 -1
- package/dist/cjs/Issues/IssueView/AccessPanel.js +0 -124
- package/dist/cjs/Issues/IssueView/AccessPanel.js.map +0 -1
- package/dist/cjs/Issues/IssueView/GrantAccessDialog.d.ts +0 -6
- package/dist/cjs/Issues/IssueView/GrantAccessDialog.d.ts.map +0 -1
- package/dist/cjs/Issues/IssueView/GrantAccessDialog.js +0 -56
- package/dist/cjs/Issues/IssueView/GrantAccessDialog.js.map +0 -1
- package/dist/cjs/Issues/IssueView/IdentityPanel.d.ts +0 -6
- package/dist/cjs/Issues/IssueView/IdentityPanel.d.ts.map +0 -1
- package/dist/cjs/Issues/IssueView/IdentityPanel.js +0 -45
- package/dist/cjs/Issues/IssueView/IdentityPanel.js.map +0 -1
- package/dist/cjs/Issues/IssueView/IssueActions.d.ts +0 -6
- package/dist/cjs/Issues/IssueView/IssueActions.d.ts.map +0 -1
- package/dist/cjs/Issues/IssueView/IssueActions.js +0 -58
- package/dist/cjs/Issues/IssueView/IssueActions.js.map +0 -1
- package/dist/cjs/Issues/IssueView/IssueConversationPanel.d.ts +0 -6
- package/dist/cjs/Issues/IssueView/IssueConversationPanel.d.ts.map +0 -1
- package/dist/cjs/Issues/IssueView/IssueConversationPanel.js +0 -97
- package/dist/cjs/Issues/IssueView/IssueConversationPanel.js.map +0 -1
- package/dist/cjs/Issues/IssueView/IssueHeader.d.ts +0 -7
- package/dist/cjs/Issues/IssueView/IssueHeader.d.ts.map +0 -1
- package/dist/cjs/Issues/IssueView/IssueHeader.js +0 -94
- package/dist/cjs/Issues/IssueView/IssueHeader.js.map +0 -1
- package/dist/cjs/Issues/IssueView/IssueView.d.ts +0 -7
- package/dist/cjs/Issues/IssueView/IssueView.d.ts.map +0 -1
- package/dist/cjs/Issues/IssueView/IssueView.js +0 -85
- package/dist/cjs/Issues/IssueView/IssueView.js.map +0 -1
- package/dist/cjs/Issues/IssueView/QuestionBanner.d.ts +0 -5
- package/dist/cjs/Issues/IssueView/QuestionBanner.d.ts.map +0 -1
- package/dist/cjs/Issues/IssueView/QuestionBanner.js +0 -24
- package/dist/cjs/Issues/IssueView/QuestionBanner.js.map +0 -1
- package/dist/cjs/Issues/IssueView/ReopenIssueDialog.d.ts +0 -6
- package/dist/cjs/Issues/IssueView/ReopenIssueDialog.d.ts.map +0 -1
- package/dist/cjs/Issues/IssueView/ReopenIssueDialog.js +0 -34
- package/dist/cjs/Issues/IssueView/ReopenIssueDialog.js.map +0 -1
- package/dist/cjs/Issues/IssueView/ShareIdentityDialog.d.ts +0 -6
- package/dist/cjs/Issues/IssueView/ShareIdentityDialog.d.ts.map +0 -1
- package/dist/cjs/Issues/IssueView/ShareIdentityDialog.js +0 -32
- package/dist/cjs/Issues/IssueView/ShareIdentityDialog.js.map +0 -1
- package/dist/cjs/Issues/IssueView/StatusStrip.d.ts +0 -6
- package/dist/cjs/Issues/IssueView/StatusStrip.d.ts.map +0 -1
- package/dist/cjs/Issues/IssueView/StatusStrip.js +0 -31
- package/dist/cjs/Issues/IssueView/StatusStrip.js.map +0 -1
- package/dist/cjs/Issues/IssueView/SupportSessions.d.ts +0 -7
- package/dist/cjs/Issues/IssueView/SupportSessions.d.ts.map +0 -1
- package/dist/cjs/Issues/IssueView/SupportSessions.js +0 -62
- package/dist/cjs/Issues/IssueView/SupportSessions.js.map +0 -1
- package/dist/cjs/Issues/IssueView/index.d.ts +0 -13
- package/dist/cjs/Issues/IssueView/index.d.ts.map +0 -1
- package/dist/cjs/Issues/MyIssues/IssueList.d.ts +0 -7
- package/dist/cjs/Issues/MyIssues/IssueList.d.ts.map +0 -1
- package/dist/cjs/Issues/MyIssues/IssueList.js +0 -92
- package/dist/cjs/Issues/MyIssues/IssueList.js.map +0 -1
- package/dist/cjs/Issues/MyIssues/MyIssuesDialog.d.ts +0 -7
- package/dist/cjs/Issues/MyIssues/MyIssuesDialog.d.ts.map +0 -1
- package/dist/cjs/Issues/MyIssues/MyIssuesDialog.js +0 -79
- package/dist/cjs/Issues/MyIssues/MyIssuesDialog.js.map +0 -1
- package/dist/cjs/Issues/MyIssues/MyIssuesNavigation.d.ts +0 -21
- package/dist/cjs/Issues/MyIssues/MyIssuesNavigation.d.ts.map +0 -1
- package/dist/cjs/Issues/MyIssues/MyIssuesNavigation.js +0 -52
- package/dist/cjs/Issues/MyIssues/MyIssuesNavigation.js.map +0 -1
- package/dist/cjs/Issues/MyIssues/index.d.ts +0 -4
- package/dist/cjs/Issues/MyIssues/index.d.ts.map +0 -1
- package/dist/cjs/Issues/MyIssuesList.d.ts +0 -7
- package/dist/cjs/Issues/MyIssuesList.d.ts.map +0 -1
- package/dist/cjs/Issues/MyIssuesList.js +0 -33
- package/dist/cjs/Issues/MyIssuesList.js.map +0 -1
- package/dist/cjs/Issues/accessStatus.d.ts +0 -13
- package/dist/cjs/Issues/accessStatus.d.ts.map +0 -1
- package/dist/cjs/Issues/accessStatus.js +0 -60
- package/dist/cjs/Issues/accessStatus.js.map +0 -1
- package/dist/cjs/Issues/conversationMessages.d.ts +0 -14
- package/dist/cjs/Issues/conversationMessages.d.ts.map +0 -1
- package/dist/cjs/Issues/conversationMessages.js +0 -131
- package/dist/cjs/Issues/conversationMessages.js.map +0 -1
- package/dist/cjs/Issues/index.d.ts +0 -10
- package/dist/cjs/Issues/index.d.ts.map +0 -1
- package/dist/cjs/Issues/issueStates.d.ts +0 -12
- package/dist/cjs/Issues/issueStates.d.ts.map +0 -1
- package/dist/cjs/Issues/issueStates.js +0 -86
- package/dist/cjs/Issues/issueStates.js.map +0 -1
- package/dist/cjs/Issues/sessionActivity.d.ts +0 -8
- package/dist/cjs/Issues/sessionActivity.d.ts.map +0 -1
- package/dist/cjs/Issues/sessionActivity.js +0 -39
- package/dist/cjs/Issues/sessionActivity.js.map +0 -1
- package/dist/cjs/Issues/useAccessStatus.d.ts +0 -4
- package/dist/cjs/Issues/useAccessStatus.d.ts.map +0 -1
- package/dist/cjs/Issues/useAccessStatus.js +0 -30
- package/dist/cjs/Issues/useAccessStatus.js.map +0 -1
- package/dist/cjs/Issues/webAddress.d.ts +0 -2
- package/dist/cjs/Issues/webAddress.d.ts.map +0 -1
- package/dist/cjs/Issues/webAddress.js +0 -24
- package/dist/cjs/Issues/webAddress.js.map +0 -1
- package/dist/cjs/Labels/UsherLabels.d.ts +0 -177
- package/dist/cjs/Labels/UsherLabels.d.ts.map +0 -1
- package/dist/cjs/Labels/defaultUsherLabels.d.ts +0 -3
- package/dist/cjs/Labels/defaultUsherLabels.d.ts.map +0 -1
- package/dist/cjs/Labels/defaultUsherLabels.js +0 -179
- package/dist/cjs/Labels/defaultUsherLabels.js.map +0 -1
- package/dist/cjs/Labels/format.d.ts +0 -2
- package/dist/cjs/Labels/format.d.ts.map +0 -1
- package/dist/cjs/Labels/format.js +0 -15
- package/dist/cjs/Labels/format.js.map +0 -1
- package/dist/cjs/Labels/index.d.ts +0 -5
- package/dist/cjs/Labels/index.d.ts.map +0 -1
- package/dist/cjs/Labels/resolveLabels.d.ts +0 -3
- package/dist/cjs/Labels/resolveLabels.d.ts.map +0 -1
- package/dist/cjs/Labels/resolveLabels.js +0 -35
- package/dist/cjs/Labels/resolveLabels.js.map +0 -1
- package/dist/cjs/Provider/UsherBoundary.d.ts +0 -6
- package/dist/cjs/Provider/UsherBoundary.d.ts.map +0 -1
- package/dist/cjs/Provider/UsherBoundary.js +0 -24
- package/dist/cjs/Provider/UsherBoundary.js.map +0 -1
- package/dist/cjs/Provider/UsherContext.d.ts +0 -24
- package/dist/cjs/Provider/UsherContext.d.ts.map +0 -1
- package/dist/cjs/Provider/UsherContext.js +0 -41
- package/dist/cjs/Provider/UsherContext.js.map +0 -1
- package/dist/cjs/Provider/UsherProvider.d.ts +0 -14
- package/dist/cjs/Provider/UsherProvider.d.ts.map +0 -1
- package/dist/cjs/Provider/UsherProvider.js +0 -122
- package/dist/cjs/Provider/UsherProvider.js.map +0 -1
- package/dist/cjs/Provider/index.d.ts +0 -5
- package/dist/cjs/Provider/index.d.ts.map +0 -1
- package/dist/cjs/Provider/useUsher.d.ts +0 -13
- package/dist/cjs/Provider/useUsher.d.ts.map +0 -1
- package/dist/cjs/Provider/useUsher.js +0 -31
- package/dist/cjs/Provider/useUsher.js.map +0 -1
- package/dist/cjs/Reporting/AccessChoice.d.ts +0 -13
- package/dist/cjs/Reporting/AccessChoice.d.ts.map +0 -1
- package/dist/cjs/Reporting/AccessChoice.js +0 -113
- package/dist/cjs/Reporting/AccessChoice.js.map +0 -1
- package/dist/cjs/Reporting/AccessFields.d.ts +0 -12
- package/dist/cjs/Reporting/AccessFields.d.ts.map +0 -1
- package/dist/cjs/Reporting/AccessFields.js +0 -79
- package/dist/cjs/Reporting/AccessFields.js.map +0 -1
- package/dist/cjs/Reporting/AccessNotice.d.ts +0 -7
- package/dist/cjs/Reporting/AccessNotice.d.ts.map +0 -1
- package/dist/cjs/Reporting/AccessNotice.js +0 -28
- package/dist/cjs/Reporting/AccessNotice.js.map +0 -1
- package/dist/cjs/Reporting/ReportErrorDialog.d.ts +0 -9
- package/dist/cjs/Reporting/ReportErrorDialog.d.ts.map +0 -1
- package/dist/cjs/Reporting/ReportErrorDialog.js +0 -87
- package/dist/cjs/Reporting/ReportErrorDialog.js.map +0 -1
- package/dist/cjs/Reporting/ReportIssueDialog.d.ts +0 -8
- package/dist/cjs/Reporting/ReportIssueDialog.d.ts.map +0 -1
- package/dist/cjs/Reporting/ReportIssueDialog.js +0 -81
- package/dist/cjs/Reporting/ReportIssueDialog.js.map +0 -1
- package/dist/cjs/Reporting/ReportLimits.d.ts +0 -8
- package/dist/cjs/Reporting/ReportLimits.d.ts.map +0 -1
- package/dist/cjs/Reporting/ReportLimits.js +0 -19
- package/dist/cjs/Reporting/ReportLimits.js.map +0 -1
- package/dist/cjs/Reporting/ReportSent.d.ts +0 -5
- package/dist/cjs/Reporting/ReportSent.d.ts.map +0 -1
- package/dist/cjs/Reporting/SentWithReport.d.ts +0 -7
- package/dist/cjs/Reporting/SentWithReport.d.ts.map +0 -1
- package/dist/cjs/Reporting/SentWithReport.js +0 -40
- package/dist/cjs/Reporting/SentWithReport.js.map +0 -1
- package/dist/cjs/Reporting/TechnicalDetails.d.ts +0 -9
- package/dist/cjs/Reporting/TechnicalDetails.d.ts.map +0 -1
- package/dist/cjs/Reporting/TechnicalDetails.js +0 -75
- package/dist/cjs/Reporting/TechnicalDetails.js.map +0 -1
- package/dist/cjs/Reporting/durationOptions.d.ts +0 -9
- package/dist/cjs/Reporting/durationOptions.d.ts.map +0 -1
- package/dist/cjs/Reporting/durationOptions.js +0 -29
- package/dist/cjs/Reporting/durationOptions.js.map +0 -1
- package/dist/cjs/Reporting/formatLocation.d.ts +0 -7
- package/dist/cjs/Reporting/formatLocation.d.ts.map +0 -1
- package/dist/cjs/Reporting/formatLocation.js +0 -23
- package/dist/cjs/Reporting/formatLocation.js.map +0 -1
- package/dist/cjs/Reporting/index.d.ts +0 -14
- package/dist/cjs/Reporting/index.d.ts.map +0 -1
- package/dist/cjs/Reporting/reportValues.d.ts +0 -22
- package/dist/cjs/Reporting/reportValues.d.ts.map +0 -1
- package/dist/cjs/Reporting/reportValues.js +0 -124
- package/dist/cjs/Reporting/reportValues.js.map +0 -1
- package/dist/cjs/Reporting/useAccessChoice.d.ts +0 -13
- package/dist/cjs/Reporting/useAccessChoice.d.ts.map +0 -1
- package/dist/cjs/Reporting/useAccessChoice.js +0 -41
- package/dist/cjs/Reporting/useAccessChoice.js.map +0 -1
- package/dist/cjs/index.d.ts +0 -8
- package/dist/cjs/index.d.ts.map +0 -1
- package/dist/cjs/index.js +0 -133
- package/dist/cjs/index.js.map +0 -1
- package/dist/cjs/package.json +0 -3
- package/dist/esm/Buttons/MyIssuesButton.d.ts +0 -14
- package/dist/esm/Buttons/MyIssuesButton.d.ts.map +0 -1
- package/dist/esm/Buttons/MyIssuesButton.js +0 -73
- package/dist/esm/Buttons/MyIssuesButton.js.map +0 -1
- package/dist/esm/Buttons/ReportButton.d.ts +0 -8
- package/dist/esm/Buttons/ReportButton.d.ts.map +0 -1
- package/dist/esm/Buttons/ReportButton.js +0 -32
- package/dist/esm/Buttons/ReportButton.js.map +0 -1
- package/dist/esm/Buttons/buttonModels.d.ts +0 -10
- package/dist/esm/Buttons/buttonModels.d.ts.map +0 -1
- package/dist/esm/Buttons/buttonModels.js +0 -41
- package/dist/esm/Buttons/buttonModels.js.map +0 -1
- package/dist/esm/Buttons/index.d.ts +0 -4
- package/dist/esm/Buttons/index.d.ts.map +0 -1
- package/dist/esm/Buttons/index.js +0 -4
- package/dist/esm/Buttons/index.js.map +0 -1
- package/dist/esm/Correlation/CorrelationTracker.d.ts +0 -10
- package/dist/esm/Correlation/CorrelationTracker.d.ts.map +0 -1
- package/dist/esm/Correlation/CorrelationTracker.js +0 -48
- package/dist/esm/Correlation/CorrelationTracker.js.map +0 -1
- package/dist/esm/Correlation/index.d.ts +0 -3
- package/dist/esm/Correlation/index.d.ts.map +0 -1
- package/dist/esm/Correlation/index.js +0 -3
- package/dist/esm/Correlation/index.js.map +0 -1
- package/dist/esm/Correlation/withCorrelationIdHeader.d.ts +0 -6
- package/dist/esm/Correlation/withCorrelationIdHeader.d.ts.map +0 -1
- package/dist/esm/Correlation/withCorrelationIdHeader.js +0 -36
- package/dist/esm/Correlation/withCorrelationIdHeader.js.map +0 -1
- package/dist/esm/Icons.d.ts +0 -4
- package/dist/esm/Icons.d.ts.map +0 -1
- package/dist/esm/Icons.js +0 -49
- package/dist/esm/Icons.js.map +0 -1
- package/dist/esm/Issues/IssueView/AccessPanel.d.ts +0 -6
- package/dist/esm/Issues/IssueView/AccessPanel.d.ts.map +0 -1
- package/dist/esm/Issues/IssueView/AccessPanel.js +0 -122
- package/dist/esm/Issues/IssueView/AccessPanel.js.map +0 -1
- package/dist/esm/Issues/IssueView/GrantAccessDialog.d.ts +0 -6
- package/dist/esm/Issues/IssueView/GrantAccessDialog.d.ts.map +0 -1
- package/dist/esm/Issues/IssueView/GrantAccessDialog.js +0 -54
- package/dist/esm/Issues/IssueView/GrantAccessDialog.js.map +0 -1
- package/dist/esm/Issues/IssueView/IdentityPanel.d.ts +0 -6
- package/dist/esm/Issues/IssueView/IdentityPanel.d.ts.map +0 -1
- package/dist/esm/Issues/IssueView/IdentityPanel.js +0 -43
- package/dist/esm/Issues/IssueView/IdentityPanel.js.map +0 -1
- package/dist/esm/Issues/IssueView/IssueActions.d.ts +0 -6
- package/dist/esm/Issues/IssueView/IssueActions.d.ts.map +0 -1
- package/dist/esm/Issues/IssueView/IssueActions.js +0 -56
- package/dist/esm/Issues/IssueView/IssueActions.js.map +0 -1
- package/dist/esm/Issues/IssueView/IssueConversationPanel.d.ts +0 -6
- package/dist/esm/Issues/IssueView/IssueConversationPanel.d.ts.map +0 -1
- package/dist/esm/Issues/IssueView/IssueConversationPanel.js +0 -95
- package/dist/esm/Issues/IssueView/IssueConversationPanel.js.map +0 -1
- package/dist/esm/Issues/IssueView/IssueHeader.d.ts +0 -7
- package/dist/esm/Issues/IssueView/IssueHeader.d.ts.map +0 -1
- package/dist/esm/Issues/IssueView/IssueHeader.js +0 -92
- package/dist/esm/Issues/IssueView/IssueHeader.js.map +0 -1
- package/dist/esm/Issues/IssueView/IssueView.d.ts +0 -7
- package/dist/esm/Issues/IssueView/IssueView.d.ts.map +0 -1
- package/dist/esm/Issues/IssueView/IssueView.js +0 -83
- package/dist/esm/Issues/IssueView/IssueView.js.map +0 -1
- package/dist/esm/Issues/IssueView/QuestionBanner.d.ts +0 -5
- package/dist/esm/Issues/IssueView/QuestionBanner.d.ts.map +0 -1
- package/dist/esm/Issues/IssueView/QuestionBanner.js +0 -22
- package/dist/esm/Issues/IssueView/QuestionBanner.js.map +0 -1
- package/dist/esm/Issues/IssueView/ReopenIssueDialog.d.ts +0 -6
- package/dist/esm/Issues/IssueView/ReopenIssueDialog.d.ts.map +0 -1
- package/dist/esm/Issues/IssueView/ReopenIssueDialog.js +0 -32
- package/dist/esm/Issues/IssueView/ReopenIssueDialog.js.map +0 -1
- package/dist/esm/Issues/IssueView/ShareIdentityDialog.d.ts +0 -6
- package/dist/esm/Issues/IssueView/ShareIdentityDialog.d.ts.map +0 -1
- package/dist/esm/Issues/IssueView/ShareIdentityDialog.js +0 -30
- package/dist/esm/Issues/IssueView/ShareIdentityDialog.js.map +0 -1
- package/dist/esm/Issues/IssueView/StatusStrip.d.ts +0 -6
- package/dist/esm/Issues/IssueView/StatusStrip.d.ts.map +0 -1
- package/dist/esm/Issues/IssueView/StatusStrip.js +0 -29
- package/dist/esm/Issues/IssueView/StatusStrip.js.map +0 -1
- package/dist/esm/Issues/IssueView/SupportSessions.d.ts +0 -7
- package/dist/esm/Issues/IssueView/SupportSessions.d.ts.map +0 -1
- package/dist/esm/Issues/IssueView/SupportSessions.js +0 -60
- package/dist/esm/Issues/IssueView/SupportSessions.js.map +0 -1
- package/dist/esm/Issues/IssueView/index.d.ts +0 -13
- package/dist/esm/Issues/IssueView/index.d.ts.map +0 -1
- package/dist/esm/Issues/IssueView/index.js +0 -13
- package/dist/esm/Issues/IssueView/index.js.map +0 -1
- package/dist/esm/Issues/MyIssues/IssueList.d.ts +0 -7
- package/dist/esm/Issues/MyIssues/IssueList.d.ts.map +0 -1
- package/dist/esm/Issues/MyIssues/IssueList.js +0 -90
- package/dist/esm/Issues/MyIssues/IssueList.js.map +0 -1
- package/dist/esm/Issues/MyIssues/MyIssuesDialog.d.ts +0 -7
- package/dist/esm/Issues/MyIssues/MyIssuesDialog.d.ts.map +0 -1
- package/dist/esm/Issues/MyIssues/MyIssuesDialog.js +0 -77
- package/dist/esm/Issues/MyIssues/MyIssuesDialog.js.map +0 -1
- package/dist/esm/Issues/MyIssues/MyIssuesNavigation.d.ts +0 -21
- package/dist/esm/Issues/MyIssues/MyIssuesNavigation.d.ts.map +0 -1
- package/dist/esm/Issues/MyIssues/MyIssuesNavigation.js +0 -49
- package/dist/esm/Issues/MyIssues/MyIssuesNavigation.js.map +0 -1
- package/dist/esm/Issues/MyIssues/index.d.ts +0 -4
- package/dist/esm/Issues/MyIssues/index.d.ts.map +0 -1
- package/dist/esm/Issues/MyIssues/index.js +0 -4
- package/dist/esm/Issues/MyIssues/index.js.map +0 -1
- package/dist/esm/Issues/MyIssuesList.d.ts +0 -7
- package/dist/esm/Issues/MyIssuesList.d.ts.map +0 -1
- package/dist/esm/Issues/MyIssuesList.js +0 -29
- package/dist/esm/Issues/MyIssuesList.js.map +0 -1
- package/dist/esm/Issues/accessStatus.d.ts +0 -13
- package/dist/esm/Issues/accessStatus.d.ts.map +0 -1
- package/dist/esm/Issues/accessStatus.js +0 -54
- package/dist/esm/Issues/accessStatus.js.map +0 -1
- package/dist/esm/Issues/conversationMessages.d.ts +0 -14
- package/dist/esm/Issues/conversationMessages.d.ts.map +0 -1
- package/dist/esm/Issues/conversationMessages.js +0 -125
- package/dist/esm/Issues/conversationMessages.js.map +0 -1
- package/dist/esm/Issues/index.d.ts +0 -10
- package/dist/esm/Issues/index.d.ts.map +0 -1
- package/dist/esm/Issues/index.js +0 -10
- package/dist/esm/Issues/index.js.map +0 -1
- package/dist/esm/Issues/issueStates.d.ts +0 -12
- package/dist/esm/Issues/issueStates.d.ts.map +0 -1
- package/dist/esm/Issues/issueStates.js +0 -81
- package/dist/esm/Issues/issueStates.js.map +0 -1
- package/dist/esm/Issues/sessionActivity.d.ts +0 -8
- package/dist/esm/Issues/sessionActivity.d.ts.map +0 -1
- package/dist/esm/Issues/sessionActivity.js +0 -37
- package/dist/esm/Issues/sessionActivity.js.map +0 -1
- package/dist/esm/Issues/useAccessStatus.d.ts +0 -4
- package/dist/esm/Issues/useAccessStatus.d.ts.map +0 -1
- package/dist/esm/Issues/useAccessStatus.js +0 -28
- package/dist/esm/Issues/useAccessStatus.js.map +0 -1
- package/dist/esm/Issues/webAddress.d.ts +0 -2
- package/dist/esm/Issues/webAddress.d.ts.map +0 -1
- package/dist/esm/Issues/webAddress.js +0 -22
- package/dist/esm/Issues/webAddress.js.map +0 -1
- package/dist/esm/Labels/UsherLabels.d.ts +0 -177
- package/dist/esm/Labels/UsherLabels.d.ts.map +0 -1
- package/dist/esm/Labels/UsherLabels.js +0 -2
- package/dist/esm/Labels/UsherLabels.js.map +0 -1
- package/dist/esm/Labels/defaultUsherLabels.d.ts +0 -3
- package/dist/esm/Labels/defaultUsherLabels.d.ts.map +0 -1
- package/dist/esm/Labels/defaultUsherLabels.js +0 -177
- package/dist/esm/Labels/defaultUsherLabels.js.map +0 -1
- package/dist/esm/Labels/format.d.ts +0 -2
- package/dist/esm/Labels/format.d.ts.map +0 -1
- package/dist/esm/Labels/format.js +0 -13
- package/dist/esm/Labels/format.js.map +0 -1
- package/dist/esm/Labels/index.d.ts +0 -5
- package/dist/esm/Labels/index.d.ts.map +0 -1
- package/dist/esm/Labels/index.js +0 -5
- package/dist/esm/Labels/index.js.map +0 -1
- package/dist/esm/Labels/resolveLabels.d.ts +0 -3
- package/dist/esm/Labels/resolveLabels.d.ts.map +0 -1
- package/dist/esm/Labels/resolveLabels.js +0 -33
- package/dist/esm/Labels/resolveLabels.js.map +0 -1
- package/dist/esm/Provider/UsherBoundary.d.ts +0 -6
- package/dist/esm/Provider/UsherBoundary.d.ts.map +0 -1
- package/dist/esm/Provider/UsherBoundary.js +0 -22
- package/dist/esm/Provider/UsherBoundary.js.map +0 -1
- package/dist/esm/Provider/UsherContext.d.ts +0 -24
- package/dist/esm/Provider/UsherContext.d.ts.map +0 -1
- package/dist/esm/Provider/UsherContext.js +0 -36
- package/dist/esm/Provider/UsherContext.js.map +0 -1
- package/dist/esm/Provider/UsherProvider.d.ts +0 -14
- package/dist/esm/Provider/UsherProvider.d.ts.map +0 -1
- package/dist/esm/Provider/UsherProvider.js +0 -120
- package/dist/esm/Provider/UsherProvider.js.map +0 -1
- package/dist/esm/Provider/index.d.ts +0 -5
- package/dist/esm/Provider/index.d.ts.map +0 -1
- package/dist/esm/Provider/index.js +0 -5
- package/dist/esm/Provider/index.js.map +0 -1
- package/dist/esm/Provider/useUsher.d.ts +0 -13
- package/dist/esm/Provider/useUsher.d.ts.map +0 -1
- package/dist/esm/Provider/useUsher.js +0 -29
- package/dist/esm/Provider/useUsher.js.map +0 -1
- package/dist/esm/Reporting/AccessChoice.d.ts +0 -13
- package/dist/esm/Reporting/AccessChoice.d.ts.map +0 -1
- package/dist/esm/Reporting/AccessChoice.js +0 -106
- package/dist/esm/Reporting/AccessChoice.js.map +0 -1
- package/dist/esm/Reporting/AccessFields.d.ts +0 -12
- package/dist/esm/Reporting/AccessFields.d.ts.map +0 -1
- package/dist/esm/Reporting/AccessFields.js +0 -77
- package/dist/esm/Reporting/AccessFields.js.map +0 -1
- package/dist/esm/Reporting/AccessNotice.d.ts +0 -7
- package/dist/esm/Reporting/AccessNotice.d.ts.map +0 -1
- package/dist/esm/Reporting/AccessNotice.js +0 -26
- package/dist/esm/Reporting/AccessNotice.js.map +0 -1
- package/dist/esm/Reporting/ReportErrorDialog.d.ts +0 -9
- package/dist/esm/Reporting/ReportErrorDialog.d.ts.map +0 -1
- package/dist/esm/Reporting/ReportErrorDialog.js +0 -85
- package/dist/esm/Reporting/ReportErrorDialog.js.map +0 -1
- package/dist/esm/Reporting/ReportIssueDialog.d.ts +0 -8
- package/dist/esm/Reporting/ReportIssueDialog.d.ts.map +0 -1
- package/dist/esm/Reporting/ReportIssueDialog.js +0 -79
- package/dist/esm/Reporting/ReportIssueDialog.js.map +0 -1
- package/dist/esm/Reporting/ReportLimits.d.ts +0 -8
- package/dist/esm/Reporting/ReportLimits.d.ts.map +0 -1
- package/dist/esm/Reporting/ReportLimits.js +0 -17
- package/dist/esm/Reporting/ReportLimits.js.map +0 -1
- package/dist/esm/Reporting/ReportSent.d.ts +0 -5
- package/dist/esm/Reporting/ReportSent.d.ts.map +0 -1
- package/dist/esm/Reporting/ReportSent.js +0 -2
- package/dist/esm/Reporting/ReportSent.js.map +0 -1
- package/dist/esm/Reporting/SentWithReport.d.ts +0 -7
- package/dist/esm/Reporting/SentWithReport.d.ts.map +0 -1
- package/dist/esm/Reporting/SentWithReport.js +0 -38
- package/dist/esm/Reporting/SentWithReport.js.map +0 -1
- package/dist/esm/Reporting/TechnicalDetails.d.ts +0 -9
- package/dist/esm/Reporting/TechnicalDetails.d.ts.map +0 -1
- package/dist/esm/Reporting/TechnicalDetails.js +0 -73
- package/dist/esm/Reporting/TechnicalDetails.js.map +0 -1
- package/dist/esm/Reporting/durationOptions.d.ts +0 -9
- package/dist/esm/Reporting/durationOptions.d.ts.map +0 -1
- package/dist/esm/Reporting/durationOptions.js +0 -27
- package/dist/esm/Reporting/durationOptions.js.map +0 -1
- package/dist/esm/Reporting/formatLocation.d.ts +0 -7
- package/dist/esm/Reporting/formatLocation.d.ts.map +0 -1
- package/dist/esm/Reporting/formatLocation.js +0 -21
- package/dist/esm/Reporting/formatLocation.js.map +0 -1
- package/dist/esm/Reporting/index.d.ts +0 -14
- package/dist/esm/Reporting/index.d.ts.map +0 -1
- package/dist/esm/Reporting/index.js +0 -14
- package/dist/esm/Reporting/index.js.map +0 -1
- package/dist/esm/Reporting/reportValues.d.ts +0 -22
- package/dist/esm/Reporting/reportValues.d.ts.map +0 -1
- package/dist/esm/Reporting/reportValues.js +0 -116
- package/dist/esm/Reporting/reportValues.js.map +0 -1
- package/dist/esm/Reporting/useAccessChoice.d.ts +0 -13
- package/dist/esm/Reporting/useAccessChoice.d.ts.map +0 -1
- package/dist/esm/Reporting/useAccessChoice.js +0 -39
- package/dist/esm/Reporting/useAccessChoice.js.map +0 -1
- package/dist/esm/index.d.ts +0 -8
- package/dist/esm/index.d.ts.map +0 -1
- package/dist/esm/index.js +0 -48
- package/dist/esm/index.js.map +0 -1
- package/dist/esm/package.json +0 -3
- package/index.ts +0 -10
- package/styles.css +0 -320
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"AccessPanel.d.ts","sourceRoot":"","sources":["../../../../Issues/IssueView/AccessPanel.tsx"],"names":[],"mappings":"AAMA,OAAO,EAAE,iBAAiB,EAA4B,MAAM,0BAA0B,CAAC;AAavF,MAAM,WAAW,gBAAgB;IAE7B,KAAK,EAAE,iBAAiB,CAAC;CAC5B;AAMD,eAAO,MAAM,WAAW,GAAI,WAAW,gBAAgB,gCAwDtD,CAAC"}
|
|
@@ -1,122 +0,0 @@
|
|
|
1
|
-
import { jsxs, jsx, Fragment } from 'react/jsx-runtime';
|
|
2
|
-
import { useDialog, useConfirmationDialog, DialogButtons, DialogResult } from '@cratis/arc.react/dialogs';
|
|
3
|
-
import { Button } from '@cratis/components/Common';
|
|
4
|
-
import { toastCommandResult } from '@cratis/components/Notifications';
|
|
5
|
-
import { RevokeAccess, IssueState } from '@cratis/showrunner.usher';
|
|
6
|
-
import { useId, useState } from 'react';
|
|
7
|
-
import { format } from '../../Labels/format.js';
|
|
8
|
-
import { useUsherContext } from '../../Provider/UsherContext.js';
|
|
9
|
-
import { formatTime } from '../../Reporting/AccessChoice.js';
|
|
10
|
-
import { AccessStatus } from '../accessStatus.js';
|
|
11
|
-
import { useAccessStatus } from '../useAccessStatus.js';
|
|
12
|
-
import { GrantAccessDialog } from './GrantAccessDialog.js';
|
|
13
|
-
import { SupportSessions } from './SupportSessions.js';
|
|
14
|
-
|
|
15
|
-
/**
|
|
16
|
-
* Shows whether support may sign in as the reporter, lets them grant or revoke it, highlights support's pending
|
|
17
|
-
* request, and lists the sessions in which support signed in.
|
|
18
|
-
*/ const AccessPanel = ({ issue })=>{
|
|
19
|
-
const { labels, locale } = useUsherContext();
|
|
20
|
-
const headingId = useId();
|
|
21
|
-
const [GrantDialog, showGrantDialog] = useDialog(GrantAccessDialog);
|
|
22
|
-
const [confirm] = useConfirmationDialog();
|
|
23
|
-
const [revokeAccess] = RevokeAccess.use();
|
|
24
|
-
const [requestDismissed, setRequestDismissed] = useState(false);
|
|
25
|
-
const [status] = useAccessStatus(issue.access);
|
|
26
|
-
const isWithdrawn = issue.state === IssueState.withdrawn;
|
|
27
|
-
const showsRequest = status === AccessStatus.requested && !requestDismissed && !isWithdrawn;
|
|
28
|
-
const validUntil = issue.access?.validUntil instanceof Date ? issue.access.validUntil : new Date(issue.access?.validUntil);
|
|
29
|
-
const heading = status === AccessStatus.granted ? labels.accessPanel.grantedHeading : showsRequest ? labels.accessPanel.requestedHeading : labels.accessPanel.notGrantedHeading;
|
|
30
|
-
const revoke = async ()=>{
|
|
31
|
-
const answer = await confirm(labels.accessPanel.revokeTitle, labels.accessPanel.revokeMessage, DialogButtons.YesNo);
|
|
32
|
-
if (answer !== DialogResult.Yes) {
|
|
33
|
-
return;
|
|
34
|
-
}
|
|
35
|
-
revokeAccess.issueId = issue.id;
|
|
36
|
-
toastCommandResult(await revokeAccess.execute(), {
|
|
37
|
-
showSuccess: false
|
|
38
|
-
});
|
|
39
|
-
};
|
|
40
|
-
const grant = ()=>void showGrantDialog({
|
|
41
|
-
issueId: issue.id
|
|
42
|
-
});
|
|
43
|
-
return /*#__PURE__*/ jsxs("section", {
|
|
44
|
-
className: "usher-panel",
|
|
45
|
-
"data-highlighted": showsRequest || undefined,
|
|
46
|
-
"aria-labelledby": headingId,
|
|
47
|
-
children: [
|
|
48
|
-
/*#__PURE__*/ jsx("h4", {
|
|
49
|
-
id: headingId,
|
|
50
|
-
className: "usher-panel__heading",
|
|
51
|
-
children: heading
|
|
52
|
-
}),
|
|
53
|
-
status === AccessStatus.granted && /*#__PURE__*/ jsxs(Fragment, {
|
|
54
|
-
children: [
|
|
55
|
-
/*#__PURE__*/ jsx("p", {
|
|
56
|
-
className: "usher-panel__text",
|
|
57
|
-
children: format(labels.accessPanel.grantedUntil, {
|
|
58
|
-
time: formatTime(validUntil, locale)
|
|
59
|
-
})
|
|
60
|
-
}),
|
|
61
|
-
/*#__PURE__*/ jsx(Button, {
|
|
62
|
-
variant: "outline",
|
|
63
|
-
tone: "critical",
|
|
64
|
-
size: "small",
|
|
65
|
-
label: labels.accessPanel.revoke,
|
|
66
|
-
onClick: ()=>void revoke()
|
|
67
|
-
})
|
|
68
|
-
]
|
|
69
|
-
}),
|
|
70
|
-
showsRequest && /*#__PURE__*/ jsxs(Fragment, {
|
|
71
|
-
children: [
|
|
72
|
-
/*#__PURE__*/ jsx("p", {
|
|
73
|
-
className: "usher-panel__text",
|
|
74
|
-
children: format(labels.accessPanel.requestReason, {
|
|
75
|
-
reason: issue.access.request.reason
|
|
76
|
-
})
|
|
77
|
-
}),
|
|
78
|
-
/*#__PURE__*/ jsxs("div", {
|
|
79
|
-
className: "usher-panel__actions",
|
|
80
|
-
children: [
|
|
81
|
-
/*#__PURE__*/ jsx(Button, {
|
|
82
|
-
variant: "solid",
|
|
83
|
-
tone: "accent",
|
|
84
|
-
size: "small",
|
|
85
|
-
label: labels.accessPanel.grant,
|
|
86
|
-
onClick: grant
|
|
87
|
-
}),
|
|
88
|
-
/*#__PURE__*/ jsx(Button, {
|
|
89
|
-
variant: "ghost",
|
|
90
|
-
size: "small",
|
|
91
|
-
label: labels.accessPanel.notNow,
|
|
92
|
-
onClick: ()=>setRequestDismissed(true)
|
|
93
|
-
})
|
|
94
|
-
]
|
|
95
|
-
})
|
|
96
|
-
]
|
|
97
|
-
}),
|
|
98
|
-
status !== AccessStatus.granted && !showsRequest && /*#__PURE__*/ jsxs(Fragment, {
|
|
99
|
-
children: [
|
|
100
|
-
/*#__PURE__*/ jsx("p", {
|
|
101
|
-
className: "usher-panel__text",
|
|
102
|
-
children: labels.accessPanel.notGranted
|
|
103
|
-
}),
|
|
104
|
-
!isWithdrawn && /*#__PURE__*/ jsx(Button, {
|
|
105
|
-
variant: "outline",
|
|
106
|
-
size: "small",
|
|
107
|
-
label: labels.accessPanel.grant,
|
|
108
|
-
onClick: grant
|
|
109
|
-
})
|
|
110
|
-
]
|
|
111
|
-
}),
|
|
112
|
-
/*#__PURE__*/ jsx(SupportSessions, {
|
|
113
|
-
sessions: issue.access?.sessions ?? [],
|
|
114
|
-
entries: issue.entries ?? []
|
|
115
|
-
}),
|
|
116
|
-
/*#__PURE__*/ jsx(GrantDialog, {})
|
|
117
|
-
]
|
|
118
|
-
});
|
|
119
|
-
};
|
|
120
|
-
|
|
121
|
-
export { AccessPanel };
|
|
122
|
-
//# sourceMappingURL=AccessPanel.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"AccessPanel.js","sources":["../../../../Issues/IssueView/AccessPanel.tsx"],"sourcesContent":["// Copyright (c) Cratis. All rights reserved.\n// Licensed under the MIT license. See LICENSE file in the project root for full license information.\n\nimport { DialogButtons, DialogResult, useConfirmationDialog, useDialog } from '@cratis/arc.react/dialogs';\nimport { Button } from '@cratis/components/Common';\nimport { toastCommandResult } from '@cratis/components/Notifications';\nimport { IssueConversation, IssueState, RevokeAccess } from '@cratis/showrunner.usher';\nimport { useId, useState } from 'react';\nimport { format } from '../../Labels/index.js';\nimport { useUsherContext } from '../../Provider/UsherContext.js';\nimport { formatTime } from '../../Reporting/AccessChoice.js';\nimport { AccessStatus } from '../accessStatus.js';\nimport { useAccessStatus } from '../useAccessStatus.js';\nimport { GrantAccessDialog } from './GrantAccessDialog.js';\nimport { SupportSessions } from './SupportSessions.js';\n\n/**\n * Props for {@link AccessPanel}.\n */\nexport interface AccessPanelProps {\n /** The issue. */\n issue: IssueConversation;\n}\n\n/**\n * Shows whether support may sign in as the reporter, lets them grant or revoke it, highlights support's pending\n * request, and lists the sessions in which support signed in.\n */\nexport const AccessPanel = ({ issue }: AccessPanelProps) => {\n const { labels, locale } = useUsherContext();\n const headingId = useId();\n const [GrantDialog, showGrantDialog] = useDialog(GrantAccessDialog);\n const [confirm] = useConfirmationDialog();\n const [revokeAccess] = RevokeAccess.use();\n const [requestDismissed, setRequestDismissed] = useState(false);\n const [status] = useAccessStatus(issue.access);\n const isWithdrawn = issue.state === IssueState.withdrawn;\n const showsRequest = status === AccessStatus.requested && !requestDismissed && !isWithdrawn;\n const validUntil = issue.access?.validUntil instanceof Date ? issue.access.validUntil : new Date(issue.access?.validUntil);\n\n const heading = status === AccessStatus.granted\n ? labels.accessPanel.grantedHeading\n : showsRequest ? labels.accessPanel.requestedHeading : labels.accessPanel.notGrantedHeading;\n\n const revoke = async () => {\n const answer = await confirm(labels.accessPanel.revokeTitle, labels.accessPanel.revokeMessage, DialogButtons.YesNo);\n if (answer !== DialogResult.Yes) {\n return;\n }\n\n revokeAccess.issueId = issue.id;\n toastCommandResult(await revokeAccess.execute(), { showSuccess: false });\n };\n\n const grant = () => void showGrantDialog({ issueId: issue.id });\n\n return (\n <section className='usher-panel' data-highlighted={showsRequest || undefined} aria-labelledby={headingId}>\n <h4 id={headingId} className='usher-panel__heading'>{heading}</h4>\n {status === AccessStatus.granted && (\n <>\n <p className='usher-panel__text'>{format(labels.accessPanel.grantedUntil, { time: formatTime(validUntil, locale) })}</p>\n <Button variant='outline' tone='critical' size='small' label={labels.accessPanel.revoke} onClick={() => void revoke()} />\n </>\n )}\n {showsRequest && (\n <>\n <p className='usher-panel__text'>{format(labels.accessPanel.requestReason, { reason: issue.access.request.reason })}</p>\n <div className='usher-panel__actions'>\n <Button variant='solid' tone='accent' size='small' label={labels.accessPanel.grant} onClick={grant} />\n <Button variant='ghost' size='small' label={labels.accessPanel.notNow} onClick={() => setRequestDismissed(true)} />\n </div>\n </>\n )}\n {status !== AccessStatus.granted && !showsRequest && (\n <>\n <p className='usher-panel__text'>{labels.accessPanel.notGranted}</p>\n {!isWithdrawn && <Button variant='outline' size='small' label={labels.accessPanel.grant} onClick={grant} />}\n </>\n )}\n <SupportSessions sessions={issue.access?.sessions ?? []} entries={issue.entries ?? []} />\n <GrantDialog />\n </section>\n );\n};\n"],"names":["AccessPanel","issue","labels","locale","useUsherContext","headingId","useId","GrantDialog","showGrantDialog","useDialog","GrantAccessDialog","confirm","useConfirmationDialog","revokeAccess","RevokeAccess","use","requestDismissed","setRequestDismissed","useState","status","useAccessStatus","access","isWithdrawn","state","IssueState","withdrawn","showsRequest","AccessStatus","requested","validUntil","Date","heading","granted","accessPanel","grantedHeading","requestedHeading","notGrantedHeading","revoke","answer","revokeTitle","revokeMessage","DialogButtons","YesNo","DialogResult","Yes","issueId","id","toastCommandResult","execute","showSuccess","grant","_jsxs","section","className","data-highlighted","undefined","aria-labelledby","_jsx","h4","_Fragment","p","format","grantedUntil","time","formatTime","Button","variant","tone","size","label","onClick","requestReason","reason","request","div","notNow","notGranted","SupportSessions","sessions","entries"],"mappings":"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"}
|
|
@@ -1,6 +0,0 @@
|
|
|
1
|
-
import { Guid } from '@cratis/fundamentals';
|
|
2
|
-
export interface GrantAccessDialogProps {
|
|
3
|
-
issueId: Guid;
|
|
4
|
-
}
|
|
5
|
-
export declare const GrantAccessDialog: ({ issueId }: GrantAccessDialogProps) => import("react").JSX.Element;
|
|
6
|
-
//# sourceMappingURL=GrantAccessDialog.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"GrantAccessDialog.d.ts","sourceRoot":"","sources":["../../../../Issues/IssueView/GrantAccessDialog.tsx"],"names":[],"mappings":"AAMA,OAAO,EAAE,IAAI,EAAE,MAAM,sBAAsB,CAAC;AAU5C,MAAM,WAAW,sBAAsB;IAEnC,OAAO,EAAE,IAAI,CAAC;CACjB;AAKD,eAAO,MAAM,iBAAiB,GAAI,aAAa,sBAAsB,gCA+BpE,CAAC"}
|
|
@@ -1,54 +0,0 @@
|
|
|
1
|
-
import { jsx, jsxs } from 'react/jsx-runtime';
|
|
2
|
-
import { CommandDialog } from '@cratis/components/CommandDialog';
|
|
3
|
-
import { DropdownField } from '@cratis/components/CommandForm';
|
|
4
|
-
import { DialogInitialFocus } from '@cratis/components/Dialogs';
|
|
5
|
-
import { AccessDuration, GrantAccess } from '@cratis/showrunner.usher';
|
|
6
|
-
import { useId, useState } from 'react';
|
|
7
|
-
import { useUsherLabels } from '../../Provider/UsherContext.js';
|
|
8
|
-
import { AccessNotice } from '../../Reporting/AccessNotice.js';
|
|
9
|
-
import { durationOptions } from '../../Reporting/durationOptions.js';
|
|
10
|
-
|
|
11
|
-
/**
|
|
12
|
-
* Lets the reporter grant support access to sign in as them on an issue for a while, stating until when.
|
|
13
|
-
*/ const GrantAccessDialog = ({ issueId })=>{
|
|
14
|
-
const labels = useUsherLabels();
|
|
15
|
-
const noticeId = useId();
|
|
16
|
-
const [duration, setDuration] = useState(AccessDuration.oneDay);
|
|
17
|
-
return /*#__PURE__*/ jsx(CommandDialog, {
|
|
18
|
-
command: GrantAccess,
|
|
19
|
-
title: labels.accessPanel.grantTitle,
|
|
20
|
-
okLabel: labels.accessPanel.grantConfirm,
|
|
21
|
-
cancelLabel: labels.common.cancel,
|
|
22
|
-
closeAriaLabel: labels.common.close,
|
|
23
|
-
initialFocus: DialogInitialFocus.Content,
|
|
24
|
-
initialValues: {
|
|
25
|
-
issueId,
|
|
26
|
-
accessDuration: AccessDuration.oneDay
|
|
27
|
-
},
|
|
28
|
-
onFieldChange: (_command, fieldName, _oldValue, newValue)=>{
|
|
29
|
-
if (fieldName === 'accessDuration') {
|
|
30
|
-
setDuration(Number(newValue));
|
|
31
|
-
}
|
|
32
|
-
},
|
|
33
|
-
children: /*#__PURE__*/ jsxs("div", {
|
|
34
|
-
className: "usher-report-form",
|
|
35
|
-
children: [
|
|
36
|
-
/*#__PURE__*/ jsx(DropdownField, {
|
|
37
|
-
value: (command)=>command.accessDuration,
|
|
38
|
-
title: labels.access.duration,
|
|
39
|
-
"aria-describedby": noticeId,
|
|
40
|
-
options: durationOptions(labels),
|
|
41
|
-
optionValue: "value",
|
|
42
|
-
optionLabel: "label"
|
|
43
|
-
}),
|
|
44
|
-
/*#__PURE__*/ jsx(AccessNotice, {
|
|
45
|
-
id: noticeId,
|
|
46
|
-
duration: duration
|
|
47
|
-
})
|
|
48
|
-
]
|
|
49
|
-
})
|
|
50
|
-
});
|
|
51
|
-
};
|
|
52
|
-
|
|
53
|
-
export { GrantAccessDialog };
|
|
54
|
-
//# sourceMappingURL=GrantAccessDialog.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"GrantAccessDialog.js","sources":["../../../../Issues/IssueView/GrantAccessDialog.tsx"],"sourcesContent":["// Copyright (c) Cratis. All rights reserved.\n// Licensed under the MIT license. See LICENSE file in the project root for full license information.\n\nimport { CommandDialog } from '@cratis/components/CommandDialog';\nimport { DropdownField } from '@cratis/components/CommandForm';\nimport { DialogInitialFocus } from '@cratis/components/Dialogs';\nimport { Guid } from '@cratis/fundamentals';\nimport { AccessDuration, GrantAccess } from '@cratis/showrunner.usher';\nimport { useId, useState } from 'react';\nimport { useUsherLabels } from '../../Provider/UsherContext.js';\nimport { AccessNotice } from '../../Reporting/AccessNotice.js';\nimport { durationOptions } from '../../Reporting/durationOptions.js';\n\n/**\n * Props for {@link GrantAccessDialog}.\n */\nexport interface GrantAccessDialogProps {\n /** The issue. */\n issueId: Guid;\n}\n\n/**\n * Lets the reporter grant support access to sign in as them on an issue for a while, stating until when.\n */\nexport const GrantAccessDialog = ({ issueId }: GrantAccessDialogProps) => {\n const labels = useUsherLabels();\n const noticeId = useId();\n const [duration, setDuration] = useState(AccessDuration.oneDay);\n\n return (\n <CommandDialog<GrantAccess>\n command={GrantAccess}\n title={labels.accessPanel.grantTitle}\n okLabel={labels.accessPanel.grantConfirm}\n cancelLabel={labels.common.cancel}\n closeAriaLabel={labels.common.close}\n initialFocus={DialogInitialFocus.Content}\n initialValues={{ issueId, accessDuration: AccessDuration.oneDay }}\n onFieldChange={(_command, fieldName, _oldValue, newValue) => {\n if (fieldName === 'accessDuration') {\n setDuration(Number(newValue) as AccessDuration);\n }\n }}>\n <div className='usher-report-form'>\n <DropdownField<GrantAccess>\n value={command => command.accessDuration}\n title={labels.access.duration}\n aria-describedby={noticeId}\n options={durationOptions(labels)}\n optionValue='value'\n optionLabel='label' />\n <AccessNotice id={noticeId} duration={duration} />\n </div>\n </CommandDialog>\n );\n};\n"],"names":["GrantAccessDialog","issueId","labels","useUsherLabels","noticeId","useId","duration","setDuration","useState","AccessDuration","oneDay","_jsx","CommandDialog","command","GrantAccess","title","accessPanel","grantTitle","okLabel","grantConfirm","cancelLabel","common","cancel","closeAriaLabel","close","initialFocus","DialogInitialFocus","Content","initialValues","accessDuration","onFieldChange","_command","fieldName","_oldValue","newValue","Number","_jsxs","div","className","DropdownField","value","access","aria-describedby","options","durationOptions","optionValue","optionLabel","AccessNotice","id"],"mappings":";;;;;;;;;;AAqBA;;AAEC,IACM,MAAMA,iBAAAA,GAAoB,CAAC,EAAEC,OAAO,EAA0B,GAAA;AACjE,IAAA,MAAMC,MAAAA,GAASC,cAAAA,EAAAA;AACf,IAAA,MAAMC,QAAAA,GAAWC,KAAAA,EAAAA;AACjB,IAAA,MAAM,CAACC,QAAAA,EAAUC,WAAAA,CAAY,GAAGC,QAAAA,CAASC,eAAeC,MAAM,CAAA;AAE9D,IAAA,qBACIC,GAAA,CAACC,aAAAA,EAAAA;QACGC,OAAAA,EAASC,WAAAA;QACTC,KAAAA,EAAOb,MAAAA,CAAOc,WAAW,CAACC,UAAU;QACpCC,OAAAA,EAAShB,MAAAA,CAAOc,WAAW,CAACG,YAAY;QACxCC,WAAAA,EAAalB,MAAAA,CAAOmB,MAAM,CAACC,MAAM;QACjCC,cAAAA,EAAgBrB,MAAAA,CAAOmB,MAAM,CAACG,KAAK;AACnCC,QAAAA,YAAAA,EAAcC,mBAAmBC,OAAO;QACxCC,aAAAA,EAAe;AAAE3B,YAAAA,OAAAA;AAAS4B,YAAAA,cAAAA,EAAgBpB,eAAeC;AAAO,SAAA;QAChEoB,aAAAA,EAAe,CAACC,QAAAA,EAAUC,SAAAA,EAAWC,SAAAA,EAAWC,QAAAA,GAAAA;AAC5C,YAAA,IAAIF,cAAc,gBAAA,EAAkB;AAChCzB,gBAAAA,WAAAA,CAAY4B,MAAAA,CAAOD,QAAAA,CAAAA,CAAAA;AACvB,YAAA;AACJ,QAAA,CAAA;AACA,QAAA,QAAA,gBAAAE,IAAA,CAACC,KAAAA,EAAAA;YAAIC,SAAAA,EAAU,mBAAA;;8BACX3B,GAAA,CAAC4B,aAAAA,EAAAA;oBACGC,KAAAA,EAAO3B,CAAAA,OAAAA,GAAWA,OAAAA,CAAQgB,cAAc;oBACxCd,KAAAA,EAAOb,MAAAA,CAAOuC,MAAM,CAACnC,QAAQ;oBAC7BoC,kBAAAA,EAAkBtC,QAAAA;AAClBuC,oBAAAA,OAAAA,EAASC,eAAAA,CAAgB1C,MAAAA,CAAAA;oBACzB2C,WAAAA,EAAY,OAAA;oBACZC,WAAAA,EAAY;;8BAChBnC,GAAA,CAACoC,YAAAA,EAAAA;oBAAaC,EAAAA,EAAI5C,QAAAA;oBAAUE,QAAAA,EAAUA;;;;;AAItD;;"}
|
|
@@ -1,6 +0,0 @@
|
|
|
1
|
-
import { IssueConversation } from '@cratis/showrunner.usher';
|
|
2
|
-
export interface IdentityPanelProps {
|
|
3
|
-
issue: IssueConversation;
|
|
4
|
-
}
|
|
5
|
-
export declare const IdentityPanel: ({ issue }: IdentityPanelProps) => import("react").JSX.Element;
|
|
6
|
-
//# sourceMappingURL=IdentityPanel.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"IdentityPanel.d.ts","sourceRoot":"","sources":["../../../../Issues/IssueView/IdentityPanel.tsx"],"names":[],"mappings":"AAKA,OAAO,EAAE,iBAAiB,EAAc,MAAM,0BAA0B,CAAC;AAQzE,MAAM,WAAW,kBAAkB;IAE/B,KAAK,EAAE,iBAAiB,CAAC;CAC5B;AAKD,eAAO,MAAM,aAAa,GAAI,WAAW,kBAAkB,gCAgB1D,CAAC"}
|
|
@@ -1,43 +0,0 @@
|
|
|
1
|
-
import { jsxs, jsx } from 'react/jsx-runtime';
|
|
2
|
-
import { useDialog } from '@cratis/arc.react/dialogs';
|
|
3
|
-
import { Button } from '@cratis/components/Common';
|
|
4
|
-
import { IssueState } from '@cratis/showrunner.usher';
|
|
5
|
-
import { useId } from 'react';
|
|
6
|
-
import { useUsherLabels } from '../../Provider/UsherContext.js';
|
|
7
|
-
import { ShareIdentityDialog } from './ShareIdentityDialog.js';
|
|
8
|
-
|
|
9
|
-
/**
|
|
10
|
-
* Shows whether support knows who the reporter is, and lets them share it when it does not.
|
|
11
|
-
*/ const IdentityPanel = ({ issue })=>{
|
|
12
|
-
const labels = useUsherLabels();
|
|
13
|
-
const headingId = useId();
|
|
14
|
-
const [ShareDialog, showShareDialog] = useDialog(ShareIdentityDialog);
|
|
15
|
-
const canShare = !issue.identityShared && issue.state !== IssueState.withdrawn;
|
|
16
|
-
return /*#__PURE__*/ jsxs("section", {
|
|
17
|
-
className: "usher-panel",
|
|
18
|
-
"aria-labelledby": headingId,
|
|
19
|
-
children: [
|
|
20
|
-
/*#__PURE__*/ jsx("h4", {
|
|
21
|
-
id: headingId,
|
|
22
|
-
className: "usher-panel__heading",
|
|
23
|
-
children: labels.identity.heading
|
|
24
|
-
}),
|
|
25
|
-
/*#__PURE__*/ jsx("p", {
|
|
26
|
-
className: "usher-panel__text",
|
|
27
|
-
children: issue.identityShared ? labels.identity.known : labels.identity.unknown
|
|
28
|
-
}),
|
|
29
|
-
canShare && /*#__PURE__*/ jsx(Button, {
|
|
30
|
-
variant: "outline",
|
|
31
|
-
size: "small",
|
|
32
|
-
label: labels.identity.share,
|
|
33
|
-
onClick: ()=>void showShareDialog({
|
|
34
|
-
issueId: issue.id
|
|
35
|
-
})
|
|
36
|
-
}),
|
|
37
|
-
/*#__PURE__*/ jsx(ShareDialog, {})
|
|
38
|
-
]
|
|
39
|
-
});
|
|
40
|
-
};
|
|
41
|
-
|
|
42
|
-
export { IdentityPanel };
|
|
43
|
-
//# sourceMappingURL=IdentityPanel.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"IdentityPanel.js","sources":["../../../../Issues/IssueView/IdentityPanel.tsx"],"sourcesContent":["// Copyright (c) Cratis. All rights reserved.\n// Licensed under the MIT license. See LICENSE file in the project root for full license information.\n\nimport { useDialog } from '@cratis/arc.react/dialogs';\nimport { Button } from '@cratis/components/Common';\nimport { IssueConversation, IssueState } from '@cratis/showrunner.usher';\nimport { useId } from 'react';\nimport { useUsherLabels } from '../../Provider/UsherContext.js';\nimport { ShareIdentityDialog } from './ShareIdentityDialog.js';\n\n/**\n * Props for {@link IdentityPanel}.\n */\nexport interface IdentityPanelProps {\n /** The issue. */\n issue: IssueConversation;\n}\n\n/**\n * Shows whether support knows who the reporter is, and lets them share it when it does not.\n */\nexport const IdentityPanel = ({ issue }: IdentityPanelProps) => {\n const labels = useUsherLabels();\n const headingId = useId();\n const [ShareDialog, showShareDialog] = useDialog(ShareIdentityDialog);\n const canShare = !issue.identityShared && issue.state !== IssueState.withdrawn;\n\n return (\n <section className='usher-panel' aria-labelledby={headingId}>\n <h4 id={headingId} className='usher-panel__heading'>{labels.identity.heading}</h4>\n <p className='usher-panel__text'>{issue.identityShared ? labels.identity.known : labels.identity.unknown}</p>\n {canShare && (\n <Button variant='outline' size='small' label={labels.identity.share} onClick={() => void showShareDialog({ issueId: issue.id })} />\n )}\n <ShareDialog />\n </section>\n );\n};\n"],"names":["IdentityPanel","issue","labels","useUsherLabels","headingId","useId","ShareDialog","showShareDialog","useDialog","ShareIdentityDialog","canShare","identityShared","state","IssueState","withdrawn","_jsxs","section","className","aria-labelledby","_jsx","h4","id","identity","heading","p","known","unknown","Button","variant","size","label","share","onClick","issueId"],"mappings":";;;;;;;;AAkBA;;AAEC,IACM,MAAMA,aAAAA,GAAgB,CAAC,EAAEC,KAAK,EAAsB,GAAA;AACvD,IAAA,MAAMC,MAAAA,GAASC,cAAAA,EAAAA;AACf,IAAA,MAAMC,SAAAA,GAAYC,KAAAA,EAAAA;AAClB,IAAA,MAAM,CAACC,WAAAA,EAAaC,eAAAA,CAAgB,GAAGC,SAAAA,CAAUC,mBAAAA,CAAAA;IACjD,MAAMC,QAAAA,GAAW,CAACT,KAAAA,CAAMU,cAAc,IAAIV,KAAAA,CAAMW,KAAK,KAAKC,UAAAA,CAAWC,SAAS;AAE9E,IAAA,qBACIC,IAAA,CAACC,SAAAA,EAAAA;QAAQC,SAAAA,EAAU,aAAA;QAAcC,iBAAAA,EAAiBd,SAAAA;;0BAC9Ce,GAAA,CAACC,IAAAA,EAAAA;gBAAGC,EAAAA,EAAIjB,SAAAA;gBAAWa,SAAAA,EAAU,sBAAA;0BAAwBf,MAAAA,CAAOoB,QAAQ,CAACC;;0BACrEJ,GAAA,CAACK,GAAAA,EAAAA;gBAAEP,SAAAA,EAAU,mBAAA;0BAAqBhB,KAAAA,CAAMU,cAAc,GAAGT,MAAAA,CAAOoB,QAAQ,CAACG,KAAK,GAAGvB,MAAAA,CAAOoB,QAAQ,CAACI;;AAChGhB,YAAAA,QAAAA,kBACGS,GAAA,CAACQ,MAAAA,EAAAA;gBAAOC,OAAAA,EAAQ,SAAA;gBAAUC,IAAAA,EAAK,OAAA;gBAAQC,KAAAA,EAAO5B,MAAAA,CAAOoB,QAAQ,CAACS,KAAK;gBAAEC,OAAAA,EAAS,IAAM,KAAKzB,eAAAA,CAAgB;AAAE0B,wBAAAA,OAAAA,EAAShC,MAAMoB;AAAG,qBAAA;;0BAEjIF,GAAA,CAACb,WAAAA,EAAAA,EAAAA;;;AAGb;;"}
|
|
@@ -1,6 +0,0 @@
|
|
|
1
|
-
import { IssueConversation } from '@cratis/showrunner.usher';
|
|
2
|
-
export interface IssueActionsProps {
|
|
3
|
-
issue: IssueConversation;
|
|
4
|
-
}
|
|
5
|
-
export declare const IssueActions: ({ issue }: IssueActionsProps) => import("react").JSX.Element | null;
|
|
6
|
-
//# sourceMappingURL=IssueActions.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"IssueActions.d.ts","sourceRoot":"","sources":["../../../../Issues/IssueView/IssueActions.tsx"],"names":[],"mappings":"AAMA,OAAO,EAAE,iBAAiB,EAA6B,MAAM,0BAA0B,CAAC;AAQxF,MAAM,WAAW,iBAAiB;IAE9B,KAAK,EAAE,iBAAiB,CAAC;CAC5B;AAKD,eAAO,MAAM,YAAY,GAAI,WAAW,iBAAiB,uCA6BxD,CAAC"}
|
|
@@ -1,56 +0,0 @@
|
|
|
1
|
-
import { jsxs, jsx } from 'react/jsx-runtime';
|
|
2
|
-
import { useDialog, useConfirmationDialog, DialogButtons, DialogResult } from '@cratis/arc.react/dialogs';
|
|
3
|
-
import { Button } from '@cratis/components/Common';
|
|
4
|
-
import { toastCommandResult } from '@cratis/components/Notifications';
|
|
5
|
-
import { WithdrawIssue, IssueState } from '@cratis/showrunner.usher';
|
|
6
|
-
import { useUsherLabels } from '../../Provider/UsherContext.js';
|
|
7
|
-
import { isClosed } from '../issueStates.js';
|
|
8
|
-
import { ReopenIssueDialog } from './ReopenIssueDialog.js';
|
|
9
|
-
|
|
10
|
-
/**
|
|
11
|
-
* What the reporter can do with an issue: reopen it once resolved, and withdraw it while it is open.
|
|
12
|
-
*/ const IssueActions = ({ issue })=>{
|
|
13
|
-
const labels = useUsherLabels();
|
|
14
|
-
const [ReopenDialog, showReopenDialog] = useDialog(ReopenIssueDialog);
|
|
15
|
-
const [confirm] = useConfirmationDialog();
|
|
16
|
-
const [withdrawIssue] = WithdrawIssue.use();
|
|
17
|
-
const canReopen = issue.state === IssueState.resolved;
|
|
18
|
-
const canWithdraw = !isClosed(issue.state);
|
|
19
|
-
const withdraw = async ()=>{
|
|
20
|
-
const answer = await confirm(labels.actions.withdrawTitle, labels.actions.withdrawMessage, DialogButtons.YesNo);
|
|
21
|
-
if (answer !== DialogResult.Yes) {
|
|
22
|
-
return;
|
|
23
|
-
}
|
|
24
|
-
withdrawIssue.issueId = issue.id;
|
|
25
|
-
toastCommandResult(await withdrawIssue.execute(), {
|
|
26
|
-
showSuccess: false
|
|
27
|
-
});
|
|
28
|
-
};
|
|
29
|
-
if (!canReopen && !canWithdraw) {
|
|
30
|
-
return null;
|
|
31
|
-
}
|
|
32
|
-
return /*#__PURE__*/ jsxs("div", {
|
|
33
|
-
className: "usher-issue-actions",
|
|
34
|
-
children: [
|
|
35
|
-
canReopen && /*#__PURE__*/ jsx(Button, {
|
|
36
|
-
variant: "outline",
|
|
37
|
-
size: "small",
|
|
38
|
-
label: labels.actions.reopen,
|
|
39
|
-
onClick: ()=>void showReopenDialog({
|
|
40
|
-
issueId: issue.id
|
|
41
|
-
})
|
|
42
|
-
}),
|
|
43
|
-
canWithdraw && /*#__PURE__*/ jsx(Button, {
|
|
44
|
-
variant: "ghost",
|
|
45
|
-
tone: "critical",
|
|
46
|
-
size: "small",
|
|
47
|
-
label: labels.actions.withdraw,
|
|
48
|
-
onClick: ()=>void withdraw()
|
|
49
|
-
}),
|
|
50
|
-
/*#__PURE__*/ jsx(ReopenDialog, {})
|
|
51
|
-
]
|
|
52
|
-
});
|
|
53
|
-
};
|
|
54
|
-
|
|
55
|
-
export { IssueActions };
|
|
56
|
-
//# sourceMappingURL=IssueActions.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"IssueActions.js","sources":["../../../../Issues/IssueView/IssueActions.tsx"],"sourcesContent":["// Copyright (c) Cratis. All rights reserved.\n// Licensed under the MIT license. See LICENSE file in the project root for full license information.\n\nimport { DialogButtons, DialogResult, useConfirmationDialog, useDialog } from '@cratis/arc.react/dialogs';\nimport { Button } from '@cratis/components/Common';\nimport { toastCommandResult } from '@cratis/components/Notifications';\nimport { IssueConversation, IssueState, WithdrawIssue } from '@cratis/showrunner.usher';\nimport { useUsherLabels } from '../../Provider/UsherContext.js';\nimport { isClosed } from '../issueStates.js';\nimport { ReopenIssueDialog } from './ReopenIssueDialog.js';\n\n/**\n * Props for {@link IssueActions}.\n */\nexport interface IssueActionsProps {\n /** The issue. */\n issue: IssueConversation;\n}\n\n/**\n * What the reporter can do with an issue: reopen it once resolved, and withdraw it while it is open.\n */\nexport const IssueActions = ({ issue }: IssueActionsProps) => {\n const labels = useUsherLabels();\n const [ReopenDialog, showReopenDialog] = useDialog(ReopenIssueDialog);\n const [confirm] = useConfirmationDialog();\n const [withdrawIssue] = WithdrawIssue.use();\n const canReopen = issue.state === IssueState.resolved;\n const canWithdraw = !isClosed(issue.state);\n\n const withdraw = async () => {\n const answer = await confirm(labels.actions.withdrawTitle, labels.actions.withdrawMessage, DialogButtons.YesNo);\n if (answer !== DialogResult.Yes) {\n return;\n }\n\n withdrawIssue.issueId = issue.id;\n toastCommandResult(await withdrawIssue.execute(), { showSuccess: false });\n };\n\n if (!canReopen && !canWithdraw) {\n return null;\n }\n\n return (\n <div className='usher-issue-actions'>\n {canReopen && <Button variant='outline' size='small' label={labels.actions.reopen} onClick={() => void showReopenDialog({ issueId: issue.id })} />}\n {canWithdraw && <Button variant='ghost' tone='critical' size='small' label={labels.actions.withdraw} onClick={() => void withdraw()} />}\n <ReopenDialog />\n </div>\n );\n};\n"],"names":["IssueActions","issue","labels","useUsherLabels","ReopenDialog","showReopenDialog","useDialog","ReopenIssueDialog","confirm","useConfirmationDialog","withdrawIssue","WithdrawIssue","use","canReopen","state","IssueState","resolved","canWithdraw","isClosed","withdraw","answer","actions","withdrawTitle","withdrawMessage","DialogButtons","YesNo","DialogResult","Yes","issueId","id","toastCommandResult","execute","showSuccess","_jsxs","div","className","_jsx","Button","variant","size","label","reopen","onClick","tone"],"mappings":";;;;;;;;;AAmBA;;AAEC,IACM,MAAMA,YAAAA,GAAe,CAAC,EAAEC,KAAK,EAAqB,GAAA;AACrD,IAAA,MAAMC,MAAAA,GAASC,cAAAA,EAAAA;AACf,IAAA,MAAM,CAACC,YAAAA,EAAcC,gBAAAA,CAAiB,GAAGC,SAAAA,CAAUC,iBAAAA,CAAAA;IACnD,MAAM,CAACC,QAAQ,GAAGC,qBAAAA,EAAAA;AAClB,IAAA,MAAM,CAACC,aAAAA,CAAc,GAAGC,aAAAA,CAAcC,GAAG,EAAA;AACzC,IAAA,MAAMC,SAAAA,GAAYZ,KAAAA,CAAMa,KAAK,KAAKC,WAAWC,QAAQ;AACrD,IAAA,MAAMC,WAAAA,GAAc,CAACC,QAAAA,CAASjB,KAAAA,CAAMa,KAAK,CAAA;AAEzC,IAAA,MAAMK,QAAAA,GAAW,UAAA;AACb,QAAA,MAAMC,MAAAA,GAAS,MAAMZ,OAAAA,CAAQN,MAAAA,CAAOmB,OAAO,CAACC,aAAa,EAAEpB,MAAAA,CAAOmB,OAAO,CAACE,eAAe,EAAEC,cAAcC,KAAK,CAAA;QAC9G,IAAIL,MAAAA,KAAWM,YAAAA,CAAaC,GAAG,EAAE;AAC7B,YAAA;AACJ,QAAA;QAEAjB,aAAAA,CAAckB,OAAO,GAAG3B,KAAAA,CAAM4B,EAAE;QAChCC,kBAAAA,CAAmB,MAAMpB,aAAAA,CAAcqB,OAAO,EAAA,EAAI;YAAEC,WAAAA,EAAa;AAAM,SAAA,CAAA;AAC3E,IAAA,CAAA;IAEA,IAAI,CAACnB,SAAAA,IAAa,CAACI,WAAAA,EAAa;QAC5B,OAAO,IAAA;AACX,IAAA;AAEA,IAAA,qBACIgB,IAAA,CAACC,KAAAA,EAAAA;QAAIC,SAAAA,EAAU,qBAAA;;AACVtB,YAAAA,SAAAA,kBAAauB,GAAA,CAACC,MAAAA,EAAAA;gBAAOC,OAAAA,EAAQ,SAAA;gBAAUC,IAAAA,EAAK,OAAA;gBAAQC,KAAAA,EAAOtC,MAAAA,CAAOmB,OAAO,CAACoB,MAAM;gBAAEC,OAAAA,EAAS,IAAM,KAAKrC,gBAAAA,CAAiB;AAAEuB,wBAAAA,OAAAA,EAAS3B,MAAM4B;AAAG,qBAAA;;AAC3IZ,YAAAA,WAAAA,kBAAemB,GAAA,CAACC,MAAAA,EAAAA;gBAAOC,OAAAA,EAAQ,OAAA;gBAAQK,IAAAA,EAAK,UAAA;gBAAWJ,IAAAA,EAAK,OAAA;gBAAQC,KAAAA,EAAOtC,MAAAA,CAAOmB,OAAO,CAACF,QAAQ;AAAEuB,gBAAAA,OAAAA,EAAS,IAAM,KAAKvB,QAAAA;;0BACzHiB,GAAA,CAAChC,YAAAA,EAAAA,EAAAA;;;AAGb;;"}
|
|
@@ -1,6 +0,0 @@
|
|
|
1
|
-
import { IssueConversation } from '@cratis/showrunner.usher';
|
|
2
|
-
export interface IssueConversationPanelProps {
|
|
3
|
-
issue: IssueConversation;
|
|
4
|
-
}
|
|
5
|
-
export declare const IssueConversationPanel: ({ issue }: IssueConversationPanelProps) => import("react").JSX.Element;
|
|
6
|
-
//# sourceMappingURL=IssueConversationPanel.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"IssueConversationPanel.d.ts","sourceRoot":"","sources":["../../../../Issues/IssueView/IssueConversationPanel.tsx"],"names":[],"mappings":"AAMA,OAAO,EAAqD,iBAAiB,EAAc,MAAM,0BAA0B,CAAC;AAQ5H,MAAM,WAAW,2BAA2B;IAExC,KAAK,EAAE,iBAAiB,CAAC;CAC5B;AAMD,eAAO,MAAM,sBAAsB,GAAI,WAAW,2BAA2B,gCAiE5E,CAAC"}
|
|
@@ -1,95 +0,0 @@
|
|
|
1
|
-
import { jsxs, jsx } from 'react/jsx-runtime';
|
|
2
|
-
import { ChatConversation } from '@cratis/components/Chat';
|
|
3
|
-
import { Message, Tag } from '@cratis/components/Display';
|
|
4
|
-
import { toastCommandResult } from '@cratis/components/Notifications';
|
|
5
|
-
import { AddDetails, AnswerQuestion, IssueState, ConversationEntryKind } from '@cratis/showrunner.usher';
|
|
6
|
-
import { useMemo } from 'react';
|
|
7
|
-
import { useUsherLabels } from '../../Provider/UsherContext.js';
|
|
8
|
-
import { conversationMessages, authorOf, isOpenQuestion } from '../conversationMessages.js';
|
|
9
|
-
|
|
10
|
-
/**
|
|
11
|
-
* The conversation on an issue. A message the reporter sends answers support's open question, or adds details when
|
|
12
|
-
* there is none. Once the reporter withdrew the issue, the composer is disabled: nothing more can be added to it.
|
|
13
|
-
*/ const IssueConversationPanel = ({ issue })=>{
|
|
14
|
-
const labels = useUsherLabels();
|
|
15
|
-
const [addDetails] = AddDetails.use();
|
|
16
|
-
const [answerQuestion] = AnswerQuestion.use();
|
|
17
|
-
const messages = useMemo(()=>conversationMessages(issue.id, issue.entries ?? [], labels), [
|
|
18
|
-
issue.id,
|
|
19
|
-
issue.entries,
|
|
20
|
-
labels
|
|
21
|
-
]);
|
|
22
|
-
const openQuestionId = issue.openQuestion?.questionId;
|
|
23
|
-
const isWithdrawn = issue.state === IssueState.withdrawn;
|
|
24
|
-
const send = async (body)=>{
|
|
25
|
-
if (isWithdrawn) {
|
|
26
|
-
return;
|
|
27
|
-
}
|
|
28
|
-
if (isOpenQuestion(openQuestionId)) {
|
|
29
|
-
answerQuestion.issueId = issue.id;
|
|
30
|
-
answerQuestion.questionId = openQuestionId;
|
|
31
|
-
answerQuestion.answer = body;
|
|
32
|
-
toastCommandResult(await answerQuestion.execute(), {
|
|
33
|
-
showSuccess: false
|
|
34
|
-
});
|
|
35
|
-
return;
|
|
36
|
-
}
|
|
37
|
-
addDetails.issueId = issue.id;
|
|
38
|
-
addDetails.details = body;
|
|
39
|
-
toastCommandResult(await addDetails.execute(), {
|
|
40
|
-
showSuccess: false
|
|
41
|
-
});
|
|
42
|
-
};
|
|
43
|
-
const renderMessageExtra = (message)=>{
|
|
44
|
-
if (message.kind !== ConversationEntryKind.questionAsked) {
|
|
45
|
-
return undefined;
|
|
46
|
-
}
|
|
47
|
-
const isOpen = isOpenQuestion(openQuestionId) && openQuestionId.equals(message.questionId);
|
|
48
|
-
return /*#__PURE__*/ jsx("span", {
|
|
49
|
-
className: "usher-conversation__question-state",
|
|
50
|
-
children: /*#__PURE__*/ jsx(Tag, {
|
|
51
|
-
value: isOpen ? labels.issue.waitingForAnswer : labels.issue.answered,
|
|
52
|
-
severity: isOpen ? 'warn' : 'success'
|
|
53
|
-
})
|
|
54
|
-
});
|
|
55
|
-
};
|
|
56
|
-
return /*#__PURE__*/ jsxs("section", {
|
|
57
|
-
className: "usher-conversation",
|
|
58
|
-
"data-closed": isWithdrawn || undefined,
|
|
59
|
-
"aria-label": issue.title,
|
|
60
|
-
children: [
|
|
61
|
-
/*#__PURE__*/ jsx("fieldset", {
|
|
62
|
-
className: "usher-conversation__fieldset",
|
|
63
|
-
disabled: isWithdrawn,
|
|
64
|
-
children: /*#__PURE__*/ jsx(ChatConversation, {
|
|
65
|
-
messages: messages,
|
|
66
|
-
onSendMessage: (body)=>void send(body),
|
|
67
|
-
authorOf: (authorId)=>authorOf(authorId, labels),
|
|
68
|
-
renderMessageExtra: renderMessageExtra,
|
|
69
|
-
quickReply: false,
|
|
70
|
-
labels: {
|
|
71
|
-
empty: labels.conversation.empty,
|
|
72
|
-
timestamps: {
|
|
73
|
-
justNow: labels.conversation.justNow,
|
|
74
|
-
minutesAgo: labels.conversation.minutesAgo,
|
|
75
|
-
hoursAgo: labels.conversation.hoursAgo
|
|
76
|
-
},
|
|
77
|
-
composer: {
|
|
78
|
-
placeholder: isWithdrawn ? labels.issue.withdrawnPlaceholder : labels.issue.composerPlaceholder,
|
|
79
|
-
send: labels.conversation.send,
|
|
80
|
-
sendMessage: labels.conversation.send
|
|
81
|
-
}
|
|
82
|
-
}
|
|
83
|
-
})
|
|
84
|
-
}),
|
|
85
|
-
isWithdrawn && /*#__PURE__*/ jsx(Message, {
|
|
86
|
-
severity: "secondary",
|
|
87
|
-
text: labels.issue.withdrawnNotice,
|
|
88
|
-
live: false
|
|
89
|
-
})
|
|
90
|
-
]
|
|
91
|
-
});
|
|
92
|
-
};
|
|
93
|
-
|
|
94
|
-
export { IssueConversationPanel };
|
|
95
|
-
//# sourceMappingURL=IssueConversationPanel.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"IssueConversationPanel.js","sources":["../../../../Issues/IssueView/IssueConversationPanel.tsx"],"sourcesContent":["// Copyright (c) Cratis. All rights reserved.\n// Licensed under the MIT license. See LICENSE file in the project root for full license information.\n\nimport { ChatConversation } from '@cratis/components/Chat';\nimport { Message, Tag } from '@cratis/components/Display';\nimport { toastCommandResult } from '@cratis/components/Notifications';\nimport { AddDetails, AnswerQuestion, ConversationEntryKind, IssueConversation, IssueState } from '@cratis/showrunner.usher';\nimport { useMemo } from 'react';\nimport { useUsherLabels } from '../../Provider/UsherContext.js';\nimport { authorOf, ConversationMessage, conversationMessages, isOpenQuestion } from '../conversationMessages.js';\n\n/**\n * Props for {@link IssueConversationPanel}.\n */\nexport interface IssueConversationPanelProps {\n /** The issue. */\n issue: IssueConversation;\n}\n\n/**\n * The conversation on an issue. A message the reporter sends answers support's open question, or adds details when\n * there is none. Once the reporter withdrew the issue, the composer is disabled: nothing more can be added to it.\n */\nexport const IssueConversationPanel = ({ issue }: IssueConversationPanelProps) => {\n const labels = useUsherLabels();\n const [addDetails] = AddDetails.use();\n const [answerQuestion] = AnswerQuestion.use();\n const messages = useMemo(() => conversationMessages(issue.id, issue.entries ?? [], labels), [issue.id, issue.entries, labels]);\n const openQuestionId = issue.openQuestion?.questionId;\n const isWithdrawn = issue.state === IssueState.withdrawn;\n\n const send = async (body: string) => {\n if (isWithdrawn) {\n return;\n }\n\n if (isOpenQuestion(openQuestionId)) {\n answerQuestion.issueId = issue.id;\n answerQuestion.questionId = openQuestionId;\n answerQuestion.answer = body;\n toastCommandResult(await answerQuestion.execute(), { showSuccess: false });\n return;\n }\n\n addDetails.issueId = issue.id;\n addDetails.details = body;\n toastCommandResult(await addDetails.execute(), { showSuccess: false });\n };\n\n const renderMessageExtra = (message: ConversationMessage) => {\n if (message.kind !== ConversationEntryKind.questionAsked) {\n return undefined;\n }\n\n const isOpen = isOpenQuestion(openQuestionId) && openQuestionId.equals(message.questionId);\n return (\n <span className='usher-conversation__question-state'>\n <Tag value={isOpen ? labels.issue.waitingForAnswer : labels.issue.answered} severity={isOpen ? 'warn' : 'success'} />\n </span>\n );\n };\n\n return (\n <section className='usher-conversation' data-closed={isWithdrawn || undefined} aria-label={issue.title}>\n <fieldset className='usher-conversation__fieldset' disabled={isWithdrawn}>\n <ChatConversation<ConversationMessage>\n messages={messages}\n onSendMessage={body => void send(body)}\n authorOf={authorId => authorOf(authorId, labels)}\n renderMessageExtra={renderMessageExtra}\n quickReply={false}\n labels={{\n empty: labels.conversation.empty,\n timestamps: {\n justNow: labels.conversation.justNow,\n minutesAgo: labels.conversation.minutesAgo,\n hoursAgo: labels.conversation.hoursAgo\n },\n composer: {\n placeholder: isWithdrawn ? labels.issue.withdrawnPlaceholder : labels.issue.composerPlaceholder,\n send: labels.conversation.send,\n sendMessage: labels.conversation.send\n }\n }} />\n </fieldset>\n {isWithdrawn && <Message severity='secondary' text={labels.issue.withdrawnNotice} live={false} />}\n </section>\n );\n};\n"],"names":["IssueConversationPanel","issue","labels","useUsherLabels","addDetails","AddDetails","use","answerQuestion","AnswerQuestion","messages","useMemo","conversationMessages","id","entries","openQuestionId","openQuestion","questionId","isWithdrawn","state","IssueState","withdrawn","send","body","isOpenQuestion","issueId","answer","toastCommandResult","execute","showSuccess","details","renderMessageExtra","message","kind","ConversationEntryKind","questionAsked","undefined","isOpen","equals","_jsx","span","className","Tag","value","waitingForAnswer","answered","severity","_jsxs","section","data-closed","aria-label","title","fieldset","disabled","ChatConversation","onSendMessage","authorOf","authorId","quickReply","empty","conversation","timestamps","justNow","minutesAgo","hoursAgo","composer","placeholder","withdrawnPlaceholder","composerPlaceholder","sendMessage","Message","text","withdrawnNotice","live"],"mappings":";;;;;;;;;AAmBA;;;AAGC,IACM,MAAMA,sBAAAA,GAAyB,CAAC,EAAEC,KAAK,EAA+B,GAAA;AACzE,IAAA,MAAMC,MAAAA,GAASC,cAAAA,EAAAA;AACf,IAAA,MAAM,CAACC,UAAAA,CAAW,GAAGC,UAAAA,CAAWC,GAAG,EAAA;AACnC,IAAA,MAAM,CAACC,cAAAA,CAAe,GAAGC,cAAAA,CAAeF,GAAG,EAAA;AAC3C,IAAA,MAAMG,QAAAA,GAAWC,OAAAA,CAAQ,IAAMC,oBAAAA,CAAqBV,KAAAA,CAAMW,EAAE,EAAEX,KAAAA,CAAMY,OAAO,IAAI,EAAE,EAAEX,MAAAA,CAAAA,EAAS;AAACD,QAAAA,KAAAA,CAAMW,EAAE;AAAEX,QAAAA,KAAAA,CAAMY,OAAO;AAAEX,QAAAA;AAAO,KAAA,CAAA;IAC7H,MAAMY,cAAAA,GAAiBb,KAAAA,CAAMc,YAAY,EAAEC,UAAAA;AAC3C,IAAA,MAAMC,WAAAA,GAAchB,KAAAA,CAAMiB,KAAK,KAAKC,WAAWC,SAAS;AAExD,IAAA,MAAMC,OAAO,OAAOC,IAAAA,GAAAA;AAChB,QAAA,IAAIL,WAAAA,EAAa;AACb,YAAA;AACJ,QAAA;AAEA,QAAA,IAAIM,eAAeT,cAAAA,CAAAA,EAAiB;YAChCP,cAAAA,CAAeiB,OAAO,GAAGvB,KAAAA,CAAMW,EAAE;AACjCL,YAAAA,cAAAA,CAAeS,UAAU,GAAGF,cAAAA;AAC5BP,YAAAA,cAAAA,CAAekB,MAAM,GAAGH,IAAAA;YACxBI,kBAAAA,CAAmB,MAAMnB,cAAAA,CAAeoB,OAAO,EAAA,EAAI;gBAAEC,WAAAA,EAAa;AAAM,aAAA,CAAA;AACxE,YAAA;AACJ,QAAA;QAEAxB,UAAAA,CAAWoB,OAAO,GAAGvB,KAAAA,CAAMW,EAAE;AAC7BR,QAAAA,UAAAA,CAAWyB,OAAO,GAAGP,IAAAA;QACrBI,kBAAAA,CAAmB,MAAMtB,UAAAA,CAAWuB,OAAO,EAAA,EAAI;YAAEC,WAAAA,EAAa;AAAM,SAAA,CAAA;AACxE,IAAA,CAAA;AAEA,IAAA,MAAME,qBAAqB,CAACC,OAAAA,GAAAA;AACxB,QAAA,IAAIA,OAAAA,CAAQC,IAAI,KAAKC,qBAAAA,CAAsBC,aAAa,EAAE;YACtD,OAAOC,SAAAA;AACX,QAAA;AAEA,QAAA,MAAMC,SAASb,cAAAA,CAAeT,cAAAA,CAAAA,IAAmBA,eAAeuB,MAAM,CAACN,QAAQf,UAAU,CAAA;AACzF,QAAA,qBACIsB,GAAA,CAACC,MAAAA,EAAAA;YAAKC,SAAAA,EAAU,oCAAA;AACZ,YAAA,QAAA,gBAAAF,GAAA,CAACG,GAAAA,EAAAA;gBAAIC,KAAAA,EAAON,MAAAA,GAASlC,OAAOD,KAAK,CAAC0C,gBAAgB,GAAGzC,MAAAA,CAAOD,KAAK,CAAC2C,QAAQ;AAAEC,gBAAAA,QAAAA,EAAUT,SAAS,MAAA,GAAS;;;AAGpH,IAAA,CAAA;AAEA,IAAA,qBACIU,IAAA,CAACC,SAAAA,EAAAA;QAAQP,SAAAA,EAAU,oBAAA;AAAqBQ,QAAAA,aAAAA,EAAa/B,WAAAA,IAAekB,SAAAA;AAAWc,QAAAA,YAAAA,EAAYhD,MAAMiD,KAAK;;0BAClGZ,GAAA,CAACa,UAAAA,EAAAA;gBAASX,SAAAA,EAAU,8BAAA;gBAA+BY,QAAAA,EAAUnC,WAAAA;AACzD,gBAAA,QAAA,gBAAAqB,GAAA,CAACe,gBAAAA,EAAAA;oBACG5C,QAAAA,EAAUA,QAAAA;oBACV6C,aAAAA,EAAehC,CAAAA,IAAAA,GAAQ,KAAKD,IAAAA,CAAKC,IAAAA,CAAAA;oBACjCiC,QAAAA,EAAUC,CAAAA,QAAAA,GAAYD,QAAAA,CAASC,QAAAA,EAAUtD,MAAAA,CAAAA;oBACzC4B,kBAAAA,EAAoBA,kBAAAA;oBACpB2B,UAAAA,EAAY,KAAA;oBACZvD,MAAAA,EAAQ;wBACJwD,KAAAA,EAAOxD,MAAAA,CAAOyD,YAAY,CAACD,KAAK;wBAChCE,UAAAA,EAAY;4BACRC,OAAAA,EAAS3D,MAAAA,CAAOyD,YAAY,CAACE,OAAO;4BACpCC,UAAAA,EAAY5D,MAAAA,CAAOyD,YAAY,CAACG,UAAU;4BAC1CC,QAAAA,EAAU7D,MAAAA,CAAOyD,YAAY,CAACI;AAClC,yBAAA;wBACAC,QAAAA,EAAU;4BACNC,WAAAA,EAAahD,WAAAA,GAAcf,OAAOD,KAAK,CAACiE,oBAAoB,GAAGhE,MAAAA,CAAOD,KAAK,CAACkE,mBAAmB;4BAC/F9C,IAAAA,EAAMnB,MAAAA,CAAOyD,YAAY,CAACtC,IAAI;4BAC9B+C,WAAAA,EAAalE,MAAAA,CAAOyD,YAAY,CAACtC;AACrC;AACJ;;;AAEPJ,YAAAA,WAAAA,kBAAeqB,GAAA,CAAC+B,OAAAA,EAAAA;gBAAQxB,QAAAA,EAAS,WAAA;gBAAYyB,IAAAA,EAAMpE,MAAAA,CAAOD,KAAK,CAACsE,eAAe;gBAAEC,IAAAA,EAAM;;;;AAGpG;;"}
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
import { IssueConversation } from '@cratis/showrunner.usher';
|
|
2
|
-
export interface IssueHeaderProps {
|
|
3
|
-
issue: IssueConversation;
|
|
4
|
-
onBack?: () => void;
|
|
5
|
-
}
|
|
6
|
-
export declare const IssueHeader: ({ issue, onBack }: IssueHeaderProps) => import("react").JSX.Element;
|
|
7
|
-
//# sourceMappingURL=IssueHeader.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"IssueHeader.d.ts","sourceRoot":"","sources":["../../../../Issues/IssueView/IssueHeader.tsx"],"names":[],"mappings":"AAKA,OAAO,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAa7D,MAAM,WAAW,gBAAgB;IAE7B,KAAK,EAAE,iBAAiB,CAAC;IAGzB,MAAM,CAAC,EAAE,MAAM,IAAI,CAAC;CACvB;AAKD,eAAO,MAAM,WAAW,GAAI,mBAAmB,gBAAgB,gCAuC9D,CAAC"}
|
|
@@ -1,92 +0,0 @@
|
|
|
1
|
-
import { jsxs, jsx } from 'react/jsx-runtime';
|
|
2
|
-
import { Button } from '@cratis/components/Common';
|
|
3
|
-
import { Tag } from '@cratis/components/Display';
|
|
4
|
-
import { format } from '../../Labels/format.js';
|
|
5
|
-
import { useUsherContext } from '../../Provider/UsherContext.js';
|
|
6
|
-
import { formatTime } from '../../Reporting/AccessChoice.js';
|
|
7
|
-
import { formatLocation } from '../../Reporting/formatLocation.js';
|
|
8
|
-
import { BackIcon } from '../../Icons.js';
|
|
9
|
-
import { stateBadgeFor } from '../issueStates.js';
|
|
10
|
-
import { isFixReleased } from '../MyIssuesList.js';
|
|
11
|
-
import { isWebAddress } from '../webAddress.js';
|
|
12
|
-
|
|
13
|
-
/**
|
|
14
|
-
* The header of an issue: its title and state, when and where it was reported, and what it is linked to.
|
|
15
|
-
*/ const IssueHeader = ({ issue, onBack })=>{
|
|
16
|
-
const { labels, locale } = useUsherContext();
|
|
17
|
-
const badge = stateBadgeFor(issue.state, labels);
|
|
18
|
-
const reportedAt = issue.reportedAt instanceof Date ? issue.reportedAt : new Date(issue.reportedAt);
|
|
19
|
-
const location = formatLocation(issue.location, labels.common.locationSeparator, labels.common.unknownLocation);
|
|
20
|
-
const workItem = issue.workItem;
|
|
21
|
-
const hasWorkItem = (workItem?.reference ?? '').length > 0;
|
|
22
|
-
return /*#__PURE__*/ jsxs("header", {
|
|
23
|
-
className: "usher-issue-header",
|
|
24
|
-
children: [
|
|
25
|
-
onBack && /*#__PURE__*/ jsx(Button, {
|
|
26
|
-
variant: "ghost",
|
|
27
|
-
size: "small",
|
|
28
|
-
icon: /*#__PURE__*/ jsx(BackIcon, {}),
|
|
29
|
-
onClick: onBack,
|
|
30
|
-
label: labels.issue.back
|
|
31
|
-
}),
|
|
32
|
-
/*#__PURE__*/ jsxs("div", {
|
|
33
|
-
className: "usher-issue-header__title-row",
|
|
34
|
-
children: [
|
|
35
|
-
/*#__PURE__*/ jsx("h3", {
|
|
36
|
-
className: "usher-issue-header__title",
|
|
37
|
-
children: issue.title
|
|
38
|
-
}),
|
|
39
|
-
/*#__PURE__*/ jsx(Tag, {
|
|
40
|
-
value: badge.label,
|
|
41
|
-
severity: badge.severity
|
|
42
|
-
})
|
|
43
|
-
]
|
|
44
|
-
}),
|
|
45
|
-
/*#__PURE__*/ jsxs("p", {
|
|
46
|
-
className: "usher-issue-header__meta",
|
|
47
|
-
children: [
|
|
48
|
-
format(labels.issue.reported, {
|
|
49
|
-
date: formatTime(reportedAt, locale)
|
|
50
|
-
}),
|
|
51
|
-
" · ",
|
|
52
|
-
location
|
|
53
|
-
]
|
|
54
|
-
}),
|
|
55
|
-
(issue.knownIssueTitle?.length > 0 || hasWorkItem) && /*#__PURE__*/ jsxs("p", {
|
|
56
|
-
className: "usher-issue-header__links",
|
|
57
|
-
children: [
|
|
58
|
-
issue.knownIssueTitle?.length > 0 && /*#__PURE__*/ jsxs("span", {
|
|
59
|
-
children: [
|
|
60
|
-
labels.issue.knownIssue,
|
|
61
|
-
" ",
|
|
62
|
-
/*#__PURE__*/ jsx("strong", {
|
|
63
|
-
children: issue.knownIssueTitle
|
|
64
|
-
})
|
|
65
|
-
]
|
|
66
|
-
}),
|
|
67
|
-
hasWorkItem && /*#__PURE__*/ jsxs("span", {
|
|
68
|
-
children: [
|
|
69
|
-
labels.issue.trackedIn,
|
|
70
|
-
' ',
|
|
71
|
-
isWebAddress(workItem.url) ? /*#__PURE__*/ jsx("a", {
|
|
72
|
-
href: workItem.url,
|
|
73
|
-
target: "_blank",
|
|
74
|
-
rel: "noreferrer",
|
|
75
|
-
children: workItem.reference
|
|
76
|
-
}) : /*#__PURE__*/ jsx("strong", {
|
|
77
|
-
children: workItem.reference
|
|
78
|
-
}),
|
|
79
|
-
' · ',
|
|
80
|
-
isFixReleased(issue) ? format(labels.issue.fixedIn, {
|
|
81
|
-
version: issue.fixedInVersion
|
|
82
|
-
}) : labels.issue.notReleased
|
|
83
|
-
]
|
|
84
|
-
})
|
|
85
|
-
]
|
|
86
|
-
})
|
|
87
|
-
]
|
|
88
|
-
});
|
|
89
|
-
};
|
|
90
|
-
|
|
91
|
-
export { IssueHeader };
|
|
92
|
-
//# sourceMappingURL=IssueHeader.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"IssueHeader.js","sources":["../../../../Issues/IssueView/IssueHeader.tsx"],"sourcesContent":["// Copyright (c) Cratis. All rights reserved.\n// Licensed under the MIT license. See LICENSE file in the project root for full license information.\n\nimport { Button } from '@cratis/components/Common';\nimport { Tag } from '@cratis/components/Display';\nimport { IssueConversation } from '@cratis/showrunner.usher';\nimport { format } from '../../Labels/index.js';\nimport { useUsherContext } from '../../Provider/UsherContext.js';\nimport { formatTime } from '../../Reporting/AccessChoice.js';\nimport { formatLocation } from '../../Reporting/formatLocation.js';\nimport { BackIcon } from '../../Icons.js';\nimport { stateBadgeFor } from '../issueStates.js';\nimport { isFixReleased } from '../MyIssuesList.js';\nimport { isWebAddress } from '../webAddress.js';\n\n/**\n * Props for {@link IssueHeader}.\n */\nexport interface IssueHeaderProps {\n /** The issue. */\n issue: IssueConversation;\n\n /** Goes back to the list of issues; no back button when not given. */\n onBack?: () => void;\n}\n\n/**\n * The header of an issue: its title and state, when and where it was reported, and what it is linked to.\n */\nexport const IssueHeader = ({ issue, onBack }: IssueHeaderProps) => {\n const { labels, locale } = useUsherContext();\n const badge = stateBadgeFor(issue.state, labels);\n const reportedAt = issue.reportedAt instanceof Date ? issue.reportedAt : new Date(issue.reportedAt);\n const location = formatLocation(issue.location, labels.common.locationSeparator, labels.common.unknownLocation);\n const workItem = issue.workItem;\n const hasWorkItem = (workItem?.reference ?? '').length > 0;\n\n return (\n <header className='usher-issue-header'>\n {onBack && (\n <Button variant='ghost' size='small' icon={<BackIcon />} onClick={onBack} label={labels.issue.back} />\n )}\n <div className='usher-issue-header__title-row'>\n <h3 className='usher-issue-header__title'>{issue.title}</h3>\n <Tag value={badge.label} severity={badge.severity} />\n </div>\n <p className='usher-issue-header__meta'>\n {format(labels.issue.reported, { date: formatTime(reportedAt, locale) })} · {location}\n </p>\n {(issue.knownIssueTitle?.length > 0 || hasWorkItem) && (\n <p className='usher-issue-header__links'>\n {issue.knownIssueTitle?.length > 0 && (\n <span>{labels.issue.knownIssue} <strong>{issue.knownIssueTitle}</strong></span>\n )}\n {hasWorkItem && (\n <span>\n {labels.issue.trackedIn}{' '}\n {isWebAddress(workItem.url)\n ? <a href={workItem.url} target='_blank' rel='noreferrer'>{workItem.reference}</a>\n : <strong>{workItem.reference}</strong>}\n {' · '}\n {isFixReleased(issue) ? format(labels.issue.fixedIn, { version: issue.fixedInVersion }) : labels.issue.notReleased}\n </span>\n )}\n </p>\n )}\n </header>\n );\n};\n"],"names":["IssueHeader","issue","onBack","labels","locale","useUsherContext","badge","stateBadgeFor","state","reportedAt","Date","location","formatLocation","common","locationSeparator","unknownLocation","workItem","hasWorkItem","reference","length","_jsxs","header","className","_jsx","Button","variant","size","icon","BackIcon","onClick","label","back","div","h3","title","Tag","value","severity","p","format","reported","date","formatTime","knownIssueTitle","span","knownIssue","strong","trackedIn","isWebAddress","url","a","href","target","rel","isFixReleased","fixedIn","version","fixedInVersion","notReleased"],"mappings":"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"}
|