@forsakringskassan/docs-generator 1.30.5 → 1.30.6

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.
@@ -13930,10 +13930,11 @@ class Minimatch {
13930
13930
  for (let i = 0; i < globParts.length - 1; i++) {
13931
13931
  for (let j = i + 1; j < globParts.length; j++) {
13932
13932
  const matched = this.partsMatch(globParts[i], globParts[j], !this.preserveMultipleSlashes);
13933
- if (!matched)
13934
- continue;
13935
- globParts[i] = matched;
13936
- globParts[j] = [];
13933
+ if (matched) {
13934
+ globParts[i] = [];
13935
+ globParts[j] = matched;
13936
+ break;
13937
+ }
13937
13938
  }
13938
13939
  }
13939
13940
  return globParts.filter(gs => gs.length);
@@ -27849,7 +27850,7 @@ function expandOrCloneMode(mode) {
27849
27850
  return mode;
27850
27851
  }
27851
27852
 
27852
- var version$1 = "11.9.0";
27853
+ var version$1 = "11.10.0";
27853
27854
 
27854
27855
  class HTMLInjectionError extends Error {
27855
27856
  constructor(reason, html) {
@@ -29150,7 +29151,7 @@ Language: Bash
29150
29151
  Author: vah <vahtenberg@gmail.com>
29151
29152
  Contributrors: Benjamin Pannell <contact@sierrasoftworks.com>
29152
29153
  Website: https://www.gnu.org/software/bash/
29153
- Category: common
29154
+ Category: common, scripting
29154
29155
  */
29155
29156
 
29156
29157
  var bash_1;
@@ -29191,6 +29192,18 @@ function requireBash () {
29191
29192
  end: /\)/,
29192
29193
  contains: [ hljs.BACKSLASH_ESCAPE ]
29193
29194
  };
29195
+ const COMMENT = hljs.inherit(
29196
+ hljs.COMMENT(),
29197
+ {
29198
+ match: [
29199
+ /(^|\s)/,
29200
+ /#.*$/
29201
+ ],
29202
+ scope: {
29203
+ 2: 'comment'
29204
+ }
29205
+ }
29206
+ );
29194
29207
  const HERE_DOC = {
29195
29208
  begin: /<<-?\s*(?=\w+)/,
29196
29209
  starts: { contains: [
@@ -29324,6 +29337,7 @@ function requireBash () {
29324
29337
  "read",
29325
29338
  "readarray",
29326
29339
  "source",
29340
+ "sudo",
29327
29341
  "type",
29328
29342
  "typeset",
29329
29343
  "ulimit",
@@ -29509,7 +29523,10 @@ function requireBash () {
29509
29523
 
29510
29524
  return {
29511
29525
  name: 'Bash',
29512
- aliases: [ 'sh' ],
29526
+ aliases: [
29527
+ 'sh',
29528
+ 'zsh'
29529
+ ],
29513
29530
  keywords: {
29514
29531
  $pattern: /\b[a-z][a-z0-9._-]+\b/,
29515
29532
  keyword: KEYWORDS,
@@ -29529,7 +29546,7 @@ function requireBash () {
29529
29546
  hljs.SHEBANG(), // to catch unknown shells but still highlight the shebang
29530
29547
  FUNCTION,
29531
29548
  ARITHMETIC,
29532
- hljs.HASH_COMMENT_MODE,
29549
+ COMMENT,
29533
29550
  HERE_DOC,
29534
29551
  PATH_MODE,
29535
29552
  QUOTE_STRING,
@@ -29623,7 +29640,7 @@ function requireC () {
29623
29640
  end: /$/,
29624
29641
  keywords: { keyword:
29625
29642
  'if else elif endif define undef warning error line '
29626
- + 'pragma _Pragma ifdef ifndef include' },
29643
+ + 'pragma _Pragma ifdef ifndef elifdef elifndef include' },
29627
29644
  contains: [
29628
29645
  {
29629
29646
  begin: /\\\n/,
@@ -29667,6 +29684,8 @@ function requireC () {
29667
29684
  "restrict",
29668
29685
  "return",
29669
29686
  "sizeof",
29687
+ "typeof",
29688
+ "typeof_unqual",
29670
29689
  "struct",
29671
29690
  "switch",
29672
29691
  "typedef",
@@ -29701,14 +29720,26 @@ function requireC () {
29701
29720
  "char",
29702
29721
  "void",
29703
29722
  "_Bool",
29723
+ "_BitInt",
29704
29724
  "_Complex",
29705
29725
  "_Imaginary",
29706
29726
  "_Decimal32",
29707
29727
  "_Decimal64",
29728
+ "_Decimal96",
29708
29729
  "_Decimal128",
29730
+ "_Decimal64x",
29731
+ "_Decimal128x",
29732
+ "_Float16",
29733
+ "_Float32",
29734
+ "_Float64",
29735
+ "_Float128",
29736
+ "_Float32x",
29737
+ "_Float64x",
29738
+ "_Float128x",
29709
29739
  // modifiers
29710
29740
  "const",
29711
29741
  "static",
29742
+ "constexpr",
29712
29743
  // aliases
29713
29744
  "complex",
29714
29745
  "bool",
@@ -29932,9 +29963,44 @@ function requireCpp () {
29932
29963
  const NUMBERS = {
29933
29964
  className: 'number',
29934
29965
  variants: [
29935
- { begin: '\\b(0b[01\']+)' },
29936
- { begin: '(-?)\\b([\\d\']+(\\.[\\d\']*)?|\\.[\\d\']+)((ll|LL|l|L)(u|U)?|(u|U)(ll|LL|l|L)?|f|F|b|B)' },
29937
- { begin: '(-?)(\\b0[xX][a-fA-F0-9\']+|(\\b[\\d\']+(\\.[\\d\']*)?|\\.[\\d\']+)([eE][-+]?[\\d\']+)?)' }
29966
+ // Floating-point literal.
29967
+ { begin:
29968
+ "[+-]?(?:" // Leading sign.
29969
+ // Decimal.
29970
+ + "(?:"
29971
+ +"[0-9](?:'?[0-9])*\\.(?:[0-9](?:'?[0-9])*)?"
29972
+ + "|\\.[0-9](?:'?[0-9])*"
29973
+ + ")(?:[Ee][+-]?[0-9](?:'?[0-9])*)?"
29974
+ + "|[0-9](?:'?[0-9])*[Ee][+-]?[0-9](?:'?[0-9])*"
29975
+ // Hexadecimal.
29976
+ + "|0[Xx](?:"
29977
+ +"[0-9A-Fa-f](?:'?[0-9A-Fa-f])*(?:\\.(?:[0-9A-Fa-f](?:'?[0-9A-Fa-f])*)?)?"
29978
+ + "|\\.[0-9A-Fa-f](?:'?[0-9A-Fa-f])*"
29979
+ + ")[Pp][+-]?[0-9](?:'?[0-9])*"
29980
+ + ")(?:" // Literal suffixes.
29981
+ + "[Ff](?:16|32|64|128)?"
29982
+ + "|(BF|bf)16"
29983
+ + "|[Ll]"
29984
+ + "|" // Literal suffix is optional.
29985
+ + ")"
29986
+ },
29987
+ // Integer literal.
29988
+ { begin:
29989
+ "[+-]?\\b(?:" // Leading sign.
29990
+ + "0[Bb][01](?:'?[01])*" // Binary.
29991
+ + "|0[Xx][0-9A-Fa-f](?:'?[0-9A-Fa-f])*" // Hexadecimal.
29992
+ + "|0(?:'?[0-7])*" // Octal or just a lone zero.
29993
+ + "|[1-9](?:'?[0-9])*" // Decimal.
29994
+ + ")(?:" // Literal suffixes.
29995
+ + "[Uu](?:LL?|ll?)"
29996
+ + "|[Uu][Zz]?"
29997
+ + "|(?:LL?|ll?)[Uu]?"
29998
+ + "|[Zz][Uu]"
29999
+ + "|" // Literal suffix is optional.
30000
+ + ")"
30001
+ // Note: there are user-defined literal suffixes too, but perhaps having the custom suffix not part of the
30002
+ // literal highlight actually makes it stand out more.
30003
+ }
29938
30004
  ],
29939
30005
  relevance: 0
29940
30006
  };
@@ -30621,6 +30687,11 @@ function requireCsharp () {
30621
30687
  ],
30622
30688
  relevance: 0
30623
30689
  };
30690
+ const RAW_STRING = {
30691
+ className: 'string',
30692
+ begin: /"""("*)(?!")(.|\n)*?"""\1/,
30693
+ relevance: 1
30694
+ };
30624
30695
  const VERBATIM_STRING = {
30625
30696
  className: 'string',
30626
30697
  begin: '@"',
@@ -30686,6 +30757,7 @@ function requireCsharp () {
30686
30757
  hljs.inherit(hljs.C_BLOCK_COMMENT_MODE, { illegal: /\n/ })
30687
30758
  ];
30688
30759
  const STRING = { variants: [
30760
+ RAW_STRING,
30689
30761
  INTERPOLATED_VERBATIM_STRING,
30690
30762
  INTERPOLATED_STRING,
30691
30763
  VERBATIM_STRING,
@@ -30909,7 +30981,7 @@ function requireCss () {
30909
30981
  };
30910
30982
  };
30911
30983
 
30912
- const TAGS = [
30984
+ const HTML_TAGS = [
30913
30985
  'a',
30914
30986
  'abbr',
30915
30987
  'address',
@@ -30961,11 +31033,16 @@ function requireCss () {
30961
31033
  'nav',
30962
31034
  'object',
30963
31035
  'ol',
31036
+ 'optgroup',
31037
+ 'option',
30964
31038
  'p',
31039
+ 'picture',
30965
31040
  'q',
30966
31041
  'quote',
30967
31042
  'samp',
30968
31043
  'section',
31044
+ 'select',
31045
+ 'source',
30969
31046
  'span',
30970
31047
  'strong',
30971
31048
  'summary',
@@ -30984,6 +31061,58 @@ function requireCss () {
30984
31061
  'video'
30985
31062
  ];
30986
31063
 
31064
+ const SVG_TAGS = [
31065
+ 'defs',
31066
+ 'g',
31067
+ 'marker',
31068
+ 'mask',
31069
+ 'pattern',
31070
+ 'svg',
31071
+ 'switch',
31072
+ 'symbol',
31073
+ 'feBlend',
31074
+ 'feColorMatrix',
31075
+ 'feComponentTransfer',
31076
+ 'feComposite',
31077
+ 'feConvolveMatrix',
31078
+ 'feDiffuseLighting',
31079
+ 'feDisplacementMap',
31080
+ 'feFlood',
31081
+ 'feGaussianBlur',
31082
+ 'feImage',
31083
+ 'feMerge',
31084
+ 'feMorphology',
31085
+ 'feOffset',
31086
+ 'feSpecularLighting',
31087
+ 'feTile',
31088
+ 'feTurbulence',
31089
+ 'linearGradient',
31090
+ 'radialGradient',
31091
+ 'stop',
31092
+ 'circle',
31093
+ 'ellipse',
31094
+ 'image',
31095
+ 'line',
31096
+ 'path',
31097
+ 'polygon',
31098
+ 'polyline',
31099
+ 'rect',
31100
+ 'text',
31101
+ 'use',
31102
+ 'textPath',
31103
+ 'tspan',
31104
+ 'foreignObject',
31105
+ 'clipPath'
31106
+ ];
31107
+
31108
+ const TAGS = [
31109
+ ...HTML_TAGS,
31110
+ ...SVG_TAGS,
31111
+ ];
31112
+
31113
+ // Sorting, then reversing makes sure longer attributes/elements like
31114
+ // `font-weight` are matched fully instead of getting false positives on say `font`
31115
+
30987
31116
  const MEDIA_FEATURES = [
30988
31117
  'any-hover',
30989
31118
  'any-pointer',
@@ -31019,7 +31148,7 @@ function requireCss () {
31019
31148
  'max-width',
31020
31149
  'min-height',
31021
31150
  'max-height'
31022
- ];
31151
+ ].sort().reverse();
31023
31152
 
31024
31153
  // https://developer.mozilla.org/en-US/docs/Web/CSS/Pseudo-classes
31025
31154
  const PSEUDO_CLASSES = [
@@ -31082,7 +31211,7 @@ function requireCss () {
31082
31211
  'valid',
31083
31212
  'visited',
31084
31213
  'where' // where()
31085
- ];
31214
+ ].sort().reverse();
31086
31215
 
31087
31216
  // https://developer.mozilla.org/en-US/docs/Web/CSS/Pseudo-elements
31088
31217
  const PSEUDO_ELEMENTS = [
@@ -31100,12 +31229,14 @@ function requireCss () {
31100
31229
  'selection',
31101
31230
  'slotted',
31102
31231
  'spelling-error'
31103
- ];
31232
+ ].sort().reverse();
31104
31233
 
31105
31234
  const ATTRIBUTES = [
31235
+ 'accent-color',
31106
31236
  'align-content',
31107
31237
  'align-items',
31108
31238
  'align-self',
31239
+ 'alignment-baseline',
31109
31240
  'all',
31110
31241
  'animation',
31111
31242
  'animation-delay',
@@ -31116,6 +31247,7 @@ function requireCss () {
31116
31247
  'animation-name',
31117
31248
  'animation-play-state',
31118
31249
  'animation-timing-function',
31250
+ 'appearance',
31119
31251
  'backface-visibility',
31120
31252
  'background',
31121
31253
  'background-attachment',
@@ -31127,6 +31259,7 @@ function requireCss () {
31127
31259
  'background-position',
31128
31260
  'background-repeat',
31129
31261
  'background-size',
31262
+ 'baseline-shift',
31130
31263
  'block-size',
31131
31264
  'border',
31132
31265
  'border-block',
@@ -31173,10 +31306,14 @@ function requireCss () {
31173
31306
  'border-left-width',
31174
31307
  'border-radius',
31175
31308
  'border-right',
31309
+ 'border-end-end-radius',
31310
+ 'border-end-start-radius',
31176
31311
  'border-right-color',
31177
31312
  'border-right-style',
31178
31313
  'border-right-width',
31179
31314
  'border-spacing',
31315
+ 'border-start-end-radius',
31316
+ 'border-start-start-radius',
31180
31317
  'border-style',
31181
31318
  'border-top',
31182
31319
  'border-top-color',
@@ -31192,6 +31329,8 @@ function requireCss () {
31192
31329
  'break-after',
31193
31330
  'break-before',
31194
31331
  'break-inside',
31332
+ 'cx',
31333
+ 'cy',
31195
31334
  'caption-side',
31196
31335
  'caret-color',
31197
31336
  'clear',
@@ -31199,6 +31338,11 @@ function requireCss () {
31199
31338
  'clip-path',
31200
31339
  'clip-rule',
31201
31340
  'color',
31341
+ 'color-interpolation',
31342
+ 'color-interpolation-filters',
31343
+ 'color-profile',
31344
+ 'color-rendering',
31345
+ 'color-scheme',
31202
31346
  'column-count',
31203
31347
  'column-fill',
31204
31348
  'column-gap',
@@ -31220,7 +31364,12 @@ function requireCss () {
31220
31364
  'cursor',
31221
31365
  'direction',
31222
31366
  'display',
31367
+ 'dominant-baseline',
31223
31368
  'empty-cells',
31369
+ 'enable-background',
31370
+ 'fill',
31371
+ 'fill-opacity',
31372
+ 'fill-rule',
31224
31373
  'filter',
31225
31374
  'flex',
31226
31375
  'flex-basis',
@@ -31231,6 +31380,8 @@ function requireCss () {
31231
31380
  'flex-wrap',
31232
31381
  'float',
31233
31382
  'flow',
31383
+ 'flood-color',
31384
+ 'flood-opacity',
31234
31385
  'font',
31235
31386
  'font-display',
31236
31387
  'font-family',
@@ -31252,6 +31403,7 @@ function requireCss () {
31252
31403
  'font-variation-settings',
31253
31404
  'font-weight',
31254
31405
  'gap',
31406
+ 'glyph-orientation-horizontal',
31255
31407
  'glyph-orientation-vertical',
31256
31408
  'grid',
31257
31409
  'grid-area',
@@ -31278,16 +31430,32 @@ function requireCss () {
31278
31430
  'image-resolution',
31279
31431
  'ime-mode',
31280
31432
  'inline-size',
31433
+ 'inset',
31434
+ 'inset-block',
31435
+ 'inset-block-end',
31436
+ 'inset-block-start',
31437
+ 'inset-inline',
31438
+ 'inset-inline-end',
31439
+ 'inset-inline-start',
31281
31440
  'isolation',
31441
+ 'kerning',
31282
31442
  'justify-content',
31443
+ 'justify-items',
31444
+ 'justify-self',
31283
31445
  'left',
31284
31446
  'letter-spacing',
31447
+ 'lighting-color',
31285
31448
  'line-break',
31286
31449
  'line-height',
31287
31450
  'list-style',
31288
31451
  'list-style-image',
31289
31452
  'list-style-position',
31290
31453
  'list-style-type',
31454
+ 'marker',
31455
+ 'marker-end',
31456
+ 'marker-mid',
31457
+ 'marker-start',
31458
+ 'mask',
31291
31459
  'margin',
31292
31460
  'margin-block',
31293
31461
  'margin-block-end',
@@ -31369,12 +31537,15 @@ function requireCss () {
31369
31537
  'pointer-events',
31370
31538
  'position',
31371
31539
  'quotes',
31540
+ 'r',
31372
31541
  'resize',
31373
31542
  'rest',
31374
31543
  'rest-after',
31375
31544
  'rest-before',
31376
31545
  'right',
31546
+ 'rotate',
31377
31547
  'row-gap',
31548
+ 'scale',
31378
31549
  'scroll-margin',
31379
31550
  'scroll-margin-block',
31380
31551
  'scroll-margin-block-end',
@@ -31406,11 +31577,23 @@ function requireCss () {
31406
31577
  'shape-image-threshold',
31407
31578
  'shape-margin',
31408
31579
  'shape-outside',
31580
+ 'shape-rendering',
31581
+ 'stop-color',
31582
+ 'stop-opacity',
31583
+ 'stroke',
31584
+ 'stroke-dasharray',
31585
+ 'stroke-dashoffset',
31586
+ 'stroke-linecap',
31587
+ 'stroke-linejoin',
31588
+ 'stroke-miterlimit',
31589
+ 'stroke-opacity',
31590
+ 'stroke-width',
31409
31591
  'speak',
31410
31592
  'speak-as',
31411
31593
  'src', // @font-face
31412
31594
  'tab-size',
31413
31595
  'table-layout',
31596
+ 'text-anchor',
31414
31597
  'text-align',
31415
31598
  'text-align-all',
31416
31599
  'text-align-last',
@@ -31418,7 +31601,9 @@ function requireCss () {
31418
31601
  'text-decoration',
31419
31602
  'text-decoration-color',
31420
31603
  'text-decoration-line',
31604
+ 'text-decoration-skip-ink',
31421
31605
  'text-decoration-style',
31606
+ 'text-decoration-thickness',
31422
31607
  'text-emphasis',
31423
31608
  'text-emphasis-color',
31424
31609
  'text-emphasis-position',
@@ -31430,6 +31615,7 @@ function requireCss () {
31430
31615
  'text-rendering',
31431
31616
  'text-shadow',
31432
31617
  'text-transform',
31618
+ 'text-underline-offset',
31433
31619
  'text-underline-position',
31434
31620
  'top',
31435
31621
  'transform',
@@ -31441,7 +31627,9 @@ function requireCss () {
31441
31627
  'transition-duration',
31442
31628
  'transition-property',
31443
31629
  'transition-timing-function',
31630
+ 'translate',
31444
31631
  'unicode-bidi',
31632
+ 'vector-effect',
31445
31633
  'vertical-align',
31446
31634
  'visibility',
31447
31635
  'voice-balance',
@@ -31460,10 +31648,10 @@ function requireCss () {
31460
31648
  'word-spacing',
31461
31649
  'word-wrap',
31462
31650
  'writing-mode',
31651
+ 'x',
31652
+ 'y',
31463
31653
  'z-index'
31464
- // reverse makes sure longer attributes `font-weight` are matched fully
31465
- // instead of getting false positives on say `font`
31466
- ].reverse();
31654
+ ].sort().reverse();
31467
31655
 
31468
31656
  /*
31469
31657
  Language: CSS
@@ -31829,6 +32017,12 @@ function requireMarkdown () {
31829
32017
  end: '$'
31830
32018
  };
31831
32019
 
32020
+ const ENTITY = {
32021
+ //https://spec.commonmark.org/0.31.2/#entity-references
32022
+ scope: 'literal',
32023
+ match: /&([a-zA-Z0-9]+|#[0-9]{1,7}|#[Xx][0-9a-fA-F]{1,6});/
32024
+ };
32025
+
31832
32026
  return {
31833
32027
  name: 'Markdown',
31834
32028
  aliases: [
@@ -31846,7 +32040,8 @@ function requireMarkdown () {
31846
32040
  CODE,
31847
32041
  HORIZONTAL_RULE,
31848
32042
  LINK,
31849
- LINK_REFERENCE
32043
+ LINK_REFERENCE,
32044
+ ENTITY
31850
32045
  ]
31851
32046
  };
31852
32047
  }
@@ -31932,7 +32127,7 @@ Description: Ruby is a dynamic, open source programming language with a focus on
31932
32127
  Website: https://www.ruby-lang.org/
31933
32128
  Author: Anton Kovalyov <anton@kovalyov.net>
31934
32129
  Contributors: Peter Leonov <gojpeg@yandex.ru>, Vasily Polovnyov <vast@whiteants.net>, Loren Segal <lsegal@soen.ca>, Pascal Hurni <phi@ruby-reactive.org>, Cedric Sohrauer <sohrauer@googlemail.com>
31935
- Category: common
32130
+ Category: common, scripting
31936
32131
  */
31937
32132
 
31938
32133
  var ruby_1;
@@ -32500,10 +32695,25 @@ function requireGo () {
32500
32695
  className: 'number',
32501
32696
  variants: [
32502
32697
  {
32503
- begin: hljs.C_NUMBER_RE + '[i]',
32504
- relevance: 1
32698
+ match: /-?\b0[xX]\.[a-fA-F0-9](_?[a-fA-F0-9])*[pP][+-]?\d(_?\d)*i?/, // hex without a present digit before . (making a digit afterwards required)
32699
+ relevance: 0
32700
+ },
32701
+ {
32702
+ match: /-?\b0[xX](_?[a-fA-F0-9])+((\.([a-fA-F0-9](_?[a-fA-F0-9])*)?)?[pP][+-]?\d(_?\d)*)?i?/, // hex with a present digit before . (making a digit afterwards optional)
32703
+ relevance: 0
32704
+ },
32705
+ {
32706
+ match: /-?\b0[oO](_?[0-7])*i?/, // leading 0o octal
32707
+ relevance: 0
32708
+ },
32709
+ {
32710
+ match: /-?\.\d(_?\d)*([eE][+-]?\d(_?\d)*)?i?/, // decimal without a present digit before . (making a digit afterwards required)
32711
+ relevance: 0
32505
32712
  },
32506
- hljs.C_NUMBER_MODE
32713
+ {
32714
+ match: /-?\b\d(_?\d)*(\.(\d(_?\d)*)?)?([eE][+-]?\d(_?\d)*)?i?/, // decimal with a present digit before . (making a digit afterwards optional)
32715
+ relevance: 0
32716
+ }
32507
32717
  ]
32508
32718
  },
32509
32719
  { begin: /:=/ // relevance booster
@@ -32866,7 +33076,8 @@ function requireJava () {
32866
33076
  'do',
32867
33077
  'sealed',
32868
33078
  'yield',
32869
- 'permits'
33079
+ 'permits',
33080
+ 'goto'
32870
33081
  ];
32871
33082
 
32872
33083
  const BUILT_INS = [
@@ -33346,7 +33557,7 @@ function requireJavascript () {
33346
33557
  contains: [] // defined later
33347
33558
  };
33348
33559
  const HTML_TEMPLATE = {
33349
- begin: 'html`',
33560
+ begin: '\.?html`',
33350
33561
  end: '',
33351
33562
  starts: {
33352
33563
  end: '`',
@@ -33359,7 +33570,7 @@ function requireJavascript () {
33359
33570
  }
33360
33571
  };
33361
33572
  const CSS_TEMPLATE = {
33362
- begin: 'css`',
33573
+ begin: '\.?css`',
33363
33574
  end: '',
33364
33575
  starts: {
33365
33576
  end: '`',
@@ -33372,7 +33583,7 @@ function requireJavascript () {
33372
33583
  }
33373
33584
  };
33374
33585
  const GRAPHQL_TEMPLATE = {
33375
- begin: 'gql`',
33586
+ begin: '\.?gql`',
33376
33587
  end: '',
33377
33588
  starts: {
33378
33589
  end: '`',
@@ -33469,7 +33680,7 @@ function requireJavascript () {
33469
33680
  const PARAMS_CONTAINS = SUBST_AND_COMMENTS.concat([
33470
33681
  // eat recursive parens in sub expressions
33471
33682
  {
33472
- begin: /\(/,
33683
+ begin: /(\s*)\(/,
33473
33684
  end: /\)/,
33474
33685
  keywords: KEYWORDS$1,
33475
33686
  contains: ["self"].concat(SUBST_AND_COMMENTS)
@@ -33477,7 +33688,8 @@ function requireJavascript () {
33477
33688
  ]);
33478
33689
  const PARAMS = {
33479
33690
  className: 'params',
33480
- begin: /\(/,
33691
+ // convert this to negative lookbehind in v12
33692
+ begin: /(\s*)\(/, // to match the parms with
33481
33693
  end: /\)/,
33482
33694
  excludeBegin: true,
33483
33695
  excludeEnd: true,
@@ -33600,8 +33812,8 @@ function requireJavascript () {
33600
33812
  ...BUILT_IN_GLOBALS,
33601
33813
  "super",
33602
33814
  "import"
33603
- ]),
33604
- IDENT_RE$1, regex.lookahead(/\(/)),
33815
+ ].map(x => `${x}\\s*\\(`)),
33816
+ IDENT_RE$1, regex.lookahead(/\s*\(/)),
33605
33817
  className: "title.function",
33606
33818
  relevance: 0
33607
33819
  };
@@ -33722,7 +33934,7 @@ function requireJavascript () {
33722
33934
  skip: true
33723
33935
  },
33724
33936
  {
33725
- begin: /\(/,
33937
+ begin: /(\s*)\(/,
33726
33938
  end: /\)/,
33727
33939
  excludeBegin: true,
33728
33940
  excludeEnd: true,
@@ -33865,6 +34077,7 @@ function requireJson () {
33865
34077
 
33866
34078
  return {
33867
34079
  name: 'JSON',
34080
+ aliases: ['jsonc'],
33868
34081
  keywords:{
33869
34082
  literal: LITERALS,
33870
34083
  },
@@ -34231,7 +34444,7 @@ function requireLess () {
34231
34444
  };
34232
34445
  };
34233
34446
 
34234
- const TAGS = [
34447
+ const HTML_TAGS = [
34235
34448
  'a',
34236
34449
  'abbr',
34237
34450
  'address',
@@ -34283,11 +34496,16 @@ function requireLess () {
34283
34496
  'nav',
34284
34497
  'object',
34285
34498
  'ol',
34499
+ 'optgroup',
34500
+ 'option',
34286
34501
  'p',
34502
+ 'picture',
34287
34503
  'q',
34288
34504
  'quote',
34289
34505
  'samp',
34290
34506
  'section',
34507
+ 'select',
34508
+ 'source',
34291
34509
  'span',
34292
34510
  'strong',
34293
34511
  'summary',
@@ -34306,6 +34524,58 @@ function requireLess () {
34306
34524
  'video'
34307
34525
  ];
34308
34526
 
34527
+ const SVG_TAGS = [
34528
+ 'defs',
34529
+ 'g',
34530
+ 'marker',
34531
+ 'mask',
34532
+ 'pattern',
34533
+ 'svg',
34534
+ 'switch',
34535
+ 'symbol',
34536
+ 'feBlend',
34537
+ 'feColorMatrix',
34538
+ 'feComponentTransfer',
34539
+ 'feComposite',
34540
+ 'feConvolveMatrix',
34541
+ 'feDiffuseLighting',
34542
+ 'feDisplacementMap',
34543
+ 'feFlood',
34544
+ 'feGaussianBlur',
34545
+ 'feImage',
34546
+ 'feMerge',
34547
+ 'feMorphology',
34548
+ 'feOffset',
34549
+ 'feSpecularLighting',
34550
+ 'feTile',
34551
+ 'feTurbulence',
34552
+ 'linearGradient',
34553
+ 'radialGradient',
34554
+ 'stop',
34555
+ 'circle',
34556
+ 'ellipse',
34557
+ 'image',
34558
+ 'line',
34559
+ 'path',
34560
+ 'polygon',
34561
+ 'polyline',
34562
+ 'rect',
34563
+ 'text',
34564
+ 'use',
34565
+ 'textPath',
34566
+ 'tspan',
34567
+ 'foreignObject',
34568
+ 'clipPath'
34569
+ ];
34570
+
34571
+ const TAGS = [
34572
+ ...HTML_TAGS,
34573
+ ...SVG_TAGS,
34574
+ ];
34575
+
34576
+ // Sorting, then reversing makes sure longer attributes/elements like
34577
+ // `font-weight` are matched fully instead of getting false positives on say `font`
34578
+
34309
34579
  const MEDIA_FEATURES = [
34310
34580
  'any-hover',
34311
34581
  'any-pointer',
@@ -34341,7 +34611,7 @@ function requireLess () {
34341
34611
  'max-width',
34342
34612
  'min-height',
34343
34613
  'max-height'
34344
- ];
34614
+ ].sort().reverse();
34345
34615
 
34346
34616
  // https://developer.mozilla.org/en-US/docs/Web/CSS/Pseudo-classes
34347
34617
  const PSEUDO_CLASSES = [
@@ -34404,7 +34674,7 @@ function requireLess () {
34404
34674
  'valid',
34405
34675
  'visited',
34406
34676
  'where' // where()
34407
- ];
34677
+ ].sort().reverse();
34408
34678
 
34409
34679
  // https://developer.mozilla.org/en-US/docs/Web/CSS/Pseudo-elements
34410
34680
  const PSEUDO_ELEMENTS = [
@@ -34422,12 +34692,14 @@ function requireLess () {
34422
34692
  'selection',
34423
34693
  'slotted',
34424
34694
  'spelling-error'
34425
- ];
34695
+ ].sort().reverse();
34426
34696
 
34427
34697
  const ATTRIBUTES = [
34698
+ 'accent-color',
34428
34699
  'align-content',
34429
34700
  'align-items',
34430
34701
  'align-self',
34702
+ 'alignment-baseline',
34431
34703
  'all',
34432
34704
  'animation',
34433
34705
  'animation-delay',
@@ -34438,6 +34710,7 @@ function requireLess () {
34438
34710
  'animation-name',
34439
34711
  'animation-play-state',
34440
34712
  'animation-timing-function',
34713
+ 'appearance',
34441
34714
  'backface-visibility',
34442
34715
  'background',
34443
34716
  'background-attachment',
@@ -34449,6 +34722,7 @@ function requireLess () {
34449
34722
  'background-position',
34450
34723
  'background-repeat',
34451
34724
  'background-size',
34725
+ 'baseline-shift',
34452
34726
  'block-size',
34453
34727
  'border',
34454
34728
  'border-block',
@@ -34495,10 +34769,14 @@ function requireLess () {
34495
34769
  'border-left-width',
34496
34770
  'border-radius',
34497
34771
  'border-right',
34772
+ 'border-end-end-radius',
34773
+ 'border-end-start-radius',
34498
34774
  'border-right-color',
34499
34775
  'border-right-style',
34500
34776
  'border-right-width',
34501
34777
  'border-spacing',
34778
+ 'border-start-end-radius',
34779
+ 'border-start-start-radius',
34502
34780
  'border-style',
34503
34781
  'border-top',
34504
34782
  'border-top-color',
@@ -34514,6 +34792,8 @@ function requireLess () {
34514
34792
  'break-after',
34515
34793
  'break-before',
34516
34794
  'break-inside',
34795
+ 'cx',
34796
+ 'cy',
34517
34797
  'caption-side',
34518
34798
  'caret-color',
34519
34799
  'clear',
@@ -34521,6 +34801,11 @@ function requireLess () {
34521
34801
  'clip-path',
34522
34802
  'clip-rule',
34523
34803
  'color',
34804
+ 'color-interpolation',
34805
+ 'color-interpolation-filters',
34806
+ 'color-profile',
34807
+ 'color-rendering',
34808
+ 'color-scheme',
34524
34809
  'column-count',
34525
34810
  'column-fill',
34526
34811
  'column-gap',
@@ -34542,7 +34827,12 @@ function requireLess () {
34542
34827
  'cursor',
34543
34828
  'direction',
34544
34829
  'display',
34830
+ 'dominant-baseline',
34545
34831
  'empty-cells',
34832
+ 'enable-background',
34833
+ 'fill',
34834
+ 'fill-opacity',
34835
+ 'fill-rule',
34546
34836
  'filter',
34547
34837
  'flex',
34548
34838
  'flex-basis',
@@ -34553,6 +34843,8 @@ function requireLess () {
34553
34843
  'flex-wrap',
34554
34844
  'float',
34555
34845
  'flow',
34846
+ 'flood-color',
34847
+ 'flood-opacity',
34556
34848
  'font',
34557
34849
  'font-display',
34558
34850
  'font-family',
@@ -34574,6 +34866,7 @@ function requireLess () {
34574
34866
  'font-variation-settings',
34575
34867
  'font-weight',
34576
34868
  'gap',
34869
+ 'glyph-orientation-horizontal',
34577
34870
  'glyph-orientation-vertical',
34578
34871
  'grid',
34579
34872
  'grid-area',
@@ -34600,16 +34893,32 @@ function requireLess () {
34600
34893
  'image-resolution',
34601
34894
  'ime-mode',
34602
34895
  'inline-size',
34896
+ 'inset',
34897
+ 'inset-block',
34898
+ 'inset-block-end',
34899
+ 'inset-block-start',
34900
+ 'inset-inline',
34901
+ 'inset-inline-end',
34902
+ 'inset-inline-start',
34603
34903
  'isolation',
34904
+ 'kerning',
34604
34905
  'justify-content',
34906
+ 'justify-items',
34907
+ 'justify-self',
34605
34908
  'left',
34606
34909
  'letter-spacing',
34910
+ 'lighting-color',
34607
34911
  'line-break',
34608
34912
  'line-height',
34609
34913
  'list-style',
34610
34914
  'list-style-image',
34611
34915
  'list-style-position',
34612
34916
  'list-style-type',
34917
+ 'marker',
34918
+ 'marker-end',
34919
+ 'marker-mid',
34920
+ 'marker-start',
34921
+ 'mask',
34613
34922
  'margin',
34614
34923
  'margin-block',
34615
34924
  'margin-block-end',
@@ -34691,12 +35000,15 @@ function requireLess () {
34691
35000
  'pointer-events',
34692
35001
  'position',
34693
35002
  'quotes',
35003
+ 'r',
34694
35004
  'resize',
34695
35005
  'rest',
34696
35006
  'rest-after',
34697
35007
  'rest-before',
34698
35008
  'right',
35009
+ 'rotate',
34699
35010
  'row-gap',
35011
+ 'scale',
34700
35012
  'scroll-margin',
34701
35013
  'scroll-margin-block',
34702
35014
  'scroll-margin-block-end',
@@ -34728,11 +35040,23 @@ function requireLess () {
34728
35040
  'shape-image-threshold',
34729
35041
  'shape-margin',
34730
35042
  'shape-outside',
35043
+ 'shape-rendering',
35044
+ 'stop-color',
35045
+ 'stop-opacity',
35046
+ 'stroke',
35047
+ 'stroke-dasharray',
35048
+ 'stroke-dashoffset',
35049
+ 'stroke-linecap',
35050
+ 'stroke-linejoin',
35051
+ 'stroke-miterlimit',
35052
+ 'stroke-opacity',
35053
+ 'stroke-width',
34731
35054
  'speak',
34732
35055
  'speak-as',
34733
35056
  'src', // @font-face
34734
35057
  'tab-size',
34735
35058
  'table-layout',
35059
+ 'text-anchor',
34736
35060
  'text-align',
34737
35061
  'text-align-all',
34738
35062
  'text-align-last',
@@ -34740,7 +35064,9 @@ function requireLess () {
34740
35064
  'text-decoration',
34741
35065
  'text-decoration-color',
34742
35066
  'text-decoration-line',
35067
+ 'text-decoration-skip-ink',
34743
35068
  'text-decoration-style',
35069
+ 'text-decoration-thickness',
34744
35070
  'text-emphasis',
34745
35071
  'text-emphasis-color',
34746
35072
  'text-emphasis-position',
@@ -34752,6 +35078,7 @@ function requireLess () {
34752
35078
  'text-rendering',
34753
35079
  'text-shadow',
34754
35080
  'text-transform',
35081
+ 'text-underline-offset',
34755
35082
  'text-underline-position',
34756
35083
  'top',
34757
35084
  'transform',
@@ -34763,7 +35090,9 @@ function requireLess () {
34763
35090
  'transition-duration',
34764
35091
  'transition-property',
34765
35092
  'transition-timing-function',
35093
+ 'translate',
34766
35094
  'unicode-bidi',
35095
+ 'vector-effect',
34767
35096
  'vertical-align',
34768
35097
  'visibility',
34769
35098
  'voice-balance',
@@ -34782,13 +35111,13 @@ function requireLess () {
34782
35111
  'word-spacing',
34783
35112
  'word-wrap',
34784
35113
  'writing-mode',
35114
+ 'x',
35115
+ 'y',
34785
35116
  'z-index'
34786
- // reverse makes sure longer attributes `font-weight` are matched fully
34787
- // instead of getting false positives on say `font`
34788
- ].reverse();
35117
+ ].sort().reverse();
34789
35118
 
34790
35119
  // some grammars use them all as a single group
34791
- const PSEUDO_SELECTORS = PSEUDO_CLASSES.concat(PSEUDO_ELEMENTS);
35120
+ const PSEUDO_SELECTORS = PSEUDO_CLASSES.concat(PSEUDO_ELEMENTS).sort().reverse();
34792
35121
 
34793
35122
  /*
34794
35123
  Language: Less
@@ -35032,7 +35361,7 @@ function requireLess () {
35032
35361
  Language: Lua
35033
35362
  Description: Lua is a powerful, efficient, lightweight, embeddable scripting language.
35034
35363
  Author: Andrew Fedorov <dmmdrs@mail.ru>
35035
- Category: common, scripting
35364
+ Category: common, gaming, scripting
35036
35365
  Website: https://www.lua.org
35037
35366
  */
35038
35367
 
@@ -35122,7 +35451,7 @@ Language: Makefile
35122
35451
  Author: Ivan Sagalaev <maniac@softwaremaniacs.org>
35123
35452
  Contributors: Joël Porquet <joel@porquet.org>
35124
35453
  Website: https://www.gnu.org/software/make/manual/html_node/Introduction.html
35125
- Category: common
35454
+ Category: common, build-system
35126
35455
  */
35127
35456
 
35128
35457
  var makefile_1;
@@ -35246,6 +35575,7 @@ function requirePerl () {
35246
35575
  'chown',
35247
35576
  'chr',
35248
35577
  'chroot',
35578
+ 'class',
35249
35579
  'close',
35250
35580
  'closedir',
35251
35581
  'connect',
@@ -35275,6 +35605,7 @@ function requirePerl () {
35275
35605
  'exit',
35276
35606
  'exp',
35277
35607
  'fcntl',
35608
+ 'field',
35278
35609
  'fileno',
35279
35610
  'flock',
35280
35611
  'for',
@@ -35334,6 +35665,7 @@ function requirePerl () {
35334
35665
  'lt',
35335
35666
  'ma',
35336
35667
  'map',
35668
+ 'method',
35337
35669
  'mkdir',
35338
35670
  'msgctl',
35339
35671
  'msgget',
@@ -35478,19 +35810,45 @@ function requirePerl () {
35478
35810
  end: /\}/
35479
35811
  // contains defined later
35480
35812
  };
35481
- const VAR = { variants: [
35482
- { begin: /\$\d/ },
35483
- { begin: regex.concat(
35484
- /[$%@](\^\w\b|#\w+(::\w+)*|\{\w+\}|\w+(::\w*)*)/,
35485
- // negative look-ahead tries to avoid matching patterns that are not
35486
- // Perl at all like $ident$, @ident@, etc.
35487
- `(?![A-Za-z])(?![@$%])`
35488
- ) },
35489
- {
35490
- begin: /[$%@][^\s\w{]/,
35491
- relevance: 0
35492
- }
35493
- ] };
35813
+ const ATTR = {
35814
+ scope: 'attr',
35815
+ match: /\s+:\s*\w+(\s*\(.*?\))?/,
35816
+ };
35817
+ const VAR = {
35818
+ scope: 'variable',
35819
+ variants: [
35820
+ { begin: /\$\d/ },
35821
+ { begin: regex.concat(
35822
+ /[$%@](?!")(\^\w\b|#\w+(::\w+)*|\{\w+\}|\w+(::\w*)*)/,
35823
+ // negative look-ahead tries to avoid matching patterns that are not
35824
+ // Perl at all like $ident$, @ident@, etc.
35825
+ `(?![A-Za-z])(?![@$%])`
35826
+ )
35827
+ },
35828
+ {
35829
+ // Only $= is a special Perl variable and one can't declare @= or %=.
35830
+ begin: /[$%@](?!")[^\s\w{=]|\$=/,
35831
+ relevance: 0
35832
+ }
35833
+ ],
35834
+ contains: [ ATTR ],
35835
+ };
35836
+ const NUMBER = {
35837
+ className: 'number',
35838
+ variants: [
35839
+ // decimal numbers:
35840
+ // include the case where a number starts with a dot (eg. .9), and
35841
+ // the leading 0? avoids mixing the first and second match on 0.x cases
35842
+ { match: /0?\.[0-9][0-9_]+\b/ },
35843
+ // include the special versioned number (eg. v5.38)
35844
+ { match: /\bv?(0|[1-9][0-9_]*(\.[0-9_]+)?|[1-9][0-9_]*)\b/ },
35845
+ // non-decimal numbers:
35846
+ { match: /\b0[0-7][0-7_]*\b/ },
35847
+ { match: /\b0x[0-9a-fA-F][0-9a-fA-F_]*\b/ },
35848
+ { match: /\b0b[0-1][0-1_]*\b/ },
35849
+ ],
35850
+ relevance: 0
35851
+ };
35494
35852
  const STRING_CONTAINS = [
35495
35853
  hljs.BACKSLASH_ESCAPE,
35496
35854
  SUBST,
@@ -35605,11 +35963,7 @@ function requirePerl () {
35605
35963
  }
35606
35964
  ]
35607
35965
  },
35608
- {
35609
- className: 'number',
35610
- begin: '(\\b0[0-7_]+)|(\\b0x[0-9a-fA-F_]+)|(\\b[1-9][0-9_]*(\\.[0-9_]+)?)|[0_]\\b',
35611
- relevance: 0
35612
- },
35966
+ NUMBER,
35613
35967
  { // regexp container
35614
35968
  begin: '(\\/\\/|' + hljs.RE_STARTERS_RE + '|\\b(split|return|print|reverse|grep)\\b)\\s*',
35615
35969
  keywords: 'split return print reverse grep',
@@ -35651,11 +36005,19 @@ function requirePerl () {
35651
36005
  },
35652
36006
  {
35653
36007
  className: 'function',
35654
- beginKeywords: 'sub',
36008
+ beginKeywords: 'sub method',
35655
36009
  end: '(\\s*\\(.*?\\))?[;{]',
35656
36010
  excludeEnd: true,
35657
36011
  relevance: 5,
35658
- contains: [ hljs.TITLE_MODE ]
36012
+ contains: [ hljs.TITLE_MODE, ATTR ]
36013
+ },
36014
+ {
36015
+ className: 'class',
36016
+ beginKeywords: 'class',
36017
+ end: '[;{]',
36018
+ excludeEnd: true,
36019
+ relevance: 5,
36020
+ contains: [ hljs.TITLE_MODE, ATTR, NUMBER ]
35659
36021
  },
35660
36022
  {
35661
36023
  begin: '-\\w\\b',
@@ -37048,7 +37410,8 @@ function requirePython () {
37048
37410
  NUMBER,
37049
37411
  {
37050
37412
  // very common convention
37051
- begin: /\bself\b/
37413
+ scope: 'variable.language',
37414
+ match: /\bself\b/
37052
37415
  },
37053
37416
  {
37054
37417
  // eat "if" prior to string so that it won't accidentally be
@@ -37056,6 +37419,7 @@ function requirePython () {
37056
37419
  beginKeywords: "if",
37057
37420
  relevance: 0
37058
37421
  },
37422
+ { match: /\bor\b/, scope: "keyword" },
37059
37423
  STRING,
37060
37424
  COMMENT_TYPE,
37061
37425
  hljs.HASH_COMMENT_MODE,
@@ -37432,15 +37796,22 @@ function requireRust () {
37432
37796
  if (hasRequiredRust) return rust_1;
37433
37797
  hasRequiredRust = 1;
37434
37798
  /** @type LanguageFn */
37799
+
37435
37800
  function rust(hljs) {
37436
37801
  const regex = hljs.regex;
37802
+ // ============================================
37803
+ // Added to support the r# keyword, which is a raw identifier in Rust.
37804
+ const RAW_IDENTIFIER = /(r#)?/;
37805
+ const UNDERSCORE_IDENT_RE = regex.concat(RAW_IDENTIFIER, hljs.UNDERSCORE_IDENT_RE);
37806
+ const IDENT_RE = regex.concat(RAW_IDENTIFIER, hljs.IDENT_RE);
37807
+ // ============================================
37437
37808
  const FUNCTION_INVOKE = {
37438
37809
  className: "title.function.invoke",
37439
37810
  relevance: 0,
37440
37811
  begin: regex.concat(
37441
37812
  /\b/,
37442
37813
  /(?!let|for|while|if|else|match\b)/,
37443
- hljs.IDENT_RE,
37814
+ IDENT_RE,
37444
37815
  regex.lookahead(/\s*\(/))
37445
37816
  };
37446
37817
  const NUMBER_SUFFIX = '([ui](8|16|32|64|128|size)|f(32|64))\?';
@@ -37489,6 +37860,7 @@ function requireRust () {
37489
37860
  "try",
37490
37861
  "type",
37491
37862
  "typeof",
37863
+ "union",
37492
37864
  "unsafe",
37493
37865
  "unsized",
37494
37866
  "use",
@@ -37641,7 +38013,7 @@ function requireRust () {
37641
38013
  begin: [
37642
38014
  /fn/,
37643
38015
  /\s+/,
37644
- hljs.UNDERSCORE_IDENT_RE
38016
+ UNDERSCORE_IDENT_RE
37645
38017
  ],
37646
38018
  className: {
37647
38019
  1: "keyword",
@@ -37656,7 +38028,10 @@ function requireRust () {
37656
38028
  {
37657
38029
  className: 'string',
37658
38030
  begin: /"/,
37659
- end: /"/
38031
+ end: /"/,
38032
+ contains: [
38033
+ hljs.BACKSLASH_ESCAPE
38034
+ ]
37660
38035
  }
37661
38036
  ]
37662
38037
  },
@@ -37665,7 +38040,7 @@ function requireRust () {
37665
38040
  /let/,
37666
38041
  /\s+/,
37667
38042
  /(?:mut\s+)?/,
37668
- hljs.UNDERSCORE_IDENT_RE
38043
+ UNDERSCORE_IDENT_RE
37669
38044
  ],
37670
38045
  className: {
37671
38046
  1: "keyword",
@@ -37678,7 +38053,7 @@ function requireRust () {
37678
38053
  begin: [
37679
38054
  /for/,
37680
38055
  /\s+/,
37681
- hljs.UNDERSCORE_IDENT_RE,
38056
+ UNDERSCORE_IDENT_RE,
37682
38057
  /\s+/,
37683
38058
  /in/
37684
38059
  ],
@@ -37692,7 +38067,7 @@ function requireRust () {
37692
38067
  begin: [
37693
38068
  /type/,
37694
38069
  /\s+/,
37695
- hljs.UNDERSCORE_IDENT_RE
38070
+ UNDERSCORE_IDENT_RE
37696
38071
  ],
37697
38072
  className: {
37698
38073
  1: "keyword",
@@ -37703,7 +38078,7 @@ function requireRust () {
37703
38078
  begin: [
37704
38079
  /(?:trait|enum|struct|union|impl|for)/,
37705
38080
  /\s+/,
37706
- hljs.UNDERSCORE_IDENT_RE
38081
+ UNDERSCORE_IDENT_RE
37707
38082
  ],
37708
38083
  className: {
37709
38084
  1: "keyword",
@@ -37782,7 +38157,7 @@ function requireScss () {
37782
38157
  };
37783
38158
  };
37784
38159
 
37785
- const TAGS = [
38160
+ const HTML_TAGS = [
37786
38161
  'a',
37787
38162
  'abbr',
37788
38163
  'address',
@@ -37834,11 +38209,16 @@ function requireScss () {
37834
38209
  'nav',
37835
38210
  'object',
37836
38211
  'ol',
38212
+ 'optgroup',
38213
+ 'option',
37837
38214
  'p',
38215
+ 'picture',
37838
38216
  'q',
37839
38217
  'quote',
37840
38218
  'samp',
37841
38219
  'section',
38220
+ 'select',
38221
+ 'source',
37842
38222
  'span',
37843
38223
  'strong',
37844
38224
  'summary',
@@ -37857,6 +38237,58 @@ function requireScss () {
37857
38237
  'video'
37858
38238
  ];
37859
38239
 
38240
+ const SVG_TAGS = [
38241
+ 'defs',
38242
+ 'g',
38243
+ 'marker',
38244
+ 'mask',
38245
+ 'pattern',
38246
+ 'svg',
38247
+ 'switch',
38248
+ 'symbol',
38249
+ 'feBlend',
38250
+ 'feColorMatrix',
38251
+ 'feComponentTransfer',
38252
+ 'feComposite',
38253
+ 'feConvolveMatrix',
38254
+ 'feDiffuseLighting',
38255
+ 'feDisplacementMap',
38256
+ 'feFlood',
38257
+ 'feGaussianBlur',
38258
+ 'feImage',
38259
+ 'feMerge',
38260
+ 'feMorphology',
38261
+ 'feOffset',
38262
+ 'feSpecularLighting',
38263
+ 'feTile',
38264
+ 'feTurbulence',
38265
+ 'linearGradient',
38266
+ 'radialGradient',
38267
+ 'stop',
38268
+ 'circle',
38269
+ 'ellipse',
38270
+ 'image',
38271
+ 'line',
38272
+ 'path',
38273
+ 'polygon',
38274
+ 'polyline',
38275
+ 'rect',
38276
+ 'text',
38277
+ 'use',
38278
+ 'textPath',
38279
+ 'tspan',
38280
+ 'foreignObject',
38281
+ 'clipPath'
38282
+ ];
38283
+
38284
+ const TAGS = [
38285
+ ...HTML_TAGS,
38286
+ ...SVG_TAGS,
38287
+ ];
38288
+
38289
+ // Sorting, then reversing makes sure longer attributes/elements like
38290
+ // `font-weight` are matched fully instead of getting false positives on say `font`
38291
+
37860
38292
  const MEDIA_FEATURES = [
37861
38293
  'any-hover',
37862
38294
  'any-pointer',
@@ -37892,7 +38324,7 @@ function requireScss () {
37892
38324
  'max-width',
37893
38325
  'min-height',
37894
38326
  'max-height'
37895
- ];
38327
+ ].sort().reverse();
37896
38328
 
37897
38329
  // https://developer.mozilla.org/en-US/docs/Web/CSS/Pseudo-classes
37898
38330
  const PSEUDO_CLASSES = [
@@ -37955,7 +38387,7 @@ function requireScss () {
37955
38387
  'valid',
37956
38388
  'visited',
37957
38389
  'where' // where()
37958
- ];
38390
+ ].sort().reverse();
37959
38391
 
37960
38392
  // https://developer.mozilla.org/en-US/docs/Web/CSS/Pseudo-elements
37961
38393
  const PSEUDO_ELEMENTS = [
@@ -37973,12 +38405,14 @@ function requireScss () {
37973
38405
  'selection',
37974
38406
  'slotted',
37975
38407
  'spelling-error'
37976
- ];
38408
+ ].sort().reverse();
37977
38409
 
37978
38410
  const ATTRIBUTES = [
38411
+ 'accent-color',
37979
38412
  'align-content',
37980
38413
  'align-items',
37981
38414
  'align-self',
38415
+ 'alignment-baseline',
37982
38416
  'all',
37983
38417
  'animation',
37984
38418
  'animation-delay',
@@ -37989,6 +38423,7 @@ function requireScss () {
37989
38423
  'animation-name',
37990
38424
  'animation-play-state',
37991
38425
  'animation-timing-function',
38426
+ 'appearance',
37992
38427
  'backface-visibility',
37993
38428
  'background',
37994
38429
  'background-attachment',
@@ -38000,6 +38435,7 @@ function requireScss () {
38000
38435
  'background-position',
38001
38436
  'background-repeat',
38002
38437
  'background-size',
38438
+ 'baseline-shift',
38003
38439
  'block-size',
38004
38440
  'border',
38005
38441
  'border-block',
@@ -38046,10 +38482,14 @@ function requireScss () {
38046
38482
  'border-left-width',
38047
38483
  'border-radius',
38048
38484
  'border-right',
38485
+ 'border-end-end-radius',
38486
+ 'border-end-start-radius',
38049
38487
  'border-right-color',
38050
38488
  'border-right-style',
38051
38489
  'border-right-width',
38052
38490
  'border-spacing',
38491
+ 'border-start-end-radius',
38492
+ 'border-start-start-radius',
38053
38493
  'border-style',
38054
38494
  'border-top',
38055
38495
  'border-top-color',
@@ -38065,6 +38505,8 @@ function requireScss () {
38065
38505
  'break-after',
38066
38506
  'break-before',
38067
38507
  'break-inside',
38508
+ 'cx',
38509
+ 'cy',
38068
38510
  'caption-side',
38069
38511
  'caret-color',
38070
38512
  'clear',
@@ -38072,6 +38514,11 @@ function requireScss () {
38072
38514
  'clip-path',
38073
38515
  'clip-rule',
38074
38516
  'color',
38517
+ 'color-interpolation',
38518
+ 'color-interpolation-filters',
38519
+ 'color-profile',
38520
+ 'color-rendering',
38521
+ 'color-scheme',
38075
38522
  'column-count',
38076
38523
  'column-fill',
38077
38524
  'column-gap',
@@ -38093,7 +38540,12 @@ function requireScss () {
38093
38540
  'cursor',
38094
38541
  'direction',
38095
38542
  'display',
38543
+ 'dominant-baseline',
38096
38544
  'empty-cells',
38545
+ 'enable-background',
38546
+ 'fill',
38547
+ 'fill-opacity',
38548
+ 'fill-rule',
38097
38549
  'filter',
38098
38550
  'flex',
38099
38551
  'flex-basis',
@@ -38104,6 +38556,8 @@ function requireScss () {
38104
38556
  'flex-wrap',
38105
38557
  'float',
38106
38558
  'flow',
38559
+ 'flood-color',
38560
+ 'flood-opacity',
38107
38561
  'font',
38108
38562
  'font-display',
38109
38563
  'font-family',
@@ -38125,6 +38579,7 @@ function requireScss () {
38125
38579
  'font-variation-settings',
38126
38580
  'font-weight',
38127
38581
  'gap',
38582
+ 'glyph-orientation-horizontal',
38128
38583
  'glyph-orientation-vertical',
38129
38584
  'grid',
38130
38585
  'grid-area',
@@ -38151,16 +38606,32 @@ function requireScss () {
38151
38606
  'image-resolution',
38152
38607
  'ime-mode',
38153
38608
  'inline-size',
38609
+ 'inset',
38610
+ 'inset-block',
38611
+ 'inset-block-end',
38612
+ 'inset-block-start',
38613
+ 'inset-inline',
38614
+ 'inset-inline-end',
38615
+ 'inset-inline-start',
38154
38616
  'isolation',
38617
+ 'kerning',
38155
38618
  'justify-content',
38619
+ 'justify-items',
38620
+ 'justify-self',
38156
38621
  'left',
38157
38622
  'letter-spacing',
38623
+ 'lighting-color',
38158
38624
  'line-break',
38159
38625
  'line-height',
38160
38626
  'list-style',
38161
38627
  'list-style-image',
38162
38628
  'list-style-position',
38163
38629
  'list-style-type',
38630
+ 'marker',
38631
+ 'marker-end',
38632
+ 'marker-mid',
38633
+ 'marker-start',
38634
+ 'mask',
38164
38635
  'margin',
38165
38636
  'margin-block',
38166
38637
  'margin-block-end',
@@ -38242,12 +38713,15 @@ function requireScss () {
38242
38713
  'pointer-events',
38243
38714
  'position',
38244
38715
  'quotes',
38716
+ 'r',
38245
38717
  'resize',
38246
38718
  'rest',
38247
38719
  'rest-after',
38248
38720
  'rest-before',
38249
38721
  'right',
38722
+ 'rotate',
38250
38723
  'row-gap',
38724
+ 'scale',
38251
38725
  'scroll-margin',
38252
38726
  'scroll-margin-block',
38253
38727
  'scroll-margin-block-end',
@@ -38279,11 +38753,23 @@ function requireScss () {
38279
38753
  'shape-image-threshold',
38280
38754
  'shape-margin',
38281
38755
  'shape-outside',
38756
+ 'shape-rendering',
38757
+ 'stop-color',
38758
+ 'stop-opacity',
38759
+ 'stroke',
38760
+ 'stroke-dasharray',
38761
+ 'stroke-dashoffset',
38762
+ 'stroke-linecap',
38763
+ 'stroke-linejoin',
38764
+ 'stroke-miterlimit',
38765
+ 'stroke-opacity',
38766
+ 'stroke-width',
38282
38767
  'speak',
38283
38768
  'speak-as',
38284
38769
  'src', // @font-face
38285
38770
  'tab-size',
38286
38771
  'table-layout',
38772
+ 'text-anchor',
38287
38773
  'text-align',
38288
38774
  'text-align-all',
38289
38775
  'text-align-last',
@@ -38291,7 +38777,9 @@ function requireScss () {
38291
38777
  'text-decoration',
38292
38778
  'text-decoration-color',
38293
38779
  'text-decoration-line',
38780
+ 'text-decoration-skip-ink',
38294
38781
  'text-decoration-style',
38782
+ 'text-decoration-thickness',
38295
38783
  'text-emphasis',
38296
38784
  'text-emphasis-color',
38297
38785
  'text-emphasis-position',
@@ -38303,6 +38791,7 @@ function requireScss () {
38303
38791
  'text-rendering',
38304
38792
  'text-shadow',
38305
38793
  'text-transform',
38794
+ 'text-underline-offset',
38306
38795
  'text-underline-position',
38307
38796
  'top',
38308
38797
  'transform',
@@ -38314,7 +38803,9 @@ function requireScss () {
38314
38803
  'transition-duration',
38315
38804
  'transition-property',
38316
38805
  'transition-timing-function',
38806
+ 'translate',
38317
38807
  'unicode-bidi',
38808
+ 'vector-effect',
38318
38809
  'vertical-align',
38319
38810
  'visibility',
38320
38811
  'voice-balance',
@@ -38333,10 +38824,10 @@ function requireScss () {
38333
38824
  'word-spacing',
38334
38825
  'word-wrap',
38335
38826
  'writing-mode',
38827
+ 'x',
38828
+ 'y',
38336
38829
  'z-index'
38337
- // reverse makes sure longer attributes `font-weight` are matched fully
38338
- // instead of getting false positives on say `font`
38339
- ].reverse();
38830
+ ].sort().reverse();
38340
38831
 
38341
38832
  /*
38342
38833
  Language: SCSS
@@ -39362,6 +39853,7 @@ function requireSwift () {
39362
39853
  'operator',
39363
39854
  'optional', // contextual
39364
39855
  'override', // contextual
39856
+ 'package',
39365
39857
  'postfix', // contextual
39366
39858
  'precedencegroup',
39367
39859
  'prefix', // contextual
@@ -39858,14 +40350,17 @@ function requireSwift () {
39858
40350
  }
39859
40351
  ] }
39860
40352
  };
40353
+
39861
40354
  const KEYWORD_ATTRIBUTE = {
39862
40355
  scope: 'keyword',
39863
- match: concat(/@/, either(...keywordAttributes))
40356
+ match: concat(/@/, either(...keywordAttributes), lookahead(either(/\(/, /\s+/))),
39864
40357
  };
40358
+
39865
40359
  const USER_DEFINED_ATTRIBUTE = {
39866
40360
  scope: 'meta',
39867
40361
  match: concat(/@/, identifier)
39868
40362
  };
40363
+
39869
40364
  const ATTRIBUTES = [
39870
40365
  AVAILABLE_ATTRIBUTE,
39871
40366
  KEYWORD_ATTRIBUTE,
@@ -40058,6 +40553,37 @@ function requireSwift () {
40058
40553
  end: /}/
40059
40554
  };
40060
40555
 
40556
+ const TYPE_DECLARATION = {
40557
+ begin: [
40558
+ /(struct|protocol|class|extension|enum|actor)/,
40559
+ /\s+/,
40560
+ identifier,
40561
+ /\s*/,
40562
+ ],
40563
+ beginScope: {
40564
+ 1: "keyword",
40565
+ 3: "title.class"
40566
+ },
40567
+ keywords: KEYWORDS,
40568
+ contains: [
40569
+ GENERIC_PARAMETERS,
40570
+ ...KEYWORD_MODES,
40571
+ {
40572
+ begin: /:/,
40573
+ end: /\{/,
40574
+ keywords: KEYWORDS,
40575
+ contains: [
40576
+ {
40577
+ scope: "title.class.inherited",
40578
+ match: typeIdentifier,
40579
+ },
40580
+ ...KEYWORD_MODES,
40581
+ ],
40582
+ relevance: 0,
40583
+ },
40584
+ ]
40585
+ };
40586
+
40061
40587
  // Add supported submodes to string interpolation.
40062
40588
  for (const variant of STRING.variants) {
40063
40589
  const interpolation = variant.contains.find(mode => mode.label === "interpol");
@@ -40091,19 +40617,7 @@ function requireSwift () {
40091
40617
  ...COMMENTS,
40092
40618
  FUNCTION_OR_MACRO,
40093
40619
  INIT_SUBSCRIPT,
40094
- {
40095
- beginKeywords: 'struct protocol class extension enum actor',
40096
- end: '\\{',
40097
- excludeEnd: true,
40098
- keywords: KEYWORDS,
40099
- contains: [
40100
- hljs.inherit(hljs.TITLE_MODE, {
40101
- className: "title.class",
40102
- begin: /[A-Za-z$_][\u00C0-\u02B80-9A-Za-z$_]*/
40103
- }),
40104
- ...KEYWORD_MODES
40105
- ]
40106
- },
40620
+ TYPE_DECLARATION,
40107
40621
  OPERATOR_DECLARATION,
40108
40622
  PRECEDENCEGROUP,
40109
40623
  {
@@ -40159,11 +40673,12 @@ function requireYaml () {
40159
40673
  const KEY = {
40160
40674
  className: 'attr',
40161
40675
  variants: [
40162
- { begin: '\\w[\\w :\\/.-]*:(?=[ \t]|$)' },
40163
- { // double quoted keys
40164
- begin: '"\\w[\\w :\\/.-]*":(?=[ \t]|$)' },
40165
- { // single quoted keys
40166
- begin: '\'\\w[\\w :\\/.-]*\':(?=[ \t]|$)' }
40676
+ // added brackets support
40677
+ { begin: /\w[\w :()\./-]*:(?=[ \t]|$)/ },
40678
+ { // double quoted keys - with brackets
40679
+ begin: /"\w[\w :()\./-]*":(?=[ \t]|$)/ },
40680
+ { // single quoted keys - with brackets
40681
+ begin: /'\w[\w :()\./-]*':(?=[ \t]|$)/ },
40167
40682
  ]
40168
40683
  };
40169
40684
 
@@ -40632,7 +41147,7 @@ function requireTypescript () {
40632
41147
  contains: [] // defined later
40633
41148
  };
40634
41149
  const HTML_TEMPLATE = {
40635
- begin: 'html`',
41150
+ begin: '\.?html`',
40636
41151
  end: '',
40637
41152
  starts: {
40638
41153
  end: '`',
@@ -40645,7 +41160,7 @@ function requireTypescript () {
40645
41160
  }
40646
41161
  };
40647
41162
  const CSS_TEMPLATE = {
40648
- begin: 'css`',
41163
+ begin: '\.?css`',
40649
41164
  end: '',
40650
41165
  starts: {
40651
41166
  end: '`',
@@ -40658,7 +41173,7 @@ function requireTypescript () {
40658
41173
  }
40659
41174
  };
40660
41175
  const GRAPHQL_TEMPLATE = {
40661
- begin: 'gql`',
41176
+ begin: '\.?gql`',
40662
41177
  end: '',
40663
41178
  starts: {
40664
41179
  end: '`',
@@ -40755,7 +41270,7 @@ function requireTypescript () {
40755
41270
  const PARAMS_CONTAINS = SUBST_AND_COMMENTS.concat([
40756
41271
  // eat recursive parens in sub expressions
40757
41272
  {
40758
- begin: /\(/,
41273
+ begin: /(\s*)\(/,
40759
41274
  end: /\)/,
40760
41275
  keywords: KEYWORDS$1,
40761
41276
  contains: ["self"].concat(SUBST_AND_COMMENTS)
@@ -40763,7 +41278,8 @@ function requireTypescript () {
40763
41278
  ]);
40764
41279
  const PARAMS = {
40765
41280
  className: 'params',
40766
- begin: /\(/,
41281
+ // convert this to negative lookbehind in v12
41282
+ begin: /(\s*)\(/, // to match the parms with
40767
41283
  end: /\)/,
40768
41284
  excludeBegin: true,
40769
41285
  excludeEnd: true,
@@ -40886,8 +41402,8 @@ function requireTypescript () {
40886
41402
  ...BUILT_IN_GLOBALS,
40887
41403
  "super",
40888
41404
  "import"
40889
- ]),
40890
- IDENT_RE$1, regex.lookahead(/\(/)),
41405
+ ].map(x => `${x}\\s*\\(`)),
41406
+ IDENT_RE$1, regex.lookahead(/\s*\(/)),
40891
41407
  className: "title.function",
40892
41408
  relevance: 0
40893
41409
  };
@@ -41008,7 +41524,7 @@ function requireTypescript () {
41008
41524
  skip: true
41009
41525
  },
41010
41526
  {
41011
- begin: /\(/,
41527
+ begin: /(\s*)\(/,
41012
41528
  end: /\)/,
41013
41529
  excludeBegin: true,
41014
41530
  excludeEnd: true,
@@ -41133,10 +41649,15 @@ function requireTypescript () {
41133
41649
  "unknown"
41134
41650
  ];
41135
41651
  const NAMESPACE = {
41136
- beginKeywords: 'namespace',
41137
- end: /\{/,
41138
- excludeEnd: true,
41139
- contains: [ tsLanguage.exports.CLASS_REFERENCE ]
41652
+ begin: [
41653
+ /namespace/,
41654
+ /\s+/,
41655
+ hljs.IDENT_RE
41656
+ ],
41657
+ beginScope: {
41658
+ 1: "keyword",
41659
+ 3: "title.class"
41660
+ }
41140
41661
  };
41141
41662
  const INTERFACE = {
41142
41663
  beginKeywords: 'interface',
@@ -41155,7 +41676,7 @@ function requireTypescript () {
41155
41676
  };
41156
41677
  const TS_SPECIFIC_KEYWORDS = [
41157
41678
  "type",
41158
- "namespace",
41679
+ // "namespace",
41159
41680
  "interface",
41160
41681
  "public",
41161
41682
  "private",
@@ -41165,8 +41686,16 @@ function requireTypescript () {
41165
41686
  "abstract",
41166
41687
  "readonly",
41167
41688
  "enum",
41168
- "override"
41689
+ "override",
41690
+ "satisfies"
41169
41691
  ];
41692
+
41693
+ /*
41694
+ namespace is a TS keyword but it's fine to use it as a variable name too.
41695
+ const message = 'foo';
41696
+ const namespace = 'bar';
41697
+ */
41698
+
41170
41699
  const KEYWORDS$1 = {
41171
41700
  $pattern: IDENT_RE,
41172
41701
  keyword: KEYWORDS.concat(TS_SPECIFIC_KEYWORDS),
@@ -41192,6 +41721,13 @@ function requireTypescript () {
41192
41721
  Object.assign(tsLanguage.keywords, KEYWORDS$1);
41193
41722
 
41194
41723
  tsLanguage.exports.PARAMS_CONTAINS.push(DECORATOR);
41724
+
41725
+ // highlight the function params
41726
+ const ATTRIBUTE_HIGHLIGHT = tsLanguage.contains.find(c => c.className === "attr");
41727
+ tsLanguage.exports.PARAMS_CONTAINS.push([
41728
+ tsLanguage.exports.CLASS_REFERENCE, // class reference for highlighting the params types
41729
+ ATTRIBUTE_HIGHLIGHT, // highlight the params key
41730
+ ]);
41195
41731
  tsLanguage.contains = tsLanguage.contains.concat([
41196
41732
  DECORATOR,
41197
41733
  NAMESPACE,