Commit 3916883ab5455352f15eba7b4c6e694a341216bd

Wei Ting 2022-03-14T02:11:26

Flow: Recognise `[Ss]ymbol` as a type (#3388)

diff --git a/components/prism-flow.js b/components/prism-flow.js
index f25ac01..c7e9c16 100644
--- a/components/prism-flow.js
+++ b/components/prism-flow.js
@@ -4,7 +4,7 @@
 	Prism.languages.insertBefore('flow', 'keyword', {
 		'type': [
 			{
-				pattern: /\b(?:[Bb]oolean|Function|[Nn]umber|[Ss]tring|any|mixed|null|void)\b/,
+				pattern: /\b(?:[Bb]oolean|Function|[Nn]umber|[Ss]tring|[Ss]ymbol|any|mixed|null|void)\b/,
 				alias: 'tag'
 			}
 		]
diff --git a/components/prism-flow.min.js b/components/prism-flow.min.js
index 98b046b..c0bf1dd 100644
--- a/components/prism-flow.min.js
+++ b/components/prism-flow.min.js
@@ -1 +1 @@
-!function(a){a.languages.flow=a.languages.extend("javascript",{}),a.languages.insertBefore("flow","keyword",{type:[{pattern:/\b(?:[Bb]oolean|Function|[Nn]umber|[Ss]tring|any|mixed|null|void)\b/,alias:"tag"}]}),a.languages.flow["function-variable"].pattern=/(?!\s)[_$a-z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\s*=\s*(?:function\b|(?:\([^()]*\)(?:\s*:\s*\w+)?|(?!\s)[_$a-z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*)\s*=>))/i,delete a.languages.flow.parameter,a.languages.insertBefore("flow","operator",{"flow-punctuation":{pattern:/\{\||\|\}/,alias:"punctuation"}}),Array.isArray(a.languages.flow.keyword)||(a.languages.flow.keyword=[a.languages.flow.keyword]),a.languages.flow.keyword.unshift({pattern:/(^|[^$]\b)(?:Class|declare|opaque|type)\b(?!\$)/,lookbehind:!0},{pattern:/(^|[^$]\B)\$(?:Diff|Enum|Exact|Keys|ObjMap|PropertyType|Record|Shape|Subtype|Supertype|await)\b(?!\$)/,lookbehind:!0})}(Prism);
\ No newline at end of file
+!function(a){a.languages.flow=a.languages.extend("javascript",{}),a.languages.insertBefore("flow","keyword",{type:[{pattern:/\b(?:[Bb]oolean|Function|[Nn]umber|[Ss]tring|[Ss]ymbol|any|mixed|null|void)\b/,alias:"tag"}]}),a.languages.flow["function-variable"].pattern=/(?!\s)[_$a-z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\s*=\s*(?:function\b|(?:\([^()]*\)(?:\s*:\s*\w+)?|(?!\s)[_$a-z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*)\s*=>))/i,delete a.languages.flow.parameter,a.languages.insertBefore("flow","operator",{"flow-punctuation":{pattern:/\{\||\|\}/,alias:"punctuation"}}),Array.isArray(a.languages.flow.keyword)||(a.languages.flow.keyword=[a.languages.flow.keyword]),a.languages.flow.keyword.unshift({pattern:/(^|[^$]\b)(?:Class|declare|opaque|type)\b(?!\$)/,lookbehind:!0},{pattern:/(^|[^$]\B)\$(?:Diff|Enum|Exact|Keys|ObjMap|PropertyType|Record|Shape|Subtype|Supertype|await)\b(?!\$)/,lookbehind:!0})}(Prism);
\ No newline at end of file
diff --git a/tests/languages/flow/type_feature.test b/tests/languages/flow/type_feature.test
index 53827c3..c7be9a5 100644
--- a/tests/languages/flow/type_feature.test
+++ b/tests/languages/flow/type_feature.test
@@ -4,6 +4,8 @@ String
 string
 Boolean
 boolean
+Symbol
+symbol
 Function
 any
 mixed
@@ -19,6 +21,8 @@ void
 	["type", "string"],
 	["type", "Boolean"],
 	["type", "boolean"],
+	["type", "Symbol"],
+	["type", "symbol"],
 	["type", "Function"],
 	["type", "any"],
 	["type", "mixed"],
@@ -28,4 +32,4 @@ void
 
 ----------------------------------------------------
 
-Checks for types.
\ No newline at end of file
+Checks for types.