Revision 5285d34cc019c77f7eee2e00a2afd8ff6e84a606 authored by AJ Tomko on 19 October 2022, 12:59:24 UTC, committed by GitHub on 19 October 2022, 12:59:24 UTC
* Dashboard: Alerts user to incorrect tag format for JSON import

Fixes #54285: Malformed tags cause hidden title and settings page crash

* Update public/app/features/manage-dashboards/utils/validation.ts

Co-authored-by: Polina Boneva <13227501+polibb@users.noreply.github.com>

* Included Suggestions

- Removed Comments
- Updated Code Block accordingly
- Updated Tests to camelCase over snake_case

* Updates per comments

- Re-wrapped function in try{}, catch{} as I appear to have overlooked including it in the initial refactor
- Re-worded errors to align with initial error
- Added a test case for invalid json

* Update validation.ts

Updated errors to read correctly to the root cause.
Updated dashboard variable as const.

* Update actions.test.ts

Fix tests according to error output rewording

* Update validation.ts

- Included test for an empty string of non-array

* Update actions.test.ts

-- Commented incorrect commit for validation.ts, update:
- Refactored code to better align and separate from generic JSON package tests followed by our manual checks of (1) Is array, and (2) if array, is of strings

- Test cases now include a check for non-array empty string in the tag property

Co-authored-by: Polina Boneva <13227501+polibb@users.noreply.github.com>
1 parent e52c98b
Raw File
tsconfig.json
{
  "compilerOptions": {
    "jsx": "react",
    "baseUrl": "public/",
    "outDir": "public/dist",
    "rootDirs": ["public/"],
    "allowJs": true,
    "strict": true,
    "resolveJsonModule": true,
    "useUnknownInCatchVariables": true,
    "incremental": true,
    "tsBuildInfoFile": "./tsconfig.tsbuildinfo"
  },
  "extends": "@grafana/tsconfig/base.json",
  "include": [
    "public/app/**/*.ts*",
    "public/e2e-test/**/*.ts",
    "public/test/**/*.ts",
    "public/vendor/**/*.ts",
    "packages/jaeger-ui-components/typings",
    "packages/grafana-data/typings",
    "packages/grafana-ui/src/types"
  ]
}
back to top