msdax.js 8.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394
  1. /*!-----------------------------------------------------------------------------
  2. * Copyright (c) Microsoft Corporation. All rights reserved.
  3. * Version: 0.31.1(337587859b1c171314b40503171188b6cea6a32a)
  4. * Released under the MIT license
  5. * https://github.com/microsoft/monaco-editor/blob/main/LICENSE.txt
  6. *-----------------------------------------------------------------------------*/
  7. define("vs/basic-languages/msdax/msdax",[],()=>{
  8. var moduleExports = (() => {
  9. var __defProp = Object.defineProperty;
  10. var __markAsModule = (target) => __defProp(target, "__esModule", { value: true });
  11. var __export = (target, all) => {
  12. __markAsModule(target);
  13. for (var name in all)
  14. __defProp(target, name, { get: all[name], enumerable: true });
  15. };
  16. // src/basic-languages/msdax/msdax.ts
  17. var msdax_exports = {};
  18. __export(msdax_exports, {
  19. conf: () => conf,
  20. language: () => language
  21. });
  22. var conf = {
  23. comments: {
  24. lineComment: "//",
  25. blockComment: ["/*", "*/"]
  26. },
  27. brackets: [
  28. ["[", "]"],
  29. ["(", ")"],
  30. ["{", "}"]
  31. ],
  32. autoClosingPairs: [
  33. { open: '"', close: '"', notIn: ["string", "comment"] },
  34. { open: "'", close: "'", notIn: ["string", "comment"] },
  35. { open: "[", close: "]", notIn: ["string", "comment"] },
  36. { open: "(", close: ")", notIn: ["string", "comment"] },
  37. { open: "{", close: "}", notIn: ["string", "comment"] }
  38. ]
  39. };
  40. var language = {
  41. defaultToken: "",
  42. tokenPostfix: ".msdax",
  43. ignoreCase: true,
  44. brackets: [
  45. { open: "[", close: "]", token: "delimiter.square" },
  46. { open: "{", close: "}", token: "delimiter.brackets" },
  47. { open: "(", close: ")", token: "delimiter.parenthesis" }
  48. ],
  49. keywords: [
  50. "VAR",
  51. "RETURN",
  52. "NOT",
  53. "EVALUATE",
  54. "DATATABLE",
  55. "ORDER",
  56. "BY",
  57. "START",
  58. "AT",
  59. "DEFINE",
  60. "MEASURE",
  61. "ASC",
  62. "DESC",
  63. "IN",
  64. "BOOLEAN",
  65. "DOUBLE",
  66. "INTEGER",
  67. "DATETIME",
  68. "CURRENCY",
  69. "STRING"
  70. ],
  71. functions: [
  72. "CLOSINGBALANCEMONTH",
  73. "CLOSINGBALANCEQUARTER",
  74. "CLOSINGBALANCEYEAR",
  75. "DATEADD",
  76. "DATESBETWEEN",
  77. "DATESINPERIOD",
  78. "DATESMTD",
  79. "DATESQTD",
  80. "DATESYTD",
  81. "ENDOFMONTH",
  82. "ENDOFQUARTER",
  83. "ENDOFYEAR",
  84. "FIRSTDATE",
  85. "FIRSTNONBLANK",
  86. "LASTDATE",
  87. "LASTNONBLANK",
  88. "NEXTDAY",
  89. "NEXTMONTH",
  90. "NEXTQUARTER",
  91. "NEXTYEAR",
  92. "OPENINGBALANCEMONTH",
  93. "OPENINGBALANCEQUARTER",
  94. "OPENINGBALANCEYEAR",
  95. "PARALLELPERIOD",
  96. "PREVIOUSDAY",
  97. "PREVIOUSMONTH",
  98. "PREVIOUSQUARTER",
  99. "PREVIOUSYEAR",
  100. "SAMEPERIODLASTYEAR",
  101. "STARTOFMONTH",
  102. "STARTOFQUARTER",
  103. "STARTOFYEAR",
  104. "TOTALMTD",
  105. "TOTALQTD",
  106. "TOTALYTD",
  107. "ADDCOLUMNS",
  108. "ADDMISSINGITEMS",
  109. "ALL",
  110. "ALLEXCEPT",
  111. "ALLNOBLANKROW",
  112. "ALLSELECTED",
  113. "CALCULATE",
  114. "CALCULATETABLE",
  115. "CALENDAR",
  116. "CALENDARAUTO",
  117. "CROSSFILTER",
  118. "CROSSJOIN",
  119. "CURRENTGROUP",
  120. "DATATABLE",
  121. "DETAILROWS",
  122. "DISTINCT",
  123. "EARLIER",
  124. "EARLIEST",
  125. "EXCEPT",
  126. "FILTER",
  127. "FILTERS",
  128. "GENERATE",
  129. "GENERATEALL",
  130. "GROUPBY",
  131. "IGNORE",
  132. "INTERSECT",
  133. "ISONORAFTER",
  134. "KEEPFILTERS",
  135. "LOOKUPVALUE",
  136. "NATURALINNERJOIN",
  137. "NATURALLEFTOUTERJOIN",
  138. "RELATED",
  139. "RELATEDTABLE",
  140. "ROLLUP",
  141. "ROLLUPADDISSUBTOTAL",
  142. "ROLLUPGROUP",
  143. "ROLLUPISSUBTOTAL",
  144. "ROW",
  145. "SAMPLE",
  146. "SELECTCOLUMNS",
  147. "SUBSTITUTEWITHINDEX",
  148. "SUMMARIZE",
  149. "SUMMARIZECOLUMNS",
  150. "TOPN",
  151. "TREATAS",
  152. "UNION",
  153. "USERELATIONSHIP",
  154. "VALUES",
  155. "SUM",
  156. "SUMX",
  157. "PATH",
  158. "PATHCONTAINS",
  159. "PATHITEM",
  160. "PATHITEMREVERSE",
  161. "PATHLENGTH",
  162. "AVERAGE",
  163. "AVERAGEA",
  164. "AVERAGEX",
  165. "COUNT",
  166. "COUNTA",
  167. "COUNTAX",
  168. "COUNTBLANK",
  169. "COUNTROWS",
  170. "COUNTX",
  171. "DISTINCTCOUNT",
  172. "DIVIDE",
  173. "GEOMEAN",
  174. "GEOMEANX",
  175. "MAX",
  176. "MAXA",
  177. "MAXX",
  178. "MEDIAN",
  179. "MEDIANX",
  180. "MIN",
  181. "MINA",
  182. "MINX",
  183. "PERCENTILE.EXC",
  184. "PERCENTILE.INC",
  185. "PERCENTILEX.EXC",
  186. "PERCENTILEX.INC",
  187. "PRODUCT",
  188. "PRODUCTX",
  189. "RANK.EQ",
  190. "RANKX",
  191. "STDEV.P",
  192. "STDEV.S",
  193. "STDEVX.P",
  194. "STDEVX.S",
  195. "VAR.P",
  196. "VAR.S",
  197. "VARX.P",
  198. "VARX.S",
  199. "XIRR",
  200. "XNPV",
  201. "DATE",
  202. "DATEDIFF",
  203. "DATEVALUE",
  204. "DAY",
  205. "EDATE",
  206. "EOMONTH",
  207. "HOUR",
  208. "MINUTE",
  209. "MONTH",
  210. "NOW",
  211. "SECOND",
  212. "TIME",
  213. "TIMEVALUE",
  214. "TODAY",
  215. "WEEKDAY",
  216. "WEEKNUM",
  217. "YEAR",
  218. "YEARFRAC",
  219. "CONTAINS",
  220. "CONTAINSROW",
  221. "CUSTOMDATA",
  222. "ERROR",
  223. "HASONEFILTER",
  224. "HASONEVALUE",
  225. "ISBLANK",
  226. "ISCROSSFILTERED",
  227. "ISEMPTY",
  228. "ISERROR",
  229. "ISEVEN",
  230. "ISFILTERED",
  231. "ISLOGICAL",
  232. "ISNONTEXT",
  233. "ISNUMBER",
  234. "ISODD",
  235. "ISSUBTOTAL",
  236. "ISTEXT",
  237. "USERNAME",
  238. "USERPRINCIPALNAME",
  239. "AND",
  240. "FALSE",
  241. "IF",
  242. "IFERROR",
  243. "NOT",
  244. "OR",
  245. "SWITCH",
  246. "TRUE",
  247. "ABS",
  248. "ACOS",
  249. "ACOSH",
  250. "ACOT",
  251. "ACOTH",
  252. "ASIN",
  253. "ASINH",
  254. "ATAN",
  255. "ATANH",
  256. "BETA.DIST",
  257. "BETA.INV",
  258. "CEILING",
  259. "CHISQ.DIST",
  260. "CHISQ.DIST.RT",
  261. "CHISQ.INV",
  262. "CHISQ.INV.RT",
  263. "COMBIN",
  264. "COMBINA",
  265. "CONFIDENCE.NORM",
  266. "CONFIDENCE.T",
  267. "COS",
  268. "COSH",
  269. "COT",
  270. "COTH",
  271. "CURRENCY",
  272. "DEGREES",
  273. "EVEN",
  274. "EXP",
  275. "EXPON.DIST",
  276. "FACT",
  277. "FLOOR",
  278. "GCD",
  279. "INT",
  280. "ISO.CEILING",
  281. "LCM",
  282. "LN",
  283. "LOG",
  284. "LOG10",
  285. "MOD",
  286. "MROUND",
  287. "ODD",
  288. "PERMUT",
  289. "PI",
  290. "POISSON.DIST",
  291. "POWER",
  292. "QUOTIENT",
  293. "RADIANS",
  294. "RAND",
  295. "RANDBETWEEN",
  296. "ROUND",
  297. "ROUNDDOWN",
  298. "ROUNDUP",
  299. "SIGN",
  300. "SIN",
  301. "SINH",
  302. "SQRT",
  303. "SQRTPI",
  304. "TAN",
  305. "TANH",
  306. "TRUNC",
  307. "BLANK",
  308. "CONCATENATE",
  309. "CONCATENATEX",
  310. "EXACT",
  311. "FIND",
  312. "FIXED",
  313. "FORMAT",
  314. "LEFT",
  315. "LEN",
  316. "LOWER",
  317. "MID",
  318. "REPLACE",
  319. "REPT",
  320. "RIGHT",
  321. "SEARCH",
  322. "SUBSTITUTE",
  323. "TRIM",
  324. "UNICHAR",
  325. "UNICODE",
  326. "UPPER",
  327. "VALUE"
  328. ],
  329. tokenizer: {
  330. root: [
  331. { include: "@comments" },
  332. { include: "@whitespace" },
  333. { include: "@numbers" },
  334. { include: "@strings" },
  335. { include: "@complexIdentifiers" },
  336. [/[;,.]/, "delimiter"],
  337. [/[({})]/, "@brackets"],
  338. [
  339. /[a-z_][a-zA-Z0-9_]*/,
  340. {
  341. cases: {
  342. "@keywords": "keyword",
  343. "@functions": "keyword",
  344. "@default": "identifier"
  345. }
  346. }
  347. ],
  348. [/[<>=!%&+\-*/|~^]/, "operator"]
  349. ],
  350. whitespace: [[/\s+/, "white"]],
  351. comments: [
  352. [/\/\/+.*/, "comment"],
  353. [/\/\*/, { token: "comment.quote", next: "@comment" }]
  354. ],
  355. comment: [
  356. [/[^*/]+/, "comment"],
  357. [/\*\//, { token: "comment.quote", next: "@pop" }],
  358. [/./, "comment"]
  359. ],
  360. numbers: [
  361. [/0[xX][0-9a-fA-F]*/, "number"],
  362. [/[$][+-]*\d*(\.\d*)?/, "number"],
  363. [/((\d+(\.\d*)?)|(\.\d+))([eE][\-+]?\d+)?/, "number"]
  364. ],
  365. strings: [
  366. [/N"/, { token: "string", next: "@string" }],
  367. [/"/, { token: "string", next: "@string" }]
  368. ],
  369. string: [
  370. [/[^"]+/, "string"],
  371. [/""/, "string"],
  372. [/"/, { token: "string", next: "@pop" }]
  373. ],
  374. complexIdentifiers: [
  375. [/\[/, { token: "identifier.quote", next: "@bracketedIdentifier" }],
  376. [/'/, { token: "identifier.quote", next: "@quotedIdentifier" }]
  377. ],
  378. bracketedIdentifier: [
  379. [/[^\]]+/, "identifier"],
  380. [/]]/, "identifier"],
  381. [/]/, { token: "identifier.quote", next: "@pop" }]
  382. ],
  383. quotedIdentifier: [
  384. [/[^']+/, "identifier"],
  385. [/''/, "identifier"],
  386. [/'/, { token: "identifier.quote", next: "@pop" }]
  387. ]
  388. }
  389. };
  390. return msdax_exports;
  391. })();
  392. return moduleExports;
  393. });