prism-jsstacktrace.js 975 B

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748
  1. Prism.languages.jsstacktrace = {
  2. 'error-message': {
  3. pattern: /^\S.*/m,
  4. alias: 'string'
  5. },
  6. 'stack-frame': {
  7. pattern: /^[ \t]+at[ \t]+.*/m,
  8. inside: {
  9. 'not-my-code': {
  10. pattern: /[ \t]+at[ \t]+(?:node\.js|\<unknown\>|.*(?:node_modules|\(\<anonymous\>\)|\(\<unknown\>|\<anonymous\>$|\(internal\/|\(node\.js)).*/m,
  11. alias: 'comment'
  12. },
  13. 'filename': {
  14. pattern: /(\bat\s+|\()(?:[a-zA-Z]:)?[^():]+(?=:)/,
  15. lookbehind: true,
  16. alias: 'url'
  17. },
  18. 'function': {
  19. pattern: /(at\s+(?:new\s+)?)[_$a-zA-Z\xA0-\uFFFF<][.$\w\xA0-\uFFFF<>]*/,
  20. lookbehind: true,
  21. inside: {
  22. 'punctuation': /\./
  23. }
  24. },
  25. 'punctuation': /[()]/,
  26. 'keyword': /\b(?:at|new)\b/,
  27. 'alias': {
  28. pattern: /\[(?:as\s+)?[_$a-zA-Z\xA0-\uFFFF][$\w\xA0-\uFFFF]*\]/,
  29. alias: 'variable'
  30. },
  31. 'line-number': {
  32. pattern: /:[0-9]+(?::[0-9]+)?\b/,
  33. alias: 'number',
  34. inside: {
  35. 'punctuation': /:/
  36. }
  37. },
  38. }
  39. }
  40. }