@kartverket/backstage-plugin-risk-scorecard 1.0.11 → 1.0.13

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.
@@ -26,7 +26,7 @@ const riScPlugin = createPlugin({
26
26
  const RiScPage = riScPlugin.provide(
27
27
  createRoutableExtension({
28
28
  name: "RiScPage",
29
- component: () => import('./index-55c3e55b.esm.js').then((m) => m.RiScPlugin),
29
+ component: () => import('./index-e091ae7d.esm.js').then((m) => m.RiScPlugin),
30
30
  mountPoint: rootRouteRef
31
31
  })
32
32
  );
@@ -427,4 +427,4 @@ const pluginRiScNorwegianTranslation = createTranslationResource({
427
427
  });
428
428
 
429
429
  export { RiScPage as R, riScPlugin as a, pluginRiScNorwegianTranslation as b, pluginRiScTranslationRef as p, riScRouteRef as r, scenarioRouteRef as s };
430
- //# sourceMappingURL=index-f0f7d618.esm.js.map
430
+ //# sourceMappingURL=index-7e0035e6.esm.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index-f0f7d618.esm.js","sources":["../../src/routes.ts","../../src/plugin.ts","../../src/components/utils/translations.ts"],"sourcesContent":["import { createRouteRef, createSubRouteRef } from '@backstage/core-plugin-api';\n\nexport const rootRouteRef = createRouteRef({\n id: 'riSc',\n});\n\nexport const scenarioRouteRef = createSubRouteRef({\n id: 'scenarioId',\n parent: rootRouteRef,\n path: '/:riScId/:scenarioId',\n});\n\nexport const riScRouteRef = createSubRouteRef({\n id: 'riScId',\n parent: rootRouteRef,\n path: '/:riScId',\n});\n","import {\n createPlugin,\n createRoutableExtension,\n} from '@backstage/core-plugin-api';\n\nimport { rootRouteRef, riScRouteRef, scenarioRouteRef } from './routes';\n\nexport const riScPlugin = createPlugin({\n id: 'riSc',\n routes: {\n root: rootRouteRef,\n scenario: scenarioRouteRef,\n riSc: riScRouteRef,\n },\n});\n\nexport const RiScPage = riScPlugin.provide(\n createRoutableExtension({\n name: 'RiScPage',\n component: () => import('./components/riScPlugin').then(m => m.RiScPlugin),\n mountPoint: rootRouteRef,\n }),\n);\n","import {\n createTranslationRef,\n createTranslationResource,\n} from '@backstage/core-plugin-api/alpha';\n\nexport const pluginRiScTranslationRef = createTranslationRef({\n id: 'plugin.riSc',\n messages: {\n contentHeader: {\n title: 'Risk scorecard',\n createNewButton: 'Create new scorecard',\n },\n dictionary: {\n cancel: 'Cancel',\n close: 'Close',\n completed: 'Completed',\n confirm: 'Confirm',\n consequence: 'Consequence', // Severity, Impact, Effect or Consequence\n deadline: 'Deadline', // Deadline or Due date\n delete: 'Delete',\n description: 'Description',\n discardChanges: 'Discard changes',\n edit: 'Edit',\n estimatedRisk: 'Estimated risk',\n initialRisk: 'Initial risk', // Starting or Initial risk\n measure: 'Actions', // Measure, Action or Initiative\n measureOwner: 'Responsible', // Responsible? Measure owner? Initiative owner?\n next: 'Next',\n planned: 'Planned',\n previous: 'Previous',\n probability: 'Probability', // Likelihood or Probability\n restRisk: 'Remaining risk', // Residual or Remaining risk\n risk: 'Risk',\n save: 'Save',\n saveAndClose: 'Save and close',\n saveError: 'Could not save scenario. Please try again.',\n scenario: 'Scenario',\n scope: 'Scope',\n status: 'Status',\n threatActors: 'Threat actors',\n title: 'Title',\n vulnerabilities: 'Vulnerabilities',\n },\n rosStatus: {\n statusBadge: {\n missing: 'Awaiting acceptance from risk owner', // Mangler godkjenning av risikoeier\n approved: 'Accepted by risk owner', // Godkjent av risikoeier\n error: 'Failed to retrieve status', // Kunne ikke hente status\n },\n prStatus: 'Pending PR approval in Github ', // Avventer godkjenning av PR i Github\n approveButton: 'Accept risks', // Godkjenn ROS\n },\n publishDialog: {\n title: 'Accept risks', // Godkjenn ROS\n checkboxLabel:\n 'I confirm that I am the risk owner and accept the risks detailed in this risk scorecard.',\n },\n scenarioTable: {\n title: 'Risk scenarios',\n addScenarioButton: 'Add scenario',\n columns: {\n measuresCount: 'Actions',\n consequenceChar: 'C',\n probabilityChar: 'P',\n completed: 'complete',\n },\n },\n riskMatrix: {\n title: 'Risk matrix', // Risk matrix or Risk overview\n estimatedRisk: {\n title: 'Estimated risk',\n suffix: {\n thousand: '{{count}} thousand',\n million_one: '{{count}} million',\n million_other: '{{count}} million',\n billion_one: '{{count}} billion',\n billion_other: '{{count}} billion',\n trillion_one: '{{count}} trillion',\n trillion_other: '{{count}} trillion',\n },\n unit: {\n nokPerYear: 'NOK/year',\n },\n },\n tooltip: {\n title: 'Risk scenarios',\n },\n },\n infoDialog: {\n title: 'Estimated risk',\n description:\n 'The estimated risk is a calculation based on the risks the different scenarios pose. If there is a high probability that a serious consequence will occur, this could potentially become a large cost for the organization. In other words, the cost is an attempt to make the risk value more tangible and is the sum of the estimated risk for all the risk scenarios in this risk scorecard.',\n calculatedHowTitle: 'How do we calculate the estimated risk?',\n calculatedHow:\n 'Consequence is measured in cost (in NOK) per incident and probability is measured in incidents per year. ' +\n 'The estimated risk is calculated as C x P.',\n consequenceTitle: 'Consequence (NOK/incident)', // incident, event or occurrence\n probabilityTitle: 'Probability (incidents/year)',\n probabilityDescription: {\n '0': 'every 100 years', // 100 year intervals?\n '1': 'every 10 years', // 10 year intervals?\n '2': 'yearly', // almost yearly?\n '3': 'weekly',\n '4': 'daily',\n },\n example:\n 'A scenario with consequence 2 and probability 4 has an estimated risk of ' +\n '30 000 NOK/incident x 50 incidents/year = 1 500 000 NOK/year.',\n },\n rosDialog: {\n titleNew: 'New risk scorecard',\n titleEdit: 'Edit scorecard',\n titleError: 'The scorecard has to have a title',\n scopeDescription:\n 'Describe what the risk analysis will assess. Specify any key areas which are not part of the scope.',\n scopeError: 'The scorecard has to have a description of the scope',\n },\n scenarioStepper: {\n initialRiskStep: {\n title: 'Initial risk',\n subtitle:\n 'The initial risk is defined by the consequence of the scenario and the probability of it occurring.',\n consequenceSubtitle:\n 'How severe is the potential impact? If the scenario can impact more than one category, choose the highest level of consequence.',\n probabilitySubtitle:\n 'How likely is it that this scenario will occur? If you are between two probability values, choose the higher one.',\n },\n restRiskStep: {\n title: 'Remaining risk',\n subtitle:\n 'What is the risk reduced to when all the planned actions have been completed?',\n consequenceSubtitle:\n 'How severe is the consequence of this scenario after all actions are complete?',\n probabilitySubtitle:\n 'What is the likelihood of this scenario after all actions are complete?',\n },\n },\n scenarioDrawer: {\n title: 'Risk scenario',\n titleError: 'Scenario title is required',\n subtitle:\n 'An unwanted incident that could potentially harm the component.', // harm or affect negatively?\n threatActorSubtitle: 'Someone who attempts to access or abuse the system', // system or component or both?\n vulnerabilitySubtitle:\n 'Weakness in the system that the threat actor can exploit',\n consequenceTab: {\n subtitle:\n 'How severe is the potential impact? If the scenario can impact more than one category, choose the highest level of consequence.',\n },\n probabilityTab: {\n subtitle:\n 'How likely is it that this scenario will occur? If you are between two probability values, choose the higher one.',\n },\n measureTab: {\n subtitle:\n 'What actions should be taken to avoid or reduce the risk of this scenario?',\n measureOwnerDescription:\n 'Decide who will be responsible for completion of this action',\n addMeasureButton: 'Add planned action',\n actionsTitle: 'Planned actions',\n plannedMeasures: 'Planned actions',\n existingMeasure: 'Existing measures',\n existingMeasureSubtitle:\n 'Brief description of relevant measures that have already been implemented to reduce the risk of this scenario',\n },\n restRiskTab: {\n subtitle:\n 'Define the remaining risk for the scenario. Remaining risk is the consequence and probability for this ' +\n 'scenario after all planned actions have been completed.',\n },\n deleteScenarioButton: 'Delete scenario',\n deleteScenarioConfirmation:\n 'Are you sure you want to delete this scenario?',\n closeConfirmation: 'Do you want to save your changes?',\n },\n consequenceTable: {\n rows: {\n '1': 'Negligible', // Insignificant, negligible (ubetydelig)\n '2': 'Small', // Liten\n '3': 'Moderate',\n '4': 'Severe', // Alvorlig\n '5': 'Critical', // Catastrophic eller Critical\n },\n columns: {\n health: 'Life and health', // Health and safety, Life and limb, Health and lives (Liv og helse)\n economical: 'Financial', // Financial consequences, economic implications\n privacy: 'Privacy', // Personvern\n reputation: 'Reputation and trust', // Reputation and trust, confidence, faith (Omdømme og tillit)\n },\n cells: {\n health: {\n '1': 'Impact on life and health cannot be rated less severe than 3', // Liv og helse kan ikke være mindre alvorlig enn 3\n '2': 'Impact on life and health cannot be rated less severe than 3',\n '3': 'Temporary or less severe health implications. Temporary or minor damage to local environment.', // implications, effects or consequence? Temporary or minor? Midlertidige eller mindre alvorlige helsemessige konsekvenser. Midlertidig eller mindre skade på miljøet\n '4': 'Permanent or severe health implications for a few people. Moderate damage to the environment in a limited area.',\n '5': 'Death or permanent severe health implications for many people. Severe damage to the environment across large areas.'\n },\n economical: {\n '1': 'Temporary minor financial loss.\\n May be fixed within an hour by one employee',\n '2': 'Temporary financial loss.\\n May be fixed within three days by one employee',\n '3': 'Financial loss of some duration.\\n May be fixed within a month by three employees',\n '4': 'Financial loss of considerable duration for the organization and any third parties.\\n May be fixed within a year by 10 employees',\n '5': 'Permanent and severe financial loss.\\n May be fixed within three years by 100 employees'\n },\n privacy: {\n '1': 'The right to privacy is violated for a very short period and does not involve sensitive categories or vulnerable groups', // særlige kategorier = sensitive kategorier? special/particular/sensitive categories\n '2': 'The right to privacy is violated for a longer period and involves sensitive categories or vulnerable groups.',\n '3': 'Violations of the rights and freedoms for the registered people.',\n '4': 'Severe violations and breaches of the rights and freedoms for the registered people, as well as violations of the law.',\n '5': 'Impact on privacy cannot be rated more severe than 4',\n },\n reputation: {\n '1': 'Temporary loss of reputation and little impact on trust',\n '2': 'Negative attention in national media that leads to loss of reputation.\\n May reduce trust.',\n '3': 'Lasting negative attention in national and international media that leads to severe loss of reputation.\\n Severe loss of trust from authorities.\\n Users who do not dare or want to use the services.', // lasting, severe, severe loss, severe loss of trust, do not dare or want to use the services\n '4': 'Impact on reputation and trust cannot be rated more severe than 3',\n '5': 'Impact on reputation and trust cannot be rated more severe than 3',\n },\n },\n },\n probabilityTable: {\n rows: {\n '1': 'Very low', // svært liten\n '2': 'Low', // liten\n '3': 'Moderat', // moderat\n '4': 'High', // stor\n '5': 'Very high', // svært stor\n },\n cells: {\n '1': 'The scenario is unlikely to occur. It occurs less often than every 100 years',\n '2': 'The scenario is unlikely to occur. It can occur every 10 years',\n '3': 'The scenario can occur. It can occur almost every year',\n '4': 'The scenario will very likely occur. It can occur almost weekly',\n '5': 'The scenario is almost guaranteed to occur. It can occur almost daily',\n },\n },\n },\n});\n\nexport const pluginRiScNorwegianTranslation = createTranslationResource({\n ref: pluginRiScTranslationRef,\n translations: {\n no: () =>\n Promise.resolve({\n default: {\n 'contentHeader.title': 'Risiko- og sårbarhetsanalyse',\n 'contentHeader.createNewButton': 'Opprett ny analyse',\n\n 'dictionary.cancel': 'Avbryt',\n 'dictionary.close': 'Lukk',\n 'dictionary.completed': 'Fullført',\n 'dictionary.confirm': 'Bekreft',\n 'dictionary.consequence': 'Konsekvens',\n 'dictionary.deadline': 'Frist',\n 'dictionary.delete': 'Slett',\n 'dictionary.description': 'Beskrivelse',\n 'dictionary.discardChanges': 'Forkast endringer',\n 'dictionary.edit': 'Rediger',\n 'dictionary.estimatedRisk': 'Estimert risiko',\n 'dictionary.initialRisk': 'Startrisiko',\n 'dictionary.measure': 'Tiltak',\n 'dictionary.measureOwner': 'Tiltakseier',\n 'dictionary.next': 'Neste',\n 'dictionary.planned': 'Planlagt',\n 'dictionary.previous': 'Forrige',\n 'dictionary.probability': 'Sannsynlighet',\n 'dictionary.restRisk': 'Restrisiko',\n 'dictionary.risk': 'Risiko',\n 'dictionary.save': 'Lagre',\n 'dictionary.saveAndClose': 'Lagre og lukk',\n 'dictionary.saveError':\n 'Noe gikk galt ved lagring. Venligst prøv igjen.',\n 'dictionary.scenario': 'Scenario',\n 'dictionary.scope': 'Omfang',\n 'dictionary.status': 'Status',\n 'dictionary.threatActors': 'Trusselaktører',\n 'dictionary.title': 'Tittel',\n 'dictionary.vulnerabilities': 'Sårbarheter',\n\n 'rosStatus.statusBadge.missing':\n 'Venter på godkjenning av risikoeier',\n 'rosStatus.statusBadge.approved': 'Godkjent av risikoeier',\n 'rosStatus.statusBadge.error': 'Kunne ikke hente status',\n 'rosStatus.prStatus': 'Avventer godkjenning av PR i Github',\n 'rosStatus.approveButton': 'Godkjenn ROS',\n\n 'publishDialog.title': 'Godkjenn ROS-analyse',\n 'publishDialog.checkboxLabel':\n 'Jeg bekrefter at jeg er risikoeier og godtar risikoen beskrevet i denne risiko- og sårbarhetsanalysen.',\n\n 'scenarioTable.title': 'Risikoscenarioer',\n 'scenarioTable.addScenarioButton': 'Legg til scenario',\n 'scenarioTable.columns.measuresCount': 'Tiltak',\n 'scenarioTable.columns.consequenceChar': 'K',\n 'scenarioTable.columns.probabilityChar': 'S',\n 'scenarioTable.columns.completed': 'fullført',\n\n 'riskMatrix.title': 'Risikomatrise',\n 'riskMatrix.estimatedRisk.title': 'Estimert risiko',\n 'riskMatrix.estimatedRisk.suffix.thousand': '{{count}} tusen',\n 'riskMatrix.estimatedRisk.suffix.million_one': '{{count}} million',\n 'riskMatrix.estimatedRisk.suffix.million_other':\n '{{count}} millioner',\n 'riskMatrix.estimatedRisk.suffix.billion_one': '{{count}} milliard',\n 'riskMatrix.estimatedRisk.suffix.billion_other':\n '{{count}} milliarder',\n 'riskMatrix.estimatedRisk.suffix.trillion_one': '{{count}} billion',\n 'riskMatrix.estimatedRisk.suffix.trillion_other':\n '{{count}} billioner',\n 'riskMatrix.estimatedRisk.unit.nokPerYear': 'kr/år',\n 'riskMatrix.tooltip.title': 'Risikoscenarioer',\n\n 'infoDialog.title': 'Estimert risiko',\n 'infoDialog.description':\n 'Den estimerte risikoen er basert på hvor stor risiko de forskjellige scenariene utgjør. Hvis det er stor sannsynlighet for at en alvorlig konsekvens skjer er det høy risiko for at det kan bli en stor kostnad for Kartverket. Kostnaden er med andre ord et forsøk på å konkretisere verdien av risiko og er summen av den estimerte risikoen for alle risikoscenariene i denne ROS-analysen.',\n 'infoDialog.calculatedHowTitle':\n 'Hvordan regner vi ut estimert risiko?',\n 'infoDialog.calculatedHow':\n 'Konsekvens måles i kroner per hendelse og sannsynlighet måles i hendelser per år. Den estimerte risikoen blir da: K x S.',\n 'infoDialog.consequenceTitle': 'Konsekvens (kr/hendelse)',\n 'infoDialog.probabilityTitle': 'Sannsynlighet (hendelser/år)',\n 'infoDialog.probabilityDescription.0': 'ca hvert 100. år',\n 'infoDialog.probabilityDescription.1': 'ca hvert 10. år',\n 'infoDialog.probabilityDescription.2': 'ca årlig',\n 'infoDialog.probabilityDescription.3': 'ca ukentlig',\n 'infoDialog.probabilityDescription.4': 'ca daglig',\n 'infoDialog.example':\n 'Et risikoscenario med konsekvens 2 og sannsynlighet 4 har en estimert risiko på 30 000 kr/hendelse x 50 hendelser/år = 1 500 000 kr/år.',\n\n 'rosDialog.titleNew': 'Ny risiko- og sårbarhetsanalyse',\n 'rosDialog.titleEdit': 'Rediger tittel og omfang',\n 'rosDialog.titleError': 'ROS-analysen må ha en tittel',\n 'rosDialog.scopeDescription':\n 'Beskriv hva analysen skal vurdere. Hva som ikke inngår som en del av omfanget må også defineres.', // TODO\n 'rosDialog.scopeError': 'ROS-analysen må ha et omfang',\n\n 'scenarioStepper.initialRiskStep.title': 'Startrisiko',\n 'scenarioStepper.initialRiskStep.subtitle':\n 'Risikoen er kombinasjonen av konsekvensen av scenarioet og sannsynligheten for at det inntreffer.',\n 'scenarioStepper.initialRiskStep.consequenceSubtitle':\n 'Hvor alvorlig er den potensielle konsekvensen? Hvis konsekvensen gjelder flere kategorier velg det høyeste konsekvensnivået av disse.',\n 'scenarioStepper.initialRiskStep.probabilitySubtitle':\n 'Hvor stor sannsynlighet er det for at dette scenarioet vil forekomme. Dersom du er mellom to sannsynlighetsverdier velg den høyeste.',\n 'scenarioStepper.restRiskStep.title': 'Restrisiko',\n 'scenarioStepper.restRiskStep.subtitle':\n 'Hvordan endrer risikoen seg fra startrisikoen etter alle tiltakene er fullført?',\n 'scenarioStepper.restRiskStep.consequenceSubtitle':\n 'Hva blir konsekvensen etter alle tiltakene er fullført?',\n 'scenarioStepper.restRiskStep.probabilitySubtitle':\n 'Hva blir sannsynligheten etter alle tiltakene er fullført?',\n\n 'scenarioDrawer.title': 'Risikoscenario',\n 'scenarioDrawer.titleError': 'Scenarioet må ha en tittel',\n 'scenarioDrawer.subtitle':\n 'En uønsket hendelse som potensielt kan ramme komponenten',\n 'scenarioDrawer.threatActorSubtitle':\n 'Noen som prøver å få tilgang til eller misbruke systemet',\n 'scenarioDrawer.vulnerabilitySubtitle':\n 'Svakhet i systemet som kan utnyttes av trusselaktøren',\n 'scenarioDrawer.consequenceTab.subtitle':\n 'Hvor alvorlig er den potensielle konsekvensen? Hvis scenarioet kan få konsekvenser i flere kategorier velg det høyeste konsekvensnivået av disse.',\n 'scenarioDrawer.probabilityTab.subtitle':\n 'Hvor stor sannsynlighet er det for at dette scenarioet vil forekomme. Dersom du er mellom to sannsynlighetsverdier velg den høyeste.',\n 'scenarioDrawer.measureTab.subtitle':\n 'Hvilke tiltak bør gjøres for å unngå scenarioet?',\n 'scenarioDrawer.measureTab.actionsTitle': 'Planlagte tiltak',\n 'scenarioDrawer.measureTab.measureOwnerDescription':\n 'De eller den som er ansvarlig for at tiltaket blir gjennomført',\n 'scenarioDrawer.measureTab.addMeasureButton': 'Legg til tiltak',\n 'scenarioDrawer.measureTab.plannedMeasures': 'Planlagte tiltak',\n 'scenarioDrawer.measureTab.existingMeasure': 'Eksisterende tiltak',\n 'scenarioDrawer.measureTab.existingMeasureSubtitle':\n 'Kort beskrivelse av relevante tiltak som allerede har blitt gjennomført',\n 'scenarioDrawer.restRiskTab.subtitle':\n 'Sett restrisiko for scenarioet. Restrisiko er konsekvens og sannsynlighet for scenarioet etter at alle tiltak i listen er gjennomført.',\n 'scenarioDrawer.deleteScenarioButton': 'Slett scenario',\n 'scenarioDrawer.deleteScenarioConfirmation':\n 'Er du sikker på at du vil slette scenario?',\n 'scenarioDrawer.closeConfirmation': 'Vil du lagre endringene dine?',\n\n 'consequenceTable.rows.1': 'Ubetydelig',\n 'consequenceTable.rows.2': 'Liten',\n 'consequenceTable.rows.3': 'Moderat',\n 'consequenceTable.rows.4': 'Alvorlig',\n 'consequenceTable.rows.5': 'Kritisk',\n 'consequenceTable.columns.health': 'Liv og helse',\n 'consequenceTable.columns.economical': 'Økonomi og drift',\n 'consequenceTable.columns.privacy': 'Personvern',\n 'consequenceTable.columns.reputation': 'Omdømme og tillit',\n 'consequenceTable.cells.health.1':\n 'Liv og helse kan ikke være mindre alvorlig enn 3',\n 'consequenceTable.cells.health.2':\n 'Liv og helse kan ikke være mindre alvorlig enn 3',\n 'consequenceTable.cells.health.3':\n 'Lettere skade på personer.\\n Noe skade på lokalt miljø.',\n 'consequenceTable.cells.health.4':\n 'Et fåtall alvorlige personskader.\\n Moderat skade på miljø på et begrenset område.',\n 'consequenceTable.cells.health.5':\n 'Dødsfall. Svært alvorlig skade på milhø over store områder.',\n 'consequenceTable.cells.economical.1':\n 'Ubetydelig økonomisk tap.\\n Kan fikses i løpet av en time av én ansatt.',\n 'consequenceTable.cells.economical.2': 'Mindre økonomisk tap.\\n Kan fikses i løpet av tre dager av én ansatt.',\n 'consequenceTable.cells.economical.3':\n 'Moderat økonomisk tap.\\n Kan fikses i løpet av en måned av tre ansatte.',\n 'consequenceTable.cells.economical.4':\n 'Større økonomisk tap.\\n Kan fikses i løpet av et år av 10 ansatte.',\n 'consequenceTable.cells.economical.5':\n 'Kritisk økonomisk tap.\\n Kan fikses i løpet av tre år av 100 ansatte.',\n 'consequenceTable.cells.privacy.1':\n 'Ingen brudd.',\n 'consequenceTable.cells.privacy.2':\n 'Mindre brudd.',\n 'consequenceTable.cells.privacy.3':\n 'Brudd på registrertes rettigheter og friheter.',\n 'consequenceTable.cells.privacy.4':\n 'Meget alvorlige brudd på registrertes rettigheter og friheter, samt lovbrudd.',\n 'consequenceTable.cells.privacy.5':\n 'Personvern kan ikke være mer alvorlig enn 4',\n 'consequenceTable.cells.reputation.1':\n 'Liten fare for omdømmetap og liten innvikrning på tillit',\n 'consequenceTable.cells.reputation.2':\n 'Negativ oppmerksomhet i regionale og nasjonale medier som fører til omdømmetap.\\n Kan redusere tillit.',\n 'consequenceTable.cells.reputation.3':\n 'Negativ oppmerksomhet i nasjonale og internasjonale medier som fører til alvorlig omdømmetap.\\n Alvorlig redusert tillit fra myndigheter.\\n Brukere som ikke tør / vil bruke tjenestene.',\n 'consequenceTable.cells.reputation.4':\n 'Omdømme og tillit kan ikke være mer alvorlig enn 3',\n 'consequenceTable.cells.reputation.5':\n 'Omdømme og tillit kan ikke være mer alvorlig enn 3',\n\n 'probabilityTable.rows.1': 'Svært liten',\n 'probabilityTable.rows.2': 'Liten',\n 'probabilityTable.rows.3': 'Moderat',\n 'probabilityTable.rows.4': 'Stor',\n 'probabilityTable.rows.5': 'Svært stor',\n 'probabilityTable.cells.1':\n 'Scenarioet er usannsynlig å inntreffe. Det inntreffer sjeldnere enn hvert 100. år',\n 'probabilityTable.cells.2':\n 'Scenarioet er lite sannsynlig å inntreffe. Det kan inntreffe hvert 10. år',\n 'probabilityTable.cells.3':\n 'Scenarioet kan inntreffe. Det kan inntreffe nærmest årlig',\n 'probabilityTable.cells.4':\n 'Scenarioet vil med stor sannsynlighet inntreffe. Det kan inntreffe nærmest ukentlig',\n 'probabilityTable.cells.5':\n 'Scenarioet er nesten garantert å inntreffe. Det kan inntreffe nærmest daglig',\n },\n }),\n },\n});\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index-7e0035e6.esm.js","sources":["../../src/routes.ts","../../src/plugin.ts","../../src/components/utils/translations.ts"],"sourcesContent":["import { createRouteRef, createSubRouteRef } from '@backstage/core-plugin-api';\n\nexport const rootRouteRef = createRouteRef({\n id: 'riSc',\n});\n\nexport const scenarioRouteRef = createSubRouteRef({\n id: 'scenarioId',\n parent: rootRouteRef,\n path: '/:riScId/:scenarioId',\n});\n\nexport const riScRouteRef = createSubRouteRef({\n id: 'riScId',\n parent: rootRouteRef,\n path: '/:riScId',\n});\n","import {\n createPlugin,\n createRoutableExtension,\n} from '@backstage/core-plugin-api';\n\nimport { rootRouteRef, riScRouteRef, scenarioRouteRef } from './routes';\n\nexport const riScPlugin = createPlugin({\n id: 'riSc',\n routes: {\n root: rootRouteRef,\n scenario: scenarioRouteRef,\n riSc: riScRouteRef,\n },\n});\n\nexport const RiScPage = riScPlugin.provide(\n createRoutableExtension({\n name: 'RiScPage',\n component: () => import('./components/riScPlugin').then(m => m.RiScPlugin),\n mountPoint: rootRouteRef,\n }),\n);\n","import {\n createTranslationRef,\n createTranslationResource,\n} from '@backstage/core-plugin-api/alpha';\n\nexport const pluginRiScTranslationRef = createTranslationRef({\n id: 'plugin.riSc',\n messages: {\n contentHeader: {\n title: 'Risk scorecard',\n createNewButton: 'Create new scorecard',\n },\n dictionary: {\n cancel: 'Cancel',\n close: 'Close',\n completed: 'Completed',\n confirm: 'Confirm',\n consequence: 'Consequence', // Severity, Impact, Effect or Consequence\n deadline: 'Deadline', // Deadline or Due date\n delete: 'Delete',\n description: 'Description',\n discardChanges: 'Discard changes',\n edit: 'Edit',\n estimatedRisk: 'Estimated risk',\n initialRisk: 'Initial risk', // Starting or Initial risk\n measure: 'Actions', // Measure, Action or Initiative\n measureOwner: 'Responsible', // Responsible? Measure owner? Initiative owner?\n next: 'Next',\n planned: 'Planned',\n previous: 'Previous',\n probability: 'Probability', // Likelihood or Probability\n restRisk: 'Remaining risk', // Residual or Remaining risk\n risk: 'Risk',\n save: 'Save',\n saveAndClose: 'Save and close',\n saveError: 'Could not save scenario. Please try again.',\n scenario: 'Scenario',\n scope: 'Scope',\n status: 'Status',\n threatActors: 'Threat actors',\n title: 'Title',\n vulnerabilities: 'Vulnerabilities',\n },\n rosStatus: {\n statusBadge: {\n missing: 'Awaiting acceptance from risk owner', // Mangler godkjenning av risikoeier\n approved: 'Accepted by risk owner', // Godkjent av risikoeier\n error: 'Failed to retrieve status', // Kunne ikke hente status\n },\n prStatus: 'Pending PR approval in Github ', // Avventer godkjenning av PR i Github\n approveButton: 'Accept risks', // Godkjenn ROS\n },\n publishDialog: {\n title: 'Accept risks', // Godkjenn ROS\n checkboxLabel:\n 'I confirm that I am the risk owner and accept the risks detailed in this risk scorecard.',\n },\n scenarioTable: {\n title: 'Risk scenarios',\n addScenarioButton: 'Add scenario',\n columns: {\n measuresCount: 'Actions',\n consequenceChar: 'C',\n probabilityChar: 'P',\n completed: 'complete',\n },\n },\n riskMatrix: {\n title: 'Risk matrix', // Risk matrix or Risk overview\n estimatedRisk: {\n title: 'Estimated risk',\n suffix: {\n thousand: '{{count}} thousand',\n million_one: '{{count}} million',\n million_other: '{{count}} million',\n billion_one: '{{count}} billion',\n billion_other: '{{count}} billion',\n trillion_one: '{{count}} trillion',\n trillion_other: '{{count}} trillion',\n },\n unit: {\n nokPerYear: 'NOK/year',\n },\n },\n tooltip: {\n title: 'Risk scenarios',\n },\n },\n infoDialog: {\n title: 'Estimated risk',\n description:\n 'The estimated risk is a calculation based on the risks the different scenarios pose. If there is a high probability that a serious consequence will occur, this could potentially become a large cost for the organization. In other words, the cost is an attempt to make the risk value more tangible and is the sum of the estimated risk for all the risk scenarios in this risk scorecard.',\n calculatedHowTitle: 'How do we calculate the estimated risk?',\n calculatedHow:\n 'Consequence is measured in cost (in NOK) per incident and probability is measured in incidents per year. ' +\n 'The estimated risk is calculated as C x P.',\n consequenceTitle: 'Consequence (NOK/incident)', // incident, event or occurrence\n probabilityTitle: 'Probability (incidents/year)',\n probabilityDescription: {\n '0': 'every 100 years', // 100 year intervals?\n '1': 'every 10 years', // 10 year intervals?\n '2': 'yearly', // almost yearly?\n '3': 'weekly',\n '4': 'daily',\n },\n example:\n 'A scenario with consequence 2 and probability 4 has an estimated risk of ' +\n '30 000 NOK/incident x 50 incidents/year = 1 500 000 NOK/year.',\n },\n rosDialog: {\n titleNew: 'New risk scorecard',\n titleEdit: 'Edit scorecard',\n titleError: 'The scorecard has to have a title',\n scopeDescription:\n 'Describe what the risk analysis will assess. Specify any key areas which are not part of the scope.',\n scopeError: 'The scorecard has to have a description of the scope',\n },\n scenarioStepper: {\n initialRiskStep: {\n title: 'Initial risk',\n subtitle:\n 'The initial risk is defined by the consequence of the scenario and the probability of it occurring.',\n consequenceSubtitle:\n 'How severe is the potential impact? If the scenario can impact more than one category, choose the highest level of consequence.',\n probabilitySubtitle:\n 'How likely is it that this scenario will occur? If you are between two probability values, choose the higher one.',\n },\n restRiskStep: {\n title: 'Remaining risk',\n subtitle:\n 'What is the risk reduced to when all the planned actions have been completed?',\n consequenceSubtitle:\n 'How severe is the consequence of this scenario after all actions are complete?',\n probabilitySubtitle:\n 'What is the likelihood of this scenario after all actions are complete?',\n },\n },\n scenarioDrawer: {\n title: 'Risk scenario',\n titleError: 'Scenario title is required',\n subtitle:\n 'An unwanted incident that could potentially harm the component.', // harm or affect negatively?\n threatActorSubtitle: 'Someone who attempts to access or abuse the system', // system or component or both?\n vulnerabilitySubtitle:\n 'Weakness in the system that the threat actor can exploit',\n consequenceTab: {\n subtitle:\n 'How severe is the potential impact? If the scenario can impact more than one category, choose the highest level of consequence.',\n },\n probabilityTab: {\n subtitle:\n 'How likely is it that this scenario will occur? If you are between two probability values, choose the higher one.',\n },\n measureTab: {\n subtitle:\n 'What actions should be taken to avoid or reduce the risk of this scenario?',\n measureOwnerDescription:\n 'Decide who will be responsible for completion of this action',\n addMeasureButton: 'Add planned action',\n actionsTitle: 'Planned actions',\n plannedMeasures: 'Planned actions',\n existingMeasure: 'Existing measures',\n existingMeasureSubtitle:\n 'Brief description of relevant measures that have already been implemented to reduce the risk of this scenario',\n },\n restRiskTab: {\n subtitle:\n 'Define the remaining risk for the scenario. Remaining risk is the consequence and probability for this ' +\n 'scenario after all planned actions have been completed.',\n },\n deleteScenarioButton: 'Delete scenario',\n deleteScenarioConfirmation:\n 'Are you sure you want to delete this scenario?',\n closeConfirmation: 'Do you want to save your changes?',\n },\n consequenceTable: {\n rows: {\n '1': 'Negligible', // Insignificant, negligible (ubetydelig)\n '2': 'Small', // Liten\n '3': 'Moderate',\n '4': 'Severe', // Alvorlig\n '5': 'Critical', // Catastrophic eller Critical\n },\n columns: {\n health: 'Life and health', // Health and safety, Life and limb, Health and lives (Liv og helse)\n economical: 'Financial', // Financial consequences, economic implications\n privacy: 'Privacy', // Personvern\n reputation: 'Reputation and trust', // Reputation and trust, confidence, faith (Omdømme og tillit)\n },\n cells: {\n health: {\n '1': 'Impact on life and health cannot be rated less severe than 3', // Liv og helse kan ikke være mindre alvorlig enn 3\n '2': 'Impact on life and health cannot be rated less severe than 3',\n '3': 'Temporary or less severe health implications. Temporary or minor damage to local environment.', // implications, effects or consequence? Temporary or minor? Midlertidige eller mindre alvorlige helsemessige konsekvenser. Midlertidig eller mindre skade på miljøet\n '4': 'Permanent or severe health implications for a few people. Moderate damage to the environment in a limited area.',\n '5': 'Death or permanent severe health implications for many people. Severe damage to the environment across large areas.'\n },\n economical: {\n '1': 'Temporary minor financial loss.\\n May be fixed within an hour by one employee',\n '2': 'Temporary financial loss.\\n May be fixed within three days by one employee',\n '3': 'Financial loss of some duration.\\n May be fixed within a month by three employees',\n '4': 'Financial loss of considerable duration for the organization and any third parties.\\n May be fixed within a year by 10 employees',\n '5': 'Permanent and severe financial loss.\\n May be fixed within three years by 100 employees'\n },\n privacy: {\n '1': 'The right to privacy is violated for a very short period and does not involve sensitive categories or vulnerable groups', // særlige kategorier = sensitive kategorier? special/particular/sensitive categories\n '2': 'The right to privacy is violated for a longer period and involves sensitive categories or vulnerable groups.',\n '3': 'Violations of the rights and freedoms for the registered people.',\n '4': 'Severe violations and breaches of the rights and freedoms for the registered people, as well as violations of the law.',\n '5': 'Impact on privacy cannot be rated more severe than 4',\n },\n reputation: {\n '1': 'Temporary loss of reputation and little impact on trust',\n '2': 'Negative attention in national media that leads to loss of reputation.\\n May reduce trust.',\n '3': 'Lasting negative attention in national and international media that leads to severe loss of reputation.\\n Severe loss of trust from authorities.\\n Users who do not dare or want to use the services.', // lasting, severe, severe loss, severe loss of trust, do not dare or want to use the services\n '4': 'Impact on reputation and trust cannot be rated more severe than 3',\n '5': 'Impact on reputation and trust cannot be rated more severe than 3',\n },\n },\n },\n probabilityTable: {\n rows: {\n '1': 'Very low', // svært liten\n '2': 'Low', // liten\n '3': 'Moderat', // moderat\n '4': 'High', // stor\n '5': 'Very high', // svært stor\n },\n cells: {\n '1': 'The scenario is unlikely to occur. It occurs less often than every 100 years',\n '2': 'The scenario is unlikely to occur. It can occur every 10 years',\n '3': 'The scenario can occur. It can occur almost every year',\n '4': 'The scenario will very likely occur. It can occur almost weekly',\n '5': 'The scenario is almost guaranteed to occur. It can occur almost daily',\n },\n },\n },\n});\n\nexport const pluginRiScNorwegianTranslation = createTranslationResource({\n ref: pluginRiScTranslationRef,\n translations: {\n no: () =>\n Promise.resolve({\n default: {\n 'contentHeader.title': 'Risiko- og sårbarhetsanalyse',\n 'contentHeader.createNewButton': 'Opprett ny analyse',\n\n 'dictionary.cancel': 'Avbryt',\n 'dictionary.close': 'Lukk',\n 'dictionary.completed': 'Fullført',\n 'dictionary.confirm': 'Bekreft',\n 'dictionary.consequence': 'Konsekvens',\n 'dictionary.deadline': 'Frist',\n 'dictionary.delete': 'Slett',\n 'dictionary.description': 'Beskrivelse',\n 'dictionary.discardChanges': 'Forkast endringer',\n 'dictionary.edit': 'Rediger',\n 'dictionary.estimatedRisk': 'Estimert risiko',\n 'dictionary.initialRisk': 'Startrisiko',\n 'dictionary.measure': 'Tiltak',\n 'dictionary.measureOwner': 'Tiltakseier',\n 'dictionary.next': 'Neste',\n 'dictionary.planned': 'Planlagt',\n 'dictionary.previous': 'Forrige',\n 'dictionary.probability': 'Sannsynlighet',\n 'dictionary.restRisk': 'Restrisiko',\n 'dictionary.risk': 'Risiko',\n 'dictionary.save': 'Lagre',\n 'dictionary.saveAndClose': 'Lagre og lukk',\n 'dictionary.saveError':\n 'Noe gikk galt ved lagring. Venligst prøv igjen.',\n 'dictionary.scenario': 'Scenario',\n 'dictionary.scope': 'Omfang',\n 'dictionary.status': 'Status',\n 'dictionary.threatActors': 'Trusselaktører',\n 'dictionary.title': 'Tittel',\n 'dictionary.vulnerabilities': 'Sårbarheter',\n\n 'rosStatus.statusBadge.missing':\n 'Venter på godkjenning av risikoeier',\n 'rosStatus.statusBadge.approved': 'Godkjent av risikoeier',\n 'rosStatus.statusBadge.error': 'Kunne ikke hente status',\n 'rosStatus.prStatus': 'Avventer godkjenning av PR i Github',\n 'rosStatus.approveButton': 'Godkjenn ROS',\n\n 'publishDialog.title': 'Godkjenn ROS-analyse',\n 'publishDialog.checkboxLabel':\n 'Jeg bekrefter at jeg er risikoeier og godtar risikoen beskrevet i denne risiko- og sårbarhetsanalysen.',\n\n 'scenarioTable.title': 'Risikoscenarioer',\n 'scenarioTable.addScenarioButton': 'Legg til scenario',\n 'scenarioTable.columns.measuresCount': 'Tiltak',\n 'scenarioTable.columns.consequenceChar': 'K',\n 'scenarioTable.columns.probabilityChar': 'S',\n 'scenarioTable.columns.completed': 'fullført',\n\n 'riskMatrix.title': 'Risikomatrise',\n 'riskMatrix.estimatedRisk.title': 'Estimert risiko',\n 'riskMatrix.estimatedRisk.suffix.thousand': '{{count}} tusen',\n 'riskMatrix.estimatedRisk.suffix.million_one': '{{count}} million',\n 'riskMatrix.estimatedRisk.suffix.million_other':\n '{{count}} millioner',\n 'riskMatrix.estimatedRisk.suffix.billion_one': '{{count}} milliard',\n 'riskMatrix.estimatedRisk.suffix.billion_other':\n '{{count}} milliarder',\n 'riskMatrix.estimatedRisk.suffix.trillion_one': '{{count}} billion',\n 'riskMatrix.estimatedRisk.suffix.trillion_other':\n '{{count}} billioner',\n 'riskMatrix.estimatedRisk.unit.nokPerYear': 'kr/år',\n 'riskMatrix.tooltip.title': 'Risikoscenarioer',\n\n 'infoDialog.title': 'Estimert risiko',\n 'infoDialog.description':\n 'Den estimerte risikoen er basert på hvor stor risiko de forskjellige scenariene utgjør. Hvis det er stor sannsynlighet for at en alvorlig konsekvens skjer er det høy risiko for at det kan bli en stor kostnad for Kartverket. Kostnaden er med andre ord et forsøk på å konkretisere verdien av risiko og er summen av den estimerte risikoen for alle risikoscenariene i denne ROS-analysen.',\n 'infoDialog.calculatedHowTitle':\n 'Hvordan regner vi ut estimert risiko?',\n 'infoDialog.calculatedHow':\n 'Konsekvens måles i kroner per hendelse og sannsynlighet måles i hendelser per år. Den estimerte risikoen blir da: K x S.',\n 'infoDialog.consequenceTitle': 'Konsekvens (kr/hendelse)',\n 'infoDialog.probabilityTitle': 'Sannsynlighet (hendelser/år)',\n 'infoDialog.probabilityDescription.0': 'ca hvert 100. år',\n 'infoDialog.probabilityDescription.1': 'ca hvert 10. år',\n 'infoDialog.probabilityDescription.2': 'ca årlig',\n 'infoDialog.probabilityDescription.3': 'ca ukentlig',\n 'infoDialog.probabilityDescription.4': 'ca daglig',\n 'infoDialog.example':\n 'Et risikoscenario med konsekvens 2 og sannsynlighet 4 har en estimert risiko på 30 000 kr/hendelse x 50 hendelser/år = 1 500 000 kr/år.',\n\n 'rosDialog.titleNew': 'Ny risiko- og sårbarhetsanalyse',\n 'rosDialog.titleEdit': 'Rediger tittel og omfang',\n 'rosDialog.titleError': 'ROS-analysen må ha en tittel',\n 'rosDialog.scopeDescription':\n 'Beskriv hva analysen skal vurdere. Hva som ikke inngår som en del av omfanget må også defineres.', // TODO\n 'rosDialog.scopeError': 'ROS-analysen må ha et omfang',\n\n 'scenarioStepper.initialRiskStep.title': 'Startrisiko',\n 'scenarioStepper.initialRiskStep.subtitle':\n 'Risikoen er kombinasjonen av konsekvensen av scenarioet og sannsynligheten for at det inntreffer.',\n 'scenarioStepper.initialRiskStep.consequenceSubtitle':\n 'Hvor alvorlig er den potensielle konsekvensen? Hvis konsekvensen gjelder flere kategorier velg det høyeste konsekvensnivået av disse.',\n 'scenarioStepper.initialRiskStep.probabilitySubtitle':\n 'Hvor stor sannsynlighet er det for at dette scenarioet vil forekomme. Dersom du er mellom to sannsynlighetsverdier velg den høyeste.',\n 'scenarioStepper.restRiskStep.title': 'Restrisiko',\n 'scenarioStepper.restRiskStep.subtitle':\n 'Hvordan endrer risikoen seg fra startrisikoen etter alle tiltakene er fullført?',\n 'scenarioStepper.restRiskStep.consequenceSubtitle':\n 'Hva blir konsekvensen etter alle tiltakene er fullført?',\n 'scenarioStepper.restRiskStep.probabilitySubtitle':\n 'Hva blir sannsynligheten etter alle tiltakene er fullført?',\n\n 'scenarioDrawer.title': 'Risikoscenario',\n 'scenarioDrawer.titleError': 'Scenarioet må ha en tittel',\n 'scenarioDrawer.subtitle':\n 'En uønsket hendelse som potensielt kan ramme komponenten',\n 'scenarioDrawer.threatActorSubtitle':\n 'Noen som prøver å få tilgang til eller misbruke systemet',\n 'scenarioDrawer.vulnerabilitySubtitle':\n 'Svakhet i systemet som kan utnyttes av trusselaktøren',\n 'scenarioDrawer.consequenceTab.subtitle':\n 'Hvor alvorlig er den potensielle konsekvensen? Hvis scenarioet kan få konsekvenser i flere kategorier velg det høyeste konsekvensnivået av disse.',\n 'scenarioDrawer.probabilityTab.subtitle':\n 'Hvor stor sannsynlighet er det for at dette scenarioet vil forekomme. Dersom du er mellom to sannsynlighetsverdier velg den høyeste.',\n 'scenarioDrawer.measureTab.subtitle':\n 'Hvilke tiltak bør gjøres for å unngå scenarioet?',\n 'scenarioDrawer.measureTab.actionsTitle': 'Planlagte tiltak',\n 'scenarioDrawer.measureTab.measureOwnerDescription':\n 'De eller den som er ansvarlig for at tiltaket blir gjennomført',\n 'scenarioDrawer.measureTab.addMeasureButton': 'Legg til tiltak',\n 'scenarioDrawer.measureTab.plannedMeasures': 'Planlagte tiltak',\n 'scenarioDrawer.measureTab.existingMeasure': 'Eksisterende tiltak',\n 'scenarioDrawer.measureTab.existingMeasureSubtitle':\n 'Kort beskrivelse av relevante tiltak som allerede har blitt gjennomført',\n 'scenarioDrawer.restRiskTab.subtitle':\n 'Sett restrisiko for scenarioet. Restrisiko er konsekvens og sannsynlighet for scenarioet etter at alle tiltak i listen er gjennomført.',\n 'scenarioDrawer.deleteScenarioButton': 'Slett scenario',\n 'scenarioDrawer.deleteScenarioConfirmation':\n 'Er du sikker på at du vil slette scenario?',\n 'scenarioDrawer.closeConfirmation': 'Vil du lagre endringene dine?',\n\n 'consequenceTable.rows.1': 'Ubetydelig',\n 'consequenceTable.rows.2': 'Liten',\n 'consequenceTable.rows.3': 'Moderat',\n 'consequenceTable.rows.4': 'Alvorlig',\n 'consequenceTable.rows.5': 'Kritisk',\n 'consequenceTable.columns.health': 'Liv og helse',\n 'consequenceTable.columns.economical': 'Økonomi og drift',\n 'consequenceTable.columns.privacy': 'Personvern',\n 'consequenceTable.columns.reputation': 'Omdømme og tillit',\n 'consequenceTable.cells.health.1':\n 'Liv og helse kan ikke være mindre alvorlig enn 3',\n 'consequenceTable.cells.health.2':\n 'Liv og helse kan ikke være mindre alvorlig enn 3',\n 'consequenceTable.cells.health.3':\n 'Lettere skade på personer.\\n Noe skade på lokalt miljø.',\n 'consequenceTable.cells.health.4':\n 'Et fåtall alvorlige personskader.\\n Moderat skade på miljø på et begrenset område.',\n 'consequenceTable.cells.health.5':\n 'Dødsfall. Svært alvorlig skade på milhø over store områder.',\n 'consequenceTable.cells.economical.1':\n 'Ubetydelig økonomisk tap.\\n Kan fikses i løpet av en time av én ansatt.',\n 'consequenceTable.cells.economical.2': 'Mindre økonomisk tap.\\n Kan fikses i løpet av tre dager av én ansatt.',\n 'consequenceTable.cells.economical.3':\n 'Moderat økonomisk tap.\\n Kan fikses i løpet av en måned av tre ansatte.',\n 'consequenceTable.cells.economical.4':\n 'Større økonomisk tap.\\n Kan fikses i løpet av et år av 10 ansatte.',\n 'consequenceTable.cells.economical.5':\n 'Kritisk økonomisk tap.\\n Kan fikses i løpet av tre år av 100 ansatte.',\n 'consequenceTable.cells.privacy.1':\n 'Ingen brudd.',\n 'consequenceTable.cells.privacy.2':\n 'Mindre brudd.',\n 'consequenceTable.cells.privacy.3':\n 'Brudd på registrertes rettigheter og friheter.',\n 'consequenceTable.cells.privacy.4':\n 'Meget alvorlige brudd på registrertes rettigheter og friheter, samt lovbrudd.',\n 'consequenceTable.cells.privacy.5':\n 'Personvern kan ikke være mer alvorlig enn 4',\n 'consequenceTable.cells.reputation.1':\n 'Liten fare for omdømmetap og liten innvikrning på tillit',\n 'consequenceTable.cells.reputation.2':\n 'Negativ oppmerksomhet i regionale og nasjonale medier som fører til omdømmetap.\\n Kan redusere tillit.',\n 'consequenceTable.cells.reputation.3':\n 'Negativ oppmerksomhet i nasjonale og internasjonale medier som fører til alvorlig omdømmetap.\\n Alvorlig redusert tillit fra myndigheter.\\n Brukere som ikke tør / vil bruke tjenestene.',\n 'consequenceTable.cells.reputation.4':\n 'Omdømme og tillit kan ikke være mer alvorlig enn 3',\n 'consequenceTable.cells.reputation.5':\n 'Omdømme og tillit kan ikke være mer alvorlig enn 3',\n\n 'probabilityTable.rows.1': 'Svært liten',\n 'probabilityTable.rows.2': 'Liten',\n 'probabilityTable.rows.3': 'Moderat',\n 'probabilityTable.rows.4': 'Stor',\n 'probabilityTable.rows.5': 'Svært stor',\n 'probabilityTable.cells.1':\n 'Scenarioet er usannsynlig å inntreffe. Det inntreffer sjeldnere enn hvert 100. år',\n 'probabilityTable.cells.2':\n 'Scenarioet er lite sannsynlig å inntreffe. Det kan inntreffe hvert 10. år',\n 'probabilityTable.cells.3':\n 'Scenarioet kan inntreffe. Det kan inntreffe nærmest årlig',\n 'probabilityTable.cells.4':\n 'Scenarioet vil med stor sannsynlighet inntreffe. Det kan inntreffe nærmest ukentlig',\n 'probabilityTable.cells.5':\n 'Scenarioet er nesten garantert å inntreffe. Det kan inntreffe nærmest daglig',\n },\n }),\n },\n});\n"],"names":[],"mappings":"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"}
@@ -3,7 +3,7 @@ import { makeStyles, FormControl, FormLabel, FormHelperText, TextField as TextFi
3
3
  import { InfoCard, ContentHeader, SupportButton } from '@backstage/core-components';
4
4
  import { useEntity } from '@backstage/plugin-catalog-react';
5
5
  import { useRouteRef, useApi, googleAuthApiRef, identityApiRef, fetchApiRef, configApiRef } from '@backstage/core-plugin-api';
6
- import { s as scenarioRouteRef, r as riScRouteRef, p as pluginRiScTranslationRef } from './index-f0f7d618.esm.js';
6
+ import { s as scenarioRouteRef, r as riScRouteRef, p as pluginRiScTranslationRef } from './index-7e0035e6.esm.js';
7
7
  import { useNavigate, useLocation, useParams } from 'react-router';
8
8
  import { useEffectOnce } from 'react-use';
9
9
  import { useSearchParams, Routes, Route } from 'react-router-dom';
@@ -69,6 +69,13 @@ var ProcessingStatus = /* @__PURE__ */ ((ProcessingStatus2) => {
69
69
  ProcessingStatus2["ErrorWhenFetchingJSONSchema"] = "ErrorWhenFetchingJSONSchema";
70
70
  return ProcessingStatus2;
71
71
  })(ProcessingStatus || {});
72
+ var ContentStatus = /* @__PURE__ */ ((ContentStatus2) => {
73
+ ContentStatus2["Success"] = "Success";
74
+ ContentStatus2["Failure"] = "Failure";
75
+ ContentStatus2["FileNotFound"] = "FileNotFound";
76
+ ContentStatus2["DecryptionFailed"] = "DecryptionFailed";
77
+ return ContentStatus2;
78
+ })(ContentStatus || {});
72
79
 
73
80
  var $schema = "https://json-schema.org/draft/2020-12/schema";
74
81
  var $id = "https://kartverket.github.io/backstage-plugin-risk-scorecard-backend/risc_schema_en_v3_2.json";
@@ -739,7 +746,6 @@ const useScenarioDrawer = (riSc, updateRiSc, scenarioIdFromParams) => {
739
746
  return;
740
747
  }
741
748
  if (isNewScenario) {
742
- setSearchParams({ step: "scenario" });
743
749
  return;
744
750
  }
745
751
  const selectedScenario = riSc.content.scenarios.find(
@@ -755,12 +761,17 @@ const useScenarioDrawer = (riSc, updateRiSc, scenarioIdFromParams) => {
755
761
  setOriginalScenario(selectedScenario);
756
762
  setScenarioDrawerState(2 /* View */);
757
763
  }
758
- }, [getRiScPath, isNewScenario, navigate, riSc, scenarioIdFromParams, setSearchParams]);
764
+ }, [riSc, scenarioIdFromParams, getRiScPath, navigate, isNewScenario]);
759
765
  const openScenario = (id) => {
760
766
  if (riSc) {
761
767
  navigate(getScenarioPath({ riScId: riSc.id, scenarioId: id }));
762
768
  }
763
769
  };
