@arcblock/did-connect-service 4.1.58 → 4.1.59

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.
@@ -0,0 +1,70 @@
1
+ export declare const OG_SUBSET_PREFIX = "fonts/subset-v1";
2
+ export interface OgSubsetFontFile {
3
+ readonly file: string;
4
+ readonly sha256: string;
5
+ }
6
+ export interface OgSubsetFontSet {
7
+ readonly regular: OgSubsetFontFile;
8
+ readonly bold?: OgSubsetFontFile;
9
+ readonly subset: string;
10
+ readonly full: string;
11
+ }
12
+ export declare const OG_SUBSET_FONTS: {
13
+ readonly en: {
14
+ readonly regular: {
15
+ readonly file: "NotoSans-Regular.ttf";
16
+ readonly sha256: "840fba0f60c264c9c7753830416f1ece61ec1ac5a93e095f1865350e15edc3a8";
17
+ };
18
+ readonly bold: {
19
+ readonly file: "NotoSans-Bold.ttf";
20
+ readonly sha256: "f82fbda16e68eca94545fe40543d7ac4372ff61e5b81ce16c6bf761d5e46c217";
21
+ };
22
+ readonly subset: "0,1,2,3,4,1e,20,21,22,23,24,25,26,fe,ff";
23
+ readonly full: "0,1,2,3,4,5,10,1a,1c,1d,1e,1f,20,21,22,25,2c,2d,2e,a6,a7,a9,ab,fb,fe,ff,107,1df";
24
+ };
25
+ readonly "zh-CN": {
26
+ readonly regular: {
27
+ readonly file: "NotoSansSC-Regular.otf";
28
+ readonly sha256: "9e547807e17f09ef7d1c188f6bcee6a50da051847437026aa495b1c762c0612a";
29
+ };
30
+ readonly bold: {
31
+ readonly file: "NotoSansSC-Bold.otf";
32
+ readonly sha256: "5637afc6fcae38a7891aef6e8e2e9d8e0527772f8ab991e28e1f3424f51b03be";
33
+ };
34
+ readonly subset: "0,1,2,3,4,1e,20,21,22,23,24,25,26,30,31,32:AAAAAP8DAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA=,4e:i29aP7QsFW8o+13jQwALQEDbNgz2ewSE42z6gzgUxag=,4f:AuSDx1GEURVI4CsaCZIJgBApgCjpwyCAGISBYQLiAgQ=,50:ACAUh0IEAFSAgAAUIADAgCEhAAAIEQQIAIAABIAAKAg=,51:AAAEAAIAAIB6KxIUJDn7OyEzpBoRkO0IUZoCKBOgSa8=,52:ywSGLxFLwS8OJFMAoIYEgAABAOgLDw6AiAoEgRAAAMQ=,53:YQHAIgsEAI6Kx+5Ul4i7gXQaIIVEAwCIBj/SC3n8zRM=,54:Gver6MH7MltBBSEZBAEoOUHYZQIAkQoh02OCgGBnBBQ=,55:wgIBABDQAkBYBAAAckQAEZUGADGAAIgIIAAIEAoAACA=,56:AEIACQAAVogAQAAAABVAAADAAAAIAIAQAAQATBUgE2Q=,57:SAEAgAghAUSB5IPsU4SAABwIBAhMSAAADEgQgAEAAAY=,58:RAAiABIEIQAAEBJBAAgAACgADMIAAwAAAgAgABBYSQI=,59:kKBglIDOkgeQy9IAJQBYI9QFTAIgQQAKQAgbFCARAIg=,5a:mgAAkSECQgBAAgAEAARQgAAABAQAAAgABhIAAAICAAA=,5b:AAAAAAAAAAAAALGzWAYhJKqbgH9fDHni9BAN4CIBAJ8=,5c:UoZSJZAAAvcnzyJAI4ACggYAkAgAIgiBAAAAAkIlAQg=,5d:gEBQAAAiAAAAEAAAAAAAAAAAAAAAAAAAACAAYOZLnkA=,5e:bhFhPcBgACEkECAABABcudCEudbAIMABAAZIAAAAwAQ=,5f:HYSoieGAAgYAACwgVDYDGjMNhQECRIAgaDCAA4EIIqg=,60:B0B0MKGFAAgIKCUAFLtJkBAiEIBJkQQRIAwikMHrSQY=,61:AoMAhJAAAIAAUSIAhAGBAABIAAAAAQBABAUEAEAAAAA=,62:APVHBQBEmICDaB4JyPpJ0hEG7g03GSKy9HNdm+yzmvA=,63:hkJC7DuNACRk8iHAjkDACIWTRQGtB4gFAKJFAAomECA=,64:J4AZUAA0ACTQBRABgAIAA6QAJkAQciEQJGAEQEAAAAA=,65:AQAEAQCIQMogkUJqTBCVAIAYgpKyogEiIoiAAOUzwgQ=,66:RNAYgKGhAFAIGCwEUMFRRIQAwgAAQBAAAAAAIgAAHdI=,67:ASuQqAC9MiRNwkOQI6EBwBICoTQMjMAAEIAfUCGQGoA=,68:oInKAAIEgDNsERsAKANAAGIAgADEoQkAASokBQFAIgQ=,69:IGAEAAAgAaAAABBEAACAEEQAEBAAAZAAAAABCAAAACA=,6a:AAQAgAIEAgCAAAACAgACABEAAAAAEAAAAAAAAAAAAAA=,6b:AAAAAI8ABESAEgAA/AQAGkgOQAAAALCAIqj0CgKIAAA=,6c:AIBaiMTBEQGHAqHoEwQFYg6DAIryTAj7MBYgSC4FKTg=,6d:AgiESCAEBnjiTAoGQEaQASRTIKjahyQBURhCARJYigo=,6e:ICSRIBuiEAUIIEAJAAAAwCgCARAEhEAEgggaRHIDEAA=,6f:RIAYAAEICkAAIABRQGAAABBBABACAAgAAQAEAAAAAAA=,70:AAACAAAAAAAAEAAAAKhh0QBGNAIA8AgzDgEAi9C6gCI=,71:AAYgBkAAQQAAUABAkEAAIBCEEIIAEAAACEAgACAAAAA=,72:QAAAAAAU4iOAEQCKhgIkBgMEAAAAkEACFAGBQgNwAxE=,73:AEBAGABOEMAAAAAAACAAAJAKQAgAigUIACQBAAEgAAA=,74:aAIBAAQAeBAAAADEAABBAAgAAAAAAAAAAAAAEFxAwAA=,75:EAAAlSArrwkgkBASYAQQAUCAgoYyyCRyoAc0SQQEEQI=,76:AgAAgFAOEAEAEAAACAAAadQIQgAAQAKAZMXXiQDAFFE=,77:AgoAgAGDwBQDAAAIShgAAjBABACgFggIAACACCxqCOA=,78:BjBUBIAAkUEhACQgAFiAEABygoGAABtAIgwhAAABgAQ=,79:AgAAAAAAAFQCAUDgICGAARKAAAAAAABqSyoGgdCCASk=,7a:AWiABAEACLhAAIAAAADQhBogxrEgAACAAAhAwimgAII=,7b:QAgSCEARABQAilcIAACAQgEgsAACIgIAwAAIAgJAggA=,7c:gAAAAIAAAIAAIAAAAAAIKAACpIEwRApCAARgkgGAAAg=,7d:AAQAAIWIAAAAAAAAAEAAAAAAAAAAAAAAAAAAAAAAAAA=,7e:AAAAAAAAAAACAAAAAAAAAAQAAADVnO6n+OUu9+wmubE=,7f:cUJ4JQFDEAUAAKMEBEYEAABUEEQSAAAiIhAQgQEAAxg=,80:KzChAwAESKkEHBAFAAQAANgaQC03xgTES1BAVAKASSU=,81:RIZLBACAAkFADDMAIEABzgGEADkAAQgATQAAAAgkGBg=,82:YTAU0AAU4wKAAAABAIANRAQoBDBgsAoigKCSyGCIAgI=,83:PkAAAIAZYANAAhUEmoiAAEBCAAAACIYigJQAEAECBgA=,84:EHAAILABACAAAIAIChgiAAQIABIAAAQBEAJCoAAQAAA=,85:AACKBAIYgDAABgAAAAAQQBAAAAgAhAAAAIIhABACAAg=,86:AAACAAAAAAEAwANEAAgCYgcUIBAQAAAAwQwQChBAAUI=,87:BQCkEQIAAACAQoAAAABQAAAgAIAAAAAEAAAAAAAAAAI=,88:AAAgAAQAAAAhMJACKhmBABIoRBAAKAIAJgAwAhAAGAM=,89:BAAFACAEAAAQAACAAAAAgEIAAAAAAAAAdgMEAEgAAAA=,8a:AQAAAAAAAAAAAAAAAAAAAgAGCAAAAAAAAAAAAAAAAAA=,8b:AAAAAAAAAAAAAAAAQBAAAAAAAAA+6033czeibO64tm0=,8c:am2JFFwzkwBCEAAABgwABgASAAAAAAAAAAAAAAAAAAA=,8d:AAAA4P7/s9ce3FFNXwjxACIMAIAIABhACBgCoACFKAQ=,8e:AJQAQAQGAAAQCQAAQDAEgIIAAAAAmAQEAAAAAAAAAAA=,8f:AAAAAAAAAAAAAAAAwNMRqGgH69oICwNitkET+wQsgSM=,90:T4aV7AVAAFmGoIgAKGAggAEACgBMxCIKAkQCIIIhECE=,91:BAAAAgAAAAAAOoRkKFTigYAKBAwAAAAAgPYCEAAAAAA=,92:AAAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAAAA=,94:AAAAAAAAAAAAAAAAAAAAAABDDOLnQypIbwAAMAowR0U=,95:MxmDBnrhAQqDJAMQCCBBgAAAAAAAAAAAAAAAAADllS8=,96:J0ITkABAfIjxOSEIFgfgAGCIEROAAEBA87AgAAAFwEI=,97:kSJIUAAABAMAAERKBwJYAAAoAAEBIAAAAAAAAMAiaAA=,98:AAAAAAAAAAAAAAAAAADg7vYFyzGRAAAAAEAAwQAAAAA=,99:AAABAAAAAAAAAAAAIOBnlGKJRAIAAAAAAAAAAAAAAAA=,9a:AAAAAAAAAAAAAAAAAPBbWtSYggQSAQABAAAIAQAAAAA=,9b:CAAAAAAAABAWgBAAAAAAAAAAAAAAAAAAAAAAAAAAAAA=,9c:AAAAAAAAAAAAAAAAAAAAEAIgABAQAAABCABAQAAAAAA=,9e:AAAAgGqgKKAohAAAEAABgAAACABAAAAIEGASAQAAAAA=,9f:AEAIAAEAAAgAAAEAAAAAgBAIAIYAAAAAAAAAAAAAAAA=,fe,ff";
35
+ readonly full: "0,1,2,3,4,1e,20,21,22,23,24,25,26,27,29,2b,2e,2f,30,31,32,33,34,35,36,37,38,39,3a,3b,3c,3d,3e,3f,40,41,42,43,44,45,46,47,48,49,4a,4b,4c,4d,4e,4f,50,51,52,53,54,55,56,57,58,59,5a,5b,5c,5d,5e,5f,60,61,62,63,64,65,66,67,68,69,6a,6b,6c,6d,6e,6f,70,71,72,73,74,75,76,77,78,79,7a,7b,7c,7d,7e,7f,80,81,82,83,84,85,86,87,88,89,8a,8b,8c,8d,8e,8f,90,91,92,93,94,95,96,97,98,99,9a,9b,9c,9d,9e,9f,f9,fa,fb,fe,ff,1f1,1f2,200,201,206,20c,213,214,215,229,235,23c,23e,241,242,248,249,24a,255,25a,25e,262,264,266,267,269,26b,26c,278,27e,27f,284,286,287,28b,28c,28e,296,298,29f,2a7,2a8,2a9,2aa,2af,2b1,2b3,2b4,2b5,2b6,2b7,2b8,2ba,2bb,2bc,2bd,2be,2c0,2c1,2c2,2c3,2c4,2c5,2c6,2c7,2c8,2c9,2ca,2cb,2cc,2cd,2ce,2d5,2f8,30e,310";
36
+ };
37
+ readonly "zh-TW": {
38
+ readonly regular: {
39
+ readonly file: "NotoSansTC-Regular.otf";
40
+ readonly sha256: "ade0c39179276c16bc4cb9f7cb8d693d0f747abea807eaea32abe8e19aa1c044";
41
+ };
42
+ readonly bold: {
43
+ readonly file: "NotoSansTC-Bold.otf";
44
+ readonly sha256: "28a72b4220f2c1e1102b8d74be5c2d48272de737506324b60461b176373e35dd";
45
+ };
46
+ readonly subset: "0,1,2,3,4,1e,20,21,22,23,24,25,26,30,31,32:AAAAAAAAAAAAAAAAAAAAAAAAAAAIAAAAAAAAAAAAAAA=,33:AAAAAAAAAAAAAAAAAAAAAADAAHACAAAAEEAmAAAAAAA=,4e:Cy9zw0AoBQso6UzjAAIIQERZNsp2eQgE2yzwwzgATag=,4f:Aq4jAgCAUTXI4bN+CZIpzEipQigAwOCAHMSD5QPACkU=,50:QbpWh2ovABCI0iAUIKDwJCEgQgcEsKxIoMBiBKBiIgo=,51:NQM1gQIEjJn7O7R6rnviEQEmpgA1FMEgQDgAMAMASyc=,52:y0XGIDBHwQ2KfFA4AIa0oIwnCogJHgBIigKk61wAKc0=,53:YKHhIguEAsK7B55UQ8CrixAAAKQgIAQICC/QiHz/Lxk=,54:Wv8H6MF6altNRQAABAHqOVFYZQTAnwqpl0MAAGJnBDQ=,55:woIRAIDQikFahODQWgQAWJ0OELeAXA4I4EIKlPqBwGA=,56:QWPRiADCVYoAQIgCNJ9SA6HAIQAgQdAQBxcCbBEMAYQ=,57:GCtMgQCzCUiB5AMAUgaAEAwICAANQAAADEgQgBEAgAY=,58:ZAYAIBOEMwAAHJZFBCggYikECNBAQwhAokAqwxSaACY=,59:AIBwFrVugkGQw7MFhWZYIx4kTGI4wQhKYCwfFWgVAIg=,5a:ChIKmSkCQBBDBgAERASAgAAABAyAAAxwBhLAAUoCIAg=,5b:ABsAIBAEEQEJALu9GAorpaibgB98QHmD9BANwPZbYQU=,5c:ku9CBBQQgtdj6SMxNZECAgAQEwACCooBAAAEAgAlUSg=,5d:wkDSCpQCEACAEAEAAIIAAJAAECAAAAA1ACJUYOZJnmA=,5e:TBBirSAoyCEpELCIDghce4CE4BTBKOBBFgdIpA0QyMQ=,5f:Eo28icAiohBAVYAiND6DkqMfh1MDV6AiKDDAIwEMIqE=,60:AMB0KKOPIABIICECPL8BgDAyUIQJAXQ54AgilUMAWw4=,61:Q+MknIgAkMCQeSCljEnhUAREEwSQWkRAhC8AAEgA5NU=,62:AXVnjAZEXcCDax4JCOBI0lEG7gEAGSKy1HvdHwDwmvA=,63:hgNCAACNAGRE8iEAgAvGDBmTRAuvFwAAQaJFDApmEAI=,64:QKDYUAA0UGAAABaBgKIAD4ABLUY0eg3YtmwUBUUwl0w=,65:QYAQMxicQMsgg/JjTBC0AYwAo5qymIEyItjAAGQzAgQ=,66:xdQ4gLGhAgAukgRkUMHRRJAjwiEESRID0AJAMkESndM=,67:CSuwqMB9MiBAwsvQAaSv0IAKqTQAgFEBEIAfZiSSOoA=,68:AACIAQIGADNvERsAAABAgG4AmKCGoSsAECqkhYlAJA4=,69:IGAEAAAAAQAABBhsCWmgAkQAMBhIaZAICjgJAAAhCCA=,6a:JgQKwgoAICeQCQCDBggAQBEAkRAN0AgJDAAILCAQAAw=,6b:EARBAAsABGSAUgGS/gSEi0gGQAEQwKSUYaicDACYACA=,6c:IIFLiNjZGEEHYKHqAwVVZG4zVQsAWAr7MhboGC+BKwA=,6d:AFiASKBOZmsCAAAGYFaQA6BXOAAAxCSR8BgGR1Jdqg4=,6e:IAAALnuwFEUYZFCJiMIEAAACQTGkjFAUtBg6AACQlMA=,6f:RoA4AA2eDsEAABKJUeABFVFBgADTAFoCDwAgiRPaA0Q=,70:QIoirQABBUAAEAJBGAhBMQBEJAIQ+AgFAIUAAxCAACI=,71:AAYAFkIAQQBAUkBS8FMAIBAEFIIAEQJCGEMlkuFwEFk=,72:QCABCAA1YW/AEUSrh4IUIhMARAiEkAAAFUCBAgMCgDM=,73:AABIGiAC0MAwQIEAAAGlDdEKQIAgC4wIASQAQAFkAEA=,74:aCYACGSFeIQCACDeGKYBQAkIANHIAwGgAIRQFF0CwAA=,75:EDAglWQ7jyEA2BA2ZAxBgcCMAiY8CCxzpCQwSw0AH4Q=,76:AyoIgNcCEAVEEESBJlIGedRJSAQAQBGEbGUU2LrEFFM=,77:ggoAgAEDwFUAgABYbh0AopBYAsChNAm4gACIHCziCCA=,78:BDAQoKEglQEIQAAgAJgAkABSioGIAglUIgwhBICRkAQ=,79:AkAAAkAcAETDA+HkISEAhALgAADARArmAwsGgdgCAAg=,7a:ISkQ1AFAgrhBeIAABwpQhhIB5IEBxgCEsAwAgimgQKY=,7b:QAACSkFRAABAqlcAgUCgAJCIsCADIBIB0xIAClMCgEA=,7c:gDACQIoMgOEJMAGAOVAMIAACpIAgACpiAERg8oWAAUk=,7d:9S6xHgfIDxJdACFIRkEPAgKAClAFMDftgAQEZwmTFAo=,7e:AAcDaAjItuJqATRGAi4IMgSQWBAAAAAAAAAAAAAAAAA=,7f:AAAAAAAAQCUQETGAAEalAiBdEEQQg0SzIlA0gANCCxo=,80:ezinE0ABSKBABERFAIDP4PAaSC0mjhYEGFBAbDKgGzE=,81:ZAVAABiKAUJAWDsAYEgbhwWFAD0BAwjkTaIAhaw1GFw=,82:pTcV2AQd4AKACAADQMCGQAAoBKIosItrAACe2OiAAgA=,83:fgKAAAAJdgMJhhUAAACAGUBGTEGFCAAgIhQQkAGCFyE=,84:mHwAAAAQIjFAAoAISjqgAAQAAVIAAASRUQ4KAABQAIA=,85:QACaBCowACAIBwBCACcAQJAEEhhAhwEGAKIhIDAGgA4=,86:wAyCBAAgAIEAQDHYgAgCDgAUCBAYhmIA0QoRyhAgAEo=,87:zQUIESQCkIgAEKgCQQFQAQwgAMAECAgMQQkGAAGQBEo=,88:ICAwgA4AQgoBMIgqDgmBIgYpREAACAIABgQ0swKBGCM=,89:hAQtBCIMRCkQAEDAEZQEgEqISBBAFAQkAQAUAAgAEBE=,8a:DdXrqSwkUlxCAHFITXsPGqAwKkX7BUWSlCpEGMBoylU=,8b:F0SBKgEZAAJCwgCXQJiRIAEETBQAAAAAAAAAAAAAAAA=,8c:AAAAAAAAgIBCUzEEBjwIBgQ2CGCHn9y5vwUOUF80ED0=,8d:IKXICAAAAAAAAAAA0CiZACIEIIIIARhEQFgCrFKFCBQ=,8e:AIAB4AYKMgIUDyCCWBBUFKYuCgACHAQEAbwUiAAAAFk=,8f:CAY8+GCGCMk0YhCAAgAAAAAAAJhI4QcAdEASAHQtkSU=,90:a6Dx7g1AZlGG7Dt7DWO0tZ+NIwBMBGIBCkQAIAYhIGA=,91:BAKEQ4AgEwIAP4QAKBawAYgKBFAIWBIE4/qDM8giIAA=,92:gCIzQAgAkOMhKoIMEAAAGSEAShEAEYwYogAEABAEARE=,93:EAAhB0fJSAAALBAMIBAhQAQE0AUEUAkACCHCsRYBACA=,94:CAAAAQBILAUQAAYAGQSF8AAAAAAAAAAAAAAAAAAAAAA=,95:AAAAAAAAAAAAAAAAAACAAA3KHgE6IwIIQB1xEAYAAAA=,96:AAAAEAJUBogVOAFpHhT9IXBsMBuABRIL8z5kWgyHxAo=,97:0eJKUJAEBWMUAURYRwNQECCoAAFJIAAAShoIEAAgSIo=,98:bhWPERIogQtA8AhJoIgDAAAAAAAAgUoUEAAAiISmFHA=,99:KBYNTQJBIOAgAqZQAAAAAAAAQAIgcRoAAgAnqgQgAoA=,9a:AkBAAgAIoUApIKCMJAQAAAAAAAAAgYERAoBeAULgAAg=,9b:SCAABKwBBhA24BIFAICAAAAAAgAAbAAAAQdACIABACA=,9c:ACAIACAgAkgAAtCAAACAAQAAAAAAAAAAAAAAACACWAA=,9d:SAIkCEgBAIgAAAIgAxQEAAACAAAAgBABBACIACAAAAY=,9e:AAAATAAAAAAAAAAAAAAgsgQIjKAgAjBYCPASeQGBkAA=,9f:gEAoAgGQEEgADASQyhSEAAAgERAAAAAAAAAAAAAAAAA=,fe,ff";
47
+ readonly full: "0,1,2,3,4,1e,20,21,22,23,24,25,26,27,29,2b,2e,2f,30,31,32,33,34,35,36,37,38,39,3a,3b,3c,3d,3e,3f,40,41,42,43,44,45,46,47,48,49,4a,4b,4c,4d,4e,4f,50,51,52,53,54,55,56,57,58,59,5a,5b,5c,5d,5e,5f,60,61,62,63,64,65,66,67,68,69,6a,6b,6c,6d,6e,6f,70,71,72,73,74,75,76,77,78,79,7a,7b,7c,7d,7e,7f,80,81,82,83,84,85,86,87,88,89,8a,8b,8c,8d,8e,8f,90,91,92,93,94,95,96,97,98,99,9a,9b,9c,9d,9e,9f,f9,fa,fb,fe,ff,1f1,1f2,200,201,202,203,204,205,206,207,208,209,20a,20b,20c,20d,20e,20f,210,211,212,213,214,215,216,217,218,219,21a,21b,21c,21d,21e,21f,220,221,222,223,224,225,226,227,228,229,22a,22b,22c,22d,22e,22f,230,231,232,233,234,235,236,237,238,239,23a,23b,23c,23d,23e,23f,240,241,242,243,244,245,246,247,248,249,24a,24b,24c,24d,24e,24f,250,251,252,253,254,255,256,257,258,259,25a,25b,25c,25d,25e,25f,260,261,262,263,264,265,266,267,268,269,26a,26b,26c,26d,26e,26f,270,271,272,273,274,275,276,277,278,279,27a,27b,27c,27d,27e,27f,280,281,282,283,284,285,286,287,288,289,28a,28b,28c,28d,28e,28f,290,291,294,295,296,297,298,299,29a,29b,29c,29d,29e,29f,2a0,2a1,2a2,2a3,2a4,2a5,2a6,2ad,2d5,2f8,2f9,30e,310";
48
+ };
49
+ readonly ja: {
50
+ readonly regular: {
51
+ readonly file: "NotoSansJP-Regular.otf";
52
+ readonly sha256: "2ade7a36f936a8c67ccb11fa46426a7d1803663279361f531fc394a7fbca0207";
53
+ };
54
+ readonly bold: {
55
+ readonly file: "NotoSansJP-Bold.otf";
56
+ readonly sha256: "4f4af17bb8cf9efe30cdad7543af2cb5a042519d76ce92b948f50710426bf876";
57
+ };
58
+ readonly subset: "0,1,2,3,4,1e,20,21,22,23,24,25,26,30,31,4e:i29SQ0IgBAso6IDiAAAKQEEbNhtyeQAEg4xwIzhARQg=,4f:AuQDJACAUDVI4CsSAAAokAgoACgD4GCAHASAIApAKAU=,50:ACpEglgoQAIAggAQIAB0IAAgAgMAMKBAIKAiBIAAAAg=,51:EQAEgAAEBAD6awEUIDniEWAkhAIhEdAAUDgAIMIEQic=,52:yQWCIDACwQ2IJEAIOIAlAIgCAIgJDhJCqAIgo5QABMQ=,53:JgDAIgMEAI6KBZ4VQYA7gRAAAIUAIwgIBH/QCj6ezwE=,54:GP8DiEEIAEtEBwIAAAUIMAAYAAAAAAwgAwIAAAIDBAA=,55:0ABBAACAAkBQgAgAAAAAABAKADSAHEEAAAAAAAgAAAA=,56:QAKAAQACAgAEEAAIAAEQBYAAAAAEAAAAAAAATAkADSQ=,57:CIAEgIAhAQCEBAMAUAQAAAQIAAAMAAAAAEgAkAEAkBY=,58:ZQAgABAEMwQDBJJHAAogQAgAiBAAAQhAghQgAABYhwA=,59:AIJgFoROggCQg5IAIEUYIBwESAIgEQBKAAobAGAMQIg=,5a:CgAAAQGCABBCAAAEQAAAgAAABAgAAAAAAhIAAAIAAAA=,5b:AAIAAAQQAQAAAJGxWAgAAKC7oL88QHmCdBAMqIJCIMU=,5c:Vs5CBBAgAvwhLSJAM4ACAAAAAQACEwoBAAAAAAOBQQg=,5d:gEBAAAACAAAAAAEAAIIAAAAIAAAAAAAEABAAYOpBmmg=,5e:TBBAICCoCSEgECAACgAce5qE4BTAKOABCAYIgAEAwJw=,5f:EoS5ieAAolAABAgARB4DEjMYjQACRhgiKDCAEwEIICA=,60:AABEMKGFAAAACCUAJKMhAAASEIBJBkQQoAAClAgBCQI=,61:AoMAjAAAAAAAWSAAjEFBQARAAQCQAkRAgAABAAAABAE=,62:AERHhECAEImBKigBAEBCghEEolEACCIyICANKwMwyEA=,63:ggICggCJAKQAEqAQgEGEDAgRBAmnFxQICIBBDAJAEAQ=,64:ACAAAAAwAEQEAAABAAIABQgABEQQaAUCAiAAAEQQAEA=,65:AAAAAACAAMoggIICTBCxAIBSgxKysAEyIIiAAOQzAAQ=,66:xNAYgKGhABAMCAQAQMJQBIIAwgBESBAAgAAAMgAAHOM=,67:ASuwqAA9EiQAwkuQJqCiwIAAoTQFgEAAEoQbBQAAOsg=,68:HADIAAYEEDMOARuwgABAACIAiACEgUMQEAoEhABABAQ=,69:IWgAGgAAEIAABCgEBaAoMAREEAgAAAAAADgAAwAAACg=,6a:AAiAggIOICYACACBAgAAgAFAAAAAAAAAAAAICAABAAA=,6b:EAAAIIsABGQAUAgAXIYYCEAOQAAAADCMIGAUCQAAAAA=,6c:AICCAAAAkEEHQIGkAQAFJAgRSAIGCAibAhYgAC4BCQA=,6d:AAiASCAGBEgyAAAQQFaQAQARABoAgAQQAQgCAQIIqgg=,6e:oAsIDGOSAAAABEAJgIAAwAEQQTAEAEAEIAgCYAAAEAA=,6f:RoIwAA0YAAEgABCQEEABABAAgAAAAAIACwAAAAOIAAA=,70:AAAgQMAQAAAAAAABAIgBMQBGAAAAIAAGAIEAAAAAAAI=,71:AAAQBEIAQBAAQgACkEIAIAAEEIAAAAIACAEhAGAgAAA=,72:QAAAAAAEYGSAEQSqhgIEIgEAAAABkEAABACBCgAyADE=,73:AAAAiABMwIAwAAAACAAEAJAKQAAAAgQABCQAAAEkAEA=,74:SAIAAAQAeAAAAABMAQAIAAgAAAAAAAEgAAAAEEQAQAA=,75:AAAClSgJjwwAkBIyZQSJgADIAgAACARCoAAwCQQCEAA=,76:AAAAAAAAAAAEEEQAAAAAbNAAAQAAQACASAWAiBhAFEE=,77:AhoAgAEAABQBAAAASgAAAAAAAAAgMAgAAAAACKSiCAA=,78:BAAwAOAAFIQAAAAgAJgEAIIgqgCAAgAEAgABAACBAAA=,79:AkAAAAAAAFSCA0FgJCGAADLgAABAAAHgAwgGgVACAQg=,7a:AUiQFABABLBF4AEACAhQhBoADIAAxAAECAgAECmEQIY=,7b:AAECCGEQAAJAi1YAAAAAAMAAsAACJAIBkQIAABEgAAA=,7c:AAAAAAIAAMEAIAAAAAAIQAYqpImgAABAAERAwIEAAEk=,7d:MSiRDweYCQYcEAFARgBiAgAAABYAMBbIAIwGBAGTEAA=,7e:EgAASEBIAEACLDAAACABAASAAAAAAAAAAAAAAAAAAAA=,7f:AAAAAAAAQAAAAAAAAEylACBEAAAQAwAgAhAEAAEIARg=,80:KxChAAAASCAAAEBAAoCQQIAaQCEmhhYESFAAQBIAECE=,81:5AUABAAACgIAQDEAAAgBhwCAADQAAQiAQAAIACglGBA=,82:AFGA2QAU4AKAAAAAQMBEAAAIACJgoAojIACaCOAIAgA=,83:NEAAEAABQAEAhgQBAACACAAAAEAACAIAIBRIkACCAwA=,84:EFAAAAACAiAAQoAIShAiBAAIERIAAAQREAoCAABQAAA=,85:AQAKBEAgICAIRoAAAAcAABAAgAJA3gAAAiAAABACgAg=,86:gAAAAAAgAAAAQAFUAAgACgAEIAAQAAAAgGgAAhBgAEE=,87:BAAAEQAAAAAACiAAQABAgAAgAAAAAAAEAAAAAAAAAAo=,88:AAAAAAAAAABBEIgoCgGBgAAJQAAACJAAJoAgkAIACGE=,89:gAAFAAAAAAAAAECAAAAEgMKIwASABAgAAAAEAEgAAAA=,8a:BUWIgQgkGhwAADNASUoPAIAyKEERMAWSgJhEEEBgAEU=,8b:F0AAKgIQAAIAAAARQACFAAgAAQAAAAAAAAAAAAAAAAA=,8c:AAAAAAAAgABABAAEAgQAAgAQAGCHm5GZnUQKWEUkABA=,8d:AAkAAAAAAAAAAAAAUAiRACAEAAAIAQgAAAAAIAKBKAA=,8e:AIQAAAAAAAAQAACAAAAQAAAgAAAAiAAAADQEgAQAACE=,8f:CAIQIACGAIEQIACAAgAAAAAAAEgAAAecNEASAEAqgSA=,90:S4CZpg1ABhGmbDgQK2KglRAAAgBIBAABAkQAAAIhoCA=,91:AAAAAAAgAAAAehQABBSgAYAghRAQAAABwPECMcgAAAA=,92:AGAAAAAAkAAQAAAIRAACQCkAAgUAIAAAAAAEABAkDBE=,93:QAABAUGZBAAAKBAIABAgQAAQwASAQAAAAAACAAIAAAA=,94:AAAAAwAAAAEAAAoAAAAAAAAAAAAAAAAAAAAAAAAAAAA=,95:AAAAAAAAAAAAAAAAAACAAAmKCgA8AAQAgAAAAQAAAAA=,96:AAAAEAAEBIgRIAEIPARpJWDFEBoJAIAY8xACCAwNxQg=,97:gQQAUIAABAAAAERCBCIQABAgAAEBIAAAAAAIAABACIg=,98:bgGPBQAwEBgAcDBJgAAAAAAAAAAAAQAAAAAAiASAFHA=,99:IBQJAAABAAAAAIAAAAAAAAAAQAIAERgAcgElAAAAAIA=,9a:AEAMAAABAQAAAAAEAAAAAAAAAAAAAQABEAAAAQAkAAA=,9b:AAAAAAAAABAmABAEAIAAAABABAAAbAAAAAJACAABIAA=,9c:ACABAACgAAoAAYQAAAAAAAAAAAAAAAAAAAAAACACWAA=,9d:gEAACAAZAAgAAAAQAxAAAACAAAAAABAAAAAAAAAABAY=,9e:AAAAAAAAAAAAAAAAAAAAgQAAiIBAAACOECAECgAAAAA=,9f:AEAIAAEAAAgAAAAABAAAAAAgAAAAAAAAAAAAAAAAAAA=,fe,ff";
59
+ readonly full: "0,1,2,3,4,1e,20,21,22,23,24,25,26,27,29,2b,2e,2f,30,31,32,33,34,35,36,37,38,39,3a,3b,3c,3d,3e,3f,40,41,42,43,44,45,46,47,48,49,4a,4b,4c,4d,4e,4f,50,51,52,53,54,55,56,57,58,59,5a,5b,5c,5d,5e,5f,60,61,62,63,64,65,66,67,68,69,6a,6b,6c,6d,6e,6f,70,71,72,73,74,75,76,77,78,79,7a,7b,7c,7d,7e,7f,80,81,82,83,84,85,86,87,88,89,8a,8b,8c,8d,8e,8f,90,91,92,93,94,95,96,97,98,99,9a,9b,9c,9d,9e,9f,f9,fa,fb,fe,ff,1f1,1f2,200,201,202,203,204,205,206,207,208,209,20a,20b,20d,20e,20f,212,213,214,215,216,217,218,219,21a,21c,21d,21e,21f,221,222,223,226,228,229,22a,22b,22c,22d,22e,22f,231,233,234,235,236,237,238,23a,23c,23d,23f,240,241,242,243,246,247,248,24a,24b,24c,24d,24e,24f,250,251,252,254,255,256,257,258,259,25a,25b,25c,25d,25e,25f,260,262,263,264,266,267,268,269,26a,26c,26e,26f,270,271,273,274,276,277,278,279,27a,27b,27c,27d,27e,27f,280,282,283,284,285,286,289,28a,28b,28c,28d,28e,28f,292,294,295,296,297,298,29a,29d,29e,29f,2a0,2a1,2a2,2a3,2a4,2a5,2a6,2a9,2b7,2b8,2d5,2e2,2e5,2e6,2f8,2f9,30e,310";
60
+ };
61
+ readonly "node-bundled": {
62
+ readonly regular: {
63
+ readonly file: "noto-sans-sc-regular.otf";
64
+ readonly sha256: "20402120cc1496c0b10250d13e83fb61ba941b02c56de5af86499d6ae209b2d0";
65
+ };
66
+ readonly subset: "0,1,2,3,4,1e,20,21,22,23,24,25,26,30,31,32:AAAAAP8DAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA=,4e:i29aP7QsFW8o+13jQwALQEDbNgz2ewSE42z6gzgUxag=,4f:AuSDx1GEURVI4CsaCZIJgBApgCjpwyCAGISBYQLiAgQ=,50:ACAUh0IEAFSAgAAUIADAgCEhAAAIEQQIAIAABIAAKAg=,51:AAAEAAIAAIB6KxIUJDn7OyEzpBoRkO0IUZoCKBOgSa8=,52:ywSGLxFLwS8OJFMAoIYEgAABAOgLDw6AiAoEgRAAAMQ=,53:YQHAIgsEAI6Kx+5Ul4i7gXQaIIVEAwCIBj/SC3n8zRM=,54:Gver6MH7MltBBSEZBAEoOUHYZQIAkQoh02OCgGBnBBQ=,55:wgIBABDQAkBYBAAAckQAEZUGADGAAIgIIAAIEAoAACA=,56:AEIACQAAVogAQAAAABVAAADAAAAIAIAQAAQATBUgE2Q=,57:SAEAgAghAUSB5IPsU4SAABwIBAhMSAAADEgQgAEAAAY=,58:RAAiABIEIQAAEBJBAAgAACgADMIAAwAAAgAgABBYSQI=,59:kKBglIDOkgeQy9IAJQBYI9QFTAIgQQAKQAgbFCARAIg=,5a:mgAAkSECQgBAAgAEAARQgAAABAQAAAgABhIAAAICAAA=,5b:AAAAAAAAAAAAALGzWAYhJKqbgH9fDHni9BAN4CIBAJ8=,5c:UoZSJZAAAvcnzyJAI4ACggYAkAgAIgiBAAAAAkIlAQg=,5d:gEBQAAAiAAAAEAAAAAAAAAAAAAAAAAAAACAAYOZLnkA=,5e:bhFhPcBgACEkECAABABcudCEudbAIMABAAZIAAAAwAQ=,5f:HYSoieGAAgYAACwgVDYDGjMNhQECRIAgaDCAA4EIIqg=,60:B0B0MKGFAAgIKCUAFLtJkBAiEIBJkQQRIAwikMHrSQY=,61:AoMAhJAAAIAAUSIAhAGBAABIAAAAAQBABAUEAEAAAAA=,62:APVHBQBEmICDaB4JyPpJ0hEG7g03GSKy9HNdm+yzmvA=,63:hkJC7DuNACRk8iHAjkDACIWTRQGtB4gFAKJFAAomECA=,64:J4AZUAA0ACTQBRABgAIAA6QAJkAQciEQJGAEQEAAAAA=,65:AQAEAQCIQMogkUJqTBCVAIAYgpKyogEiIoiAAOUzwgQ=,66:RNAYgKGhAFAIGCwEUMFRRIQAwgAAQBAAAAAAIgAAHdI=,67:ASuQqAC9MiRNwkOQI6EBwBICoTQMjMAAEIAfUCGQGoA=,68:oInKAAIEgDNsERsAKANAAGIAgADEoQkAASokBQFAIgQ=,69:IGAEAAAgAaAAABBEAACAEEQAEBAAAZAAAAABCAAAACA=,6a:AAQAgAIEAgCAAAACAgACABEAAAAAEAAAAAAAAAAAAAA=,6b:AAAAAI8ABESAEgAA/AQAGkgOQAAAALCAIqj0CgKIAAA=,6c:AIBaiMTBEQGHAqHoEwQFYg6DAIryTAj7MBYgSC4FKTg=,6d:AgiESCAEBnjiTAoGQEaQASRTIKjahyQBURhCARJYigo=,6e:ICSRIBuiEAUIIEAJAAAAwCgCARAEhEAEgggaRHIDEAA=,6f:RIAYAAEICkAAIABRQGAAABBBABACAAgAAQAEAAAAAAA=,70:AAACAAAAAAAAEAAAAKhh0QBGNAIA8AgzDgEAi9C6gCI=,71:AAYgBkAAQQAAUABAkEAAIBCEEIIAEAAACEAgACAAAAA=,72:QAAAAAAU4iOAEQCKhgIkBgMEAAAAkEACFAGBQgNwAxE=,73:AEBAGABOEMAAAAAAACAAAJAKQAgAigUIACQBAAEgAAA=,74:aAIBAAQAeBAAAADEAABBAAgAAAAAAAAAAAAAEFxAwAA=,75:EAAAlSArrwkgkBASYAQQAUCAgoYyyCRyoAc0SQQEEQI=,76:AgAAgFAOEAEAEAAACAAAadQIQgAAQAKAZMXXiQDAFFE=,77:AgoAgAGDwBQDAAAIShgAAjBABACgFggIAACACCxqCOA=,78:BjBUBIAAkUEhACQgAFiAEABygoGAABtAIgwhAAABgAQ=,79:AgAAAAAAAFQCAUDgICGAARKAAAAAAABqSyoGgdCCASk=,7a:AWiABAEACLhAAIAAAADQhBogxrEgAACAAAhAwimgAII=,7b:QAgSCEARABQAilcIAACAQgEgsAACIgIAwAAIAgJAggA=,7c:gAAAAIAAAIAAIAAAAAAIKAACpIEwRApCAARgkgGAAAg=,7d:AAQAAIWIAAAAAAAAAEAAAAAAAAAAAAAAAAAAAAAAAAA=,7e:AAAAAAAAAAACAAAAAAAAAAQAAADVnO6n+OUu9+wmubE=,7f:cUJ4JQFDEAUAAKMEBEYEAABUEEQSAAAiIhAQgQEAAxg=,80:KzChAwAESKkEHBAFAAQAANgaQC03xgTES1BAVAKASSU=,81:RIZLBACAAkFADDMAIEABzgGEADkAAQgATQAAAAgkGBg=,82:YTAU0AAU4wKAAAABAIANRAQoBDBgsAoigKCSyGCIAgI=,83:PkAAAIAZYANAAhUEmoiAAEBCAAAACIYigJQAEAECBgA=,84:EHAAILABACAAAIAIChgiAAQIABIAAAQBEAJCoAAQAAA=,85:AACKBAIYgDAABgAAAAAQQBAAAAgAhAAAAIIhABACAAg=,86:AAACAAAAAAEAwANEAAgCYgcUIBAQAAAAwQwQChBAAUI=,87:BQCkEQIAAACAQoAAAABQAAAgAIAAAAAEAAAAAAAAAAI=,88:AAAgAAQAAAAhMJACKhmBABIoRBAAKAIAJgAwAhAAGAM=,89:BAAFACAEAAAQAACAAAAAgEIAAAAAAAAAdgMEAEgAAAA=,8a:AQAAAAAAAAAAAAAAAAAAAgAGCAAAAAAAAAAAAAAAAAA=,8b:AAAAAAAAAAAAAAAAQBAAAAAAAAA+6033czeibO64tm0=,8c:am2JFFwzkwBCEAAABgwABgASAAAAAAAAAAAAAAAAAAA=,8d:AAAA4P7/s9ce3FFNXwjxACIMAIAIABhACBgCoACFKAQ=,8e:AJQAQAQGAAAQCQAAQDAEgIIAAAAAmAQEAAAAAAAAAAA=,8f:AAAAAAAAAAAAAAAAwNMRqGgH69oICwNitkET+wQsgSM=,90:T4aV7AVAAFmGoIgAKGAggAEACgBMxCIKAkQCIIIhECE=,91:BAAAAgAAAAAAOoRkKFTigYAKBAwAAAAAgPYCEAAAAAA=,92:AAAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAAAA=,94:AAAAAAAAAAAAAAAAAAAAAABDDOLnQypIbwAAMAowR0U=,95:MxmDBnrhAQqDJAMQCCBBgAAAAAAAAAAAAAAAAADllS8=,96:J0ITkABAfIjxOSEIFgfgAGCIEROAAEBA87AgAAAFwEI=,97:kSJIUAAABAMAAERKBwJYAAAoAAEBIAAAAAAAAMAiaAA=,98:AAAAAAAAAAAAAAAAAADg7vYFyzGRAAAAAEAAwQAAAAA=,99:AAABAAAAAAAAAAAAIOBnlGKJRAIAAAAAAAAAAAAAAAA=,9a:AAAAAAAAAAAAAAAAAPBbWtSYggQSAQABAAAIAQAAAAA=,9b:CAAAAAAAABAWgBAAAAAAAAAAAAAAAAAAAAAAAAAAAAA=,9c:AAAAAAAAAAAAAAAAAAAAEAIgABAQAAABCABAQAAAAAA=,9e:AAAAgGqgKKAohAAAEAABgAAACABAAAAIEGASAQAAAAA=,9f:AEAIAAEAAAgAAAEAAAAAgBAIAIYAAAAAAAAAAAAAAAA=,fe,ff";
67
+ readonly full: "0,1,2,3,4,1e,20,21,22,23,24,25,26,27,29,2b,2e,2f,30,31,32,33,34,35,36,37,38,39,3a,3b,3c,3d,3e,3f,40,41,42,43,44,45,46,47,48,49,4a,4b,4c,4d,4e,4f,50,51,52,53,54,55,56,57,58,59,5a,5b,5c,5d,5e,5f,60,61,62,63,64,65,66,67,68,69,6a,6b,6c,6d,6e,6f,70,71,72,73,74,75,76,77,78,79,7a,7b,7c,7d,7e,7f,80,81,82,83,84,85,86,87,88,89,8a,8b,8c,8d,8e,8f,90,91,92,93,94,95,96,97,98,99,9a,9b,9c,9d,9e,9f,f9,fa,fb,fe,ff,1f1,1f2,200,201,206,20c,213,214,215,229,235,23c,23e,241,242,248,249,24a,255,25a,25e,262,264,266,267,269,26b,26c,278,27e,27f,284,286,287,28b,28c,28e,296,298,29f,2a7,2a8,2a9,2aa,2af,2b1,2b3,2b4,2b5,2b6,2b7,2b8,2ba,2bb,2bc,2bd,2be,2c0,2c1,2c2,2c3,2c4,2c5,2c6,2c7,2c8,2c9,2ca,2cb,2cc,2cd,2ce,2d5,2f8,30e,310";
68
+ };
69
+ };
70
+ //# sourceMappingURL=subset-fonts.generated.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"subset-fonts.generated.d.ts","sourceRoot":"","sources":["../../src/og/subset-fonts.generated.ts"],"names":[],"mappings":"AASA,eAAO,MAAM,gBAAgB,oBAAoB,CAAC;AAElD,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;CACzB;AAED,MAAM,WAAW,eAAe;IAC9B,QAAQ,CAAC,OAAO,EAAE,gBAAgB,CAAC;IACnC,QAAQ,CAAC,IAAI,CAAC,EAAE,gBAAgB,CAAC;IACjC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;CACvB;AAED,eAAO,MAAM,eAAe;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA8BwB,CAAC"}
@@ -0,0 +1,41 @@
1
+ // GENERATED by scripts/build-og-subset-fonts.py — do not edit.
2
+ // The OG subset fonts (ArcBlock/arc#8800): file name + sha256 of each subset
3
+ // object, and its coverage as 256-codepoint pages (decodeOgCodepointPages in
4
+ // og/font-subset.ts).
5
+ // - `subset`: codepoints every subset weight maps, plus whole pages that were
6
+ // requested whole (what the subset lacks there, the full font lacks too).
7
+ // - `full`: pages holding ANY codepoint of the full fonts the subset was cut
8
+ // from; a codepoint outside them draws .notdef with either font.
9
+ export const OG_SUBSET_PREFIX = "fonts/subset-v1";
10
+ export const OG_SUBSET_FONTS = {
11
+ "en": {
12
+ regular: { file: "NotoSans-Regular.ttf", sha256: "840fba0f60c264c9c7753830416f1ece61ec1ac5a93e095f1865350e15edc3a8" },
13
+ bold: { file: "NotoSans-Bold.ttf", sha256: "f82fbda16e68eca94545fe40543d7ac4372ff61e5b81ce16c6bf761d5e46c217" },
14
+ subset: "0,1,2,3,4,1e,20,21,22,23,24,25,26,fe,ff",
15
+ full: "0,1,2,3,4,5,10,1a,1c,1d,1e,1f,20,21,22,25,2c,2d,2e,a6,a7,a9,ab,fb,fe,ff,107,1df",
16
+ },
17
+ "zh-CN": {
18
+ regular: { file: "NotoSansSC-Regular.otf", sha256: "9e547807e17f09ef7d1c188f6bcee6a50da051847437026aa495b1c762c0612a" },
19
+ bold: { file: "NotoSansSC-Bold.otf", sha256: "5637afc6fcae38a7891aef6e8e2e9d8e0527772f8ab991e28e1f3424f51b03be" },
20
+ subset: "0,1,2,3,4,1e,20,21,22,23,24,25,26,30,31,32:AAAAAP8DAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA=,4e:i29aP7QsFW8o+13jQwALQEDbNgz2ewSE42z6gzgUxag=,4f:AuSDx1GEURVI4CsaCZIJgBApgCjpwyCAGISBYQLiAgQ=,50:ACAUh0IEAFSAgAAUIADAgCEhAAAIEQQIAIAABIAAKAg=,51:AAAEAAIAAIB6KxIUJDn7OyEzpBoRkO0IUZoCKBOgSa8=,52:ywSGLxFLwS8OJFMAoIYEgAABAOgLDw6AiAoEgRAAAMQ=,53:YQHAIgsEAI6Kx+5Ul4i7gXQaIIVEAwCIBj/SC3n8zRM=,54:Gver6MH7MltBBSEZBAEoOUHYZQIAkQoh02OCgGBnBBQ=,55:wgIBABDQAkBYBAAAckQAEZUGADGAAIgIIAAIEAoAACA=,56:AEIACQAAVogAQAAAABVAAADAAAAIAIAQAAQATBUgE2Q=,57:SAEAgAghAUSB5IPsU4SAABwIBAhMSAAADEgQgAEAAAY=,58:RAAiABIEIQAAEBJBAAgAACgADMIAAwAAAgAgABBYSQI=,59:kKBglIDOkgeQy9IAJQBYI9QFTAIgQQAKQAgbFCARAIg=,5a:mgAAkSECQgBAAgAEAARQgAAABAQAAAgABhIAAAICAAA=,5b:AAAAAAAAAAAAALGzWAYhJKqbgH9fDHni9BAN4CIBAJ8=,5c:UoZSJZAAAvcnzyJAI4ACggYAkAgAIgiBAAAAAkIlAQg=,5d:gEBQAAAiAAAAEAAAAAAAAAAAAAAAAAAAACAAYOZLnkA=,5e:bhFhPcBgACEkECAABABcudCEudbAIMABAAZIAAAAwAQ=,5f:HYSoieGAAgYAACwgVDYDGjMNhQECRIAgaDCAA4EIIqg=,60:B0B0MKGFAAgIKCUAFLtJkBAiEIBJkQQRIAwikMHrSQY=,61:AoMAhJAAAIAAUSIAhAGBAABIAAAAAQBABAUEAEAAAAA=,62:APVHBQBEmICDaB4JyPpJ0hEG7g03GSKy9HNdm+yzmvA=,63:hkJC7DuNACRk8iHAjkDACIWTRQGtB4gFAKJFAAomECA=,64:J4AZUAA0ACTQBRABgAIAA6QAJkAQciEQJGAEQEAAAAA=,65:AQAEAQCIQMogkUJqTBCVAIAYgpKyogEiIoiAAOUzwgQ=,66:RNAYgKGhAFAIGCwEUMFRRIQAwgAAQBAAAAAAIgAAHdI=,67:ASuQqAC9MiRNwkOQI6EBwBICoTQMjMAAEIAfUCGQGoA=,68:oInKAAIEgDNsERsAKANAAGIAgADEoQkAASokBQFAIgQ=,69:IGAEAAAgAaAAABBEAACAEEQAEBAAAZAAAAABCAAAACA=,6a:AAQAgAIEAgCAAAACAgACABEAAAAAEAAAAAAAAAAAAAA=,6b:AAAAAI8ABESAEgAA/AQAGkgOQAAAALCAIqj0CgKIAAA=,6c:AIBaiMTBEQGHAqHoEwQFYg6DAIryTAj7MBYgSC4FKTg=,6d:AgiESCAEBnjiTAoGQEaQASRTIKjahyQBURhCARJYigo=,6e:ICSRIBuiEAUIIEAJAAAAwCgCARAEhEAEgggaRHIDEAA=,6f:RIAYAAEICkAAIABRQGAAABBBABACAAgAAQAEAAAAAAA=,70:AAACAAAAAAAAEAAAAKhh0QBGNAIA8AgzDgEAi9C6gCI=,71:AAYgBkAAQQAAUABAkEAAIBCEEIIAEAAACEAgACAAAAA=,72:QAAAAAAU4iOAEQCKhgIkBgMEAAAAkEACFAGBQgNwAxE=,73:AEBAGABOEMAAAAAAACAAAJAKQAgAigUIACQBAAEgAAA=,74:aAIBAAQAeBAAAADEAABBAAgAAAAAAAAAAAAAEFxAwAA=,75:EAAAlSArrwkgkBASYAQQAUCAgoYyyCRyoAc0SQQEEQI=,76:AgAAgFAOEAEAEAAACAAAadQIQgAAQAKAZMXXiQDAFFE=,77:AgoAgAGDwBQDAAAIShgAAjBABACgFggIAACACCxqCOA=,78:BjBUBIAAkUEhACQgAFiAEABygoGAABtAIgwhAAABgAQ=,79:AgAAAAAAAFQCAUDgICGAARKAAAAAAABqSyoGgdCCASk=,7a:AWiABAEACLhAAIAAAADQhBogxrEgAACAAAhAwimgAII=,7b:QAgSCEARABQAilcIAACAQgEgsAACIgIAwAAIAgJAggA=,7c:gAAAAIAAAIAAIAAAAAAIKAACpIEwRApCAARgkgGAAAg=,7d:AAQAAIWIAAAAAAAAAEAAAAAAAAAAAAAAAAAAAAAAAAA=,7e:AAAAAAAAAAACAAAAAAAAAAQAAADVnO6n+OUu9+wmubE=,7f:cUJ4JQFDEAUAAKMEBEYEAABUEEQSAAAiIhAQgQEAAxg=,80:KzChAwAESKkEHBAFAAQAANgaQC03xgTES1BAVAKASSU=,81:RIZLBACAAkFADDMAIEABzgGEADkAAQgATQAAAAgkGBg=,82:YTAU0AAU4wKAAAABAIANRAQoBDBgsAoigKCSyGCIAgI=,83:PkAAAIAZYANAAhUEmoiAAEBCAAAACIYigJQAEAECBgA=,84:EHAAILABACAAAIAIChgiAAQIABIAAAQBEAJCoAAQAAA=,85:AACKBAIYgDAABgAAAAAQQBAAAAgAhAAAAIIhABACAAg=,86:AAACAAAAAAEAwANEAAgCYgcUIBAQAAAAwQwQChBAAUI=,87:BQCkEQIAAACAQoAAAABQAAAgAIAAAAAEAAAAAAAAAAI=,88:AAAgAAQAAAAhMJACKhmBABIoRBAAKAIAJgAwAhAAGAM=,89:BAAFACAEAAAQAACAAAAAgEIAAAAAAAAAdgMEAEgAAAA=,8a:AQAAAAAAAAAAAAAAAAAAAgAGCAAAAAAAAAAAAAAAAAA=,8b:AAAAAAAAAAAAAAAAQBAAAAAAAAA+6033czeibO64tm0=,8c:am2JFFwzkwBCEAAABgwABgASAAAAAAAAAAAAAAAAAAA=,8d:AAAA4P7/s9ce3FFNXwjxACIMAIAIABhACBgCoACFKAQ=,8e:AJQAQAQGAAAQCQAAQDAEgIIAAAAAmAQEAAAAAAAAAAA=,8f:AAAAAAAAAAAAAAAAwNMRqGgH69oICwNitkET+wQsgSM=,90:T4aV7AVAAFmGoIgAKGAggAEACgBMxCIKAkQCIIIhECE=,91:BAAAAgAAAAAAOoRkKFTigYAKBAwAAAAAgPYCEAAAAAA=,92:AAAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAAAA=,94:AAAAAAAAAAAAAAAAAAAAAABDDOLnQypIbwAAMAowR0U=,95:MxmDBnrhAQqDJAMQCCBBgAAAAAAAAAAAAAAAAADllS8=,96:J0ITkABAfIjxOSEIFgfgAGCIEROAAEBA87AgAAAFwEI=,97:kSJIUAAABAMAAERKBwJYAAAoAAEBIAAAAAAAAMAiaAA=,98:AAAAAAAAAAAAAAAAAADg7vYFyzGRAAAAAEAAwQAAAAA=,99:AAABAAAAAAAAAAAAIOBnlGKJRAIAAAAAAAAAAAAAAAA=,9a:AAAAAAAAAAAAAAAAAPBbWtSYggQSAQABAAAIAQAAAAA=,9b:CAAAAAAAABAWgBAAAAAAAAAAAAAAAAAAAAAAAAAAAAA=,9c:AAAAAAAAAAAAAAAAAAAAEAIgABAQAAABCABAQAAAAAA=,9e:AAAAgGqgKKAohAAAEAABgAAACABAAAAIEGASAQAAAAA=,9f:AEAIAAEAAAgAAAEAAAAAgBAIAIYAAAAAAAAAAAAAAAA=,fe,ff",
21
+ full: "0,1,2,3,4,1e,20,21,22,23,24,25,26,27,29,2b,2e,2f,30,31,32,33,34,35,36,37,38,39,3a,3b,3c,3d,3e,3f,40,41,42,43,44,45,46,47,48,49,4a,4b,4c,4d,4e,4f,50,51,52,53,54,55,56,57,58,59,5a,5b,5c,5d,5e,5f,60,61,62,63,64,65,66,67,68,69,6a,6b,6c,6d,6e,6f,70,71,72,73,74,75,76,77,78,79,7a,7b,7c,7d,7e,7f,80,81,82,83,84,85,86,87,88,89,8a,8b,8c,8d,8e,8f,90,91,92,93,94,95,96,97,98,99,9a,9b,9c,9d,9e,9f,f9,fa,fb,fe,ff,1f1,1f2,200,201,206,20c,213,214,215,229,235,23c,23e,241,242,248,249,24a,255,25a,25e,262,264,266,267,269,26b,26c,278,27e,27f,284,286,287,28b,28c,28e,296,298,29f,2a7,2a8,2a9,2aa,2af,2b1,2b3,2b4,2b5,2b6,2b7,2b8,2ba,2bb,2bc,2bd,2be,2c0,2c1,2c2,2c3,2c4,2c5,2c6,2c7,2c8,2c9,2ca,2cb,2cc,2cd,2ce,2d5,2f8,30e,310",
22
+ },
23
+ "zh-TW": {
24
+ regular: { file: "NotoSansTC-Regular.otf", sha256: "ade0c39179276c16bc4cb9f7cb8d693d0f747abea807eaea32abe8e19aa1c044" },
25
+ bold: { file: "NotoSansTC-Bold.otf", sha256: "28a72b4220f2c1e1102b8d74be5c2d48272de737506324b60461b176373e35dd" },
26
+ subset: "0,1,2,3,4,1e,20,21,22,23,24,25,26,30,31,32:AAAAAAAAAAAAAAAAAAAAAAAAAAAIAAAAAAAAAAAAAAA=,33:AAAAAAAAAAAAAAAAAAAAAADAAHACAAAAEEAmAAAAAAA=,4e:Cy9zw0AoBQso6UzjAAIIQERZNsp2eQgE2yzwwzgATag=,4f:Aq4jAgCAUTXI4bN+CZIpzEipQigAwOCAHMSD5QPACkU=,50:QbpWh2ovABCI0iAUIKDwJCEgQgcEsKxIoMBiBKBiIgo=,51:NQM1gQIEjJn7O7R6rnviEQEmpgA1FMEgQDgAMAMASyc=,52:y0XGIDBHwQ2KfFA4AIa0oIwnCogJHgBIigKk61wAKc0=,53:YKHhIguEAsK7B55UQ8CrixAAAKQgIAQICC/QiHz/Lxk=,54:Wv8H6MF6altNRQAABAHqOVFYZQTAnwqpl0MAAGJnBDQ=,55:woIRAIDQikFahODQWgQAWJ0OELeAXA4I4EIKlPqBwGA=,56:QWPRiADCVYoAQIgCNJ9SA6HAIQAgQdAQBxcCbBEMAYQ=,57:GCtMgQCzCUiB5AMAUgaAEAwICAANQAAADEgQgBEAgAY=,58:ZAYAIBOEMwAAHJZFBCggYikECNBAQwhAokAqwxSaACY=,59:AIBwFrVugkGQw7MFhWZYIx4kTGI4wQhKYCwfFWgVAIg=,5a:ChIKmSkCQBBDBgAERASAgAAABAyAAAxwBhLAAUoCIAg=,5b:ABsAIBAEEQEJALu9GAorpaibgB98QHmD9BANwPZbYQU=,5c:ku9CBBQQgtdj6SMxNZECAgAQEwACCooBAAAEAgAlUSg=,5d:wkDSCpQCEACAEAEAAIIAAJAAECAAAAA1ACJUYOZJnmA=,5e:TBBirSAoyCEpELCIDghce4CE4BTBKOBBFgdIpA0QyMQ=,5f:Eo28icAiohBAVYAiND6DkqMfh1MDV6AiKDDAIwEMIqE=,60:AMB0KKOPIABIICECPL8BgDAyUIQJAXQ54AgilUMAWw4=,61:Q+MknIgAkMCQeSCljEnhUAREEwSQWkRAhC8AAEgA5NU=,62:AXVnjAZEXcCDax4JCOBI0lEG7gEAGSKy1HvdHwDwmvA=,63:hgNCAACNAGRE8iEAgAvGDBmTRAuvFwAAQaJFDApmEAI=,64:QKDYUAA0UGAAABaBgKIAD4ABLUY0eg3YtmwUBUUwl0w=,65:QYAQMxicQMsgg/JjTBC0AYwAo5qymIEyItjAAGQzAgQ=,66:xdQ4gLGhAgAukgRkUMHRRJAjwiEESRID0AJAMkESndM=,67:CSuwqMB9MiBAwsvQAaSv0IAKqTQAgFEBEIAfZiSSOoA=,68:AACIAQIGADNvERsAAABAgG4AmKCGoSsAECqkhYlAJA4=,69:IGAEAAAAAQAABBhsCWmgAkQAMBhIaZAICjgJAAAhCCA=,6a:JgQKwgoAICeQCQCDBggAQBEAkRAN0AgJDAAILCAQAAw=,6b:EARBAAsABGSAUgGS/gSEi0gGQAEQwKSUYaicDACYACA=,6c:IIFLiNjZGEEHYKHqAwVVZG4zVQsAWAr7MhboGC+BKwA=,6d:AFiASKBOZmsCAAAGYFaQA6BXOAAAxCSR8BgGR1Jdqg4=,6e:IAAALnuwFEUYZFCJiMIEAAACQTGkjFAUtBg6AACQlMA=,6f:RoA4AA2eDsEAABKJUeABFVFBgADTAFoCDwAgiRPaA0Q=,70:QIoirQABBUAAEAJBGAhBMQBEJAIQ+AgFAIUAAxCAACI=,71:AAYAFkIAQQBAUkBS8FMAIBAEFIIAEQJCGEMlkuFwEFk=,72:QCABCAA1YW/AEUSrh4IUIhMARAiEkAAAFUCBAgMCgDM=,73:AABIGiAC0MAwQIEAAAGlDdEKQIAgC4wIASQAQAFkAEA=,74:aCYACGSFeIQCACDeGKYBQAkIANHIAwGgAIRQFF0CwAA=,75:EDAglWQ7jyEA2BA2ZAxBgcCMAiY8CCxzpCQwSw0AH4Q=,76:AyoIgNcCEAVEEESBJlIGedRJSAQAQBGEbGUU2LrEFFM=,77:ggoAgAEDwFUAgABYbh0AopBYAsChNAm4gACIHCziCCA=,78:BDAQoKEglQEIQAAgAJgAkABSioGIAglUIgwhBICRkAQ=,79:AkAAAkAcAETDA+HkISEAhALgAADARArmAwsGgdgCAAg=,7a:ISkQ1AFAgrhBeIAABwpQhhIB5IEBxgCEsAwAgimgQKY=,7b:QAACSkFRAABAqlcAgUCgAJCIsCADIBIB0xIAClMCgEA=,7c:gDACQIoMgOEJMAGAOVAMIAACpIAgACpiAERg8oWAAUk=,7d:9S6xHgfIDxJdACFIRkEPAgKAClAFMDftgAQEZwmTFAo=,7e:AAcDaAjItuJqATRGAi4IMgSQWBAAAAAAAAAAAAAAAAA=,7f:AAAAAAAAQCUQETGAAEalAiBdEEQQg0SzIlA0gANCCxo=,80:ezinE0ABSKBABERFAIDP4PAaSC0mjhYEGFBAbDKgGzE=,81:ZAVAABiKAUJAWDsAYEgbhwWFAD0BAwjkTaIAhaw1GFw=,82:pTcV2AQd4AKACAADQMCGQAAoBKIosItrAACe2OiAAgA=,83:fgKAAAAJdgMJhhUAAACAGUBGTEGFCAAgIhQQkAGCFyE=,84:mHwAAAAQIjFAAoAISjqgAAQAAVIAAASRUQ4KAABQAIA=,85:QACaBCowACAIBwBCACcAQJAEEhhAhwEGAKIhIDAGgA4=,86:wAyCBAAgAIEAQDHYgAgCDgAUCBAYhmIA0QoRyhAgAEo=,87:zQUIESQCkIgAEKgCQQFQAQwgAMAECAgMQQkGAAGQBEo=,88:ICAwgA4AQgoBMIgqDgmBIgYpREAACAIABgQ0swKBGCM=,89:hAQtBCIMRCkQAEDAEZQEgEqISBBAFAQkAQAUAAgAEBE=,8a:DdXrqSwkUlxCAHFITXsPGqAwKkX7BUWSlCpEGMBoylU=,8b:F0SBKgEZAAJCwgCXQJiRIAEETBQAAAAAAAAAAAAAAAA=,8c:AAAAAAAAgIBCUzEEBjwIBgQ2CGCHn9y5vwUOUF80ED0=,8d:IKXICAAAAAAAAAAA0CiZACIEIIIIARhEQFgCrFKFCBQ=,8e:AIAB4AYKMgIUDyCCWBBUFKYuCgACHAQEAbwUiAAAAFk=,8f:CAY8+GCGCMk0YhCAAgAAAAAAAJhI4QcAdEASAHQtkSU=,90:a6Dx7g1AZlGG7Dt7DWO0tZ+NIwBMBGIBCkQAIAYhIGA=,91:BAKEQ4AgEwIAP4QAKBawAYgKBFAIWBIE4/qDM8giIAA=,92:gCIzQAgAkOMhKoIMEAAAGSEAShEAEYwYogAEABAEARE=,93:EAAhB0fJSAAALBAMIBAhQAQE0AUEUAkACCHCsRYBACA=,94:CAAAAQBILAUQAAYAGQSF8AAAAAAAAAAAAAAAAAAAAAA=,95:AAAAAAAAAAAAAAAAAACAAA3KHgE6IwIIQB1xEAYAAAA=,96:AAAAEAJUBogVOAFpHhT9IXBsMBuABRIL8z5kWgyHxAo=,97:0eJKUJAEBWMUAURYRwNQECCoAAFJIAAAShoIEAAgSIo=,98:bhWPERIogQtA8AhJoIgDAAAAAAAAgUoUEAAAiISmFHA=,99:KBYNTQJBIOAgAqZQAAAAAAAAQAIgcRoAAgAnqgQgAoA=,9a:AkBAAgAIoUApIKCMJAQAAAAAAAAAgYERAoBeAULgAAg=,9b:SCAABKwBBhA24BIFAICAAAAAAgAAbAAAAQdACIABACA=,9c:ACAIACAgAkgAAtCAAACAAQAAAAAAAAAAAAAAACACWAA=,9d:SAIkCEgBAIgAAAIgAxQEAAACAAAAgBABBACIACAAAAY=,9e:AAAATAAAAAAAAAAAAAAgsgQIjKAgAjBYCPASeQGBkAA=,9f:gEAoAgGQEEgADASQyhSEAAAgERAAAAAAAAAAAAAAAAA=,fe,ff",
27
+ full: "0,1,2,3,4,1e,20,21,22,23,24,25,26,27,29,2b,2e,2f,30,31,32,33,34,35,36,37,38,39,3a,3b,3c,3d,3e,3f,40,41,42,43,44,45,46,47,48,49,4a,4b,4c,4d,4e,4f,50,51,52,53,54,55,56,57,58,59,5a,5b,5c,5d,5e,5f,60,61,62,63,64,65,66,67,68,69,6a,6b,6c,6d,6e,6f,70,71,72,73,74,75,76,77,78,79,7a,7b,7c,7d,7e,7f,80,81,82,83,84,85,86,87,88,89,8a,8b,8c,8d,8e,8f,90,91,92,93,94,95,96,97,98,99,9a,9b,9c,9d,9e,9f,f9,fa,fb,fe,ff,1f1,1f2,200,201,202,203,204,205,206,207,208,209,20a,20b,20c,20d,20e,20f,210,211,212,213,214,215,216,217,218,219,21a,21b,21c,21d,21e,21f,220,221,222,223,224,225,226,227,228,229,22a,22b,22c,22d,22e,22f,230,231,232,233,234,235,236,237,238,239,23a,23b,23c,23d,23e,23f,240,241,242,243,244,245,246,247,248,249,24a,24b,24c,24d,24e,24f,250,251,252,253,254,255,256,257,258,259,25a,25b,25c,25d,25e,25f,260,261,262,263,264,265,266,267,268,269,26a,26b,26c,26d,26e,26f,270,271,272,273,274,275,276,277,278,279,27a,27b,27c,27d,27e,27f,280,281,282,283,284,285,286,287,288,289,28a,28b,28c,28d,28e,28f,290,291,294,295,296,297,298,299,29a,29b,29c,29d,29e,29f,2a0,2a1,2a2,2a3,2a4,2a5,2a6,2ad,2d5,2f8,2f9,30e,310",
28
+ },
29
+ "ja": {
30
+ regular: { file: "NotoSansJP-Regular.otf", sha256: "2ade7a36f936a8c67ccb11fa46426a7d1803663279361f531fc394a7fbca0207" },
31
+ bold: { file: "NotoSansJP-Bold.otf", sha256: "4f4af17bb8cf9efe30cdad7543af2cb5a042519d76ce92b948f50710426bf876" },
32
+ subset: "0,1,2,3,4,1e,20,21,22,23,24,25,26,30,31,4e:i29SQ0IgBAso6IDiAAAKQEEbNhtyeQAEg4xwIzhARQg=,4f:AuQDJACAUDVI4CsSAAAokAgoACgD4GCAHASAIApAKAU=,50:ACpEglgoQAIAggAQIAB0IAAgAgMAMKBAIKAiBIAAAAg=,51:EQAEgAAEBAD6awEUIDniEWAkhAIhEdAAUDgAIMIEQic=,52:yQWCIDACwQ2IJEAIOIAlAIgCAIgJDhJCqAIgo5QABMQ=,53:JgDAIgMEAI6KBZ4VQYA7gRAAAIUAIwgIBH/QCj6ezwE=,54:GP8DiEEIAEtEBwIAAAUIMAAYAAAAAAwgAwIAAAIDBAA=,55:0ABBAACAAkBQgAgAAAAAABAKADSAHEEAAAAAAAgAAAA=,56:QAKAAQACAgAEEAAIAAEQBYAAAAAEAAAAAAAATAkADSQ=,57:CIAEgIAhAQCEBAMAUAQAAAQIAAAMAAAAAEgAkAEAkBY=,58:ZQAgABAEMwQDBJJHAAogQAgAiBAAAQhAghQgAABYhwA=,59:AIJgFoROggCQg5IAIEUYIBwESAIgEQBKAAobAGAMQIg=,5a:CgAAAQGCABBCAAAEQAAAgAAABAgAAAAAAhIAAAIAAAA=,5b:AAIAAAQQAQAAAJGxWAgAAKC7oL88QHmCdBAMqIJCIMU=,5c:Vs5CBBAgAvwhLSJAM4ACAAAAAQACEwoBAAAAAAOBQQg=,5d:gEBAAAACAAAAAAEAAIIAAAAIAAAAAAAEABAAYOpBmmg=,5e:TBBAICCoCSEgECAACgAce5qE4BTAKOABCAYIgAEAwJw=,5f:EoS5ieAAolAABAgARB4DEjMYjQACRhgiKDCAEwEIICA=,60:AABEMKGFAAAACCUAJKMhAAASEIBJBkQQoAAClAgBCQI=,61:AoMAjAAAAAAAWSAAjEFBQARAAQCQAkRAgAABAAAABAE=,62:AERHhECAEImBKigBAEBCghEEolEACCIyICANKwMwyEA=,63:ggICggCJAKQAEqAQgEGEDAgRBAmnFxQICIBBDAJAEAQ=,64:ACAAAAAwAEQEAAABAAIABQgABEQQaAUCAiAAAEQQAEA=,65:AAAAAACAAMoggIICTBCxAIBSgxKysAEyIIiAAOQzAAQ=,66:xNAYgKGhABAMCAQAQMJQBIIAwgBESBAAgAAAMgAAHOM=,67:ASuwqAA9EiQAwkuQJqCiwIAAoTQFgEAAEoQbBQAAOsg=,68:HADIAAYEEDMOARuwgABAACIAiACEgUMQEAoEhABABAQ=,69:IWgAGgAAEIAABCgEBaAoMAREEAgAAAAAADgAAwAAACg=,6a:AAiAggIOICYACACBAgAAgAFAAAAAAAAAAAAICAABAAA=,6b:EAAAIIsABGQAUAgAXIYYCEAOQAAAADCMIGAUCQAAAAA=,6c:AICCAAAAkEEHQIGkAQAFJAgRSAIGCAibAhYgAC4BCQA=,6d:AAiASCAGBEgyAAAQQFaQAQARABoAgAQQAQgCAQIIqgg=,6e:oAsIDGOSAAAABEAJgIAAwAEQQTAEAEAEIAgCYAAAEAA=,6f:RoIwAA0YAAEgABCQEEABABAAgAAAAAIACwAAAAOIAAA=,70:AAAgQMAQAAAAAAABAIgBMQBGAAAAIAAGAIEAAAAAAAI=,71:AAAQBEIAQBAAQgACkEIAIAAEEIAAAAIACAEhAGAgAAA=,72:QAAAAAAEYGSAEQSqhgIEIgEAAAABkEAABACBCgAyADE=,73:AAAAiABMwIAwAAAACAAEAJAKQAAAAgQABCQAAAEkAEA=,74:SAIAAAQAeAAAAABMAQAIAAgAAAAAAAEgAAAAEEQAQAA=,75:AAAClSgJjwwAkBIyZQSJgADIAgAACARCoAAwCQQCEAA=,76:AAAAAAAAAAAEEEQAAAAAbNAAAQAAQACASAWAiBhAFEE=,77:AhoAgAEAABQBAAAASgAAAAAAAAAgMAgAAAAACKSiCAA=,78:BAAwAOAAFIQAAAAgAJgEAIIgqgCAAgAEAgABAACBAAA=,79:AkAAAAAAAFSCA0FgJCGAADLgAABAAAHgAwgGgVACAQg=,7a:AUiQFABABLBF4AEACAhQhBoADIAAxAAECAgAECmEQIY=,7b:AAECCGEQAAJAi1YAAAAAAMAAsAACJAIBkQIAABEgAAA=,7c:AAAAAAIAAMEAIAAAAAAIQAYqpImgAABAAERAwIEAAEk=,7d:MSiRDweYCQYcEAFARgBiAgAAABYAMBbIAIwGBAGTEAA=,7e:EgAASEBIAEACLDAAACABAASAAAAAAAAAAAAAAAAAAAA=,7f:AAAAAAAAQAAAAAAAAEylACBEAAAQAwAgAhAEAAEIARg=,80:KxChAAAASCAAAEBAAoCQQIAaQCEmhhYESFAAQBIAECE=,81:5AUABAAACgIAQDEAAAgBhwCAADQAAQiAQAAIACglGBA=,82:AFGA2QAU4AKAAAAAQMBEAAAIACJgoAojIACaCOAIAgA=,83:NEAAEAABQAEAhgQBAACACAAAAEAACAIAIBRIkACCAwA=,84:EFAAAAACAiAAQoAIShAiBAAIERIAAAQREAoCAABQAAA=,85:AQAKBEAgICAIRoAAAAcAABAAgAJA3gAAAiAAABACgAg=,86:gAAAAAAgAAAAQAFUAAgACgAEIAAQAAAAgGgAAhBgAEE=,87:BAAAEQAAAAAACiAAQABAgAAgAAAAAAAEAAAAAAAAAAo=,88:AAAAAAAAAABBEIgoCgGBgAAJQAAACJAAJoAgkAIACGE=,89:gAAFAAAAAAAAAECAAAAEgMKIwASABAgAAAAEAEgAAAA=,8a:BUWIgQgkGhwAADNASUoPAIAyKEERMAWSgJhEEEBgAEU=,8b:F0AAKgIQAAIAAAARQACFAAgAAQAAAAAAAAAAAAAAAAA=,8c:AAAAAAAAgABABAAEAgQAAgAQAGCHm5GZnUQKWEUkABA=,8d:AAkAAAAAAAAAAAAAUAiRACAEAAAIAQgAAAAAIAKBKAA=,8e:AIQAAAAAAAAQAACAAAAQAAAgAAAAiAAAADQEgAQAACE=,8f:CAIQIACGAIEQIACAAgAAAAAAAEgAAAecNEASAEAqgSA=,90:S4CZpg1ABhGmbDgQK2KglRAAAgBIBAABAkQAAAIhoCA=,91:AAAAAAAgAAAAehQABBSgAYAghRAQAAABwPECMcgAAAA=,92:AGAAAAAAkAAQAAAIRAACQCkAAgUAIAAAAAAEABAkDBE=,93:QAABAUGZBAAAKBAIABAgQAAQwASAQAAAAAACAAIAAAA=,94:AAAAAwAAAAEAAAoAAAAAAAAAAAAAAAAAAAAAAAAAAAA=,95:AAAAAAAAAAAAAAAAAACAAAmKCgA8AAQAgAAAAQAAAAA=,96:AAAAEAAEBIgRIAEIPARpJWDFEBoJAIAY8xACCAwNxQg=,97:gQQAUIAABAAAAERCBCIQABAgAAEBIAAAAAAIAABACIg=,98:bgGPBQAwEBgAcDBJgAAAAAAAAAAAAQAAAAAAiASAFHA=,99:IBQJAAABAAAAAIAAAAAAAAAAQAIAERgAcgElAAAAAIA=,9a:AEAMAAABAQAAAAAEAAAAAAAAAAAAAQABEAAAAQAkAAA=,9b:AAAAAAAAABAmABAEAIAAAABABAAAbAAAAAJACAABIAA=,9c:ACABAACgAAoAAYQAAAAAAAAAAAAAAAAAAAAAACACWAA=,9d:gEAACAAZAAgAAAAQAxAAAACAAAAAABAAAAAAAAAABAY=,9e:AAAAAAAAAAAAAAAAAAAAgQAAiIBAAACOECAECgAAAAA=,9f:AEAIAAEAAAgAAAAABAAAAAAgAAAAAAAAAAAAAAAAAAA=,fe,ff",
33
+ full: "0,1,2,3,4,1e,20,21,22,23,24,25,26,27,29,2b,2e,2f,30,31,32,33,34,35,36,37,38,39,3a,3b,3c,3d,3e,3f,40,41,42,43,44,45,46,47,48,49,4a,4b,4c,4d,4e,4f,50,51,52,53,54,55,56,57,58,59,5a,5b,5c,5d,5e,5f,60,61,62,63,64,65,66,67,68,69,6a,6b,6c,6d,6e,6f,70,71,72,73,74,75,76,77,78,79,7a,7b,7c,7d,7e,7f,80,81,82,83,84,85,86,87,88,89,8a,8b,8c,8d,8e,8f,90,91,92,93,94,95,96,97,98,99,9a,9b,9c,9d,9e,9f,f9,fa,fb,fe,ff,1f1,1f2,200,201,202,203,204,205,206,207,208,209,20a,20b,20d,20e,20f,212,213,214,215,216,217,218,219,21a,21c,21d,21e,21f,221,222,223,226,228,229,22a,22b,22c,22d,22e,22f,231,233,234,235,236,237,238,23a,23c,23d,23f,240,241,242,243,246,247,248,24a,24b,24c,24d,24e,24f,250,251,252,254,255,256,257,258,259,25a,25b,25c,25d,25e,25f,260,262,263,264,266,267,268,269,26a,26c,26e,26f,270,271,273,274,276,277,278,279,27a,27b,27c,27d,27e,27f,280,282,283,284,285,286,289,28a,28b,28c,28d,28e,28f,292,294,295,296,297,298,29a,29d,29e,29f,2a0,2a1,2a2,2a3,2a4,2a5,2a6,2a9,2b7,2b8,2d5,2e2,2e5,2e6,2f8,2f9,30e,310",
34
+ },
35
+ "node-bundled": {
36
+ regular: { file: "noto-sans-sc-regular.otf", sha256: "20402120cc1496c0b10250d13e83fb61ba941b02c56de5af86499d6ae209b2d0" },
37
+ subset: "0,1,2,3,4,1e,20,21,22,23,24,25,26,30,31,32:AAAAAP8DAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA=,4e:i29aP7QsFW8o+13jQwALQEDbNgz2ewSE42z6gzgUxag=,4f:AuSDx1GEURVI4CsaCZIJgBApgCjpwyCAGISBYQLiAgQ=,50:ACAUh0IEAFSAgAAUIADAgCEhAAAIEQQIAIAABIAAKAg=,51:AAAEAAIAAIB6KxIUJDn7OyEzpBoRkO0IUZoCKBOgSa8=,52:ywSGLxFLwS8OJFMAoIYEgAABAOgLDw6AiAoEgRAAAMQ=,53:YQHAIgsEAI6Kx+5Ul4i7gXQaIIVEAwCIBj/SC3n8zRM=,54:Gver6MH7MltBBSEZBAEoOUHYZQIAkQoh02OCgGBnBBQ=,55:wgIBABDQAkBYBAAAckQAEZUGADGAAIgIIAAIEAoAACA=,56:AEIACQAAVogAQAAAABVAAADAAAAIAIAQAAQATBUgE2Q=,57:SAEAgAghAUSB5IPsU4SAABwIBAhMSAAADEgQgAEAAAY=,58:RAAiABIEIQAAEBJBAAgAACgADMIAAwAAAgAgABBYSQI=,59:kKBglIDOkgeQy9IAJQBYI9QFTAIgQQAKQAgbFCARAIg=,5a:mgAAkSECQgBAAgAEAARQgAAABAQAAAgABhIAAAICAAA=,5b:AAAAAAAAAAAAALGzWAYhJKqbgH9fDHni9BAN4CIBAJ8=,5c:UoZSJZAAAvcnzyJAI4ACggYAkAgAIgiBAAAAAkIlAQg=,5d:gEBQAAAiAAAAEAAAAAAAAAAAAAAAAAAAACAAYOZLnkA=,5e:bhFhPcBgACEkECAABABcudCEudbAIMABAAZIAAAAwAQ=,5f:HYSoieGAAgYAACwgVDYDGjMNhQECRIAgaDCAA4EIIqg=,60:B0B0MKGFAAgIKCUAFLtJkBAiEIBJkQQRIAwikMHrSQY=,61:AoMAhJAAAIAAUSIAhAGBAABIAAAAAQBABAUEAEAAAAA=,62:APVHBQBEmICDaB4JyPpJ0hEG7g03GSKy9HNdm+yzmvA=,63:hkJC7DuNACRk8iHAjkDACIWTRQGtB4gFAKJFAAomECA=,64:J4AZUAA0ACTQBRABgAIAA6QAJkAQciEQJGAEQEAAAAA=,65:AQAEAQCIQMogkUJqTBCVAIAYgpKyogEiIoiAAOUzwgQ=,66:RNAYgKGhAFAIGCwEUMFRRIQAwgAAQBAAAAAAIgAAHdI=,67:ASuQqAC9MiRNwkOQI6EBwBICoTQMjMAAEIAfUCGQGoA=,68:oInKAAIEgDNsERsAKANAAGIAgADEoQkAASokBQFAIgQ=,69:IGAEAAAgAaAAABBEAACAEEQAEBAAAZAAAAABCAAAACA=,6a:AAQAgAIEAgCAAAACAgACABEAAAAAEAAAAAAAAAAAAAA=,6b:AAAAAI8ABESAEgAA/AQAGkgOQAAAALCAIqj0CgKIAAA=,6c:AIBaiMTBEQGHAqHoEwQFYg6DAIryTAj7MBYgSC4FKTg=,6d:AgiESCAEBnjiTAoGQEaQASRTIKjahyQBURhCARJYigo=,6e:ICSRIBuiEAUIIEAJAAAAwCgCARAEhEAEgggaRHIDEAA=,6f:RIAYAAEICkAAIABRQGAAABBBABACAAgAAQAEAAAAAAA=,70:AAACAAAAAAAAEAAAAKhh0QBGNAIA8AgzDgEAi9C6gCI=,71:AAYgBkAAQQAAUABAkEAAIBCEEIIAEAAACEAgACAAAAA=,72:QAAAAAAU4iOAEQCKhgIkBgMEAAAAkEACFAGBQgNwAxE=,73:AEBAGABOEMAAAAAAACAAAJAKQAgAigUIACQBAAEgAAA=,74:aAIBAAQAeBAAAADEAABBAAgAAAAAAAAAAAAAEFxAwAA=,75:EAAAlSArrwkgkBASYAQQAUCAgoYyyCRyoAc0SQQEEQI=,76:AgAAgFAOEAEAEAAACAAAadQIQgAAQAKAZMXXiQDAFFE=,77:AgoAgAGDwBQDAAAIShgAAjBABACgFggIAACACCxqCOA=,78:BjBUBIAAkUEhACQgAFiAEABygoGAABtAIgwhAAABgAQ=,79:AgAAAAAAAFQCAUDgICGAARKAAAAAAABqSyoGgdCCASk=,7a:AWiABAEACLhAAIAAAADQhBogxrEgAACAAAhAwimgAII=,7b:QAgSCEARABQAilcIAACAQgEgsAACIgIAwAAIAgJAggA=,7c:gAAAAIAAAIAAIAAAAAAIKAACpIEwRApCAARgkgGAAAg=,7d:AAQAAIWIAAAAAAAAAEAAAAAAAAAAAAAAAAAAAAAAAAA=,7e:AAAAAAAAAAACAAAAAAAAAAQAAADVnO6n+OUu9+wmubE=,7f:cUJ4JQFDEAUAAKMEBEYEAABUEEQSAAAiIhAQgQEAAxg=,80:KzChAwAESKkEHBAFAAQAANgaQC03xgTES1BAVAKASSU=,81:RIZLBACAAkFADDMAIEABzgGEADkAAQgATQAAAAgkGBg=,82:YTAU0AAU4wKAAAABAIANRAQoBDBgsAoigKCSyGCIAgI=,83:PkAAAIAZYANAAhUEmoiAAEBCAAAACIYigJQAEAECBgA=,84:EHAAILABACAAAIAIChgiAAQIABIAAAQBEAJCoAAQAAA=,85:AACKBAIYgDAABgAAAAAQQBAAAAgAhAAAAIIhABACAAg=,86:AAACAAAAAAEAwANEAAgCYgcUIBAQAAAAwQwQChBAAUI=,87:BQCkEQIAAACAQoAAAABQAAAgAIAAAAAEAAAAAAAAAAI=,88:AAAgAAQAAAAhMJACKhmBABIoRBAAKAIAJgAwAhAAGAM=,89:BAAFACAEAAAQAACAAAAAgEIAAAAAAAAAdgMEAEgAAAA=,8a:AQAAAAAAAAAAAAAAAAAAAgAGCAAAAAAAAAAAAAAAAAA=,8b:AAAAAAAAAAAAAAAAQBAAAAAAAAA+6033czeibO64tm0=,8c:am2JFFwzkwBCEAAABgwABgASAAAAAAAAAAAAAAAAAAA=,8d:AAAA4P7/s9ce3FFNXwjxACIMAIAIABhACBgCoACFKAQ=,8e:AJQAQAQGAAAQCQAAQDAEgIIAAAAAmAQEAAAAAAAAAAA=,8f:AAAAAAAAAAAAAAAAwNMRqGgH69oICwNitkET+wQsgSM=,90:T4aV7AVAAFmGoIgAKGAggAEACgBMxCIKAkQCIIIhECE=,91:BAAAAgAAAAAAOoRkKFTigYAKBAwAAAAAgPYCEAAAAAA=,92:AAAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAAAA=,94:AAAAAAAAAAAAAAAAAAAAAABDDOLnQypIbwAAMAowR0U=,95:MxmDBnrhAQqDJAMQCCBBgAAAAAAAAAAAAAAAAADllS8=,96:J0ITkABAfIjxOSEIFgfgAGCIEROAAEBA87AgAAAFwEI=,97:kSJIUAAABAMAAERKBwJYAAAoAAEBIAAAAAAAAMAiaAA=,98:AAAAAAAAAAAAAAAAAADg7vYFyzGRAAAAAEAAwQAAAAA=,99:AAABAAAAAAAAAAAAIOBnlGKJRAIAAAAAAAAAAAAAAAA=,9a:AAAAAAAAAAAAAAAAAPBbWtSYggQSAQABAAAIAQAAAAA=,9b:CAAAAAAAABAWgBAAAAAAAAAAAAAAAAAAAAAAAAAAAAA=,9c:AAAAAAAAAAAAAAAAAAAAEAIgABAQAAABCABAQAAAAAA=,9e:AAAAgGqgKKAohAAAEAABgAAACABAAAAIEGASAQAAAAA=,9f:AEAIAAEAAAgAAAEAAAAAgBAIAIYAAAAAAAAAAAAAAAA=,fe,ff",
38
+ full: "0,1,2,3,4,1e,20,21,22,23,24,25,26,27,29,2b,2e,2f,30,31,32,33,34,35,36,37,38,39,3a,3b,3c,3d,3e,3f,40,41,42,43,44,45,46,47,48,49,4a,4b,4c,4d,4e,4f,50,51,52,53,54,55,56,57,58,59,5a,5b,5c,5d,5e,5f,60,61,62,63,64,65,66,67,68,69,6a,6b,6c,6d,6e,6f,70,71,72,73,74,75,76,77,78,79,7a,7b,7c,7d,7e,7f,80,81,82,83,84,85,86,87,88,89,8a,8b,8c,8d,8e,8f,90,91,92,93,94,95,96,97,98,99,9a,9b,9c,9d,9e,9f,f9,fa,fb,fe,ff,1f1,1f2,200,201,206,20c,213,214,215,229,235,23c,23e,241,242,248,249,24a,255,25a,25e,262,264,266,267,269,26b,26c,278,27e,27f,284,286,287,28b,28c,28e,296,298,29f,2a7,2a8,2a9,2aa,2af,2b1,2b3,2b4,2b5,2b6,2b7,2b8,2ba,2bb,2bc,2bd,2be,2c0,2c1,2c2,2c3,2c4,2c5,2c6,2c7,2c8,2c9,2ca,2cb,2cc,2cd,2ce,2d5,2f8,30e,310",
39
+ },
40
+ };
41
+ //# sourceMappingURL=subset-fonts.generated.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"subset-fonts.generated.js","sourceRoot":"","sources":["../../src/og/subset-fonts.generated.ts"],"names":[],"mappings":"AAAA,+DAA+D;AAC/D,6EAA6E;AAC7E,6EAA6E;AAC7E,sBAAsB;AACtB,8EAA8E;AAC9E,4EAA4E;AAC5E,6EAA6E;AAC7E,mEAAmE;AAEnE,MAAM,CAAC,MAAM,gBAAgB,GAAG,iBAAiB,CAAC;AAclD,MAAM,CAAC,MAAM,eAAe,GAAG;IAC7B,IAAI,EAAE;QACJ,OAAO,EAAE,EAAE,IAAI,EAAE,sBAAsB,EAAE,MAAM,EAAE,kEAAkE,EAAE;QACrH,IAAI,EAAE,EAAE,IAAI,EAAE,mBAAmB,EAAE,MAAM,EAAE,kEAAkE,EAAE;QAC/G,MAAM,EAAE,yCAAyC;QACjD,IAAI,EAAE,iFAAiF;KACxF;IACD,OAAO,EAAE;QACP,OAAO,EAAE,EAAE,IAAI,EAAE,wBAAwB,EAAE,MAAM,EAAE,kEAAkE,EAAE;QACvH,IAAI,EAAE,EAAE,IAAI,EAAE,qBAAqB,EAAE,MAAM,EAAE,kEAAkE,EAAE;QACjH,MAAM,EAAE,+1HAA+1H;QACv2H,IAAI,EAAE,isBAAisB;KACxsB;IACD,OAAO,EAAE;QACP,OAAO,EAAE,EAAE,IAAI,EAAE,wBAAwB,EAAE,MAAM,EAAE,kEAAkE,EAAE;QACvH,IAAI,EAAE,EAAE,IAAI,EAAE,qBAAqB,EAAE,MAAM,EAAE,kEAAkE,EAAE;QACjH,MAAM,EAAE,++HAA++H;QACv/H,IAAI,EAAE,qkCAAqkC;KAC5kC;IACD,IAAI,EAAE;QACJ,OAAO,EAAE,EAAE,IAAI,EAAE,wBAAwB,EAAE,MAAM,EAAE,kEAAkE,EAAE;QACvH,IAAI,EAAE,EAAE,IAAI,EAAE,qBAAqB,EAAE,MAAM,EAAE,kEAAkE,EAAE;QACjH,MAAM,EAAE,+4HAA+4H;QACv5H,IAAI,EAAE,i+BAAi+B;KACx+B;IACD,cAAc,EAAE;QACd,OAAO,EAAE,EAAE,IAAI,EAAE,0BAA0B,EAAE,MAAM,EAAE,kEAAkE,EAAE;QACzH,MAAM,EAAE,+1HAA+1H;QACv2H,IAAI,EAAE,isBAAisB;KACxsB;CACiD,CAAC"}
@@ -19,6 +19,14 @@
19
19
  * - Missing Bold renders 700 with Regular (`boldFallback: true` on the event).
