@raycast/api 1.102.2 → 1.102.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.
- package/dist/commands/version/index.js +1 -1
- package/oclif.manifest.json +74 -74
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";var $=Object.create;var m=Object.defineProperty;var G=Object.getOwnPropertyDescriptor;var D=Object.getOwnPropertyNames;var O=Object.getPrototypeOf,L=Object.prototype.hasOwnProperty;var A=(t,n)=>()=>(n||t((n={exports:{}}).exports,n),n.exports),R=(t,n)=>{for(var i in n)m(t,i,{get:n[i],enumerable:!0})},I=(t,n,i,c)=>{if(n&&typeof n=="object"||typeof n=="function")for(let o of D(n))!L.call(t,o)&&o!==i&&m(t,o,{get:()=>n[o],enumerable:!(c=G(n,o))||c.enumerable});return t};var h=(t,n,i)=>(i=t!=null?$(O(t)):{},I(n||!t||!t.__esModule?m(i,"default",{value:t,enumerable:!0}):i,t)),S=t=>I(m({},"__esModule",{value:!0}),t);var B=A((Q,k)=>{var Y=require("node:tty"),J=Y?.WriteStream?.prototype?.hasColors?.()??!1,r=(t,n)=>{if(!J)return o=>o;let i=`\x1B[${t}m`,c=`\x1B[${n}m`;return o=>{let u=o+"",d=u.indexOf(c);if(d===-1)return i+u+c;let x=i,g=0;for(;d!==-1;)x+=u.slice(g,d)+i,g=d+c.length,d=u.indexOf(c,g);return x+=u.slice(g)+c,x}},e={};e.reset=r(0,0);e.bold=r(1,22);e.dim=r(2,22);e.italic=r(3,23);e.underline=r(4,24);e.overline=r(53,55);e.inverse=r(7,27);e.hidden=r(8,28);e.strikethrough=r(9,29);e.black=r(30,39);e.red=r(31,39);e.green=r(32,39);e.yellow=r(33,39);e.blue=r(34,39);e.magenta=r(35,39);e.cyan=r(36,39);e.white=r(37,39);e.gray=r(90,39);e.bgBlack=r(40,49);e.bgRed=r(41,49);e.bgGreen=r(42,49);e.bgYellow=r(43,49);e.bgBlue=r(44,49);e.bgMagenta=r(45,49);e.bgCyan=r(46,49);e.bgWhite=r(47,49);e.bgGray=r(100,49);e.redBright=r(91,39);e.greenBright=r(92,39);e.yellowBright=r(93,39);e.blueBright=r(94,39);e.magentaBright=r(95,39);e.cyanBright=r(96,39);e.whiteBright=r(97,39);e.bgRedBright=r(101,49);e.bgGreenBright=r(102,49);e.bgYellowBright=r(103,49);e.bgBlueBright=r(104,49);e.bgMagentaBright=r(105,49);e.bgCyanBright=r(106,49);e.bgWhiteBright=r(107,49);k.exports=e});var P=A((oe,H)=>{H.exports={name:"ray",description:"Build extensions for Raycast with React and Node.js.",version:"1.102.
|
|
1
|
+
"use strict";var $=Object.create;var m=Object.defineProperty;var G=Object.getOwnPropertyDescriptor;var D=Object.getOwnPropertyNames;var O=Object.getPrototypeOf,L=Object.prototype.hasOwnProperty;var A=(t,n)=>()=>(n||t((n={exports:{}}).exports,n),n.exports),R=(t,n)=>{for(var i in n)m(t,i,{get:n[i],enumerable:!0})},I=(t,n,i,c)=>{if(n&&typeof n=="object"||typeof n=="function")for(let o of D(n))!L.call(t,o)&&o!==i&&m(t,o,{get:()=>n[o],enumerable:!(c=G(n,o))||c.enumerable});return t};var h=(t,n,i)=>(i=t!=null?$(O(t)):{},I(n||!t||!t.__esModule?m(i,"default",{value:t,enumerable:!0}):i,t)),S=t=>I(m({},"__esModule",{value:!0}),t);var B=A((Q,k)=>{var Y=require("node:tty"),J=Y?.WriteStream?.prototype?.hasColors?.()??!1,r=(t,n)=>{if(!J)return o=>o;let i=`\x1B[${t}m`,c=`\x1B[${n}m`;return o=>{let u=o+"",d=u.indexOf(c);if(d===-1)return i+u+c;let x=i,g=0;for(;d!==-1;)x+=u.slice(g,d)+i,g=d+c.length,d=u.indexOf(c,g);return x+=u.slice(g)+c,x}},e={};e.reset=r(0,0);e.bold=r(1,22);e.dim=r(2,22);e.italic=r(3,23);e.underline=r(4,24);e.overline=r(53,55);e.inverse=r(7,27);e.hidden=r(8,28);e.strikethrough=r(9,29);e.black=r(30,39);e.red=r(31,39);e.green=r(32,39);e.yellow=r(33,39);e.blue=r(34,39);e.magenta=r(35,39);e.cyan=r(36,39);e.white=r(37,39);e.gray=r(90,39);e.bgBlack=r(40,49);e.bgRed=r(41,49);e.bgGreen=r(42,49);e.bgYellow=r(43,49);e.bgBlue=r(44,49);e.bgMagenta=r(45,49);e.bgCyan=r(46,49);e.bgWhite=r(47,49);e.bgGray=r(100,49);e.redBright=r(91,39);e.greenBright=r(92,39);e.yellowBright=r(93,39);e.blueBright=r(94,39);e.magentaBright=r(95,39);e.cyanBright=r(96,39);e.whiteBright=r(97,39);e.bgRedBright=r(101,49);e.bgGreenBright=r(102,49);e.bgYellowBright=r(103,49);e.bgBlueBright=r(104,49);e.bgMagentaBright=r(105,49);e.bgCyanBright=r(106,49);e.bgWhiteBright=r(107,49);k.exports=e});var P=A((oe,H)=>{H.exports={name:"ray",description:"Build extensions for Raycast with React and Node.js.",version:"1.102.4",author:"mathieudutour",private:!0,bin:{ray:"./bin/run.js"},dependencies:{"@oclif/core":"^4.4.1","@oclif/plugin-autocomplete":"^3.2.31","@oclif/plugin-help":"^6.2.29","@oclif/plugin-not-found":"^3.2.57","@raycast/eslint-plugin":"^1.0.15",ajv:"^8.17.1",archiver:"^7.0.1",camelcase:"^8.0.0",chokidar:"^4.0.3","cli-progress":"^3.12.0",clipboardy:"^2.3.0",execa:"^9.6.0","json-source-map":"^0.6.1",json5:"^2.2.3","node-fetch-cjs":"^3.3.2",open:"^8.4.2",ora:"^8.2.0",tail:"^2.2.6","terminal-link":"^3.0.0",yaml:"^2.8.0","yoctocolors-cjs":"^2.1.2"},devDependencies:{"@raycast/eslint-config":"^1.0.11","@types/archiver":"^6.0.3","@types/cli-progress":"^3.11.6","@types/node":"22.10.10","@types/tail":"^2.2.3",esbuild:"^0.25.5",eslint:"^8","json-schema-to-typescript":"^15.0.4",oclif:"^4.20.1",typescript:"^5.6.3"},files:["/bin","/dist","/oclif.manifest.json"],license:"MIT",main:"dist/index.js",oclif:{bin:"ray",dirname:"ray",commands:"./dist/commands",plugins:["@oclif/plugin-autocomplete","@oclif/plugin-help","@oclif/plugin-not-found"]},scripts:{"json-schema-to-ts":"json2ts ../../api/schema.json -y > src/types/manifest-schema.d.ts","build-scripts":'tsc "./scripts/build.ts" "./scripts/build-command.ts" "./scripts/dev-command.ts" --outDir ./scripts/dist --esModuleInterop',prebuild:"npm run json-schema-to-ts && npm run build-scripts",build:"node ./scripts/dist/build-command.js",predev:"npm run json-schema-to-ts && npm run build-scripts",dev:"node ./scripts/dist/dev-command.js",lint:"eslint . --ext .ts"},types:"dist/index.d.ts"}});var K={};R(K,{default:()=>b});module.exports=S(K);var l=require("@oclif/core");var f=h(require("node:fs")),v=h(require("node:path")),E=h(require("node:os"));var T={production:{url:"https://www.raycast.com",clientID:"KqAdcGhNfBKiUpfjD3nU3VNgh1t0iMPoX2hYEkN9d4I"},staging:{url:"https://www.rayca.st",clientID:"KqAdcGhNfBKiUpfjD3nU3VNgh1t0iMPoX2hYEkN9d4I"},development:{url:"http://localhost:3000",clientID:"rOCD_LhnXFObSLu9v7788qOGu25FZDqEzGjet4Q45ZY"}}[process.env.API_ENV||"production"],F="e69bae0ec90f5e838555",a={},C;function N(t){C=t;try{a=JSON.parse(f.readFileSync(v.join(M(),"config.json"),"utf8"))}catch(n){if(n instanceof Error&&n.code==="ENOENT")return;throw new Error(`Failed to read config file: ${n}`)}}function U(t){switch(t){case"raycastApiURL":return process.env.RAY_APIURL||a.APIURL||T.url;case"raycastAccessToken":return process.env.RAY_TOKEN||a.Token||a.AccessToken||"";case"raycastClientId":return process.env.RAY_CLIENT_ID||a.ClientID||T.clientID;case"githubClientId":return process.env.RAY_GithubClientID||a.GithubClientID||F;case"githubAccessToken":return process.env.GITHUB_ACCESS_TOKEN||a.GithubAccessToken||"";case"flavorName":return process.env.RAY_Target?process.env.RAY_Target:typeof a.Target<"u"?a.Target:w(process.platform==="win32"?"x":"release")}}function w(t){switch(t){case"debug":return"debug";case"internal":return"internal";case"release":return"";case"x":return"x";case"x-internal":return"x-internal";case"x-development":return"x-development";case void 0:return U("flavorName")}}function _(){let t=w(C);return t==""?"raycast":`raycast-${t}`}function M(){let t=v.join(E.default.homedir(),".config",_());return f.mkdirSync(t,{recursive:!0}),t}var s=h(B());var ee=(0,s.blue)((0,s.dim)("internal only"));var p={wait:`\u{1F550}${(0,s.blue)("wait")} - `,info:`${process.env.GITHUB_ACTIONS==="true"?"\u2139\uFE0F":"\u2139\uFE0F "}${(0,s.cyan)("info")} - `,success:`\u2705${(0,s.green)("ready")} - `,warn:`${process.env.GITHUB_ACTIONS==="true"?"\u26A0\uFE0F":"\u26A0\uFE0F "}${(0,s.yellow)("warn")} - `,error:`\u{1F4A5}${(0,s.red)("error")} - `,event:`\u26A1\uFE0F${(0,s.magenta)("event")} - `,paymentPrompt:`\u{1F4B0}${(0,s.yellowBright)("plan")} - `},q=!0;function j(t,n){t||(p.wait=`${(0,s.blue)("wait")} - `,p.info=`${(0,s.cyan)("info")} - `,p.success=`${(0,s.green)("ready")} - `,p.warn=`${(0,s.yellow)("warn")} - `,p.error=`${(0,s.red)("error")} - `,p.event=`${(0,s.magenta)("event")} - `,p.paymentPrompt=`${(0,s.yellowBright)("plan")} - `),n&&(q=!1)}var y=class extends l.Command{static baseFlags={"exit-on-error":l.Flags.boolean({default:!0,helpGroup:"GLOBAL",aliases:["exitOnError"],deprecateAliases:!0,summary:"Always exit with non-zero code on error",allowNo:!0}),emoji:l.Flags.boolean({default:!1,helpGroup:"GLOBAL",summary:"Prefix output with emojis \u{1F308}"}),help:l.Flags.boolean({default:!1,helpGroup:"GLOBAL",summary:"Show the help message for the command"}),"non-interactive":l.Flags.boolean({char:"I",default:!1,helpGroup:"GLOBAL",summary:"Disable interactive outputs, useful for CI"}),target:l.Flags.option({char:"t",description:"Raycast app target",helpGroup:"GLOBAL",multiple:!1,options:["debug","internal","release","x","x-development","x-internal"],hidden:!0})()};flags;args;async init(){await super.init(),process.on("SIGINT",()=>process.exit(1));let{args:n,flags:i}=await this.parse({flags:this.ctor.flags,baseFlags:super.ctor.baseFlags,enableJsonFlag:this.ctor.enableJsonFlag,args:this.ctor.args,strict:this.ctor.strict});this.flags=i,this.args=n,N(this.flags.target),j(this.flags.emoji,this.flags["non-interactive"])}error(n,i){return i?.message&&n instanceof Error&&(n.message=`${i.message} (${n.message})`,delete i.message),super.error(n,i)}async catch(n){return super.catch(n)}async finally(n){return super.finally(n)}};var b=class t extends y{static description="Print the version number";async run(){await this.parse(t),this.log(`${P().version}`)}};
|
package/oclif.manifest.json
CHANGED
|
@@ -204,10 +204,10 @@
|
|
|
204
204
|
"index.js"
|
|
205
205
|
]
|
|
206
206
|
},
|
|
207
|
-
"
|
|
207
|
+
"lint": {
|
|
208
208
|
"aliases": [],
|
|
209
209
|
"args": {},
|
|
210
|
-
"description": "
|
|
210
|
+
"description": "Validate the extension manifest and metadata, and lint its source code",
|
|
211
211
|
"flags": {
|
|
212
212
|
"exit-on-error": {
|
|
213
213
|
"aliases": [
|
|
@@ -260,37 +260,26 @@
|
|
|
260
260
|
],
|
|
261
261
|
"type": "option"
|
|
262
262
|
},
|
|
263
|
-
"
|
|
264
|
-
"char": "
|
|
265
|
-
"description": "
|
|
266
|
-
"name": "
|
|
263
|
+
"fix": {
|
|
264
|
+
"char": "f",
|
|
265
|
+
"description": "Attempt to fix linting issues",
|
|
266
|
+
"name": "fix",
|
|
267
267
|
"allowNo": false,
|
|
268
268
|
"type": "boolean"
|
|
269
269
|
},
|
|
270
|
-
"
|
|
271
|
-
"char": "
|
|
272
|
-
"description": "
|
|
273
|
-
"name": "
|
|
274
|
-
"
|
|
275
|
-
"
|
|
276
|
-
"multiple": false,
|
|
277
|
-
"type": "option"
|
|
270
|
+
"relaxed": {
|
|
271
|
+
"char": "r",
|
|
272
|
+
"description": "Use relaxed linting mode to skip validation of: package.json schema, icons and metadata.",
|
|
273
|
+
"name": "relaxed",
|
|
274
|
+
"allowNo": false,
|
|
275
|
+
"type": "boolean"
|
|
278
276
|
},
|
|
279
|
-
"
|
|
280
|
-
"char": "
|
|
281
|
-
"description": "
|
|
277
|
+
"schema": {
|
|
278
|
+
"char": "s",
|
|
279
|
+
"description": "Path to JSON schema for package.json validation \u001b[34m\u001b[2minternal only\u001b[22m\u001b[39m",
|
|
282
280
|
"hidden": true,
|
|
283
|
-
"name": "
|
|
284
|
-
"default": "https://
|
|
285
|
-
"hasDynamicHelp": false,
|
|
286
|
-
"multiple": false,
|
|
287
|
-
"type": "option"
|
|
288
|
-
},
|
|
289
|
-
"only": {
|
|
290
|
-
"char": "o",
|
|
291
|
-
"description": "Only run specified evals (0-2, 1, 1,2,3)",
|
|
292
|
-
"name": "only",
|
|
293
|
-
"default": "",
|
|
281
|
+
"name": "schema",
|
|
282
|
+
"default": "https://www.raycast.com/schemas/extension.json",
|
|
294
283
|
"hasDynamicHelp": false,
|
|
295
284
|
"multiple": false,
|
|
296
285
|
"type": "option"
|
|
@@ -298,7 +287,7 @@
|
|
|
298
287
|
},
|
|
299
288
|
"hasDynamicHelp": false,
|
|
300
289
|
"hiddenAliases": [],
|
|
301
|
-
"id": "
|
|
290
|
+
"id": "lint",
|
|
302
291
|
"pluginAlias": "ray",
|
|
303
292
|
"pluginName": "ray",
|
|
304
293
|
"pluginType": "core",
|
|
@@ -308,14 +297,14 @@
|
|
|
308
297
|
"relativePath": [
|
|
309
298
|
"dist",
|
|
310
299
|
"commands",
|
|
311
|
-
"
|
|
300
|
+
"lint",
|
|
312
301
|
"index.js"
|
|
313
302
|
]
|
|
314
303
|
},
|
|
315
|
-
"
|
|
304
|
+
"evals": {
|
|
316
305
|
"aliases": [],
|
|
317
306
|
"args": {},
|
|
318
|
-
"description": "
|
|
307
|
+
"description": "Run AI evals defined in extension package.json",
|
|
319
308
|
"flags": {
|
|
320
309
|
"exit-on-error": {
|
|
321
310
|
"aliases": [
|
|
@@ -368,26 +357,37 @@
|
|
|
368
357
|
],
|
|
369
358
|
"type": "option"
|
|
370
359
|
},
|
|
371
|
-
"
|
|
372
|
-
"char": "
|
|
373
|
-
"description": "
|
|
374
|
-
"name": "
|
|
360
|
+
"skipBuild": {
|
|
361
|
+
"char": "s",
|
|
362
|
+
"description": "Skip extension build step",
|
|
363
|
+
"name": "skipBuild",
|
|
375
364
|
"allowNo": false,
|
|
376
365
|
"type": "boolean"
|
|
377
366
|
},
|
|
378
|
-
"
|
|
379
|
-
"char": "
|
|
380
|
-
"description": "
|
|
381
|
-
"name": "
|
|
382
|
-
"
|
|
383
|
-
"
|
|
367
|
+
"extension": {
|
|
368
|
+
"char": "e",
|
|
369
|
+
"description": "Path to extension. Current directory is used by default",
|
|
370
|
+
"name": "extension",
|
|
371
|
+
"default": "./",
|
|
372
|
+
"hasDynamicHelp": false,
|
|
373
|
+
"multiple": false,
|
|
374
|
+
"type": "option"
|
|
384
375
|
},
|
|
385
|
-
"
|
|
386
|
-
"char": "
|
|
387
|
-
"description": "
|
|
376
|
+
"apiEndpoint": {
|
|
377
|
+
"char": "a",
|
|
378
|
+
"description": "AI Evals API endpoint",
|
|
388
379
|
"hidden": true,
|
|
389
|
-
"name": "
|
|
390
|
-
"default": "https://
|
|
380
|
+
"name": "apiEndpoint",
|
|
381
|
+
"default": "https://ai-evals.raycast.com/run-evals",
|
|
382
|
+
"hasDynamicHelp": false,
|
|
383
|
+
"multiple": false,
|
|
384
|
+
"type": "option"
|
|
385
|
+
},
|
|
386
|
+
"only": {
|
|
387
|
+
"char": "o",
|
|
388
|
+
"description": "Only run specified evals (0-2, 1, 1,2,3)",
|
|
389
|
+
"name": "only",
|
|
390
|
+
"default": "",
|
|
391
391
|
"hasDynamicHelp": false,
|
|
392
392
|
"multiple": false,
|
|
393
393
|
"type": "option"
|
|
@@ -395,7 +395,7 @@
|
|
|
395
395
|
},
|
|
396
396
|
"hasDynamicHelp": false,
|
|
397
397
|
"hiddenAliases": [],
|
|
398
|
-
"id": "
|
|
398
|
+
"id": "evals",
|
|
399
399
|
"pluginAlias": "ray",
|
|
400
400
|
"pluginName": "ray",
|
|
401
401
|
"pluginType": "core",
|
|
@@ -405,7 +405,7 @@
|
|
|
405
405
|
"relativePath": [
|
|
406
406
|
"dist",
|
|
407
407
|
"commands",
|
|
408
|
-
"
|
|
408
|
+
"evals",
|
|
409
409
|
"index.js"
|
|
410
410
|
]
|
|
411
411
|
},
|
|
@@ -814,11 +814,18 @@
|
|
|
814
814
|
"index.js"
|
|
815
815
|
]
|
|
816
816
|
},
|
|
817
|
-
"
|
|
817
|
+
"token": {
|
|
818
818
|
"aliases": [],
|
|
819
819
|
"args": {},
|
|
820
|
-
"description": "
|
|
820
|
+
"description": "Display the access token",
|
|
821
821
|
"flags": {
|
|
822
|
+
"json": {
|
|
823
|
+
"description": "Format output as json.",
|
|
824
|
+
"helpGroup": "GLOBAL",
|
|
825
|
+
"name": "json",
|
|
826
|
+
"allowNo": false,
|
|
827
|
+
"type": "boolean"
|
|
828
|
+
},
|
|
822
829
|
"exit-on-error": {
|
|
823
830
|
"aliases": [
|
|
824
831
|
"exitOnError"
|
|
@@ -869,36 +876,36 @@
|
|
|
869
876
|
"x-internal"
|
|
870
877
|
],
|
|
871
878
|
"type": "option"
|
|
879
|
+
},
|
|
880
|
+
"clipboard": {
|
|
881
|
+
"char": "C",
|
|
882
|
+
"description": "Copy the token to the clipboard",
|
|
883
|
+
"name": "clipboard",
|
|
884
|
+
"allowNo": false,
|
|
885
|
+
"type": "boolean"
|
|
872
886
|
}
|
|
873
887
|
},
|
|
874
888
|
"hasDynamicHelp": false,
|
|
875
889
|
"hiddenAliases": [],
|
|
876
|
-
"id": "
|
|
890
|
+
"id": "token",
|
|
877
891
|
"pluginAlias": "ray",
|
|
878
892
|
"pluginName": "ray",
|
|
879
893
|
"pluginType": "core",
|
|
880
894
|
"strict": true,
|
|
881
|
-
"enableJsonFlag":
|
|
895
|
+
"enableJsonFlag": true,
|
|
882
896
|
"isESM": false,
|
|
883
897
|
"relativePath": [
|
|
884
898
|
"dist",
|
|
885
899
|
"commands",
|
|
886
|
-
"
|
|
900
|
+
"token",
|
|
887
901
|
"index.js"
|
|
888
902
|
]
|
|
889
903
|
},
|
|
890
|
-
"
|
|
904
|
+
"pull-contributions": {
|
|
891
905
|
"aliases": [],
|
|
892
906
|
"args": {},
|
|
893
|
-
"description": "
|
|
907
|
+
"description": "Pull contributions of the extension",
|
|
894
908
|
"flags": {
|
|
895
|
-
"json": {
|
|
896
|
-
"description": "Format output as json.",
|
|
897
|
-
"helpGroup": "GLOBAL",
|
|
898
|
-
"name": "json",
|
|
899
|
-
"allowNo": false,
|
|
900
|
-
"type": "boolean"
|
|
901
|
-
},
|
|
902
909
|
"exit-on-error": {
|
|
903
910
|
"aliases": [
|
|
904
911
|
"exitOnError"
|
|
@@ -949,28 +956,21 @@
|
|
|
949
956
|
"x-internal"
|
|
950
957
|
],
|
|
951
958
|
"type": "option"
|
|
952
|
-
},
|
|
953
|
-
"clipboard": {
|
|
954
|
-
"char": "C",
|
|
955
|
-
"description": "Copy the token to the clipboard",
|
|
956
|
-
"name": "clipboard",
|
|
957
|
-
"allowNo": false,
|
|
958
|
-
"type": "boolean"
|
|
959
959
|
}
|
|
960
960
|
},
|
|
961
961
|
"hasDynamicHelp": false,
|
|
962
962
|
"hiddenAliases": [],
|
|
963
|
-
"id": "
|
|
963
|
+
"id": "pull-contributions",
|
|
964
964
|
"pluginAlias": "ray",
|
|
965
965
|
"pluginName": "ray",
|
|
966
966
|
"pluginType": "core",
|
|
967
967
|
"strict": true,
|
|
968
|
-
"enableJsonFlag":
|
|
968
|
+
"enableJsonFlag": false,
|
|
969
969
|
"isESM": false,
|
|
970
970
|
"relativePath": [
|
|
971
971
|
"dist",
|
|
972
972
|
"commands",
|
|
973
|
-
"
|
|
973
|
+
"pull-contributions",
|
|
974
974
|
"index.js"
|
|
975
975
|
]
|
|
976
976
|
},
|
|
@@ -1138,5 +1138,5 @@
|
|
|
1138
1138
|
]
|
|
1139
1139
|
}
|
|
1140
1140
|
},
|
|
1141
|
-
"version": "1.102.
|
|
1141
|
+
"version": "1.102.4"
|
|
1142
1142
|
}
|