770
+ const openNewScenarioWizard = (id, step) => {
771
+ if (riSc) {
772
+ navigate(`${getScenarioPath({ riScId: riSc.id, scenarioId: id })}?step=${step}`);
773
+ }
774
+ };
764
775
  const closeScenario = () => {
765
776
  if (riSc) {
766
777
  setIsNewScenario(false);
@@ -813,7 +824,7 @@ const useScenarioDrawer = (riSc, updateRiSc, scenarioIdFromParams) => {
813
824
  const s = emptyScenario();
814
825
  setScenario(s);
815
826
  setOriginalScenario(s);
816
- openScenario(s.ID);
827
+ openNewScenarioWizard(s.ID, "scenario");
817
828
  }
818
829
  };
819
830
  const setTitle = (title) => {
@@ -953,8 +964,9 @@ const useFetchRiScs = (riScIdFromParams) => {
953
964
  useEffectOnce(() => {
954
965
  fetchRiScs(
955
966
  (res) => {
956
- const fetchedRiScs = res.map((riScDTO) => {
957
- const content = dtoToRiSc(JSON.parse(riScDTO.riScContent));
967
+ const fetchedRiScs = res.filter((risk) => risk.status === ContentStatus.Success).map((riScDTO) => {
968
+ const json = JSON.parse(riScDTO.riScContent);
969
+ const content = dtoToRiSc(json);
958
970
  return {
959
971
  id: riScDTO.riScId,
960
972
  content,
@@ -963,6 +975,16 @@ const useFetchRiScs = (riScIdFromParams) => {
963
975
  });
964
976
  setRiScs(fetchedRiScs);
965
977
  setIsFetching(false);
978
+ const errorRiScs = res.filter((risk) => risk.status !== ContentStatus.Success).map((risk) => risk.riScId);
979
+ if (errorRiScs.length > 0) {
980
+ const errorMessage = `Failed to fetch risc scorecards with ids: ${errorRiScs.join(
981
+ ", "
982
+ )}`;
983
+ setResponse({
984
+ statusMessage: errorMessage,
985
+ status: ProcessingStatus.ErrorWhenFetchingRiScs
986
+ });
987
+ }
966
988
  if (fetchedRiScs.length === 0) {
967
989
  return;
968
990
  }
@@ -1801,6 +1823,7 @@ const ScenarioWizard = ({
1801
1823
  } = useContext(ScenarioContext);
1802
1824
  const [showCloseConfirmation, setShowCloseConfirmation] = useState(false);
1803
1825
  const [restEqualsInitial, setRestEqualsInitial] = useState(isNewScenario);
1826
+ const [canCloseIfSuccessfull, setCanCloseIfSuccessfull] = useState(false);
1804
1827
  useEffect(() => {
1805
1828
  if (step === "restRisk")
1806
1829
  setRestEqualsInitial(false);
@@ -1810,15 +1833,16 @@ const ScenarioWizard = ({
1810
1833
  setShowCloseConfirmation(false);
1811
1834
  }, [closeScenario]);
1812
1835
  useEffect(() => {
1813
- if (updateStatus.isSuccess) {
1836
+ if (updateStatus.isSuccess && canCloseIfSuccessfull) {
1814
1837
  close();
1815
1838
  } else if (updateStatus.isError && wizardRef.current) {
1816
1839
  setShowCloseConfirmation(false);
1817
1840
  wizardRef.current.scrollIntoView({ behavior: "smooth", block: "end" });
1818
1841
  }
1819
- }, [close, updateStatus]);
1842
+ }, [canCloseIfSuccessfull, close, updateStatus]);
1820
1843
  const saveAndClose = () => {
1821
1844
  saveScenario();
1845
+ setCanCloseIfSuccessfull(true);
1822
1846
  };
1823
1847
  const handleCloseStepper = () => {
1824
1848
  if (JSON.stringify(scenario) !== JSON.stringify(originalScenario)) {
@@ -3214,4 +3238,4 @@ const RiScPlugin = () => {
3214
3238
  };
3215
3239
 
3216
3240
  export { RiScPlugin };
3217
- //# sourceMappingURL=index-55c3e55b.esm.js.map
3241
+ //# sourceMappingURL=index-e091ae7d.esm.js.map