20
20
  * Only a success, "not configured", or a missing DERIVED file is cached; a
21
21
  * failure of an explicitly configured URL is retried on the next render.
22
+ * - Subsets (ArcBlock/arc#8800): next to each font, `subset-v1/<same name>`
23
+ * (the bundled face ships `assets/fonts/subset-v1/noto-sans-sc-regular.otf`;
24
+ * for a URL, the sibling `…/subset-v1/NotoSansSC-Regular.otf`). When every
25
+ * character of the tree is covered and the subset file exists with the
26
+ * build's sha256, it is used instead of the full face (same pixels, a
27
+ * fraction of the parse). A Bold subset is needed only when a full Bold
28
+ * exists. Otherwise — unknown font, missing file, uncovered text — the full
29
+ * fonts, as before (`fontSubset` on the event says which).
22
30
  *
23
31
  * No wall-clock guard around satori/resvg here (`Resvg.render()` is one
24
32
  * synchronous wasm call; a timer cannot interrupt it). Render cost is bounded
@@ -29,6 +37,7 @@
29
37
  * (ArcBlock/arc#8746) if still wanted.
30
38
  */
31
39
  import { type Logger } from "../logger.js";
40
+ import { type OgFontSubsetStatus } from "./font-subset.js";
32
41
  import { type OgTreeRenderOptions } from "./tree.js";
33
42
  /** Default deadline for waiting in the process render queue. */
34
43
  export declare const OG_NODE_QUEUE_MAX_WAIT_MS = 20000;
@@ -42,6 +51,8 @@ export interface OgNodeRenderEvent {
42
51
  template: "tree";
43
52
  /** Weight 700 was requested but no Bold font could be loaded — drawn with Regular. */
44
53
  boldFallback?: boolean;
54
+ /** Subset fonts used (`"hit"`), not covering the text (`"miss"`), or unavailable (`"absent"`). Always set by `renderOgTree`. */
55
+ fontSubset?: OgFontSubsetStatus;
45
56
  }
46
57
  export interface OgNodeTreeRenderOptions extends OgTreeRenderOptions {
47
58
  /** Regular font URL. Defaults to `CONNECT_OG_FONT_URL`, then the bundled face. */
@@ -61,7 +72,12 @@ export interface OgNodeTreeRenderOptions extends OgTreeRenderOptions {
61
72
  }
62
73
  /** `…Regular…` → `…Bold…` in the last path segment; undefined when the name has no Regular marker. */
63
74
  export declare function deriveBoldFontUrl(regularUrl: string | undefined): string | undefined;
64
- /** Test isolation: forget cached Bold bytes and re-arm the missing-Bold warning. */
75
+ /** `…/NotoSansSC-Regular.otf` → `…/subset-v1/NotoSansSC-Regular.otf` (and the file name). */
76
+ export declare function deriveSubsetFontUrl(url: string | undefined): {
77
+ url: string;
78
+ file: string;
79
+ } | undefined;
80
+ /** Test isolation: forget cached Bold / subset bytes and re-arm the warnings. */
65
81
  export declare function resetOgNodeTreeFontsForTesting(): void;
66
82
  /**
67
83
  * Renders a caller-built satori tree to PNG bytes. Rejects with an
@@ -1 +1 @@
1
- {"version":3,"file":"tree-node.d.ts","sourceRoot":"","sources":["../../src/og/tree-node.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AASH,OAAO,EAAiB,KAAK,MAAM,EAAE,MAAM,cAAc,CAAC;AAI1D,OAAO,EAML,KAAK,mBAAmB,EAIzB,MAAM,WAAW,CAAC;AAEnB,gEAAgE;AAChE,eAAO,MAAM,yBAAyB,QAAS,CAAC;AAEhD,MAAM,WAAW,iBAAiB;IAChC,MAAM,EAAE,MAAM,CAAC;IACf,WAAW,EAAE,QAAQ,CAAC;IACtB,yEAAyE;IACzE,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,MAAM,CAAC;IACjB,sFAAsF;IACtF,YAAY,CAAC,EAAE,OAAO,CAAC;CACxB;AAED,MAAM,WAAW,uBAAwB,SAAQ,mBAAmB;IAClE,kFAAkF;IAClF,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,gGAAgG;IAChG,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,yEAAyE;IACzE,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,+DAA+D;IAC/D,SAAS,CAAC,EAAE,OAAO,KAAK,CAAC;IACzB,0FAA0F;IAC1F,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,+GAA+G;IAC/G,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,iBAAiB,KAAK,IAAI,CAAC;CAC/C;AAiCD,sGAAsG;AACtG,wBAAgB,iBAAiB,CAAC,UAAU,EAAE,MAAM,GAAG,SAAS,GAAG,MAAM,GAAG,SAAS,CAOpF;AA4CD,oFAAoF;AACpF,wBAAgB,8BAA8B,IAAI,IAAI,CAGrD;AAED;;;;;GAKG;AACH,wBAAsB,YAAY,CAAC,OAAO,EAAE,uBAAuB,GAAG,OAAO,CAAC,UAAU,CAAC,CAsExF"}
1
+ {"version":3,"file":"tree-node.d.ts","sourceRoot":"","sources":["../../src/og/tree-node.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAqCG;AASH,OAAO,EAAiB,KAAK,MAAM,EAAE,MAAM,cAAc,CAAC;AAC1D,OAAO,EAEL,KAAK,kBAAkB,EAKxB,MAAM,kBAAkB,CAAC;AAI1B,OAAO,EAML,KAAK,mBAAmB,EAIzB,MAAM,WAAW,CAAC;AAEnB,gEAAgE;AAChE,eAAO,MAAM,yBAAyB,QAAS,CAAC;AAEhD,MAAM,WAAW,iBAAiB;IAChC,MAAM,EAAE,MAAM,CAAC;IACf,WAAW,EAAE,QAAQ,CAAC;IACtB,yEAAyE;IACzE,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,MAAM,CAAC;IACjB,sFAAsF;IACtF,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,gIAAgI;IAChI,UAAU,CAAC,EAAE,kBAAkB,CAAC;CACjC;AAED,MAAM,WAAW,uBAAwB,SAAQ,mBAAmB;IAClE,kFAAkF;IAClF,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,gGAAgG;IAChG,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,yEAAyE;IACzE,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,+DAA+D;IAC/D,SAAS,CAAC,EAAE,OAAO,KAAK,CAAC;IACzB,0FAA0F;IAC1F,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,+GAA+G;IAC/G,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,iBAAiB,KAAK,IAAI,CAAC;CAC/C;AAiCD,sGAAsG;AACtG,wBAAgB,iBAAiB,CAAC,UAAU,EAAE,MAAM,GAAG,SAAS,GAAG,MAAM,GAAG,SAAS,CAOpF;AAkDD,6FAA6F;AAC7F,wBAAgB,mBAAmB,CAAC,GAAG,EAAE,MAAM,GAAG,SAAS,GAAG;IAAE,GAAG,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,GAAG,SAAS,CAmBtG;AA+DD,iFAAiF;AACjF,wBAAgB,8BAA8B,IAAI,IAAI,CAKrD;AAED;;;;;GAKG;AACH,wBAAsB,YAAY,CAAC,OAAO,EAAE,uBAAuB,GAAG,OAAO,CAAC,UAAU,CAAC,CAqGxF"}
@@ -19,6 +19,14 @@
19
19
  * - Missing Bold renders 700 with Regular (`boldFallback: true` on the event).
20
20
  * Only a success, "not configured", or a missing DERIVED file is cached; a
21
21
  * failure of an explicitly configured URL is retried on the next render.
22
+ * - Subsets (ArcBlock/arc#8800): next to each font, `subset-v1/<same name>`
23
+ * (the bundled face ships `assets/fonts/subset-v1/noto-sans-sc-regular.otf`;
24
+ * for a URL, the sibling `…/subset-v1/NotoSansSC-Regular.otf`). When every
25
+ * character of the tree is covered and the subset file exists with the
26
+ * build's sha256, it is used instead of the full face (same pixels, a
27
+ * fraction of the parse). A Bold subset is needed only when a full Bold
28
+ * exists. Otherwise — unknown font, missing file, uncovered text — the full
29
+ * fonts, as before (`fontSubset` on the event says which).
22
30
  *
23
31
  * No wall-clock guard around satori/resvg here (`Resvg.render()` is one
24
32
  * synchronous wasm call; a timer cannot interrupt it). Render cost is bounded
@@ -29,14 +37,15 @@
29
37
  * (ArcBlock/arc#8746) if still wanted.
30
38
  */
31
39
  import { createHash } from "node:crypto";
32
- import { existsSync, mkdirSync, readFileSync, writeFileSync } from "node:fs";
40
+ import { existsSync, mkdirSync, readFileSync, rmSync, writeFileSync } from "node:fs";
33
41
  import { readFile } from "node:fs/promises";
34
42
  import { createRequire } from "node:module";
35
43
  import { tmpdir } from "node:os";
36
44
  import { dirname, join } from "node:path";
37
- import { fileURLToPath } from "node:url";
45
+ import { fileURLToPath, pathToFileURL } from "node:url";
38
46
  import { consoleLogger } from "../logger.js";
39
- import { FONT_FETCH_TIMEOUT_MS, loadFont } from "./generator.js";
47
+ import { OG_SUBSET_PREFIX, ogFontSha256, ogSubsetFontSets, ogTreeCoveredBySubset, } from "./font-subset.js";
48
+ import { FONT_FETCH_TIMEOUT_MS, FONT_PATH, loadFont } from "./generator.js";
40
49
  import { resolveNodeOgConfig } from "./node-config.js";
41
50
  import { rasterizeSvgToPngWithWasm } from "./node-wasm-fallback.js";
42
51
  import { createSerialQueue, OG_RENDER_UNAVAILABLE_CODES, OG_TREE_ERROR_CODES, OgRenderUnavailableError, OgTreeRenderError, prepareOgTree, wantsBold, withTimeout, } from "./tree.js";
@@ -118,10 +127,101 @@ async function loadBold(explicitUrl, regularUrl, fontCacheDir, fetchImpl, logger
118
127
  return null;
119
128
  }
120
129
  }
121
- /** Test isolation: forget cached Bold bytes and re-arm the missing-Bold warning. */
130
+ // ---------------------------------------------------------------------------
131
+ // Subset fonts (ArcBlock/arc#8800)
132
+ // ---------------------------------------------------------------------------
133
+ const SUBSET_DIR = OG_SUBSET_PREFIX.slice(OG_SUBSET_PREFIX.lastIndexOf("/") + 1);
134
+ /** `…/NotoSansSC-Regular.otf` → `…/subset-v1/NotoSansSC-Regular.otf` (and the file name). */
135
+ export function deriveSubsetFontUrl(url) {
136
+ if (!url)
137
+ return undefined;
138
+ let parsed;
139
+ try {
140
+ parsed = new URL(url);
141
+ }
142
+ catch {
143
+ return undefined;
144
+ }
145
+ const slash = parsed.pathname.lastIndexOf("/");
146
+ const name = parsed.pathname.slice(slash + 1);
147
+ if (!name)
148
+ return undefined;
149
+ parsed.pathname = `${parsed.pathname.slice(0, slash + 1)}${SUBSET_DIR}/${name}`;
150
+ let file;
151
+ try {
152
+ file = decodeURIComponent(name);
153
+ }
154
+ catch {
155
+ return undefined;
156
+ }
157
+ return { url: parsed.href, file };
158
+ }
159
+ /** Subset file bytes by URL; `null` = missing or not the build's bytes (cached). Errors are not cached. */
160
+ const subsetFiles = new Map();
161
+ let subsetMissingWarned = false;
162
+ async function readSubsetFile(url, fontCacheDir, fetchImpl) {
163
+ if (url.startsWith("file:")) {
164
+ try {
165
+ return await readFile(fileURLToPath(url));
166
+ }
167
+ catch (err) {
168
+ if (err.code === "ENOENT")
169
+ return null;
170
+ throw err;
171
+ }
172
+ }
173
+ const diskPath = join(fontCacheDir, `${md5(url)}.font`);
174
+ if (existsSync(diskPath))
175
+ return readFile(diskPath);
176
+ const res = await fetchImpl(url, { signal: AbortSignal.timeout(FONT_FETCH_TIMEOUT_MS) });
177
+ if (res.status === 404 || res.status === 403)
178
+ return null;
179
+ if (!res.ok)
180
+ throw new Error(`subset font fetch failed: ${res.status}`);
181
+ const buf = Buffer.from(await res.arrayBuffer());
182
+ mkdirSync(dirname(diskPath), { recursive: true });
183
+ writeFileSync(diskPath, buf);
184
+ return buf;
185
+ }
186
+ function loadSubsetFile(url, sha256, fontCacheDir, fetchImpl, logger) {
187
+ let entry = subsetFiles.get(url);
188
+ if (!entry) {
189
+ const created = readSubsetFile(url, fontCacheDir, fetchImpl).then(async (bytes) => {
190
+ const reason = !bytes ? "missing" : (await ogFontSha256(bytes)) !== sha256 ? "sha256 mismatch" : undefined;
191
+ if (!reason)
192
+ return bytes;
193
+ // A stale / corrupt download must not stay on disk for the next process.
194
+ if (bytes && !url.startsWith("file:"))
195
+ rmSync(join(fontCacheDir, `${md5(url)}.font`), { force: true });
196
+ if (!subsetMissingWarned) {
197
+ subsetMissingWarned = true;
198
+ logger.warn({ message: `[og] subset font ${reason}; rendering with the full font`, mod: "og" });
199
+ }
200
+ return null;
201
+ });
202
+ created.catch(() => {
203
+ if (subsetFiles.get(url) === created)
204
+ subsetFiles.delete(url);
205
+ });
206
+ subsetFiles.set(url, created);
207
+ entry = created;
208
+ }
209
+ return entry;
210
+ }
211
+ /** The subset set built from the Regular font at `regularUrl` (the bundled face when unset). */
212
+ function subsetPlanFor(regularUrl) {
213
+ const derived = deriveSubsetFontUrl(regularUrl ?? pathToFileURL(FONT_PATH).href);
214
+ if (!derived)
215
+ return undefined;
216
+ const set = Object.values(ogSubsetFontSets()).find((candidate) => candidate.regular.file === derived.file);
217
+ return set ? { set, url: derived.url } : undefined;
218
+ }
219
+ /** Test isolation: forget cached Bold / subset bytes and re-arm the warnings. */
122
220
  export function resetOgNodeTreeFontsForTesting() {
123
221
  boldSlot = undefined;
124
222
  boldMissingWarned = false;
223
+ subsetFiles.clear();
224
+ subsetMissingWarned = false;
125
225
  }
126
226
  /**
127
227
  * Renders a caller-built satori tree to PNG bytes. Rejects with an
@@ -138,15 +238,49 @@ export async function renderOgTree(options) {
138
238
  const fontCacheDir = options.fontCacheDir ?? join(tmpdir(), "og-fonts");
139
239
  const fontTimeout = options.fontReadTimeoutMs ?? FONT_FETCH_TIMEOUT_MS;
140
240
  const regularUrl = options.fontUrl ?? config.fontUrl;
241
+ const explicitBoldUrl = options.boldFontUrl ?? config.boldFontUrl;
141
242
  const timeoutError = () => new OgRenderUnavailableError(OG_RENDER_UNAVAILABLE_CODES.fontTimeout, `font load exceeded ${fontTimeout}ms`);
142
- const { png, queueMs, fontReadMs, boldFallback } = await serialRender(async ({ queueMs }) => {
243
+ const boldWanted = wantsBold(options.weights);
244
+ const plan = subsetPlanFor(regularUrl);
245
+ const covered = plan ? ogTreeCoveredBySubset(plan.set, tree) : false;
246
+ /** Full Bold (cached), bounded by the font deadline. */
247
+ const fullBold = () => withTimeout(loadBold(explicitBoldUrl, regularUrl, fontCacheDir, fetchImpl, logger), fontTimeout, timeoutError);
248
+ /** Subset Regular (+ Bold), or null when the full fonts must be used. Errors ⇒ null for this render. */
249
+ async function subsetFonts() {
250
+ if (!plan || !covered)
251
+ return null;
252
+ try {
253
+ const load = (url, sha256) => withTimeout(loadSubsetFile(url, sha256, fontCacheDir, fetchImpl, logger), fontTimeout, timeoutError);
254
+ const regular = await load(plan.url, plan.set.regular.sha256);
255
+ if (!regular)
256
+ return null;
257
+ if (!boldWanted)
258
+ return { regular, bold: null };
259
+ const boldSubset = deriveSubsetFontUrl(explicitBoldUrl ?? deriveBoldFontUrl(regularUrl ?? pathToFileURL(FONT_PATH).href));
260
+ if (plan.set.bold && boldSubset?.file === plan.set.bold.file) {
261
+ const bold = await load(boldSubset.url, plan.set.bold.sha256);
262
+ if (bold)
263
+ return { regular, bold };
264
+ }
265
+ // No Bold subset: still a hit when there is no full Bold either (700 is
266
+ // drawn with Regular both ways); otherwise the full fonts.
267
+ return (await fullBold()) ? null : { regular, bold: null };
268
+ }
269
+ catch (err) {
270
+ logger.warn({ message: "[og] subset font load failed; rendering with the full font", mod: "og", err });
271
+ return null;
272
+ }
273
+ }
274
+ const { png, queueMs, fontReadMs, boldFallback, fontSubset } = await serialRender(async ({ queueMs }) => {
143
275
  const satori = await loadSatori();
144
276
  const fontStart = performance.now();
145
- const regular = await withTimeout(loadFont({ fontUrl: regularUrl, fontCacheDir, fetchImpl, logger, timeoutMs: fontTimeout }), fontTimeout, timeoutError);
277
+ const subset = await subsetFonts();
278
+ const fontSubset = subset ? "hit" : plan && !covered ? "miss" : "absent";
279
+ const regular = subset?.regular ??
280
+ (await withTimeout(loadFont({ fontUrl: regularUrl, fontCacheDir, fetchImpl, logger, timeoutMs: fontTimeout }), fontTimeout, timeoutError));
146
281
  let bold = null;
147
- const boldWanted = wantsBold(options.weights);
148
282
  if (boldWanted) {
149
- bold = await withTimeout(loadBold(options.boldFontUrl ?? config.boldFontUrl, regularUrl, fontCacheDir, fetchImpl, logger), fontTimeout, timeoutError);
283
+ bold = subset ? subset.bold : await fullBold();
150
284
  if (!bold && !boldMissingWarned) {
151
285
  boldMissingWarned = true;
152
286
  logger.warn({ message: "[og] bold font missing; rendering weight 700 with the regular face", mod: "og" });
@@ -176,7 +310,7 @@ export async function renderOgTree(options) {
176
310
  // satori/resvg messages can quote the input; report a generic 400.
177
311
  throw new OgTreeRenderError(OG_TREE_ERROR_CODES.renderFailed, "the tree could not be rendered");
178
312
  }
179
- return { png, queueMs, fontReadMs, boldFallback: boldWanted && !bold };
313
+ return { png, queueMs, fontReadMs, boldFallback: boldWanted && !bold, fontSubset };
180
314
  }, { maxWaitMs: options.queueMaxWaitMs ?? OG_NODE_QUEUE_MAX_WAIT_MS });
181
315
  options.observer?.({
182
316
  locale: options.locale,
@@ -184,6 +318,7 @@ export async function renderOgTree(options) {
184
318
  durationMs: performance.now() - startedAt,
185
319
  queueMs,
186
320
  fontReadMs,
321
+ fontSubset,
187
322
  template: "tree",
188
323
  ...(boldFallback ? { boldFallback: true } : {}),
189
324
  });
@@ -1 +1 @@
1
- {"version":3,"file":"tree-node.js","sourceRoot":"","sources":["../../src/og/tree-node.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"tree-node.js","sourceRoot":"","sources":["../../src/og/tree-node.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,9 @@
1
1
  import { type Logger } from "../logger.js";
2
+ import { type OgFontSubsetStatus } from "./font-subset.js";
2
3
  import { type OgTreeRenderOptions } from "./tree.js";
3
4
  import type { OgGenerateOptions } from "./types.js";
5
+ export type { OgFontSubsetStatus } from "./font-subset.js";
6
+ export { OG_SUBSET_FONTS, OG_SUBSET_PREFIX } from "./font-subset.js";
4
7
  export type { OgImageInspection, OgImageKind, OgRenderUnavailableCode, OgTreeErrorCode, OgTreeImageStats, OgTreeNode, OgTreeRenderOptions, OgTreeWeight, } from "./tree.js";
5
8
  export { inspectOgImage, OG_RENDER_UNAVAILABLE_CODES, OG_TREE_ERROR_CODES, OG_TREE_FONT_FAMILY, OG_TREE_LIMITS, OgRenderUnavailableError, OgTreeRenderError, sniffOgImageKind, validateOgTree, } from "./tree.js";
6
9
  /** Default deadline for one font object read from the bucket. */
@@ -48,12 +51,21 @@ export interface OgWorkerLogoAsset {
48
51
  export interface OgWorkerRenderEvent {
49
52
  locale: OgWorkerLocale;
50
53
  cacheStatus: OgWorkerCacheStatus;
51
- /** Wall time of the whole call, INCLUDING `queueMs` and `fontReadMs`. */
54
+ /**
55
+ * `performance.now()` delta over the whole call, INCLUDING `queueMs` and
56
+ * `fontReadMs`. On Cloudflare Workers that clock only advances across I/O —
57
+ * it stands still during CPU work (satori, resvg, PNG encoding) — so there
58
+ * this is ≈ queue + font I/O, NOT the render's wall or CPU time. Use the
59
+ * platform's per-invocation `wallTimeMs` / `cpuTimeMs` for those. On Node it
60
+ * is the real wall time.
61
+ */
52
62
  durationMs: number;
53
63
  /** Time spent waiting in the isolate render queue (renders only, not cache HITs). */
54
64
  queueMs?: number;
55
- /** Time spent loading fonts (≈0 when the raw-font slot already held them; includes first wasm init on a cold isolate). */
65
+ /** Time spent loading fonts — I/O (≈0 when the raw-font slot already held them; includes first wasm init on a cold isolate). */
56
66
  fontReadMs?: number;
67
+ /** Subset fonts used (`"hit"`), not covering the text (`"miss"`), or unavailable (`"absent"`) — renders only. See {@link OgFontSubsetStatus}. */
68
+ fontSubset?: OgFontSubsetStatus;
57
69
  /** Weight 700 was requested but the Bold object is missing — drawn with Regular. */
58
70
  boldFallback?: boolean;
59
71
  /** `"tree"` for {@link OgWorkerRenderer.renderTree}; the template name for og.png renders. */
@@ -114,11 +126,17 @@ export declare function normalizeOgLocale(locale: string | undefined): OgWorkerL
114
126
  export declare function resetOgWorkerWasmForTesting(): void;
115
127
  /** Test isolation: drop the raw font slot and re-arm the Bold warning. */
116
128
  export declare function resetOgWorkerFontCacheForTesting(): void;
117
- /** Introspection for tests/benchmarks: which locale's raw fonts are resident, and how many bytes. */
129
+ /**
130
+ * Introspection for tests/benchmarks: which locale's raw fonts are resident,
131
+ * and how many bytes (`regularBytes` / `boldBytes`: full fonts; `subset*`: the
132
+ * subset objects).
133
+ */
118
134
  export declare function getOgWorkerFontCacheStats(): Promise<{
119
135
  locale?: OgWorkerLocale;
120
136
  regularBytes: number;
121
137
  boldBytes: number;
138
+ subsetRegularBytes: number;
139
+ subsetBoldBytes: number;
122
140
  }>;
123
141
  /**
124
142
  * Resolves a stored branding-logo asset to a satori/resvg-compatible data
@@ -137,6 +155,10 @@ export declare function resolveOgWorkerLogoDataUri(asset: OgWorkerLogoAsset | nu
137
155
  * render with an `OgTreeRenderError` and nothing is fetched.
138
156
  * - Fonts come from `fontBucket` by locale: Regular always, Bold when
139
157
  * `weights` includes 700 (missing Bold ⇒ Regular + one warning per isolate).
158
+ * When every character of the tree is covered by the locale's subset fonts
159
+ * (`fonts/subset-v1/…`, ArcBlock/arc#8800) those are used instead — same
160
+ * pixels, a fraction of the parse; otherwise, or when the subset object is
161
+ * missing (one warning per isolate), the full fonts.
140
162
  * - Runs inside the isolate-wide serial queue, so concurrent calls never
141
163
  * parse fonts or grow the wasm heap in parallel.
142
164
  * - No cache: callers version and cache the result themselves.
@@ -1 +1 @@
1
- {"version":3,"file":"worker.d.ts","sourceRoot":"","sources":["../../src/og/worker.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"worker.d.ts","sourceRoot":"","sources":["../../src/og/worker.ts"],"names":[],"mappings":"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"}