Greasy Fork is available in English.

Default Trusted Types Policy for All Pages

To Add Default Trusted Types Policy for All Pages

  1. // ==UserScript==
  2. // @name Default Trusted Types Policy for All Pages
  3. // @namespace TTP
  4. // @match *://*/*
  5. // @version 1.0.2
  6. // @author CY Fung
  7. // @license MIT
  8. // @run-at document-start
  9. // @grant none
  10. // @unwrap
  11. // @inject-into page
  12. // @allFrames true
  13. // @description To Add Default Trusted Types Policy for All Pages
  14. // @description:ja すべてのページにデフォルトのTrusted Typesポリシー (TTP) を追加する
  15. // @description:zh-TW 為所有頁面新增預設的Trusted Types策略 (TTP)
  16. // @description:zh-CN 为所有页面新增默认的Trusted Types策略 (TTP)
  17. // ==/UserScript==
  18.  
  19. if (typeof trustedTypes !== 'undefined' && trustedTypes.defaultPolicy === null) {
  20. let s = s => s, [p, q, r] = [s, s, s]; s = trustedTypes;
  21. s.createPolicy('default', { createHTML: s => p(s), createScriptURL: s => q(s), createScript: s => r(s) });
  22. s.$Ω = s.createPolicy;
  23. s.createPolicy = function (a, b) {
  24. if (a === 'default' && s) {
  25. s = 0;
  26. const { createHTML: x, createScriptURL: y, createScript: z } = b;
  27. x && (p = x);
  28. y && (q = y);
  29. z && (r = z);
  30. return this.defaultPolicy;
  31. }
  32. return this.$Ω(...arguments);
  33. };
  34. }