@grafana/plugin-ui 0.17.3 → 0.17.4

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.
Files changed (56) hide show
  1. package/NOTICE +18 -0
  2. package/dist/cjs/index.cjs +3 -3
  3. package/dist/cjs/index.cjs.map +1 -1
  4. package/dist/cjs/secret-scanner.cjs +3032 -0
  5. package/dist/cjs/secret-scanner.cjs.map +1 -0
  6. package/dist/cjs/secret-scanner.d.cts +273 -0
  7. package/dist/esm/node_modules/js-yaml/dist/js-yaml.js +3 -3
  8. package/dist/esm/node_modules/js-yaml/dist/js-yaml.js.map +1 -1
  9. package/dist/esm/secret-scanner/core/constants.js +4 -0
  10. package/dist/esm/secret-scanner/core/constants.js.map +1 -0
  11. package/dist/esm/secret-scanner/core/detection/embedded.js +80 -0
  12. package/dist/esm/secret-scanner/core/detection/embedded.js.map +1 -0
  13. package/dist/esm/secret-scanner/core/detection/entropy.js +19 -0
  14. package/dist/esm/secret-scanner/core/detection/entropy.js.map +1 -0
  15. package/dist/esm/secret-scanner/core/detection/highEntropy.js +24 -0
  16. package/dist/esm/secret-scanner/core/detection/highEntropy.js.map +1 -0
  17. package/dist/esm/secret-scanner/core/detection/literals.js +135 -0
  18. package/dist/esm/secret-scanner/core/detection/literals.js.map +1 -0
  19. package/dist/esm/secret-scanner/core/detection/nameDetector.js +48 -0
  20. package/dist/esm/secret-scanner/core/detection/nameDetector.js.map +1 -0
  21. package/dist/esm/secret-scanner/core/detection/placeholders.js +10 -0
  22. package/dist/esm/secret-scanner/core/detection/placeholders.js.map +1 -0
  23. package/dist/esm/secret-scanner/core/detection/position.js +39 -0
  24. package/dist/esm/secret-scanner/core/detection/position.js.map +1 -0
  25. package/dist/esm/secret-scanner/core/detection/ruleDetectors.js +59 -0
  26. package/dist/esm/secret-scanner/core/detection/ruleDetectors.js.map +1 -0
  27. package/dist/esm/secret-scanner/core/k6Rewriter.js +44 -0
  28. package/dist/esm/secret-scanner/core/k6Rewriter.js.map +1 -0
  29. package/dist/esm/secret-scanner/core/memoizeLatest.js +18 -0
  30. package/dist/esm/secret-scanner/core/memoizeLatest.js.map +1 -0
  31. package/dist/esm/secret-scanner/core/scanCode.js +70 -0
  32. package/dist/esm/secret-scanner/core/scanCode.js.map +1 -0
  33. package/dist/esm/secret-scanner/core/scanText.js +51 -0
  34. package/dist/esm/secret-scanner/core/scanText.js.map +1 -0
  35. package/dist/esm/secret-scanner/core/secretScanner.utils.js +33 -0
  36. package/dist/esm/secret-scanner/core/secretScanner.utils.js.map +1 -0
  37. package/dist/esm/secret-scanner/monaco/installSecretScanner.js +117 -0
  38. package/dist/esm/secret-scanner/monaco/installSecretScanner.js.map +1 -0
  39. package/dist/esm/secret-scanner/panel/SecretReferenceModal.js +21 -0
  40. package/dist/esm/secret-scanner/panel/SecretReferenceModal.js.map +1 -0
  41. package/dist/esm/secret-scanner/panel/SecretScannerPanel.js +75 -0
  42. package/dist/esm/secret-scanner/panel/SecretScannerPanel.js.map +1 -0
  43. package/dist/esm/secret-scanner/react/useIgnoredSecrets.js +25 -0
  44. package/dist/esm/secret-scanner/react/useIgnoredSecrets.js.map +1 -0
  45. package/dist/esm/secret-scanner/react/useLocalStorageList.js +38 -0
  46. package/dist/esm/secret-scanner/react/useLocalStorageList.js.map +1 -0
  47. package/dist/esm/secret-scanner/react/useMonacoSecretScanner.js +28 -0
  48. package/dist/esm/secret-scanner/react/useMonacoSecretScanner.js.map +1 -0
  49. package/dist/esm/secret-scanner/react/useSecretScanner.js +57 -0
  50. package/dist/esm/secret-scanner/react/useSecretScanner.js.map +1 -0
  51. package/dist/esm/secret-scanner/rules/rules.generated.js +2083 -0
  52. package/dist/esm/secret-scanner/rules/rules.generated.js.map +1 -0
  53. package/dist/esm/secret-scanner.d.ts +273 -0
  54. package/dist/esm/secret-scanner.js +15 -0
  55. package/dist/esm/secret-scanner.js.map +1 -0
  56. package/package.json +37 -3
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useSecretScanner.js","sources":["../../../../src/secret-scanner/react/useSecretScanner.ts"],"sourcesContent":["import { useCallback, useEffect, useMemo, useState } from 'react';\n\nimport {\n createCodeScanner,\n DEFAULT_DEBOUNCE_MS,\n k6SecretRewriter,\n type SecretFinding,\n type SecretRewriter,\n} from '../core/index';\nimport { useIgnoredSecrets } from './useIgnoredSecrets';\n\nexport interface UseSecretScannerParams {\n text: string;\n scan?: (text: string) => SecretFinding[];\n rewriter?: SecretRewriter;\n onChange?: (text: string) => void;\n enabled?: boolean;\n ignoreStorageKey?: string;\n debounceMs?: number;\n}\n\nexport interface SecretReference {\n finding: SecretFinding;\n secretName: string;\n reference: string;\n}\n\nexport interface SecretMigration {\n finding: SecretFinding | null;\n request: (finding: SecretFinding) => void;\n cancel: () => void;\n apply: (finding: SecretFinding, secretName: string) => void;\n}\n\n/** The fallback flow for a secret that couldn't be inserted automatically. */\nexport interface SecretReferenceFallback {\n pending: SecretReference | null;\n dismiss: () => void;\n}\n\nexport interface SecretScanner {\n /** Detected secrets, minus the ones the user ignored. */\n findings: SecretFinding[];\n ignore: (finding: SecretFinding) => void;\n migration: SecretMigration;\n reference: SecretReferenceFallback;\n}\n\n/**\n * Headless secret scanner over any string — a code editor's contents, a\n * textarea, a prompt field. Owns detection, debouncing, ignore state and the\n * rewrite.\n */\nexport function useSecretScanner(params: UseSecretScannerParams): SecretScanner {\n const {\n text,\n scan,\n rewriter = k6SecretRewriter,\n onChange,\n enabled = true,\n ignoreStorageKey,\n debounceMs = DEFAULT_DEBOUNCE_MS,\n } = params;\n\n const defaultScan = useMemo(() => createCodeScanner(), []);\n const scanner = scan ?? defaultScan;\n\n const { isIgnored, ignore } = useIgnoredSecrets(ignoreStorageKey);\n const [activeFinding, setActiveFinding] = useState<SecretFinding | null>(null);\n const [pendingReference, setPendingReference] = useState<SecretReference | null>(null);\n const [findings, setFindings] = useState<SecretFinding[]>(() => (enabled ? scanner(text) : []));\n useEffect(() => {\n if (!enabled) {\n setFindings([]);\n return;\n }\n const handle = setTimeout(() => setFindings(scanner(text)), debounceMs);\n return () => clearTimeout(handle);\n }, [text, debounceMs, enabled, scanner]);\n\n const visible = useMemo(() => findings.filter((finding) => !isIgnored(finding)), [findings, isIgnored]);\n\n const request = useCallback((finding: SecretFinding) => setActiveFinding(finding), []);\n const cancel = useCallback(() => setActiveFinding(null), []);\n const dismiss = useCallback(() => setPendingReference(null), []);\n const apply = useCallback(\n (finding: SecretFinding, secretName: string) => {\n const result = onChange ? rewriter.apply(text, finding, secretName) : undefined;\n if (result?.applied) {\n onChange!(result.text);\n } else {\n setPendingReference({ finding, secretName, reference: rewriter.reference(secretName) });\n }\n setActiveFinding(null);\n },\n [text, onChange, rewriter]\n );\n\n const migration = useMemo(\n () => ({ finding: activeFinding, request, cancel, apply }),\n [activeFinding, request, cancel, apply]\n );\n const reference = useMemo(() => ({ pending: pendingReference, dismiss }), [pendingReference, dismiss]);\n\n return { findings: visible, ignore, migration, reference };\n}\n"],"names":[],"mappings":"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"}