HPX Flutter Trigger

给 HPX 增加一个 Flutter 版本号变更入口

  1. // ==UserScript==
  2. // @name HPX Flutter Trigger
  3. // @namespace https://mtflutter.sankuai.com
  4. // @version 1.5
  5. // @description 给 HPX 增加一个 Flutter 版本号变更入口
  6. // @author iyeatse@gmail.com
  7. // @match https://hpx.sankuai.com/*
  8. // @match http://hpx.sankuai.com/*
  9. // @require https://unpkg.com/xhook@latest/dist/xhook.min.js
  10. // @icon https://www.google.com/s2/favicons?sz=64&domain=flutter.dev
  11. // @grant none
  12. // @run-at document-start
  13. // @license Commercial
  14. // ==/UserScript==
  15.  
  16. (function() {
  17. 'use strict';
  18. xhook.after(function (request, response) {
  19. if (!document.URL.match(/\/\d+\/build-task\/\d+/)) {
  20. return;
  21. }
  22. if (request.url.match(/api\/buildType\/detail/)) {
  23. const resp = JSON.parse(response.text)
  24. if (resp.status == 1) {
  25. for (const buildTypeParam of resp.data.buildType.buildTypeParams) {
  26. const { buildParams } = buildTypeParam
  27. if (buildParams.some(({ paramKey }) => paramKey == 'mtflutterIntegrationList')) {
  28. continue
  29. }
  30. for (let i = 0; i < buildParams.length; i++) {
  31. if (buildParams[i].paramKey === 'integrationList') {
  32. const { elementRules } = buildParams[i]
  33. const newParam = {
  34. paramKey: "mtflutterIntegrationList",
  35. paramName: "Flutter 模块变更列表",
  36. paramValue: [],
  37. paramDesc: "填写Flutter模块名,比如iOS填waimai_e_flutter,Android填com.sankuai.wme:waimai_e_flutter",
  38. valueDesc: "Flutter 模块变更列表",
  39. couldEdit: true,
  40. require: false,
  41. elementRules,
  42. }
  43. buildParams.splice(i + 1, 0, newParam)
  44. break
  45. }
  46. }
  47. }
  48. response.text = JSON.stringify(resp)
  49. }
  50. }
  51. });
  52. })();

QingJ © 2025

镜像随时可能失效,请加Q群300939539或关注我们的公众号极客氢云获取最新地址