[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"page\u002Fzh\u002Fdocs\u002Fcore\u002Ftodo-list\u002Fapi-reference":3,"page-\u002Fdocs\u002Fcore\u002Ftodo-list\u002Fapi-reference-zh":959,"surroundings\u002Fdocs\u002Fcore\u002Ftodo-list\u002Fapi-reference-zh":4407},[4],{"title":5,"ignore":6,"path":7,"stem":8,"children":9,"page":34},"文档",true,"\u002Fzh\u002Fdocs","zh\u002F01.docs",[10,35,861,878,892,945],{"title":11,"path":12,"stem":13,"children":14,"page":-1},"开始使用","\u002Fzh\u002Fdocs\u002Fwelcome","zh\u002F01.docs\u002F01.welcome\u002F01.index",[15,17],{"title":16,"path":12,"stem":13},"欢迎",{"title":18,"ignore":6,"path":19,"stem":20,"children":21,"page":34},"Get Started","\u002Fzh\u002Fdocs\u002Fwelcome\u002Fget-started","zh\u002F01.docs\u002F01.welcome\u002F01.get-started",[22,26,30],{"title":23,"path":24,"stem":25},"安装","\u002Fzh\u002Fdocs\u002Fwelcome\u002Fget-started\u002Finstallation","zh\u002F01.docs\u002F01.welcome\u002F01.get-started\u002F02.installation",{"title":27,"path":28,"stem":29},"快速开始","\u002Fzh\u002Fdocs\u002Fwelcome\u002Fget-started\u002Fquickstart","zh\u002F01.docs\u002F01.welcome\u002F01.get-started\u002F03.quickstart",{"title":31,"path":32,"stem":33},"概念","\u002Fzh\u002Fdocs\u002Fwelcome\u002Fget-started\u002Fconcepts","zh\u002F01.docs\u002F01.welcome\u002F01.get-started\u002F04.concepts",false,{"title":36,"path":37,"stem":38,"children":39,"page":34},"核心","\u002Fzh\u002Fdocs\u002Fcore","zh\u002F01.docs\u002F02.core",[40,77,88,96,105,135,161,169,184,195,206,215,227,235,243,263,291,300,312,341,371,392,422,433,441,450,458,466,474,485,498,511,540,557,577,597,617,642,666,694,702,710,738,765,792,819,849],{"title":41,"path":42,"stem":43,"children":44,"page":34},"MD5","\u002Fzh\u002Fdocs\u002Fcore\u002Fmd5","zh\u002F01.docs\u002F02.core\u002F01.md5",[45,49,53,57,61,65,69,73],{"title":46,"path":47,"stem":48},"介绍","\u002Fzh\u002Fdocs\u002Fcore\u002Fmd5\u002Fintroduction","zh\u002F01.docs\u002F02.core\u002F01.md5\u002F01.introduction",{"title":50,"path":51,"stem":52},"基本使用","\u002Fzh\u002Fdocs\u002Fcore\u002Fmd5\u002Fbasic-usage","zh\u002F01.docs\u002F02.core\u002F01.md5\u002F02.basic-usage",{"title":54,"path":55,"stem":56},"高级功能","\u002Fzh\u002Fdocs\u002Fcore\u002Fmd5\u002Fadvanced-features","zh\u002F01.docs\u002F02.core\u002F01.md5\u002F03.advanced-features",{"title":58,"path":59,"stem":60},"安全考虑","\u002Fzh\u002Fdocs\u002Fcore\u002Fmd5\u002Fsecurity-considerations","zh\u002F01.docs\u002F02.core\u002F01.md5\u002F04.security-considerations",{"title":62,"path":63,"stem":64},"API 参考","\u002Fzh\u002Fdocs\u002Fcore\u002Fmd5\u002Fapi-reference","zh\u002F01.docs\u002F02.core\u002F01.md5\u002F05.api-reference",{"title":66,"path":67,"stem":68},"使用示例","\u002Fzh\u002Fdocs\u002Fcore\u002Fmd5\u002Fexamples","zh\u002F01.docs\u002F02.core\u002F01.md5\u002F06.examples",{"title":70,"path":71,"stem":72},"常见问题","\u002Fzh\u002Fdocs\u002Fcore\u002Fmd5\u002Ffaq","zh\u002F01.docs\u002F02.core\u002F01.md5\u002F07.faq",{"title":74,"path":75,"stem":76},"相关工具","\u002Fzh\u002Fdocs\u002Fcore\u002Fmd5\u002Frelated-tools","zh\u002F01.docs\u002F02.core\u002F01.md5\u002F08.related-tools",{"title":78,"path":79,"stem":80,"children":81,"page":34},"UUID","\u002Fzh\u002Fdocs\u002Fcore\u002Fuuid","zh\u002F01.docs\u002F02.core\u002F02.uuid",[82,85],{"title":46,"path":83,"stem":84},"\u002Fzh\u002Fdocs\u002Fcore\u002Fuuid\u002Fintroduction","zh\u002F01.docs\u002F02.core\u002F02.uuid\u002F01.introduction",{"title":62,"path":86,"stem":87},"\u002Fzh\u002Fdocs\u002Fcore\u002Fuuid\u002Fapi","zh\u002F01.docs\u002F02.core\u002F02.uuid\u002F02.api",{"title":89,"path":90,"stem":91,"children":92,"page":34},"二维码生成器","\u002Fzh\u002Fdocs\u002Fcore\u002Fqr-code-generator","zh\u002F01.docs\u002F02.core\u002F03.qr-code-generator",[93],{"title":89,"path":94,"stem":95},"\u002Fzh\u002Fdocs\u002Fcore\u002Fqr-code-generator\u002Fintroduction","zh\u002F01.docs\u002F02.core\u002F03.qr-code-generator\u002F01.introduction",{"title":97,"path":98,"stem":99,"children":100,"page":34},"Json To Csv","\u002Fzh\u002Fdocs\u002Fcore\u002Fjson-to-csv","zh\u002F01.docs\u002F02.core\u002F05.json-to-csv",[101],{"title":102,"path":103,"stem":104},"Introduction","\u002Fzh\u002Fdocs\u002Fcore\u002Fjson-to-csv\u002Fintroduction","zh\u002F01.docs\u002F02.core\u002F05.json-to-csv\u002F0.introduction",{"title":106,"path":107,"stem":108,"children":109,"page":34},"Sql Prettify","\u002Fzh\u002Fdocs\u002Fcore\u002Fsql-prettify","zh\u002F01.docs\u002F02.core\u002F05.sql-prettify",[110,113,116,119,122,125,129,132],{"title":102,"path":111,"stem":112},"\u002Fzh\u002Fdocs\u002Fcore\u002Fsql-prettify\u002Fintroduction","zh\u002F01.docs\u002F02.core\u002F05.sql-prettify\u002F0.introduction",{"title":50,"path":114,"stem":115},"\u002Fzh\u002Fdocs\u002Fcore\u002Fsql-prettify\u002Fbasic-usage","zh\u002F01.docs\u002F02.core\u002F05.sql-prettify\u002F02.basic-usage",{"title":54,"path":117,"stem":118},"\u002Fzh\u002Fdocs\u002Fcore\u002Fsql-prettify\u002Fadvanced-features","zh\u002F01.docs\u002F02.core\u002F05.sql-prettify\u002F03.advanced-features",{"title":58,"path":120,"stem":121},"\u002Fzh\u002Fdocs\u002Fcore\u002Fsql-prettify\u002Fsecurity-considerations","zh\u002F01.docs\u002F02.core\u002F05.sql-prettify\u002F04.security-considerations",{"title":62,"path":123,"stem":124},"\u002Fzh\u002Fdocs\u002Fcore\u002Fsql-prettify\u002Fapi-reference","zh\u002F01.docs\u002F02.core\u002F05.sql-prettify\u002F05.api-reference",{"title":126,"path":127,"stem":128},"示例","\u002Fzh\u002Fdocs\u002Fcore\u002Fsql-prettify\u002Fexamples","zh\u002F01.docs\u002F02.core\u002F05.sql-prettify\u002F06.examples",{"title":70,"path":130,"stem":131},"\u002Fzh\u002Fdocs\u002Fcore\u002Fsql-prettify\u002Ffaq","zh\u002F01.docs\u002F02.core\u002F05.sql-prettify\u002F07.faq",{"title":74,"path":133,"stem":134},"\u002Fzh\u002Fdocs\u002Fcore\u002Fsql-prettify\u002Frelated-tools","zh\u002F01.docs\u002F02.core\u002F05.sql-prettify\u002F08.related-tools",{"title":136,"path":137,"stem":138,"children":139,"page":34},"Yaml To Toml","\u002Fzh\u002Fdocs\u002Fcore\u002Fyaml-to-toml","zh\u002F01.docs\u002F02.core\u002F05.yaml-to-toml",[140,144,148,151,154,158],{"title":141,"path":142,"stem":143},"YAML到TOML转换器","\u002Fzh\u002Fdocs\u002Fcore\u002Fyaml-to-toml\u002Fintroduction","zh\u002F01.docs\u002F02.core\u002F05.yaml-to-toml\u002F0.introduction",{"title":145,"path":146,"stem":147},"基本使用指南","\u002Fzh\u002Fdocs\u002Fcore\u002Fyaml-to-toml\u002Fbasic-usage","zh\u002F01.docs\u002F02.core\u002F05.yaml-to-toml\u002F02.basic-usage",{"title":54,"path":149,"stem":150},"\u002Fzh\u002Fdocs\u002Fcore\u002Fyaml-to-toml\u002Fadvanced-features","zh\u002F01.docs\u002F02.core\u002F05.yaml-to-toml\u002F03.advanced-features",{"title":58,"path":152,"stem":153},"\u002Fzh\u002Fdocs\u002Fcore\u002Fyaml-to-toml\u002Fsecurity-considerations","zh\u002F01.docs\u002F02.core\u002F05.yaml-to-toml\u002F04.security-considerations",{"title":155,"path":156,"stem":157},"API参考","\u002Fzh\u002Fdocs\u002Fcore\u002Fyaml-to-toml\u002Fapi-reference","zh\u002F01.docs\u002F02.core\u002F05.yaml-to-toml\u002F05.api-reference",{"title":126,"path":159,"stem":160},"\u002Fzh\u002Fdocs\u002Fcore\u002Fyaml-to-toml\u002Fexamples","zh\u002F01.docs\u002F02.core\u002F05.yaml-to-toml\u002F06.examples",{"title":162,"path":163,"stem":164,"children":165,"page":34},"Beyond Compare","\u002Fzh\u002Fdocs\u002Fcore\u002Fbeyond-compare","zh\u002F01.docs\u002F02.core\u002F06.beyond-compare",[166],{"title":102,"path":167,"stem":168},"\u002Fzh\u002Fdocs\u002Fcore\u002Fbeyond-compare\u002Fintroduction","zh\u002F01.docs\u002F02.core\u002F06.beyond-compare\u002F0.introduction",{"title":170,"path":171,"stem":172,"children":173,"page":34},"Clock","\u002Fzh\u002Fdocs\u002Fcore\u002Fclock","zh\u002F01.docs\u002F02.core\u002F06.clock",[174,178,181],{"title":175,"path":176,"stem":177},"时钟工具","\u002Fzh\u002Fdocs\u002Fcore\u002Fclock\u002Fintroduction","zh\u002F01.docs\u002F02.core\u002F06.clock\u002F0.introduction",{"title":50,"path":179,"stem":180},"\u002Fzh\u002Fdocs\u002Fcore\u002Fclock\u002Fbasic-usage","zh\u002F01.docs\u002F02.core\u002F06.clock\u002F02.basic-usage",{"title":70,"path":182,"stem":183},"\u002Fzh\u002Fdocs\u002Fcore\u002Fclock\u002Ffaq","zh\u002F01.docs\u002F02.core\u002F06.clock\u002F07.faq",{"title":185,"path":186,"stem":187,"children":188,"page":34},"Http Status Codes","\u002Fzh\u002Fdocs\u002Fcore\u002Fhttp-status-codes","zh\u002F01.docs\u002F02.core\u002F06.http-status-codes",[189,192],{"title":102,"path":190,"stem":191},"\u002Fzh\u002Fdocs\u002Fcore\u002Fhttp-status-codes\u002Fintroduction","zh\u002F01.docs\u002F02.core\u002F06.http-status-codes\u002F0.introduction",{"title":50,"path":193,"stem":194},"\u002Fzh\u002Fdocs\u002Fcore\u002Fhttp-status-codes\u002Fbasic-usage","zh\u002F01.docs\u002F02.core\u002F06.http-status-codes\u002F02.basic-usage",{"title":196,"path":197,"stem":198,"children":199,"page":34},"Jwt Parser","\u002Fzh\u002Fdocs\u002Fcore\u002Fjwt-parser","zh\u002F01.docs\u002F02.core\u002F06.jwt-parser",[200,203],{"title":102,"path":201,"stem":202},"\u002Fzh\u002Fdocs\u002Fcore\u002Fjwt-parser\u002Fintroduction","zh\u002F01.docs\u002F02.core\u002F06.jwt-parser\u002F0.introduction",{"title":50,"path":204,"stem":205},"\u002Fzh\u002Fdocs\u002Fcore\u002Fjwt-parser\u002Fbasic-usage","zh\u002F01.docs\u002F02.core\u002F06.jwt-parser\u002F02.basic-usage",{"title":207,"path":208,"stem":209,"children":210,"page":34},"Markdown To Html","\u002Fzh\u002Fdocs\u002Fcore\u002Fmarkdown-to-html","zh\u002F01.docs\u002F02.core\u002F07.markdown-to-html",[211],{"title":212,"path":213,"stem":214},"Markdown转HTML工具 - 介绍","\u002Fzh\u002Fdocs\u002Fcore\u002Fmarkdown-to-html\u002Fintroduction","zh\u002F01.docs\u002F02.core\u002F07.markdown-to-html\u002F0.introduction",{"title":216,"path":217,"stem":218,"children":219,"page":34},"Screen Recorder","\u002Fzh\u002Fdocs\u002Fcore\u002Fscreen-recorder","zh\u002F01.docs\u002F02.core\u002F07.screen-recorder",[220,224],{"title":221,"path":222,"stem":223},"录屏工具","\u002Fzh\u002Fdocs\u002Fcore\u002Fscreen-recorder\u002Fintroduction","zh\u002F01.docs\u002F02.core\u002F07.screen-recorder\u002F0.introduction",{"title":145,"path":225,"stem":226},"\u002Fzh\u002Fdocs\u002Fcore\u002Fscreen-recorder\u002Fbasic-usage","zh\u002F01.docs\u002F02.core\u002F07.screen-recorder\u002F02.basic-usage",{"title":228,"path":229,"stem":230,"children":231,"page":34},"Screenshot Tool","\u002Fzh\u002Fdocs\u002Fcore\u002Fscreenshot-tool","zh\u002F01.docs\u002F02.core\u002F07.screenshot-tool",[232],{"title":102,"path":233,"stem":234},"\u002Fzh\u002Fdocs\u002Fcore\u002Fscreenshot-tool\u002Fintroduction","zh\u002F01.docs\u002F02.core\u002F07.screenshot-tool\u002F0.introduction",{"title":236,"path":237,"stem":238,"children":239,"page":34},"Svg Placeholder Generator","\u002Fzh\u002Fdocs\u002Fcore\u002Fsvg-placeholder-generator","zh\u002F01.docs\u002F02.core\u002F07.svg-placeholder-generator",[240],{"title":102,"path":241,"stem":242},"\u002Fzh\u002Fdocs\u002Fcore\u002Fsvg-placeholder-generator\u002Fintroduction","zh\u002F01.docs\u002F02.core\u002F07.svg-placeholder-generator\u002F0.introduction",{"title":244,"path":245,"stem":246,"children":247,"page":34},"Area Converter","\u002Fzh\u002Fdocs\u002Fcore\u002Farea-converter","zh\u002F01.docs\u002F02.core\u002F08.area-converter",[248,251,254,257,260],{"title":102,"path":249,"stem":250},"\u002Fzh\u002Fdocs\u002Fcore\u002Farea-converter\u002Fintroduction","zh\u002F01.docs\u002F02.core\u002F08.area-converter\u002F0.introduction",{"title":50,"path":252,"stem":253},"\u002Fzh\u002Fdocs\u002Fcore\u002Farea-converter\u002Fbasic-usage","zh\u002F01.docs\u002F02.core\u002F08.area-converter\u002F02.basic-usage",{"title":54,"path":255,"stem":256},"\u002Fzh\u002Fdocs\u002Fcore\u002Farea-converter\u002Fadvanced-features","zh\u002F01.docs\u002F02.core\u002F08.area-converter\u002F03.advanced-features",{"title":126,"path":258,"stem":259},"\u002Fzh\u002Fdocs\u002Fcore\u002Farea-converter\u002Fexamples","zh\u002F01.docs\u002F02.core\u002F08.area-converter\u002F04.examples",{"title":70,"path":261,"stem":262},"\u002Fzh\u002Fdocs\u002Fcore\u002Farea-converter\u002Ffaq","zh\u002F01.docs\u002F02.core\u002F08.area-converter\u002F05.faq",{"title":264,"path":265,"stem":266,"children":267,"page":34},"Camera Recorder","\u002Fzh\u002Fdocs\u002Fcore\u002Fcamera-recorder","zh\u002F01.docs\u002F02.core\u002F08.camera-recorder",[268,272,275,278,281,284,287],{"title":269,"path":270,"stem":271},"摄像机录制工具","\u002Fzh\u002Fdocs\u002Fcore\u002Fcamera-recorder\u002Fintroduction","zh\u002F01.docs\u002F02.core\u002F08.camera-recorder\u002F0.introduction",{"title":50,"path":273,"stem":274},"\u002Fzh\u002Fdocs\u002Fcore\u002Fcamera-recorder\u002Fbasic-usage","zh\u002F01.docs\u002F02.core\u002F08.camera-recorder\u002F02.basic-usage",{"title":54,"path":276,"stem":277},"\u002Fzh\u002Fdocs\u002Fcore\u002Fcamera-recorder\u002Fadvanced-features","zh\u002F01.docs\u002F02.core\u002F08.camera-recorder\u002F03.advanced-features",{"title":66,"path":279,"stem":280},"\u002Fzh\u002Fdocs\u002Fcore\u002Fcamera-recorder\u002Fexamples","zh\u002F01.docs\u002F02.core\u002F08.camera-recorder\u002F04.examples",{"title":70,"path":282,"stem":283},"\u002Fzh\u002Fdocs\u002Fcore\u002Fcamera-recorder\u002Ffaq","zh\u002F01.docs\u002F02.core\u002F08.camera-recorder\u002F05.faq",{"title":74,"path":285,"stem":286},"\u002Fzh\u002Fdocs\u002Fcore\u002Fcamera-recorder\u002Frelated-tools","zh\u002F01.docs\u002F02.core\u002F08.camera-recorder\u002F06.related-tools",{"title":288,"path":289,"stem":290},"安全注意事项","\u002Fzh\u002Fdocs\u002Fcore\u002Fcamera-recorder\u002Fsecurity-considerations","zh\u002F01.docs\u002F02.core\u002F08.camera-recorder\u002F07.security-considerations",{"title":292,"path":293,"stem":294,"children":295,"page":34},"Html To Markdown","\u002Fzh\u002Fdocs\u002Fcore\u002Fhtml-to-markdown","zh\u002F01.docs\u002F02.core\u002F08.html-to-markdown",[296],{"title":297,"path":298,"stem":299},"HTML转Markdown工具","\u002Fzh\u002Fdocs\u002Fcore\u002Fhtml-to-markdown\u002Fintroduction","zh\u002F01.docs\u002F02.core\u002F08.html-to-markdown\u002F0.introduction",{"title":301,"path":302,"stem":303,"children":304,"page":34},"Interest Calculator","\u002Fzh\u002Fdocs\u002Fcore\u002Finterest-calculator","zh\u002F01.docs\u002F02.core\u002F08.interest-calculator",[305,309],{"title":306,"path":307,"stem":308},"利率计算器","\u002Fzh\u002Fdocs\u002Fcore\u002Finterest-calculator\u002Fintroduction","zh\u002F01.docs\u002F02.core\u002F08.interest-calculator\u002F0.introduction",{"title":50,"path":310,"stem":311},"\u002Fzh\u002Fdocs\u002Fcore\u002Finterest-calculator\u002Fbasic-usage","zh\u002F01.docs\u002F02.core\u002F08.interest-calculator\u002F02.basic-usage",{"title":313,"path":314,"stem":315,"children":316,"page":34},"Text Unicode Converter","\u002Fzh\u002Fdocs\u002Fcore\u002Ftext-unicode-converter","zh\u002F01.docs\u002F02.core\u002F09.text-unicode-converter",[317,320,323,326,329,332,335,338],{"title":102,"path":318,"stem":319},"\u002Fzh\u002Fdocs\u002Fcore\u002Ftext-unicode-converter\u002Fintroduction","zh\u002F01.docs\u002F02.core\u002F09.text-unicode-converter\u002F0.introduction",{"title":50,"path":321,"stem":322},"\u002Fzh\u002Fdocs\u002Fcore\u002Ftext-unicode-converter\u002Fbasic-usage","zh\u002F01.docs\u002F02.core\u002F09.text-unicode-converter\u002F02.basic-usage",{"title":54,"path":324,"stem":325},"\u002Fzh\u002Fdocs\u002Fcore\u002Ftext-unicode-converter\u002Fadvanced-features","zh\u002F01.docs\u002F02.core\u002F09.text-unicode-converter\u002F03.advanced-features",{"title":58,"path":327,"stem":328},"\u002Fzh\u002Fdocs\u002Fcore\u002Ftext-unicode-converter\u002Fsecurity-considerations","zh\u002F01.docs\u002F02.core\u002F09.text-unicode-converter\u002F04.security-considerations",{"title":155,"path":330,"stem":331},"\u002Fzh\u002Fdocs\u002Fcore\u002Ftext-unicode-converter\u002Fapi-reference","zh\u002F01.docs\u002F02.core\u002F09.text-unicode-converter\u002F05.api-reference",{"title":126,"path":333,"stem":334},"\u002Fzh\u002Fdocs\u002Fcore\u002Ftext-unicode-converter\u002Fexamples","zh\u002F01.docs\u002F02.core\u002F09.text-unicode-converter\u002F06.examples",{"title":70,"path":336,"stem":337},"\u002Fzh\u002Fdocs\u002Fcore\u002Ftext-unicode-converter\u002Ffaq","zh\u002F01.docs\u002F02.core\u002F09.text-unicode-converter\u002F07.faq",{"title":74,"path":339,"stem":340},"\u002Fzh\u002Fdocs\u002Fcore\u002Ftext-unicode-converter\u002Frelated-tools","zh\u002F01.docs\u002F02.core\u002F09.text-unicode-converter\u002F08.related-tools",{"title":342,"path":343,"stem":344,"children":345,"page":34},"Todo List","\u002Fzh\u002Fdocs\u002Fcore\u002Ftodo-list","zh\u002F01.docs\u002F02.core\u002F09.todo-list",[346,350,353,356,359,362,365,368],{"title":347,"path":348,"stem":349},"待办事项清单","\u002Fzh\u002Fdocs\u002Fcore\u002Ftodo-list\u002Fintroduction","zh\u002F01.docs\u002F02.core\u002F09.todo-list\u002F0.introduction",{"title":50,"path":351,"stem":352},"\u002Fzh\u002Fdocs\u002Fcore\u002Ftodo-list\u002Fbasic-usage","zh\u002F01.docs\u002F02.core\u002F09.todo-list\u002F02.basic-usage",{"title":54,"path":354,"stem":355},"\u002Fzh\u002Fdocs\u002Fcore\u002Ftodo-list\u002Fadvanced-features","zh\u002F01.docs\u002F02.core\u002F09.todo-list\u002F03.advanced-features",{"title":288,"path":357,"stem":358},"\u002Fzh\u002Fdocs\u002Fcore\u002Ftodo-list\u002Fsecurity-considerations","zh\u002F01.docs\u002F02.core\u002F09.todo-list\u002F04.security-considerations",{"title":62,"path":360,"stem":361},"\u002Fzh\u002Fdocs\u002Fcore\u002Ftodo-list\u002Fapi-reference","zh\u002F01.docs\u002F02.core\u002F09.todo-list\u002F05.api-reference",{"title":66,"path":363,"stem":364},"\u002Fzh\u002Fdocs\u002Fcore\u002Ftodo-list\u002Fexamples","zh\u002F01.docs\u002F02.core\u002F09.todo-list\u002F06.examples",{"title":70,"path":366,"stem":367},"\u002Fzh\u002Fdocs\u002Fcore\u002Ftodo-list\u002Ffaq","zh\u002F01.docs\u002F02.core\u002F09.todo-list\u002F07.faq",{"title":74,"path":369,"stem":370},"\u002Fzh\u002Fdocs\u002Fcore\u002Ftodo-list\u002Frelated-tools","zh\u002F01.docs\u002F02.core\u002F09.todo-list\u002F08.related-tools",{"title":372,"path":373,"stem":374,"children":375,"page":34},"Text To Ascii Binary","\u002Fzh\u002Fdocs\u002Fcore\u002Ftext-to-ascii-binary","zh\u002F01.docs\u002F02.core\u002F10.text-to-ascii-binary",[376,379,382,385,389],{"title":46,"path":377,"stem":378},"\u002Fzh\u002Fdocs\u002Fcore\u002Ftext-to-ascii-binary\u002Fintroduction","zh\u002F01.docs\u002F02.core\u002F10.text-to-ascii-binary\u002F01.introduction",{"title":50,"path":380,"stem":381},"\u002Fzh\u002Fdocs\u002Fcore\u002Ftext-to-ascii-binary\u002Fbasic-usage","zh\u002F01.docs\u002F02.core\u002F10.text-to-ascii-binary\u002F02.basic-usage",{"title":54,"path":383,"stem":384},"\u002Fzh\u002Fdocs\u002Fcore\u002Ftext-to-ascii-binary\u002Fadvanced-features","zh\u002F01.docs\u002F02.core\u002F10.text-to-ascii-binary\u002F03.advanced-features",{"title":386,"path":387,"stem":388},"故障排除","\u002Fzh\u002Fdocs\u002Fcore\u002Ftext-to-ascii-binary\u002Ftroubleshooting","zh\u002F01.docs\u002F02.core\u002F10.text-to-ascii-binary\u002F04.troubleshooting",{"title":155,"path":390,"stem":391},"\u002Fzh\u002Fdocs\u002Fcore\u002Ftext-to-ascii-binary\u002Fapi-reference","zh\u002F01.docs\u002F02.core\u002F10.text-to-ascii-binary\u002F05.api-reference",{"title":393,"path":394,"stem":395,"children":396,"page":34},"Yaml To Json","\u002Fzh\u002Fdocs\u002Fcore\u002Fyaml-to-json","zh\u002F01.docs\u002F02.core\u002F11.yaml-to-json",[397,400,404,407,410,413,416,419],{"title":102,"path":398,"stem":399},"\u002Fzh\u002Fdocs\u002Fcore\u002Fyaml-to-json\u002Fintroduction","zh\u002F01.docs\u002F02.core\u002F11.yaml-to-json\u002F0.introduction",{"title":401,"path":402,"stem":403},"基本用法","\u002Fzh\u002Fdocs\u002Fcore\u002Fyaml-to-json\u002Fbasic-usage","zh\u002F01.docs\u002F02.core\u002F11.yaml-to-json\u002F02.basic-usage",{"title":54,"path":405,"stem":406},"\u002Fzh\u002Fdocs\u002Fcore\u002Fyaml-to-json\u002Fadvanced-features","zh\u002F01.docs\u002F02.core\u002F11.yaml-to-json\u002F03.advanced-features",{"title":58,"path":408,"stem":409},"\u002Fzh\u002Fdocs\u002Fcore\u002Fyaml-to-json\u002Fsecurity-considerations","zh\u002F01.docs\u002F02.core\u002F11.yaml-to-json\u002F04.security-considerations",{"title":155,"path":411,"stem":412},"\u002Fzh\u002Fdocs\u002Fcore\u002Fyaml-to-json\u002Fapi-reference","zh\u002F01.docs\u002F02.core\u002F11.yaml-to-json\u002F05.api-reference",{"title":126,"path":414,"stem":415},"\u002Fzh\u002Fdocs\u002Fcore\u002Fyaml-to-json\u002Fexamples","zh\u002F01.docs\u002F02.core\u002F11.yaml-to-json\u002F06.examples",{"title":70,"path":417,"stem":418},"\u002Fzh\u002Fdocs\u002Fcore\u002Fyaml-to-json\u002Ffaq","zh\u002F01.docs\u002F02.core\u002F11.yaml-to-json\u002F07.faq",{"title":74,"path":420,"stem":421},"\u002Fzh\u002Fdocs\u002Fcore\u002Fyaml-to-json\u002Frelated-tools","zh\u002F01.docs\u002F02.core\u002F11.yaml-to-json\u002F08.related-tools",{"title":423,"path":424,"stem":425,"children":426,"page":34},"Json To Yaml","\u002Fzh\u002Fdocs\u002Fcore\u002Fjson-to-yaml","zh\u002F01.docs\u002F02.core\u002F12.json-to-yaml",[427,430],{"title":102,"path":428,"stem":429},"\u002Fzh\u002Fdocs\u002Fcore\u002Fjson-to-yaml\u002Fintroduction","zh\u002F01.docs\u002F02.core\u002F12.json-to-yaml\u002F0.introduction",{"title":401,"path":431,"stem":432},"\u002Fzh\u002Fdocs\u002Fcore\u002Fjson-to-yaml\u002Fbasic-usage","zh\u002F01.docs\u002F02.core\u002F12.json-to-yaml\u002F02.basic-usage",{"title":434,"path":435,"stem":436,"children":437,"page":34},"Json To Toml","\u002Fzh\u002Fdocs\u002Fcore\u002Fjson-to-toml","zh\u002F01.docs\u002F02.core\u002F13.json-to-toml",[438],{"title":102,"path":439,"stem":440},"\u002Fzh\u002Fdocs\u002Fcore\u002Fjson-to-toml\u002Fintroduction","zh\u002F01.docs\u002F02.core\u002F13.json-to-toml\u002F0.introduction",{"title":442,"path":443,"stem":444,"children":445,"page":34},"Keycode Info","\u002Fzh\u002Fdocs\u002Fcore\u002Fkeycode-info","zh\u002F01.docs\u002F02.core\u002F13.keycode-info",[446],{"title":447,"path":448,"stem":449},"键码信息工具","\u002Fzh\u002Fdocs\u002Fcore\u002Fkeycode-info\u002Fintroduction","zh\u002F01.docs\u002F02.core\u002F13.keycode-info\u002F0.introduction",{"title":451,"path":452,"stem":453,"children":454,"page":34},"Toml To Json","\u002Fzh\u002Fdocs\u002Fcore\u002Ftoml-to-json","zh\u002F01.docs\u002F02.core\u002F14.toml-to-json",[455],{"title":102,"path":456,"stem":457},"\u002Fzh\u002Fdocs\u002Fcore\u002Ftoml-to-json\u002Fintroduction","zh\u002F01.docs\u002F02.core\u002F14.toml-to-json\u002F0.introduction",{"title":459,"path":460,"stem":461,"children":462,"page":34},"Toml To Yaml","\u002Fzh\u002Fdocs\u002Fcore\u002Ftoml-to-yaml","zh\u002F01.docs\u002F02.core\u002F15.toml-to-yaml",[463],{"title":102,"path":464,"stem":465},"\u002Fzh\u002Fdocs\u002Fcore\u002Ftoml-to-yaml\u002Fintroduction","zh\u002F01.docs\u002F02.core\u002F15.toml-to-yaml\u002F0.introduction",{"title":467,"path":468,"stem":469,"children":470,"page":34},"Xml To Json","\u002Fzh\u002Fdocs\u002Fcore\u002Fxml-to-json","zh\u002F01.docs\u002F02.core\u002F16.xml-to-json",[471],{"title":102,"path":472,"stem":473},"\u002Fzh\u002Fdocs\u002Fcore\u002Fxml-to-json\u002Fintroduction","zh\u002F01.docs\u002F02.core\u002F16.xml-to-json\u002F0.introduction",{"title":475,"path":476,"stem":477,"children":478,"page":34},"Json To Xml","\u002Fzh\u002Fdocs\u002Fcore\u002Fjson-to-xml","zh\u002F01.docs\u002F02.core\u002F17.json-to-xml",[479,482],{"title":102,"path":480,"stem":481},"\u002Fzh\u002Fdocs\u002Fcore\u002Fjson-to-xml\u002Fintroduction","zh\u002F01.docs\u002F02.core\u002F17.json-to-xml\u002F0.introduction",{"title":50,"path":483,"stem":484},"\u002Fzh\u002Fdocs\u002Fcore\u002Fjson-to-xml\u002Fbasic-usage","zh\u002F01.docs\u002F02.core\u002F17.json-to-xml\u002F02.basic-usage",{"title":486,"path":487,"stem":488,"children":489,"page":34},"Url Encoder","\u002Fzh\u002Fdocs\u002Fcore\u002Furl-encoder","zh\u002F01.docs\u002F02.core\u002F18.url-encoder",[490,494],{"title":491,"path":492,"stem":493},"URL编码\u002F解码工具","\u002Fzh\u002Fdocs\u002Fcore\u002Furl-encoder\u002Fintroduction","zh\u002F01.docs\u002F02.core\u002F18.url-encoder\u002F0.introduction",{"title":495,"path":496,"stem":497},"实用示例","\u002Fzh\u002Fdocs\u002Fcore\u002Furl-encoder\u002Fpractical-examples","zh\u002F01.docs\u002F02.core\u002F18.url-encoder\u002F09.practical-examples",{"title":499,"path":500,"stem":501,"children":502,"page":34},"Text Replacer","\u002Fzh\u002Fdocs\u002Fcore\u002Ftext-replacer","zh\u002F01.docs\u002F02.core\u002F19.text-replacer",[503,507],{"title":504,"path":505,"stem":506},"文本替换工具 - 介绍","\u002Fzh\u002Fdocs\u002Fcore\u002Ftext-replacer\u002Fintroduction","zh\u002F01.docs\u002F02.core\u002F19.text-replacer\u002F01.introduction",{"title":508,"path":509,"stem":510},"文本替换工具 - 基本使用","\u002Fzh\u002Fdocs\u002Fcore\u002Ftext-replacer\u002Fbasic-usage","zh\u002F01.docs\u002F02.core\u002F19.text-replacer\u002F02.basic-usage",{"title":512,"path":513,"stem":514,"children":515,"page":34},"Case Converter","\u002Fzh\u002Fdocs\u002Fcore\u002Fcase-converter","zh\u002F01.docs\u002F02.core\u002F20.case-converter",[516,519,522,525,528,531,534,537],{"title":102,"path":517,"stem":518},"\u002Fzh\u002Fdocs\u002Fcore\u002Fcase-converter\u002Fintroduction","zh\u002F01.docs\u002F02.core\u002F20.case-converter\u002F0.introduction",{"title":50,"path":520,"stem":521},"\u002Fzh\u002Fdocs\u002Fcore\u002Fcase-converter\u002Fbasic-usage","zh\u002F01.docs\u002F02.core\u002F20.case-converter\u002F02.basic-usage",{"title":54,"path":523,"stem":524},"\u002Fzh\u002Fdocs\u002Fcore\u002Fcase-converter\u002Fadvanced-features","zh\u002F01.docs\u002F02.core\u002F20.case-converter\u002F03.advanced-features",{"title":58,"path":526,"stem":527},"\u002Fzh\u002Fdocs\u002Fcore\u002Fcase-converter\u002Fsecurity-considerations","zh\u002F01.docs\u002F02.core\u002F20.case-converter\u002F04.security-considerations",{"title":155,"path":529,"stem":530},"\u002Fzh\u002Fdocs\u002Fcore\u002Fcase-converter\u002Fapi-reference","zh\u002F01.docs\u002F02.core\u002F20.case-converter\u002F05.api-reference",{"title":126,"path":532,"stem":533},"\u002Fzh\u002Fdocs\u002Fcore\u002Fcase-converter\u002Fexamples","zh\u002F01.docs\u002F02.core\u002F20.case-converter\u002F06.examples",{"title":70,"path":535,"stem":536},"\u002Fzh\u002Fdocs\u002Fcore\u002Fcase-converter\u002Ffaq","zh\u002F01.docs\u002F02.core\u002F20.case-converter\u002F07.faq",{"title":74,"path":538,"stem":539},"\u002Fzh\u002Fdocs\u002Fcore\u002Fcase-converter\u002Frelated-tools","zh\u002F01.docs\u002F02.core\u002F20.case-converter\u002F08.related-tools",{"title":541,"path":542,"stem":543,"children":544,"page":34},"Temperature Converter","\u002Fzh\u002Fdocs\u002Fcore\u002Ftemperature-converter","zh\u002F01.docs\u002F02.core\u002F20.temperature-converter",[545,548,551,554],{"title":102,"path":546,"stem":547},"\u002Fzh\u002Fdocs\u002Fcore\u002Ftemperature-converter\u002Fintroduction","zh\u002F01.docs\u002F02.core\u002F20.temperature-converter\u002F0.introduction",{"title":50,"path":549,"stem":550},"\u002Fzh\u002Fdocs\u002Fcore\u002Ftemperature-converter\u002Fbasic-usage","zh\u002F01.docs\u002F02.core\u002F20.temperature-converter\u002F02.basic-usage",{"title":54,"path":552,"stem":553},"\u002Fzh\u002Fdocs\u002Fcore\u002Ftemperature-converter\u002Fadvanced-features","zh\u002F01.docs\u002F02.core\u002F20.temperature-converter\u002F03.advanced-features",{"title":126,"path":555,"stem":556},"\u002Fzh\u002Fdocs\u002Fcore\u002Ftemperature-converter\u002Fexamples","zh\u002F01.docs\u002F02.core\u002F20.temperature-converter\u002F04.examples",{"title":558,"path":559,"stem":560,"children":561,"page":34},"Json Diff","\u002Fzh\u002Fdocs\u002Fcore\u002Fjson-diff","zh\u002F01.docs\u002F02.core\u002F22.json-diff",[562,565,568,571,574],{"title":102,"path":563,"stem":564},"\u002Fzh\u002Fdocs\u002Fcore\u002Fjson-diff\u002Fintroduction","zh\u002F01.docs\u002F02.core\u002F22.json-diff\u002F0.introduction",{"title":50,"path":566,"stem":567},"\u002Fzh\u002Fdocs\u002Fcore\u002Fjson-diff\u002Fbasic-usage","zh\u002F01.docs\u002F02.core\u002F22.json-diff\u002F02.basic-usage",{"title":54,"path":569,"stem":570},"\u002Fzh\u002Fdocs\u002Fcore\u002Fjson-diff\u002Fadvanced-features","zh\u002F01.docs\u002F02.core\u002F22.json-diff\u002F03.advanced-features",{"title":126,"path":572,"stem":573},"\u002Fzh\u002Fdocs\u002Fcore\u002Fjson-diff\u002Fexamples","zh\u002F01.docs\u002F02.core\u002F22.json-diff\u002F06.examples",{"title":70,"path":575,"stem":576},"\u002Fzh\u002Fdocs\u002Fcore\u002Fjson-diff\u002Ffaq","zh\u002F01.docs\u002F02.core\u002F22.json-diff\u002F07.faq",{"title":578,"path":579,"stem":580,"children":581,"page":34},"Black Wallpaper","\u002Fzh\u002Fdocs\u002Fcore\u002Fblack-wallpaper","zh\u002F01.docs\u002F02.core\u002F23.black-wallpaper",[582,585,588,591,594],{"title":102,"path":583,"stem":584},"\u002Fzh\u002Fdocs\u002Fcore\u002Fblack-wallpaper\u002Fintroduction","zh\u002F01.docs\u002F02.core\u002F23.black-wallpaper\u002F0.introduction",{"title":50,"path":586,"stem":587},"\u002Fzh\u002Fdocs\u002Fcore\u002Fblack-wallpaper\u002Fbasic-usage","zh\u002F01.docs\u002F02.core\u002F23.black-wallpaper\u002F02.basic-usage",{"title":54,"path":589,"stem":590},"\u002Fzh\u002Fdocs\u002Fcore\u002Fblack-wallpaper\u002Fadvanced-features","zh\u002F01.docs\u002F02.core\u002F23.black-wallpaper\u002F03.advanced-features",{"title":126,"path":592,"stem":593},"\u002Fzh\u002Fdocs\u002Fcore\u002Fblack-wallpaper\u002Fexamples","zh\u002F01.docs\u002F02.core\u002F23.black-wallpaper\u002F04.examples",{"title":70,"path":595,"stem":596},"\u002Fzh\u002Fdocs\u002Fcore\u002Fblack-wallpaper\u002Ffaq","zh\u002F01.docs\u002F02.core\u002F23.black-wallpaper\u002F05.faq",{"title":598,"path":599,"stem":600,"children":601,"page":34},"Image To Pixel","\u002Fzh\u002Fdocs\u002Fcore\u002Fimage-to-pixel","zh\u002F01.docs\u002F02.core\u002F23.image-to-pixel",[602,605,608,611,614],{"title":102,"path":603,"stem":604},"\u002Fzh\u002Fdocs\u002Fcore\u002Fimage-to-pixel\u002Fintroduction","zh\u002F01.docs\u002F02.core\u002F23.image-to-pixel\u002F0.introduction",{"title":50,"path":606,"stem":607},"\u002Fzh\u002Fdocs\u002Fcore\u002Fimage-to-pixel\u002Fbasic-usage","zh\u002F01.docs\u002F02.core\u002F23.image-to-pixel\u002F02.basic-usage",{"title":54,"path":609,"stem":610},"\u002Fzh\u002Fdocs\u002Fcore\u002Fimage-to-pixel\u002Fadvanced-features","zh\u002F01.docs\u002F02.core\u002F23.image-to-pixel\u002F03.advanced-features",{"title":126,"path":612,"stem":613},"\u002Fzh\u002Fdocs\u002Fcore\u002Fimage-to-pixel\u002Fexamples","zh\u002F01.docs\u002F02.core\u002F23.image-to-pixel\u002F04.examples",{"title":70,"path":615,"stem":616},"\u002Fzh\u002Fdocs\u002Fcore\u002Fimage-to-pixel\u002Ffaq","zh\u002F01.docs\u002F02.core\u002F23.image-to-pixel\u002F05.faq",{"title":618,"path":619,"stem":620,"children":621,"page":34},"Text Diff","\u002Fzh\u002Fdocs\u002Fcore\u002Ftext-diff","zh\u002F01.docs\u002F02.core\u002F23.text-diff",[622,626,630,634,638],{"title":623,"path":624,"stem":625},"文本差异对比工具 - 介绍","\u002Fzh\u002Fdocs\u002Fcore\u002Ftext-diff\u002Fintroduction","zh\u002F01.docs\u002F02.core\u002F23.text-diff\u002F0.introduction",{"title":627,"path":628,"stem":629},"基本使用 - 文本差异对比工具","\u002Fzh\u002Fdocs\u002Fcore\u002Ftext-diff\u002Fbasic-usage","zh\u002F01.docs\u002F02.core\u002F23.text-diff\u002F02.basic-usage",{"title":631,"path":632,"stem":633},"高级功能 - 文本差异对比工具","\u002Fzh\u002Fdocs\u002Fcore\u002Ftext-diff\u002Fadvanced-features","zh\u002F01.docs\u002F02.core\u002F23.text-diff\u002F03.advanced-features",{"title":635,"path":636,"stem":637},"示例 - 文本差异对比工具","\u002Fzh\u002Fdocs\u002Fcore\u002Ftext-diff\u002Fexamples","zh\u002F01.docs\u002F02.core\u002F23.text-diff\u002F04.examples",{"title":639,"path":640,"stem":641},"常见问题 - 文本差异对比工具","\u002Fzh\u002Fdocs\u002Fcore\u002Ftext-diff\u002Ffaq","zh\u002F01.docs\u002F02.core\u002F23.text-diff\u002F05.faq",{"title":643,"path":644,"stem":645,"children":646,"page":34},"M3u8 Player","\u002Fzh\u002Fdocs\u002Fcore\u002Fm3u8-player","zh\u002F01.docs\u002F02.core\u002F26.m3u8-player",[647,650,653,656,659,662],{"title":102,"path":648,"stem":649},"\u002Fzh\u002Fdocs\u002Fcore\u002Fm3u8-player\u002Fintroduction","zh\u002F01.docs\u002F02.core\u002F26.m3u8-player\u002F0.introduction",{"title":50,"path":651,"stem":652},"\u002Fzh\u002Fdocs\u002Fcore\u002Fm3u8-player\u002Fbasic-usage","zh\u002F01.docs\u002F02.core\u002F26.m3u8-player\u002F02.basic-usage",{"title":54,"path":654,"stem":655},"\u002Fzh\u002Fdocs\u002Fcore\u002Fm3u8-player\u002Fadvanced-features","zh\u002F01.docs\u002F02.core\u002F26.m3u8-player\u002F03.advanced-features",{"title":62,"path":657,"stem":658},"\u002Fzh\u002Fdocs\u002Fcore\u002Fm3u8-player\u002Fapi-reference","zh\u002F01.docs\u002F02.core\u002F26.m3u8-player\u002F05.api-reference",{"title":126,"path":660,"stem":661},"\u002Fzh\u002Fdocs\u002Fcore\u002Fm3u8-player\u002Fexamples","zh\u002F01.docs\u002F02.core\u002F26.m3u8-player\u002F06.examples",{"title":663,"path":664,"stem":665},"常见问题解答","\u002Fzh\u002Fdocs\u002Fcore\u002Fm3u8-player\u002Ffaq","zh\u002F01.docs\u002F02.core\u002F26.m3u8-player\u002F07.faq",{"title":667,"path":668,"stem":669,"children":670,"page":34},"Markdown To Pdf","\u002Fzh\u002Fdocs\u002Fcore\u002Fmarkdown-to-pdf","zh\u002F01.docs\u002F02.core\u002F27.markdown-to-pdf",[671,675,678,681,685,688,691],{"title":672,"path":673,"stem":674},"Markdown 转 PDF","\u002Fzh\u002Fdocs\u002Fcore\u002Fmarkdown-to-pdf\u002Fintroduction","zh\u002F01.docs\u002F02.core\u002F27.markdown-to-pdf\u002F0.introduction",{"title":401,"path":676,"stem":677},"\u002Fzh\u002Fdocs\u002Fcore\u002Fmarkdown-to-pdf\u002Fbasic-usage","zh\u002F01.docs\u002F02.core\u002F27.markdown-to-pdf\u002F02.basic-usage",{"title":54,"path":679,"stem":680},"\u002Fzh\u002Fdocs\u002Fcore\u002Fmarkdown-to-pdf\u002Fadvanced-features","zh\u002F01.docs\u002F02.core\u002F27.markdown-to-pdf\u002F03.advanced-features",{"title":682,"path":683,"stem":684},"安全说明","\u002Fzh\u002Fdocs\u002Fcore\u002Fmarkdown-to-pdf\u002Fsecurity-considerations","zh\u002F01.docs\u002F02.core\u002F27.markdown-to-pdf\u002F04.security-considerations",{"title":126,"path":686,"stem":687},"\u002Fzh\u002Fdocs\u002Fcore\u002Fmarkdown-to-pdf\u002Fexamples","zh\u002F01.docs\u002F02.core\u002F27.markdown-to-pdf\u002F06.examples",{"title":70,"path":689,"stem":690},"\u002Fzh\u002Fdocs\u002Fcore\u002Fmarkdown-to-pdf\u002Ffaq","zh\u002F01.docs\u002F02.core\u002F27.markdown-to-pdf\u002F07.faq",{"title":74,"path":692,"stem":693},"\u002Fzh\u002Fdocs\u002Fcore\u002Fmarkdown-to-pdf\u002Frelated-tools","zh\u002F01.docs\u002F02.core\u002F27.markdown-to-pdf\u002F08.related-tools",{"title":695,"path":696,"stem":697,"children":698,"page":34},"TCP 端口扫描","\u002Fzh\u002Fdocs\u002Fcore\u002Fport-scanner","zh\u002F01.docs\u002F02.core\u002F28.port-scanner",[699],{"title":695,"path":700,"stem":701},"\u002Fzh\u002Fdocs\u002Fcore\u002Fport-scanner\u002Fintroduction","zh\u002F01.docs\u002F02.core\u002F28.port-scanner\u002F01.introduction",{"title":703,"path":704,"stem":705,"children":706,"page":34},"DNS 解析","\u002Fzh\u002Fdocs\u002Fcore\u002Fdns-lookup","zh\u002F01.docs\u002F02.core\u002F29.dns-lookup",[707],{"title":703,"path":708,"stem":709},"\u002Fzh\u002Fdocs\u002Fcore\u002Fdns-lookup\u002Fintroduction","zh\u002F01.docs\u002F02.core\u002F29.dns-lookup\u002F01.introduction",{"title":711,"path":712,"stem":713,"children":714,"page":34},"Screen Dead Pixel Detector","\u002Fzh\u002Fdocs\u002Fcore\u002Fscreen-dead-pixel-detector","zh\u002F01.docs\u002F02.core\u002F30.screen-dead-pixel-detector",[715,719,722,725,729,732,735],{"title":716,"path":717,"stem":718},"屏幕坏点检测器","\u002Fzh\u002Fdocs\u002Fcore\u002Fscreen-dead-pixel-detector\u002Fintroduction","zh\u002F01.docs\u002F02.core\u002F30.screen-dead-pixel-detector\u002F0.introduction",{"title":401,"path":720,"stem":721},"\u002Fzh\u002Fdocs\u002Fcore\u002Fscreen-dead-pixel-detector\u002Fbasic-usage","zh\u002F01.docs\u002F02.core\u002F30.screen-dead-pixel-detector\u002F02.basic-usage",{"title":54,"path":723,"stem":724},"\u002Fzh\u002Fdocs\u002Fcore\u002Fscreen-dead-pixel-detector\u002Fadvanced-features","zh\u002F01.docs\u002F02.core\u002F30.screen-dead-pixel-detector\u002F03.advanced-features",{"title":726,"path":727,"stem":728},"安全与隐私","\u002Fzh\u002Fdocs\u002Fcore\u002Fscreen-dead-pixel-detector\u002Fsecurity-considerations","zh\u002F01.docs\u002F02.core\u002F30.screen-dead-pixel-detector\u002F04.security-considerations",{"title":66,"path":730,"stem":731},"\u002Fzh\u002Fdocs\u002Fcore\u002Fscreen-dead-pixel-detector\u002Fexamples","zh\u002F01.docs\u002F02.core\u002F30.screen-dead-pixel-detector\u002F06.examples",{"title":70,"path":733,"stem":734},"\u002Fzh\u002Fdocs\u002Fcore\u002Fscreen-dead-pixel-detector\u002Ffaq","zh\u002F01.docs\u002F02.core\u002F30.screen-dead-pixel-detector\u002F07.faq",{"title":74,"path":736,"stem":737},"\u002Fzh\u002Fdocs\u002Fcore\u002Fscreen-dead-pixel-detector\u002Frelated-tools","zh\u002F01.docs\u002F02.core\u002F30.screen-dead-pixel-detector\u002F08.related-tools",{"title":739,"path":740,"stem":741,"children":742,"page":34},"Survey Tool","\u002Fzh\u002Fdocs\u002Fcore\u002Fsurvey-tool","zh\u002F01.docs\u002F02.core\u002F31.survey-tool",[743,747,750,753,756,759,762],{"title":744,"path":745,"stem":746},"问卷工具","\u002Fzh\u002Fdocs\u002Fcore\u002Fsurvey-tool\u002Fintroduction","zh\u002F01.docs\u002F02.core\u002F31.survey-tool\u002F0.introduction",{"title":401,"path":748,"stem":749},"\u002Fzh\u002Fdocs\u002Fcore\u002Fsurvey-tool\u002Fbasic-usage","zh\u002F01.docs\u002F02.core\u002F31.survey-tool\u002F02.basic-usage",{"title":54,"path":751,"stem":752},"\u002Fzh\u002Fdocs\u002Fcore\u002Fsurvey-tool\u002Fadvanced-features","zh\u002F01.docs\u002F02.core\u002F31.survey-tool\u002F03.advanced-features",{"title":682,"path":754,"stem":755},"\u002Fzh\u002Fdocs\u002Fcore\u002Fsurvey-tool\u002Fsecurity-considerations","zh\u002F01.docs\u002F02.core\u002F31.survey-tool\u002F04.security-considerations",{"title":66,"path":757,"stem":758},"\u002Fzh\u002Fdocs\u002Fcore\u002Fsurvey-tool\u002Fexamples","zh\u002F01.docs\u002F02.core\u002F31.survey-tool\u002F06.examples",{"title":70,"path":760,"stem":761},"\u002Fzh\u002Fdocs\u002Fcore\u002Fsurvey-tool\u002Ffaq","zh\u002F01.docs\u002F02.core\u002F31.survey-tool\u002F07.faq",{"title":74,"path":763,"stem":764},"\u002Fzh\u002Fdocs\u002Fcore\u002Fsurvey-tool\u002Frelated-tools","zh\u002F01.docs\u002F02.core\u002F31.survey-tool\u002F08.related-tools",{"title":766,"path":767,"stem":768,"children":769,"page":34},"Vue Office","\u002Fzh\u002Fdocs\u002Fcore\u002Fvue-office","zh\u002F01.docs\u002F02.core\u002F32.vue-office",[770,774,777,780,783,786,789],{"title":771,"path":772,"stem":773},"Vue Office 文档预览","\u002Fzh\u002Fdocs\u002Fcore\u002Fvue-office\u002Fintroduction","zh\u002F01.docs\u002F02.core\u002F32.vue-office\u002F0.introduction",{"title":401,"path":775,"stem":776},"\u002Fzh\u002Fdocs\u002Fcore\u002Fvue-office\u002Fbasic-usage","zh\u002F01.docs\u002F02.core\u002F32.vue-office\u002F02.basic-usage",{"title":54,"path":778,"stem":779},"\u002Fzh\u002Fdocs\u002Fcore\u002Fvue-office\u002Fadvanced-features","zh\u002F01.docs\u002F02.core\u002F32.vue-office\u002F03.advanced-features",{"title":682,"path":781,"stem":782},"\u002Fzh\u002Fdocs\u002Fcore\u002Fvue-office\u002Fsecurity-considerations","zh\u002F01.docs\u002F02.core\u002F32.vue-office\u002F04.security-considerations",{"title":66,"path":784,"stem":785},"\u002Fzh\u002Fdocs\u002Fcore\u002Fvue-office\u002Fexamples","zh\u002F01.docs\u002F02.core\u002F32.vue-office\u002F06.examples",{"title":70,"path":787,"stem":788},"\u002Fzh\u002Fdocs\u002Fcore\u002Fvue-office\u002Ffaq","zh\u002F01.docs\u002F02.core\u002F32.vue-office\u002F07.faq",{"title":74,"path":790,"stem":791},"\u002Fzh\u002Fdocs\u002Fcore\u002Fvue-office\u002Frelated-tools","zh\u002F01.docs\u002F02.core\u002F32.vue-office\u002F08.related-tools",{"title":793,"path":794,"stem":795,"children":796,"page":34},"Event Calendar","\u002Fzh\u002Fdocs\u002Fcore\u002Fevent-calendar","zh\u002F01.docs\u002F02.core\u002F33.event-calendar",[797,801,804,807,810,813,816],{"title":798,"path":799,"stem":800},"事件日历","\u002Fzh\u002Fdocs\u002Fcore\u002Fevent-calendar\u002Fintroduction","zh\u002F01.docs\u002F02.core\u002F33.event-calendar\u002F0.introduction",{"title":401,"path":802,"stem":803},"\u002Fzh\u002Fdocs\u002Fcore\u002Fevent-calendar\u002Fbasic-usage","zh\u002F01.docs\u002F02.core\u002F33.event-calendar\u002F02.basic-usage",{"title":54,"path":805,"stem":806},"\u002Fzh\u002Fdocs\u002Fcore\u002Fevent-calendar\u002Fadvanced-features","zh\u002F01.docs\u002F02.core\u002F33.event-calendar\u002F03.advanced-features",{"title":682,"path":808,"stem":809},"\u002Fzh\u002Fdocs\u002Fcore\u002Fevent-calendar\u002Fsecurity-considerations","zh\u002F01.docs\u002F02.core\u002F33.event-calendar\u002F04.security-considerations",{"title":66,"path":811,"stem":812},"\u002Fzh\u002Fdocs\u002Fcore\u002Fevent-calendar\u002Fexamples","zh\u002F01.docs\u002F02.core\u002F33.event-calendar\u002F06.examples",{"title":70,"path":814,"stem":815},"\u002Fzh\u002Fdocs\u002Fcore\u002Fevent-calendar\u002Ffaq","zh\u002F01.docs\u002F02.core\u002F33.event-calendar\u002F07.faq",{"title":74,"path":817,"stem":818},"\u002Fzh\u002Fdocs\u002Fcore\u002Fevent-calendar\u002Frelated-tools","zh\u002F01.docs\u002F02.core\u002F33.event-calendar\u002F08.related-tools",{"title":820,"path":821,"stem":822,"children":823,"page":34},"Base64","\u002Fzh\u002Fdocs\u002Fcore\u002Fbase64","zh\u002F01.docs\u002F02.core\u002Fbase64",[824,827,831,834,837,840,843,846],{"title":102,"path":825,"stem":826},"\u002Fzh\u002Fdocs\u002Fcore\u002Fbase64\u002Fintroduction","zh\u002F01.docs\u002F02.core\u002Fbase64\u002F0.introduction",{"title":828,"path":829,"stem":830},"基本使用方法","\u002Fzh\u002Fdocs\u002Fcore\u002Fbase64\u002Fbasic-usage","zh\u002F01.docs\u002F02.core\u002Fbase64\u002F02.basic-usage",{"title":54,"path":832,"stem":833},"\u002Fzh\u002Fdocs\u002Fcore\u002Fbase64\u002Fadvanced-features","zh\u002F01.docs\u002F02.core\u002Fbase64\u002F03.advanced-features",{"title":58,"path":835,"stem":836},"\u002Fzh\u002Fdocs\u002Fcore\u002Fbase64\u002Fsecurity-considerations","zh\u002F01.docs\u002F02.core\u002Fbase64\u002F04.security-considerations",{"title":155,"path":838,"stem":839},"\u002Fzh\u002Fdocs\u002Fcore\u002Fbase64\u002Fapi-reference","zh\u002F01.docs\u002F02.core\u002Fbase64\u002F05.api-reference",{"title":66,"path":841,"stem":842},"\u002Fzh\u002Fdocs\u002Fcore\u002Fbase64\u002Fexamples","zh\u002F01.docs\u002F02.core\u002Fbase64\u002F06.examples",{"title":70,"path":844,"stem":845},"\u002Fzh\u002Fdocs\u002Fcore\u002Fbase64\u002Ffaq","zh\u002F01.docs\u002F02.core\u002Fbase64\u002F07.faq",{"title":74,"path":847,"stem":848},"\u002Fzh\u002Fdocs\u002Fcore\u002Fbase64\u002Frelated-tools","zh\u002F01.docs\u002F02.core\u002Fbase64\u002F08.related-tools",{"title":850,"path":851,"stem":852,"children":853,"page":34},"Emoji Picker","\u002Fzh\u002Fdocs\u002Fcore\u002Femoji-picker","zh\u002F01.docs\u002F02.core\u002Femoji-picker",[854,858],{"title":855,"path":856,"stem":857},"表情符号选择器 - 介绍","\u002Fzh\u002Fdocs\u002Fcore\u002Femoji-picker\u002Fintroduction","zh\u002F01.docs\u002F02.core\u002Femoji-picker\u002F0.introduction",{"title":50,"path":859,"stem":860},"\u002Fzh\u002Fdocs\u002Fcore\u002Femoji-picker\u002Fbasic-usage","zh\u002F01.docs\u002F02.core\u002Femoji-picker\u002F02.basic-usage",{"title":862,"path":863,"stem":864,"children":865,"page":34},"集成","\u002Fzh\u002Fdocs\u002Fintegrated","zh\u002F01.docs\u002F03.integrated",[866,870,874],{"title":867,"path":868,"stem":869},"主题","\u002Fzh\u002Fdocs\u002Fintegrated\u002Fkbd","zh\u002F01.docs\u002F03.integrated\u002F01.kbd",{"title":871,"path":872,"stem":873},"获取请求ID","\u002Fzh\u002Fdocs\u002Fintegrated\u002Fthemes","zh\u002F01.docs\u002F03.integrated\u002F02.themes",{"title":875,"path":876,"stem":877},"Shell 命令","\u002Fzh\u002Fdocs\u002Fintegrated\u002Fshell","zh\u002F01.docs\u002F03.integrated\u002F03.shell",{"title":879,"path":880,"stem":881,"children":882,"page":34},"配置","\u002Fzh\u002Fdocs\u002Fconfiguration","zh\u002F01.docs\u002F04.configuration",[883,886,889],{"title":867,"path":884,"stem":885},"\u002Fzh\u002Fdocs\u002Fconfiguration\u002Fkbd","zh\u002F01.docs\u002F04.configuration\u002F01.kbd",{"title":871,"path":887,"stem":888},"\u002Fzh\u002Fdocs\u002Fconfiguration\u002Fthemes","zh\u002F01.docs\u002F04.configuration\u002F02.themes",{"title":875,"path":890,"stem":891},"\u002Fzh\u002Fdocs\u002Fconfiguration\u002Fshell","zh\u002F01.docs\u002F04.configuration\u002F03.shell",{"title":893,"path":894,"stem":895,"children":896,"page":34},"账户","\u002Fzh\u002Fdocs\u002Faccount","zh\u002F01.docs\u002F05.account",[897,901,937,941],{"title":898,"path":899,"stem":900},"定价","\u002Fzh\u002Fdocs\u002Faccount\u002Fpricing","zh\u002F01.docs\u002F05.account\u002F01.pricing",{"title":902,"path":903,"stem":904,"children":905,"page":34},"团队","\u002Fzh\u002Fdocs\u002Faccount\u002Fteams","zh\u002F01.docs\u002F05.account\u002F01.teams",[906,909,913,917,921,925,929,933],{"title":11,"path":907,"stem":908},"\u002Fzh\u002Fdocs\u002Faccount\u002Fteams\u002Fsetup","zh\u002F01.docs\u002F05.account\u002F01.teams\u002F01.setup",{"title":910,"path":911,"stem":912},"成员与角色","\u002Fzh\u002Fdocs\u002Faccount\u002Fteams\u002Fmemebers","zh\u002F01.docs\u002F05.account\u002F01.teams\u002F02.memebers",{"title":914,"path":915,"stem":916},"SSO","\u002Fzh\u002Fdocs\u002Faccount\u002Fteams\u002Fsso","zh\u002F01.docs\u002F05.account\u002F01.teams\u002F03.sso",{"title":918,"path":919,"stem":920},"SCIM","\u002Fzh\u002Fdocs\u002Faccount\u002Fteams\u002Fscim","zh\u002F01.docs\u002F05.account\u002F01.teams\u002F04.scim",{"title":922,"path":923,"stem":924},"Admin API","\u002Fzh\u002Fdocs\u002Faccount\u002Fteams\u002Fadmin-api","zh\u002F01.docs\u002F05.account\u002F01.teams\u002F05.admin-api",{"title":926,"path":927,"stem":928},"仪表盘","\u002Fzh\u002Fdocs\u002Faccount\u002Fteams\u002Fdashboard","zh\u002F01.docs\u002F05.account\u002F01.teams\u002F06.dashboard",{"title":930,"path":931,"stem":932},"分析","\u002Fzh\u002Fdocs\u002Faccount\u002Fteams\u002Fanalytics","zh\u002F01.docs\u002F05.account\u002F01.teams\u002F07.analytics",{"title":934,"path":935,"stem":936},"企业设置","\u002Fzh\u002Fdocs\u002Faccount\u002Fteams\u002Fenterprise-settings","zh\u002F01.docs\u002F05.account\u002F01.teams\u002F08.enterprise-settings",{"title":938,"path":939,"stem":940},"账单","\u002Fzh\u002Fdocs\u002Faccount\u002Fbilling","zh\u002F01.docs\u002F05.account\u002F02.billing",{"title":942,"path":943,"stem":944},"更新","\u002Fzh\u002Fdocs\u002Faccount\u002Fupdate-access","zh\u002F01.docs\u002F05.account\u002F03.update-access",{"title":386,"path":946,"stem":947,"children":948,"page":34},"\u002Fzh\u002Fdocs\u002Ftroubleshooting","zh\u002F01.docs\u002F06.troubleshooting",[949,952,955],{"title":70,"path":950,"stem":951},"\u002Fzh\u002Fdocs\u002Ftroubleshooting\u002Fcommon-issues","zh\u002F01.docs\u002F06.troubleshooting\u002F01.common-issues",{"title":871,"path":953,"stem":954},"\u002Fzh\u002Fdocs\u002Ftroubleshooting\u002Frequest-reporting","zh\u002F01.docs\u002F06.troubleshooting\u002F02.request-reporting",{"title":956,"path":957,"stem":958},"故障排除指南","\u002Fzh\u002Fdocs\u002Ftroubleshooting\u002Ftroubleshooting-guide","zh\u002F01.docs\u002F06.troubleshooting\u002F03.troubleshooting-guide",{"id":960,"title":62,"body":961,"description":4401,"extension":4402,"meta":4403,"navigation":6,"path":360,"seo":4404,"sitemap":4405,"stem":361,"__hash__":4406},"content_zh\u002Fzh\u002F01.docs\u002F02.core\u002F09.todo-list\u002F05.api-reference.md",{"type":962,"value":963,"toc":4361},"minimark",[964,968,972,977,1138,1142,1228,1232,1235,1251,1254,1442,1446,1449,1587,1590,1799,1802,1805,2043,2046,2101,2104,2108,2169,2172,2666,2669,2988,2991,2995,3020,3023,3037,3040,3043,3137,3140,3370,3373,3376,3608,3611,3847,3850,3853,4164,4168,4342,4345,4357],[965,966,62],"h1",{"id":967},"api-参考",[969,970,971],"h2",{"id":971},"数据结构",[973,974,976],"h3",{"id":975},"task-对象","Task 对象",[978,979,984],"pre",{"className":980,"code":981,"language":982,"meta":983,"style":983},"language-typescript shiki shiki-themes github-light github-light dark-plus","interface Task {\n  id: string; \u002F\u002F 唯一标识符\n  text: string; \u002F\u002F 任务描述\n  completed: boolean; \u002F\u002F 完成状态\n  dueDate?: string; \u002F\u002F 可选截止日期（ISO 格式）\n  priority: \"low\" | \"medium\" | \"high\"; \u002F\u002F 优先级\n  createdAt: Date; \u002F\u002F 创建时间戳\n  completedAt?: Date; \u002F\u002F 完成时间戳（如已完成）\n}\n","typescript","",[985,986,987,1004,1026,1041,1057,1073,1101,1117,1132],"code",{"__ignoreMap":983},[988,989,992,996,1000],"span",{"class":990,"line":991},"line",1,[988,993,995],{"class":994},"sGiLm","interface",[988,997,999],{"class":998},"s_0E6"," Task",[988,1001,1003],{"class":1002},"svVIm"," {\n",[988,1005,1007,1011,1015,1019,1022],{"class":990,"line":1006},2,[988,1008,1010],{"class":1009},"szM7h","  id",[988,1012,1014],{"class":1013},"sGmsN",":",[988,1016,1018],{"class":1017},"s2-Xe"," string",[988,1020,1021],{"class":1002},"; ",[988,1023,1025],{"class":1024},"sLEZ0","\u002F\u002F 唯一标识符\n",[988,1027,1029,1032,1034,1036,1038],{"class":990,"line":1028},3,[988,1030,1031],{"class":1009},"  text",[988,1033,1014],{"class":1013},[988,1035,1018],{"class":1017},[988,1037,1021],{"class":1002},[988,1039,1040],{"class":1024},"\u002F\u002F 任务描述\n",[988,1042,1044,1047,1049,1052,1054],{"class":990,"line":1043},4,[988,1045,1046],{"class":1009},"  completed",[988,1048,1014],{"class":1013},[988,1050,1051],{"class":1017}," boolean",[988,1053,1021],{"class":1002},[988,1055,1056],{"class":1024},"\u002F\u002F 完成状态\n",[988,1058,1060,1063,1066,1068,1070],{"class":990,"line":1059},5,[988,1061,1062],{"class":1009},"  dueDate",[988,1064,1065],{"class":1013},"?:",[988,1067,1018],{"class":1017},[988,1069,1021],{"class":1002},[988,1071,1072],{"class":1024},"\u002F\u002F 可选截止日期（ISO 格式）\n",[988,1074,1076,1079,1081,1085,1088,1091,1093,1096,1098],{"class":990,"line":1075},6,[988,1077,1078],{"class":1009},"  priority",[988,1080,1014],{"class":1013},[988,1082,1084],{"class":1083},"sjj1j"," \"low\"",[988,1086,1087],{"class":1013}," |",[988,1089,1090],{"class":1083}," \"medium\"",[988,1092,1087],{"class":1013},[988,1094,1095],{"class":1083}," \"high\"",[988,1097,1021],{"class":1002},[988,1099,1100],{"class":1024},"\u002F\u002F 优先级\n",[988,1102,1104,1107,1109,1112,1114],{"class":990,"line":1103},7,[988,1105,1106],{"class":1009},"  createdAt",[988,1108,1014],{"class":1013},[988,1110,1111],{"class":998}," Date",[988,1113,1021],{"class":1002},[988,1115,1116],{"class":1024},"\u002F\u002F 创建时间戳\n",[988,1118,1120,1123,1125,1127,1129],{"class":990,"line":1119},8,[988,1121,1122],{"class":1009},"  completedAt",[988,1124,1065],{"class":1013},[988,1126,1111],{"class":998},[988,1128,1021],{"class":1002},[988,1130,1131],{"class":1024},"\u002F\u002F 完成时间戳（如已完成）\n",[988,1133,1135],{"class":990,"line":1134},9,[988,1136,1137],{"class":1002},"}\n",[973,1139,1141],{"id":1140},"historyrecord-对象","HistoryRecord 对象",[978,1143,1145],{"className":980,"code":1144,"language":982,"meta":983,"style":983},"interface HistoryRecord {\n  id: string; \u002F\u002F 唯一标识符\n  action: \"created\" | \"completed\" | \"deleted\" | \"updated\";\n  description: string; \u002F\u002F 人类可读描述\n  timestamp: Date; \u002F\u002F 操作时间戳\n}\n",[985,1146,1147,1156,1168,1196,1210,1224],{"__ignoreMap":983},[988,1148,1149,1151,1154],{"class":990,"line":991},[988,1150,995],{"class":994},[988,1152,1153],{"class":998}," HistoryRecord",[988,1155,1003],{"class":1002},[988,1157,1158,1160,1162,1164,1166],{"class":990,"line":1006},[988,1159,1010],{"class":1009},[988,1161,1014],{"class":1013},[988,1163,1018],{"class":1017},[988,1165,1021],{"class":1002},[988,1167,1025],{"class":1024},[988,1169,1170,1173,1175,1178,1180,1183,1185,1188,1190,1193],{"class":990,"line":1028},[988,1171,1172],{"class":1009},"  action",[988,1174,1014],{"class":1013},[988,1176,1177],{"class":1083}," \"created\"",[988,1179,1087],{"class":1013},[988,1181,1182],{"class":1083}," \"completed\"",[988,1184,1087],{"class":1013},[988,1186,1187],{"class":1083}," \"deleted\"",[988,1189,1087],{"class":1013},[988,1191,1192],{"class":1083}," \"updated\"",[988,1194,1195],{"class":1002},";\n",[988,1197,1198,1201,1203,1205,1207],{"class":990,"line":1043},[988,1199,1200],{"class":1009},"  description",[988,1202,1014],{"class":1013},[988,1204,1018],{"class":1017},[988,1206,1021],{"class":1002},[988,1208,1209],{"class":1024},"\u002F\u002F 人类可读描述\n",[988,1211,1212,1215,1217,1219,1221],{"class":990,"line":1059},[988,1213,1214],{"class":1009},"  timestamp",[988,1216,1014],{"class":1013},[988,1218,1111],{"class":998},[988,1220,1021],{"class":1002},[988,1222,1223],{"class":1024},"\u002F\u002F 操作时间戳\n",[988,1225,1226],{"class":990,"line":1075},[988,1227,1137],{"class":1002},[969,1229,1231],{"id":1230},"本地存储-api","本地存储 API",[973,1233,1234],{"id":1234},"存储键",[1236,1237,1238,1245],"ul",{},[1239,1240,1241,1244],"li",{},[985,1242,1243],{},"todo-tasks","：Task 对象数组",[1239,1246,1247,1250],{},[985,1248,1249],{},"todo-history","：HistoryRecord 对象数组",[973,1252,1253],{"id":1253},"数据持久化",[978,1255,1259],{"className":1256,"code":1257,"language":1258,"meta":983,"style":983},"language-javascript shiki shiki-themes github-light github-light dark-plus","\u002F\u002F 保存任务到本地存储\nlocalStorage.setItem(\"todo-tasks\", JSON.stringify(tasks));\n\n\u002F\u002F 从本地存储加载任务\nconst tasks = JSON.parse(localStorage.getItem(\"todo-tasks\") || \"[]\");\n\n\u002F\u002F 保存历史到本地存储\nlocalStorage.setItem(\"todo-history\", JSON.stringify(history));\n\n\u002F\u002F 从本地存储加载历史\nconst history = JSON.parse(localStorage.getItem(\"todo-history\") || \"[]\");\n","javascript",[985,1260,1261,1266,1305,1310,1315,1359,1363,1368,1396,1400,1406],{"__ignoreMap":983},[988,1262,1263],{"class":990,"line":991},[988,1264,1265],{"class":1024},"\u002F\u002F 保存任务到本地存储\n",[988,1267,1268,1272,1275,1279,1282,1285,1288,1292,1294,1297,1299,1302],{"class":990,"line":1006},[988,1269,1271],{"class":1270},"szTj3","localStorage",[988,1273,1274],{"class":1002},".",[988,1276,1278],{"class":1277},"sqMzV","setItem",[988,1280,1281],{"class":1002},"(",[988,1283,1284],{"class":1083},"\"todo-tasks\"",[988,1286,1287],{"class":1002},", ",[988,1289,1291],{"class":1290},"sdRU0","JSON",[988,1293,1274],{"class":1002},[988,1295,1296],{"class":1277},"stringify",[988,1298,1281],{"class":1002},[988,1300,1301],{"class":1270},"tasks",[988,1303,1304],{"class":1002},"));\n",[988,1306,1307],{"class":990,"line":1028},[988,1308,1309],{"emptyLinePlaceholder":6},"\n",[988,1311,1312],{"class":990,"line":1043},[988,1313,1314],{"class":1024},"\u002F\u002F 从本地存储加载任务\n",[988,1316,1317,1320,1323,1326,1329,1331,1334,1336,1338,1340,1343,1345,1347,1350,1353,1356],{"class":990,"line":1059},[988,1318,1319],{"class":994},"const",[988,1321,1322],{"class":1290}," tasks",[988,1324,1325],{"class":1013}," =",[988,1327,1328],{"class":1290}," JSON",[988,1330,1274],{"class":1002},[988,1332,1333],{"class":1277},"parse",[988,1335,1281],{"class":1002},[988,1337,1271],{"class":1270},[988,1339,1274],{"class":1002},[988,1341,1342],{"class":1277},"getItem",[988,1344,1281],{"class":1002},[988,1346,1284],{"class":1083},[988,1348,1349],{"class":1002},") ",[988,1351,1352],{"class":1013},"||",[988,1354,1355],{"class":1083}," \"[]\"",[988,1357,1358],{"class":1002},");\n",[988,1360,1361],{"class":990,"line":1075},[988,1362,1309],{"emptyLinePlaceholder":6},[988,1364,1365],{"class":990,"line":1103},[988,1366,1367],{"class":1024},"\u002F\u002F 保存历史到本地存储\n",[988,1369,1370,1372,1374,1376,1378,1381,1383,1385,1387,1389,1391,1394],{"class":990,"line":1119},[988,1371,1271],{"class":1270},[988,1373,1274],{"class":1002},[988,1375,1278],{"class":1277},[988,1377,1281],{"class":1002},[988,1379,1380],{"class":1083},"\"todo-history\"",[988,1382,1287],{"class":1002},[988,1384,1291],{"class":1290},[988,1386,1274],{"class":1002},[988,1388,1296],{"class":1277},[988,1390,1281],{"class":1002},[988,1392,1393],{"class":1270},"history",[988,1395,1304],{"class":1002},[988,1397,1398],{"class":990,"line":1134},[988,1399,1309],{"emptyLinePlaceholder":6},[988,1401,1403],{"class":990,"line":1402},10,[988,1404,1405],{"class":1024},"\u002F\u002F 从本地存储加载历史\n",[988,1407,1409,1411,1414,1416,1418,1420,1422,1424,1426,1428,1430,1432,1434,1436,1438,1440],{"class":990,"line":1408},11,[988,1410,1319],{"class":994},[988,1412,1413],{"class":1290}," history",[988,1415,1325],{"class":1013},[988,1417,1328],{"class":1290},[988,1419,1274],{"class":1002},[988,1421,1333],{"class":1277},[988,1423,1281],{"class":1002},[988,1425,1271],{"class":1270},[988,1427,1274],{"class":1002},[988,1429,1342],{"class":1277},[988,1431,1281],{"class":1002},[988,1433,1380],{"class":1083},[988,1435,1349],{"class":1002},[988,1437,1352],{"class":1013},[988,1439,1355],{"class":1083},[988,1441,1358],{"class":1002},[969,1443,1445],{"id":1444},"导出导入-api","导出\u002F导入 API",[973,1447,1448],{"id":1448},"导出格式",[978,1450,1454],{"className":1451,"code":1452,"language":1453,"meta":983,"style":983},"language-json shiki shiki-themes github-light github-light dark-plus","{\n  \"tasks\": [\n    {\n      \"id\": \"abc123\",\n      \"text\": \"Complete project\",\n      \"completed\": false,\n      \"dueDate\": \"2024-02-15\",\n      \"priority\": \"high\",\n      \"createdAt\": \"2024-02-01T10:00:00.000Z\",\n      \"completedAt\": null\n    }\n  ],\n  \"exportDate\": \"2024-02-01T10:00:00.000Z\"\n}\n","json",[985,1455,1456,1461,1470,1475,1489,1501,1514,1526,1538,1550,1560,1565,1571,1582],{"__ignoreMap":983},[988,1457,1458],{"class":990,"line":991},[988,1459,1460],{"class":1002},"{\n",[988,1462,1463,1467],{"class":990,"line":1006},[988,1464,1466],{"class":1465},"sSQ6O","  \"tasks\"",[988,1468,1469],{"class":1002},": [\n",[988,1471,1472],{"class":990,"line":1028},[988,1473,1474],{"class":1002},"    {\n",[988,1476,1477,1480,1483,1486],{"class":990,"line":1043},[988,1478,1479],{"class":1465},"      \"id\"",[988,1481,1482],{"class":1002},": ",[988,1484,1485],{"class":1083},"\"abc123\"",[988,1487,1488],{"class":1002},",\n",[988,1490,1491,1494,1496,1499],{"class":990,"line":1059},[988,1492,1493],{"class":1465},"      \"text\"",[988,1495,1482],{"class":1002},[988,1497,1498],{"class":1083},"\"Complete project\"",[988,1500,1488],{"class":1002},[988,1502,1503,1506,1508,1512],{"class":990,"line":1075},[988,1504,1505],{"class":1465},"      \"completed\"",[988,1507,1482],{"class":1002},[988,1509,1511],{"class":1510},"sLV08","false",[988,1513,1488],{"class":1002},[988,1515,1516,1519,1521,1524],{"class":990,"line":1103},[988,1517,1518],{"class":1465},"      \"dueDate\"",[988,1520,1482],{"class":1002},[988,1522,1523],{"class":1083},"\"2024-02-15\"",[988,1525,1488],{"class":1002},[988,1527,1528,1531,1533,1536],{"class":990,"line":1119},[988,1529,1530],{"class":1465},"      \"priority\"",[988,1532,1482],{"class":1002},[988,1534,1535],{"class":1083},"\"high\"",[988,1537,1488],{"class":1002},[988,1539,1540,1543,1545,1548],{"class":990,"line":1134},[988,1541,1542],{"class":1465},"      \"createdAt\"",[988,1544,1482],{"class":1002},[988,1546,1547],{"class":1083},"\"2024-02-01T10:00:00.000Z\"",[988,1549,1488],{"class":1002},[988,1551,1552,1555,1557],{"class":990,"line":1402},[988,1553,1554],{"class":1465},"      \"completedAt\"",[988,1556,1482],{"class":1002},[988,1558,1559],{"class":1510},"null\n",[988,1561,1562],{"class":990,"line":1408},[988,1563,1564],{"class":1002},"    }\n",[988,1566,1568],{"class":990,"line":1567},12,[988,1569,1570],{"class":1002},"  ],\n",[988,1572,1574,1577,1579],{"class":990,"line":1573},13,[988,1575,1576],{"class":1465},"  \"exportDate\"",[988,1578,1482],{"class":1002},[988,1580,1581],{"class":1083},"\"2024-02-01T10:00:00.000Z\"\n",[988,1583,1585],{"class":990,"line":1584},14,[988,1586,1137],{"class":1002},[973,1588,1589],{"id":1589},"导入验证",[978,1591,1593],{"className":1256,"code":1592,"language":1258,"meta":983,"style":983},"function validateImportData(data) {\n  if (!data.tasks || !Array.isArray(data.tasks)) {\n    throw new Error(\"Invalid data format: tasks array required\");\n  }\n\n  data.tasks.forEach((task) => {\n    if (!task.id || !task.text || typeof task.completed !== \"boolean\") {\n      throw new Error(\"Invalid task format\");\n    }\n  });\n\n  return true;\n}\n",[985,1594,1595,1611,1654,1672,1677,1681,1708,1756,1772,1776,1781,1785,1795],{"__ignoreMap":983},[988,1596,1597,1600,1603,1605,1608],{"class":990,"line":991},[988,1598,1599],{"class":994},"function",[988,1601,1602],{"class":1277}," validateImportData",[988,1604,1281],{"class":1002},[988,1606,1607],{"class":1009},"data",[988,1609,1610],{"class":1002},") {\n",[988,1612,1613,1617,1620,1623,1625,1627,1629,1632,1635,1638,1640,1643,1645,1647,1649,1651],{"class":990,"line":1006},[988,1614,1616],{"class":1615},"srAhW","  if",[988,1618,1619],{"class":1002}," (",[988,1621,1622],{"class":1013},"!",[988,1624,1607],{"class":1270},[988,1626,1274],{"class":1002},[988,1628,1301],{"class":1270},[988,1630,1631],{"class":1013}," ||",[988,1633,1634],{"class":1013}," !",[988,1636,1637],{"class":1270},"Array",[988,1639,1274],{"class":1002},[988,1641,1642],{"class":1277},"isArray",[988,1644,1281],{"class":1002},[988,1646,1607],{"class":1270},[988,1648,1274],{"class":1002},[988,1650,1301],{"class":1270},[988,1652,1653],{"class":1002},")) {\n",[988,1655,1656,1659,1662,1665,1667,1670],{"class":990,"line":1028},[988,1657,1658],{"class":1615},"    throw",[988,1660,1661],{"class":994}," new",[988,1663,1664],{"class":1277}," Error",[988,1666,1281],{"class":1002},[988,1668,1669],{"class":1083},"\"Invalid data format: tasks array required\"",[988,1671,1358],{"class":1002},[988,1673,1674],{"class":990,"line":1043},[988,1675,1676],{"class":1002},"  }\n",[988,1678,1679],{"class":990,"line":1059},[988,1680,1309],{"emptyLinePlaceholder":6},[988,1682,1683,1686,1688,1690,1692,1695,1698,1701,1703,1706],{"class":990,"line":1075},[988,1684,1685],{"class":1270},"  data",[988,1687,1274],{"class":1002},[988,1689,1301],{"class":1270},[988,1691,1274],{"class":1002},[988,1693,1694],{"class":1277},"forEach",[988,1696,1697],{"class":1002},"((",[988,1699,1700],{"class":1009},"task",[988,1702,1349],{"class":1002},[988,1704,1705],{"class":994},"=>",[988,1707,1003],{"class":1002},[988,1709,1710,1713,1715,1717,1719,1721,1724,1726,1728,1730,1732,1735,1737,1740,1743,1745,1748,1751,1754],{"class":990,"line":1103},[988,1711,1712],{"class":1615},"    if",[988,1714,1619],{"class":1002},[988,1716,1622],{"class":1013},[988,1718,1700],{"class":1270},[988,1720,1274],{"class":1002},[988,1722,1723],{"class":1270},"id",[988,1725,1631],{"class":1013},[988,1727,1634],{"class":1013},[988,1729,1700],{"class":1270},[988,1731,1274],{"class":1002},[988,1733,1734],{"class":1270},"text",[988,1736,1631],{"class":1013},[988,1738,1739],{"class":994}," typeof",[988,1741,1742],{"class":1270}," task",[988,1744,1274],{"class":1002},[988,1746,1747],{"class":1270},"completed",[988,1749,1750],{"class":1013}," !==",[988,1752,1753],{"class":1083}," \"boolean\"",[988,1755,1610],{"class":1002},[988,1757,1758,1761,1763,1765,1767,1770],{"class":990,"line":1119},[988,1759,1760],{"class":1615},"      throw",[988,1762,1661],{"class":994},[988,1764,1664],{"class":1277},[988,1766,1281],{"class":1002},[988,1768,1769],{"class":1083},"\"Invalid task format\"",[988,1771,1358],{"class":1002},[988,1773,1774],{"class":990,"line":1134},[988,1775,1564],{"class":1002},[988,1777,1778],{"class":990,"line":1402},[988,1779,1780],{"class":1002},"  });\n",[988,1782,1783],{"class":990,"line":1408},[988,1784,1309],{"emptyLinePlaceholder":6},[988,1786,1787,1790,1793],{"class":990,"line":1567},[988,1788,1789],{"class":1615},"  return",[988,1791,1792],{"class":1510}," true",[988,1794,1195],{"class":1002},[988,1796,1797],{"class":990,"line":1573},[988,1798,1137],{"class":1002},[969,1800,1801],{"id":1801},"事件系统",[973,1803,1804],{"id":1804},"任务事件",[978,1806,1808],{"className":1256,"code":1807,"language":1258,"meta":983,"style":983},"\u002F\u002F 任务创建\nwindow.dispatchEvent(\n  new CustomEvent(\"taskCreated\", {\n    detail: { task: newTask },\n  }),\n);\n\n\u002F\u002F 任务完成\nwindow.dispatchEvent(\n  new CustomEvent(\"taskCompleted\", {\n    detail: { task: completedTask },\n  }),\n);\n\n\u002F\u002F 任务更新\nwindow.dispatchEvent(\n  new CustomEvent(\"taskUpdated\", {\n    detail: { task: updatedTask },\n  }),\n);\n\n\u002F\u002F 任务删除\nwindow.dispatchEvent(\n  new CustomEvent(\"taskDeleted\", {\n    detail: { taskId: deletedTaskId },\n  }),\n);\n",[985,1809,1810,1815,1828,1844,1861,1866,1870,1874,1879,1889,1902,1915,1919,1923,1927,1933,1944,1958,1972,1977,1982,1987,1993,2004,2018,2033,2038],{"__ignoreMap":983},[988,1811,1812],{"class":990,"line":991},[988,1813,1814],{"class":1024},"\u002F\u002F 任务创建\n",[988,1816,1817,1820,1822,1825],{"class":990,"line":1006},[988,1818,1819],{"class":1270},"window",[988,1821,1274],{"class":1002},[988,1823,1824],{"class":1277},"dispatchEvent",[988,1826,1827],{"class":1002},"(\n",[988,1829,1830,1833,1836,1838,1841],{"class":990,"line":1028},[988,1831,1832],{"class":994},"  new",[988,1834,1835],{"class":1277}," CustomEvent",[988,1837,1281],{"class":1002},[988,1839,1840],{"class":1083},"\"taskCreated\"",[988,1842,1843],{"class":1002},", {\n",[988,1845,1846,1849,1852,1855,1858],{"class":990,"line":1043},[988,1847,1848],{"class":1270},"    detail:",[988,1850,1851],{"class":1002}," { ",[988,1853,1854],{"class":1270},"task:",[988,1856,1857],{"class":1270}," newTask",[988,1859,1860],{"class":1002}," },\n",[988,1862,1863],{"class":990,"line":1059},[988,1864,1865],{"class":1002},"  }),\n",[988,1867,1868],{"class":990,"line":1075},[988,1869,1358],{"class":1002},[988,1871,1872],{"class":990,"line":1103},[988,1873,1309],{"emptyLinePlaceholder":6},[988,1875,1876],{"class":990,"line":1119},[988,1877,1878],{"class":1024},"\u002F\u002F 任务完成\n",[988,1880,1881,1883,1885,1887],{"class":990,"line":1134},[988,1882,1819],{"class":1270},[988,1884,1274],{"class":1002},[988,1886,1824],{"class":1277},[988,1888,1827],{"class":1002},[988,1890,1891,1893,1895,1897,1900],{"class":990,"line":1402},[988,1892,1832],{"class":994},[988,1894,1835],{"class":1277},[988,1896,1281],{"class":1002},[988,1898,1899],{"class":1083},"\"taskCompleted\"",[988,1901,1843],{"class":1002},[988,1903,1904,1906,1908,1910,1913],{"class":990,"line":1408},[988,1905,1848],{"class":1270},[988,1907,1851],{"class":1002},[988,1909,1854],{"class":1270},[988,1911,1912],{"class":1270}," completedTask",[988,1914,1860],{"class":1002},[988,1916,1917],{"class":990,"line":1567},[988,1918,1865],{"class":1002},[988,1920,1921],{"class":990,"line":1573},[988,1922,1358],{"class":1002},[988,1924,1925],{"class":990,"line":1584},[988,1926,1309],{"emptyLinePlaceholder":6},[988,1928,1930],{"class":990,"line":1929},15,[988,1931,1932],{"class":1024},"\u002F\u002F 任务更新\n",[988,1934,1936,1938,1940,1942],{"class":990,"line":1935},16,[988,1937,1819],{"class":1270},[988,1939,1274],{"class":1002},[988,1941,1824],{"class":1277},[988,1943,1827],{"class":1002},[988,1945,1947,1949,1951,1953,1956],{"class":990,"line":1946},17,[988,1948,1832],{"class":994},[988,1950,1835],{"class":1277},[988,1952,1281],{"class":1002},[988,1954,1955],{"class":1083},"\"taskUpdated\"",[988,1957,1843],{"class":1002},[988,1959,1961,1963,1965,1967,1970],{"class":990,"line":1960},18,[988,1962,1848],{"class":1270},[988,1964,1851],{"class":1002},[988,1966,1854],{"class":1270},[988,1968,1969],{"class":1270}," updatedTask",[988,1971,1860],{"class":1002},[988,1973,1975],{"class":990,"line":1974},19,[988,1976,1865],{"class":1002},[988,1978,1980],{"class":990,"line":1979},20,[988,1981,1358],{"class":1002},[988,1983,1985],{"class":990,"line":1984},21,[988,1986,1309],{"emptyLinePlaceholder":6},[988,1988,1990],{"class":990,"line":1989},22,[988,1991,1992],{"class":1024},"\u002F\u002F 任务删除\n",[988,1994,1996,1998,2000,2002],{"class":990,"line":1995},23,[988,1997,1819],{"class":1270},[988,1999,1274],{"class":1002},[988,2001,1824],{"class":1277},[988,2003,1827],{"class":1002},[988,2005,2007,2009,2011,2013,2016],{"class":990,"line":2006},24,[988,2008,1832],{"class":994},[988,2010,1835],{"class":1277},[988,2012,1281],{"class":1002},[988,2014,2015],{"class":1083},"\"taskDeleted\"",[988,2017,1843],{"class":1002},[988,2019,2021,2023,2025,2028,2031],{"class":990,"line":2020},25,[988,2022,1848],{"class":1270},[988,2024,1851],{"class":1002},[988,2026,2027],{"class":1270},"taskId:",[988,2029,2030],{"class":1270}," deletedTaskId",[988,2032,1860],{"class":1002},[988,2034,2036],{"class":990,"line":2035},26,[988,2037,1865],{"class":1002},[988,2039,2041],{"class":990,"line":2040},27,[988,2042,1358],{"class":1002},[973,2044,2045],{"id":2045},"历史事件",[978,2047,2049],{"className":1256,"code":2048,"language":1258,"meta":983,"style":983},"\u002F\u002F 添加历史记录\nwindow.dispatchEvent(\n  new CustomEvent(\"historyAdded\", {\n    detail: { record: newRecord },\n  }),\n);\n",[985,2050,2051,2056,2066,2079,2093,2097],{"__ignoreMap":983},[988,2052,2053],{"class":990,"line":991},[988,2054,2055],{"class":1024},"\u002F\u002F 添加历史记录\n",[988,2057,2058,2060,2062,2064],{"class":990,"line":1006},[988,2059,1819],{"class":1270},[988,2061,1274],{"class":1002},[988,2063,1824],{"class":1277},[988,2065,1827],{"class":1002},[988,2067,2068,2070,2072,2074,2077],{"class":990,"line":1028},[988,2069,1832],{"class":994},[988,2071,1835],{"class":1277},[988,2073,1281],{"class":1002},[988,2075,2076],{"class":1083},"\"historyAdded\"",[988,2078,1843],{"class":1002},[988,2080,2081,2083,2085,2088,2091],{"class":990,"line":1043},[988,2082,1848],{"class":1270},[988,2084,1851],{"class":1002},[988,2086,2087],{"class":1270},"record:",[988,2089,2090],{"class":1270}," newRecord",[988,2092,1860],{"class":1002},[988,2094,2095],{"class":990,"line":1059},[988,2096,1865],{"class":1002},[988,2098,2099],{"class":990,"line":1075},[988,2100,1358],{"class":1002},[969,2102,2103],{"id":2103},"工具函数",[973,2105,2107],{"id":2106},"id-生成","ID 生成",[978,2109,2111],{"className":1256,"code":2110,"language":1258,"meta":983,"style":983},"function generateId() {\n  return Math.random().toString(36).substr(2, 9);\n}\n",[985,2112,2113,2123,2165],{"__ignoreMap":983},[988,2114,2115,2117,2120],{"class":990,"line":991},[988,2116,1599],{"class":994},[988,2118,2119],{"class":1277}," generateId",[988,2121,2122],{"class":1002},"() {\n",[988,2124,2125,2127,2130,2132,2135,2138,2141,2143,2147,2150,2153,2155,2158,2160,2163],{"class":990,"line":1006},[988,2126,1789],{"class":1615},[988,2128,2129],{"class":1270}," Math",[988,2131,1274],{"class":1002},[988,2133,2134],{"class":1277},"random",[988,2136,2137],{"class":1002},"().",[988,2139,2140],{"class":1277},"toString",[988,2142,1281],{"class":1002},[988,2144,2146],{"class":2145},"sewGd","36",[988,2148,2149],{"class":1002},").",[988,2151,2152],{"class":1277},"substr",[988,2154,1281],{"class":1002},[988,2156,2157],{"class":2145},"2",[988,2159,1287],{"class":1002},[988,2161,2162],{"class":2145},"9",[988,2164,1358],{"class":1002},[988,2166,2167],{"class":990,"line":1028},[988,2168,1137],{"class":1002},[973,2170,2171],{"id":2171},"日期工具",[978,2173,2175],{"className":1256,"code":2174,"language":1258,"meta":983,"style":983},"function getTomorrow() {\n  const tomorrow = new Date();\n  tomorrow.setDate(tomorrow.getDate() + 1);\n  return tomorrow.toISOString().split(\"T\")[0];\n}\n\nfunction isOverdue(dueDate) {\n  return new Date(dueDate) \u003C new Date();\n}\n\nfunction formatDate(date) {\n  return new Intl.DateTimeFormat(\"en-US\", {\n    year: \"numeric\",\n    month: \"short\",\n    day: \"numeric\",\n  }).format(new Date(date));\n}\n\nfunction formatTimeAgo(date) {\n  const now = new Date();\n  const diff = now.getTime() - date.getTime();\n  const minutes = Math.floor(diff \u002F 60000);\n  const hours = Math.floor(diff \u002F 3600000);\n  const days = Math.floor(diff \u002F 86400000);\n\n  if (days > 0) return `${days} days ago`;\n  if (hours > 0) return `${hours} hours ago`;\n  if (minutes > 0) return `${minutes} minutes ago`;\n  return \"Just now\";\n}\n",[985,2176,2177,2186,2203,2234,2264,2268,2272,2286,2309,2313,2317,2331,2352,2362,2372,2381,2402,2406,2410,2423,2438,2468,2497,2523,2549,2553,2590,2620,2651,2661],{"__ignoreMap":983},[988,2178,2179,2181,2184],{"class":990,"line":991},[988,2180,1599],{"class":994},[988,2182,2183],{"class":1277}," getTomorrow",[988,2185,2122],{"class":1002},[988,2187,2188,2191,2194,2196,2198,2200],{"class":990,"line":1006},[988,2189,2190],{"class":994},"  const",[988,2192,2193],{"class":1290}," tomorrow",[988,2195,1325],{"class":1013},[988,2197,1661],{"class":994},[988,2199,1111],{"class":1277},[988,2201,2202],{"class":1002},"();\n",[988,2204,2205,2208,2210,2213,2215,2218,2220,2223,2226,2229,2232],{"class":990,"line":1028},[988,2206,2207],{"class":1270},"  tomorrow",[988,2209,1274],{"class":1002},[988,2211,2212],{"class":1277},"setDate",[988,2214,1281],{"class":1002},[988,2216,2217],{"class":1270},"tomorrow",[988,2219,1274],{"class":1002},[988,2221,2222],{"class":1277},"getDate",[988,2224,2225],{"class":1002},"() ",[988,2227,2228],{"class":1013},"+",[988,2230,2231],{"class":2145}," 1",[988,2233,1358],{"class":1002},[988,2235,2236,2238,2240,2242,2245,2247,2250,2252,2255,2258,2261],{"class":990,"line":1043},[988,2237,1789],{"class":1615},[988,2239,2193],{"class":1270},[988,2241,1274],{"class":1002},[988,2243,2244],{"class":1277},"toISOString",[988,2246,2137],{"class":1002},[988,2248,2249],{"class":1277},"split",[988,2251,1281],{"class":1002},[988,2253,2254],{"class":1083},"\"T\"",[988,2256,2257],{"class":1002},")[",[988,2259,2260],{"class":2145},"0",[988,2262,2263],{"class":1002},"];\n",[988,2265,2266],{"class":990,"line":1059},[988,2267,1137],{"class":1002},[988,2269,2270],{"class":990,"line":1075},[988,2271,1309],{"emptyLinePlaceholder":6},[988,2273,2274,2276,2279,2281,2284],{"class":990,"line":1103},[988,2275,1599],{"class":994},[988,2277,2278],{"class":1277}," isOverdue",[988,2280,1281],{"class":1002},[988,2282,2283],{"class":1009},"dueDate",[988,2285,1610],{"class":1002},[988,2287,2288,2290,2292,2294,2296,2298,2300,2303,2305,2307],{"class":990,"line":1119},[988,2289,1789],{"class":1615},[988,2291,1661],{"class":994},[988,2293,1111],{"class":1277},[988,2295,1281],{"class":1002},[988,2297,2283],{"class":1270},[988,2299,1349],{"class":1002},[988,2301,2302],{"class":1013},"\u003C",[988,2304,1661],{"class":994},[988,2306,1111],{"class":1277},[988,2308,2202],{"class":1002},[988,2310,2311],{"class":990,"line":1134},[988,2312,1137],{"class":1002},[988,2314,2315],{"class":990,"line":1402},[988,2316,1309],{"emptyLinePlaceholder":6},[988,2318,2319,2321,2324,2326,2329],{"class":990,"line":1408},[988,2320,1599],{"class":994},[988,2322,2323],{"class":1277}," formatDate",[988,2325,1281],{"class":1002},[988,2327,2328],{"class":1009},"date",[988,2330,1610],{"class":1002},[988,2332,2333,2335,2337,2340,2342,2345,2347,2350],{"class":990,"line":1567},[988,2334,1789],{"class":1615},[988,2336,1661],{"class":994},[988,2338,2339],{"class":1270}," Intl",[988,2341,1274],{"class":1002},[988,2343,2344],{"class":1277},"DateTimeFormat",[988,2346,1281],{"class":1002},[988,2348,2349],{"class":1083},"\"en-US\"",[988,2351,1843],{"class":1002},[988,2353,2354,2357,2360],{"class":990,"line":1573},[988,2355,2356],{"class":1270},"    year:",[988,2358,2359],{"class":1083}," \"numeric\"",[988,2361,1488],{"class":1002},[988,2363,2364,2367,2370],{"class":990,"line":1584},[988,2365,2366],{"class":1270},"    month:",[988,2368,2369],{"class":1083}," \"short\"",[988,2371,1488],{"class":1002},[988,2373,2374,2377,2379],{"class":990,"line":1929},[988,2375,2376],{"class":1270},"    day:",[988,2378,2359],{"class":1083},[988,2380,1488],{"class":1002},[988,2382,2383,2386,2389,2391,2394,2396,2398,2400],{"class":990,"line":1935},[988,2384,2385],{"class":1002},"  }).",[988,2387,2388],{"class":1277},"format",[988,2390,1281],{"class":1002},[988,2392,2393],{"class":994},"new",[988,2395,1111],{"class":1277},[988,2397,1281],{"class":1002},[988,2399,2328],{"class":1270},[988,2401,1304],{"class":1002},[988,2403,2404],{"class":990,"line":1946},[988,2405,1137],{"class":1002},[988,2407,2408],{"class":990,"line":1960},[988,2409,1309],{"emptyLinePlaceholder":6},[988,2411,2412,2414,2417,2419,2421],{"class":990,"line":1974},[988,2413,1599],{"class":994},[988,2415,2416],{"class":1277}," formatTimeAgo",[988,2418,1281],{"class":1002},[988,2420,2328],{"class":1009},[988,2422,1610],{"class":1002},[988,2424,2425,2427,2430,2432,2434,2436],{"class":990,"line":1979},[988,2426,2190],{"class":994},[988,2428,2429],{"class":1290}," now",[988,2431,1325],{"class":1013},[988,2433,1661],{"class":994},[988,2435,1111],{"class":1277},[988,2437,2202],{"class":1002},[988,2439,2440,2442,2445,2447,2449,2451,2454,2456,2459,2462,2464,2466],{"class":990,"line":1984},[988,2441,2190],{"class":994},[988,2443,2444],{"class":1290}," diff",[988,2446,1325],{"class":1013},[988,2448,2429],{"class":1270},[988,2450,1274],{"class":1002},[988,2452,2453],{"class":1277},"getTime",[988,2455,2225],{"class":1002},[988,2457,2458],{"class":1013},"-",[988,2460,2461],{"class":1270}," date",[988,2463,1274],{"class":1002},[988,2465,2453],{"class":1277},[988,2467,2202],{"class":1002},[988,2469,2470,2472,2475,2477,2479,2481,2484,2486,2489,2492,2495],{"class":990,"line":1989},[988,2471,2190],{"class":994},[988,2473,2474],{"class":1290}," minutes",[988,2476,1325],{"class":1013},[988,2478,2129],{"class":1270},[988,2480,1274],{"class":1002},[988,2482,2483],{"class":1277},"floor",[988,2485,1281],{"class":1002},[988,2487,2488],{"class":1270},"diff",[988,2490,2491],{"class":1013}," \u002F",[988,2493,2494],{"class":2145}," 60000",[988,2496,1358],{"class":1002},[988,2498,2499,2501,2504,2506,2508,2510,2512,2514,2516,2518,2521],{"class":990,"line":1995},[988,2500,2190],{"class":994},[988,2502,2503],{"class":1290}," hours",[988,2505,1325],{"class":1013},[988,2507,2129],{"class":1270},[988,2509,1274],{"class":1002},[988,2511,2483],{"class":1277},[988,2513,1281],{"class":1002},[988,2515,2488],{"class":1270},[988,2517,2491],{"class":1013},[988,2519,2520],{"class":2145}," 3600000",[988,2522,1358],{"class":1002},[988,2524,2525,2527,2530,2532,2534,2536,2538,2540,2542,2544,2547],{"class":990,"line":2006},[988,2526,2190],{"class":994},[988,2528,2529],{"class":1290}," days",[988,2531,1325],{"class":1013},[988,2533,2129],{"class":1270},[988,2535,1274],{"class":1002},[988,2537,2483],{"class":1277},[988,2539,1281],{"class":1002},[988,2541,2488],{"class":1270},[988,2543,2491],{"class":1013},[988,2545,2546],{"class":2145}," 86400000",[988,2548,1358],{"class":1002},[988,2550,2551],{"class":990,"line":2020},[988,2552,1309],{"emptyLinePlaceholder":6},[988,2554,2555,2557,2559,2562,2565,2568,2570,2573,2576,2580,2582,2585,2588],{"class":990,"line":2035},[988,2556,1616],{"class":1615},[988,2558,1619],{"class":1002},[988,2560,2561],{"class":1270},"days",[988,2563,2564],{"class":1013}," >",[988,2566,2567],{"class":2145}," 0",[988,2569,1349],{"class":1002},[988,2571,2572],{"class":1615},"return",[988,2574,2575],{"class":1083}," `",[988,2577,2579],{"class":2578},"s7eq4","${",[988,2581,2561],{"class":1270},[988,2583,2584],{"class":2578},"}",[988,2586,2587],{"class":1083}," days ago`",[988,2589,1195],{"class":1002},[988,2591,2592,2594,2596,2599,2601,2603,2605,2607,2609,2611,2613,2615,2618],{"class":990,"line":2040},[988,2593,1616],{"class":1615},[988,2595,1619],{"class":1002},[988,2597,2598],{"class":1270},"hours",[988,2600,2564],{"class":1013},[988,2602,2567],{"class":2145},[988,2604,1349],{"class":1002},[988,2606,2572],{"class":1615},[988,2608,2575],{"class":1083},[988,2610,2579],{"class":2578},[988,2612,2598],{"class":1270},[988,2614,2584],{"class":2578},[988,2616,2617],{"class":1083}," hours ago`",[988,2619,1195],{"class":1002},[988,2621,2623,2625,2627,2630,2632,2634,2636,2638,2640,2642,2644,2646,2649],{"class":990,"line":2622},28,[988,2624,1616],{"class":1615},[988,2626,1619],{"class":1002},[988,2628,2629],{"class":1270},"minutes",[988,2631,2564],{"class":1013},[988,2633,2567],{"class":2145},[988,2635,1349],{"class":1002},[988,2637,2572],{"class":1615},[988,2639,2575],{"class":1083},[988,2641,2579],{"class":2578},[988,2643,2629],{"class":1270},[988,2645,2584],{"class":2578},[988,2647,2648],{"class":1083}," minutes ago`",[988,2650,1195],{"class":1002},[988,2652,2654,2656,2659],{"class":990,"line":2653},29,[988,2655,1789],{"class":1615},[988,2657,2658],{"class":1083}," \"Just now\"",[988,2660,1195],{"class":1002},[988,2662,2664],{"class":990,"line":2663},30,[988,2665,1137],{"class":1002},[973,2667,2668],{"id":2668},"任务排序",[978,2670,2672],{"className":1256,"code":2671,"language":1258,"meta":983,"style":983},"function sortTasks(tasks) {\n  return tasks.sort((a, b) => {\n    \u002F\u002F 优先级排序\n    const priorityOrder = { high: 3, medium: 2, low: 1 };\n    const priorityDiff = priorityOrder[b.priority] - priorityOrder[a.priority];\n    if (priorityDiff !== 0) return priorityDiff;\n\n    \u002F\u002F 截止日期排序\n    if (a.dueDate && b.dueDate) {\n      return new Date(a.dueDate).getTime() - new Date(b.dueDate).getTime();\n    }\n    if (a.dueDate) return -1;\n    if (b.dueDate) return 1;\n\n    \u002F\u002F 创建时间排序\n    return b.createdAt.getTime() - a.createdAt.getTime();\n  });\n}\n",[985,2673,2674,2687,2714,2719,2755,2793,2814,2818,2823,2847,2890,2894,2918,2938,2942,2947,2980,2984],{"__ignoreMap":983},[988,2675,2676,2678,2681,2683,2685],{"class":990,"line":991},[988,2677,1599],{"class":994},[988,2679,2680],{"class":1277}," sortTasks",[988,2682,1281],{"class":1002},[988,2684,1301],{"class":1009},[988,2686,1610],{"class":1002},[988,2688,2689,2691,2693,2695,2698,2700,2703,2705,2708,2710,2712],{"class":990,"line":1006},[988,2690,1789],{"class":1615},[988,2692,1322],{"class":1270},[988,2694,1274],{"class":1002},[988,2696,2697],{"class":1277},"sort",[988,2699,1697],{"class":1002},[988,2701,2702],{"class":1009},"a",[988,2704,1287],{"class":1002},[988,2706,2707],{"class":1009},"b",[988,2709,1349],{"class":1002},[988,2711,1705],{"class":994},[988,2713,1003],{"class":1002},[988,2715,2716],{"class":990,"line":1028},[988,2717,2718],{"class":1024},"    \u002F\u002F 优先级排序\n",[988,2720,2721,2724,2727,2729,2731,2734,2737,2739,2742,2745,2747,2750,2752],{"class":990,"line":1043},[988,2722,2723],{"class":994},"    const",[988,2725,2726],{"class":1290}," priorityOrder",[988,2728,1325],{"class":1013},[988,2730,1851],{"class":1002},[988,2732,2733],{"class":1270},"high:",[988,2735,2736],{"class":2145}," 3",[988,2738,1287],{"class":1002},[988,2740,2741],{"class":1270},"medium:",[988,2743,2744],{"class":2145}," 2",[988,2746,1287],{"class":1002},[988,2748,2749],{"class":1270},"low:",[988,2751,2231],{"class":2145},[988,2753,2754],{"class":1002}," };\n",[988,2756,2757,2759,2762,2764,2766,2769,2771,2773,2776,2779,2781,2783,2785,2787,2789,2791],{"class":990,"line":1059},[988,2758,2723],{"class":994},[988,2760,2761],{"class":1290}," priorityDiff",[988,2763,1325],{"class":1013},[988,2765,2726],{"class":1270},[988,2767,2768],{"class":1002},"[",[988,2770,2707],{"class":1270},[988,2772,1274],{"class":1002},[988,2774,2775],{"class":1270},"priority",[988,2777,2778],{"class":1002},"] ",[988,2780,2458],{"class":1013},[988,2782,2726],{"class":1270},[988,2784,2768],{"class":1002},[988,2786,2702],{"class":1270},[988,2788,1274],{"class":1002},[988,2790,2775],{"class":1270},[988,2792,2263],{"class":1002},[988,2794,2795,2797,2799,2802,2804,2806,2808,2810,2812],{"class":990,"line":1075},[988,2796,1712],{"class":1615},[988,2798,1619],{"class":1002},[988,2800,2801],{"class":1270},"priorityDiff",[988,2803,1750],{"class":1013},[988,2805,2567],{"class":2145},[988,2807,1349],{"class":1002},[988,2809,2572],{"class":1615},[988,2811,2761],{"class":1270},[988,2813,1195],{"class":1002},[988,2815,2816],{"class":990,"line":1103},[988,2817,1309],{"emptyLinePlaceholder":6},[988,2819,2820],{"class":990,"line":1119},[988,2821,2822],{"class":1024},"    \u002F\u002F 截止日期排序\n",[988,2824,2825,2827,2829,2831,2833,2835,2838,2841,2843,2845],{"class":990,"line":1134},[988,2826,1712],{"class":1615},[988,2828,1619],{"class":1002},[988,2830,2702],{"class":1270},[988,2832,1274],{"class":1002},[988,2834,2283],{"class":1270},[988,2836,2837],{"class":1013}," &&",[988,2839,2840],{"class":1270}," b",[988,2842,1274],{"class":1002},[988,2844,2283],{"class":1270},[988,2846,1610],{"class":1002},[988,2848,2849,2852,2854,2856,2858,2860,2862,2864,2866,2868,2870,2872,2874,2876,2878,2880,2882,2884,2886,2888],{"class":990,"line":1402},[988,2850,2851],{"class":1615},"      return",[988,2853,1661],{"class":994},[988,2855,1111],{"class":1277},[988,2857,1281],{"class":1002},[988,2859,2702],{"class":1270},[988,2861,1274],{"class":1002},[988,2863,2283],{"class":1270},[988,2865,2149],{"class":1002},[988,2867,2453],{"class":1277},[988,2869,2225],{"class":1002},[988,2871,2458],{"class":1013},[988,2873,1661],{"class":994},[988,2875,1111],{"class":1277},[988,2877,1281],{"class":1002},[988,2879,2707],{"class":1270},[988,2881,1274],{"class":1002},[988,2883,2283],{"class":1270},[988,2885,2149],{"class":1002},[988,2887,2453],{"class":1277},[988,2889,2202],{"class":1002},[988,2891,2892],{"class":990,"line":1408},[988,2893,1564],{"class":1002},[988,2895,2896,2898,2900,2902,2904,2906,2908,2910,2913,2916],{"class":990,"line":1567},[988,2897,1712],{"class":1615},[988,2899,1619],{"class":1002},[988,2901,2702],{"class":1270},[988,2903,1274],{"class":1002},[988,2905,2283],{"class":1270},[988,2907,1349],{"class":1002},[988,2909,2572],{"class":1615},[988,2911,2912],{"class":1013}," -",[988,2914,2915],{"class":2145},"1",[988,2917,1195],{"class":1002},[988,2919,2920,2922,2924,2926,2928,2930,2932,2934,2936],{"class":990,"line":1573},[988,2921,1712],{"class":1615},[988,2923,1619],{"class":1002},[988,2925,2707],{"class":1270},[988,2927,1274],{"class":1002},[988,2929,2283],{"class":1270},[988,2931,1349],{"class":1002},[988,2933,2572],{"class":1615},[988,2935,2231],{"class":2145},[988,2937,1195],{"class":1002},[988,2939,2940],{"class":990,"line":1584},[988,2941,1309],{"emptyLinePlaceholder":6},[988,2943,2944],{"class":990,"line":1929},[988,2945,2946],{"class":1024},"    \u002F\u002F 创建时间排序\n",[988,2948,2949,2952,2954,2956,2959,2961,2963,2965,2967,2970,2972,2974,2976,2978],{"class":990,"line":1935},[988,2950,2951],{"class":1615},"    return",[988,2953,2840],{"class":1270},[988,2955,1274],{"class":1002},[988,2957,2958],{"class":1270},"createdAt",[988,2960,1274],{"class":1002},[988,2962,2453],{"class":1277},[988,2964,2225],{"class":1002},[988,2966,2458],{"class":1013},[988,2968,2969],{"class":1270}," a",[988,2971,1274],{"class":1002},[988,2973,2958],{"class":1270},[988,2975,1274],{"class":1002},[988,2977,2453],{"class":1277},[988,2979,2202],{"class":1002},[988,2981,2982],{"class":990,"line":1946},[988,2983,1780],{"class":1002},[988,2985,2986],{"class":990,"line":1960},[988,2987,1137],{"class":1002},[969,2989,2990],{"id":2990},"浏览器兼容性",[973,2992,2994],{"id":2993},"所需-api","所需 API",[1236,2996,2997,3002,3008,3014],{},[1239,2998,2999,3001],{},[985,3000,1271],{}," — 数据持久化",[1239,3003,3004,3007],{},[985,3005,3006],{},"JSON.parse\u002Fstringify"," — 数据序列化",[1239,3009,3010,3013],{},[985,3011,3012],{},"CustomEvent"," — 事件系统",[1239,3015,3016,3019],{},[985,3017,3018],{},"Intl.DateTimeFormat"," — 日期格式化",[973,3021,3022],{"id":3022},"支持的浏览器",[1236,3024,3025,3028,3031,3034],{},[1239,3026,3027],{},"Chrome 51+",[1239,3029,3030],{},"Firefox 50+",[1239,3032,3033],{},"Safari 10+",[1239,3035,3036],{},"Edge 12+",[969,3038,3039],{"id":3039},"错误处理",[973,3041,3042],{"id":3042},"常见错误",[978,3044,3046],{"className":1256,"code":3045,"language":1258,"meta":983,"style":983},"try {\n  const tasks = JSON.parse(localStorage.getItem(\"todo-tasks\"));\n} catch (error) {\n  console.error(\"Failed to load tasks:\", error);\n  \u002F\u002F 回退到空数组\n  tasks = [];\n}\n",[985,3047,3048,3055,3083,3098,3118,3123,3133],{"__ignoreMap":983},[988,3049,3050,3053],{"class":990,"line":991},[988,3051,3052],{"class":1615},"try",[988,3054,1003],{"class":1002},[988,3056,3057,3059,3061,3063,3065,3067,3069,3071,3073,3075,3077,3079,3081],{"class":990,"line":1006},[988,3058,2190],{"class":994},[988,3060,1322],{"class":1290},[988,3062,1325],{"class":1013},[988,3064,1328],{"class":1290},[988,3066,1274],{"class":1002},[988,3068,1333],{"class":1277},[988,3070,1281],{"class":1002},[988,3072,1271],{"class":1270},[988,3074,1274],{"class":1002},[988,3076,1342],{"class":1277},[988,3078,1281],{"class":1002},[988,3080,1284],{"class":1083},[988,3082,1304],{"class":1002},[988,3084,3085,3088,3091,3093,3096],{"class":990,"line":1028},[988,3086,3087],{"class":1002},"} ",[988,3089,3090],{"class":1615},"catch",[988,3092,1619],{"class":1002},[988,3094,3095],{"class":1270},"error",[988,3097,1610],{"class":1002},[988,3099,3100,3103,3105,3107,3109,3112,3114,3116],{"class":990,"line":1043},[988,3101,3102],{"class":1270},"  console",[988,3104,1274],{"class":1002},[988,3106,3095],{"class":1277},[988,3108,1281],{"class":1002},[988,3110,3111],{"class":1083},"\"Failed to load tasks:\"",[988,3113,1287],{"class":1002},[988,3115,3095],{"class":1270},[988,3117,1358],{"class":1002},[988,3119,3120],{"class":990,"line":1059},[988,3121,3122],{"class":1024},"  \u002F\u002F 回退到空数组\n",[988,3124,3125,3128,3130],{"class":990,"line":1075},[988,3126,3127],{"class":1270},"  tasks",[988,3129,1325],{"class":1013},[988,3131,3132],{"class":1002}," [];\n",[988,3134,3135],{"class":990,"line":1103},[988,3136,1137],{"class":1002},[973,3138,3139],{"id":3139},"数据验证",[978,3141,3143],{"className":1256,"code":3142,"language":1258,"meta":983,"style":983},"function validateTask(task) {\n  const errors = [];\n\n  if (!task.text || task.text.trim().length === 0) {\n    errors.push(\"Task text is required\");\n  }\n\n  if (![\"low\", \"medium\", \"high\"].includes(task.priority)) {\n    errors.push(\"Invalid priority level\");\n  }\n\n  if (task.dueDate && isNaN(Date.parse(task.dueDate))) {\n    errors.push(\"Invalid due date format\");\n  }\n\n  return errors;\n}\n",[985,3144,3145,3158,3169,3173,3212,3229,3233,3237,3275,3290,3294,3298,3335,3350,3354,3358,3366],{"__ignoreMap":983},[988,3146,3147,3149,3152,3154,3156],{"class":990,"line":991},[988,3148,1599],{"class":994},[988,3150,3151],{"class":1277}," validateTask",[988,3153,1281],{"class":1002},[988,3155,1700],{"class":1009},[988,3157,1610],{"class":1002},[988,3159,3160,3162,3165,3167],{"class":990,"line":1006},[988,3161,2190],{"class":994},[988,3163,3164],{"class":1290}," errors",[988,3166,1325],{"class":1013},[988,3168,3132],{"class":1002},[988,3170,3171],{"class":990,"line":1028},[988,3172,1309],{"emptyLinePlaceholder":6},[988,3174,3175,3177,3179,3181,3183,3185,3187,3189,3191,3193,3195,3197,3200,3202,3205,3208,3210],{"class":990,"line":1043},[988,3176,1616],{"class":1615},[988,3178,1619],{"class":1002},[988,3180,1622],{"class":1013},[988,3182,1700],{"class":1270},[988,3184,1274],{"class":1002},[988,3186,1734],{"class":1270},[988,3188,1631],{"class":1013},[988,3190,1742],{"class":1270},[988,3192,1274],{"class":1002},[988,3194,1734],{"class":1270},[988,3196,1274],{"class":1002},[988,3198,3199],{"class":1277},"trim",[988,3201,2137],{"class":1002},[988,3203,3204],{"class":1465},"length",[988,3206,3207],{"class":1013}," ===",[988,3209,2567],{"class":2145},[988,3211,1610],{"class":1002},[988,3213,3214,3217,3219,3222,3224,3227],{"class":990,"line":1059},[988,3215,3216],{"class":1270},"    errors",[988,3218,1274],{"class":1002},[988,3220,3221],{"class":1277},"push",[988,3223,1281],{"class":1002},[988,3225,3226],{"class":1083},"\"Task text is required\"",[988,3228,1358],{"class":1002},[988,3230,3231],{"class":990,"line":1075},[988,3232,1676],{"class":1002},[988,3234,3235],{"class":990,"line":1103},[988,3236,1309],{"emptyLinePlaceholder":6},[988,3238,3239,3241,3243,3245,3247,3250,3252,3255,3257,3259,3262,3265,3267,3269,3271,3273],{"class":990,"line":1119},[988,3240,1616],{"class":1615},[988,3242,1619],{"class":1002},[988,3244,1622],{"class":1013},[988,3246,2768],{"class":1002},[988,3248,3249],{"class":1083},"\"low\"",[988,3251,1287],{"class":1002},[988,3253,3254],{"class":1083},"\"medium\"",[988,3256,1287],{"class":1002},[988,3258,1535],{"class":1083},[988,3260,3261],{"class":1002},"].",[988,3263,3264],{"class":1277},"includes",[988,3266,1281],{"class":1002},[988,3268,1700],{"class":1270},[988,3270,1274],{"class":1002},[988,3272,2775],{"class":1270},[988,3274,1653],{"class":1002},[988,3276,3277,3279,3281,3283,3285,3288],{"class":990,"line":1134},[988,3278,3216],{"class":1270},[988,3280,1274],{"class":1002},[988,3282,3221],{"class":1277},[988,3284,1281],{"class":1002},[988,3286,3287],{"class":1083},"\"Invalid priority level\"",[988,3289,1358],{"class":1002},[988,3291,3292],{"class":990,"line":1402},[988,3293,1676],{"class":1002},[988,3295,3296],{"class":990,"line":1408},[988,3297,1309],{"emptyLinePlaceholder":6},[988,3299,3300,3302,3304,3306,3308,3310,3312,3315,3317,3320,3322,3324,3326,3328,3330,3332],{"class":990,"line":1567},[988,3301,1616],{"class":1615},[988,3303,1619],{"class":1002},[988,3305,1700],{"class":1270},[988,3307,1274],{"class":1002},[988,3309,2283],{"class":1270},[988,3311,2837],{"class":1013},[988,3313,3314],{"class":1277}," isNaN",[988,3316,1281],{"class":1002},[988,3318,3319],{"class":1270},"Date",[988,3321,1274],{"class":1002},[988,3323,1333],{"class":1277},[988,3325,1281],{"class":1002},[988,3327,1700],{"class":1270},[988,3329,1274],{"class":1002},[988,3331,2283],{"class":1270},[988,3333,3334],{"class":1002},"))) {\n",[988,3336,3337,3339,3341,3343,3345,3348],{"class":990,"line":1573},[988,3338,3216],{"class":1270},[988,3340,1274],{"class":1002},[988,3342,3221],{"class":1277},[988,3344,1281],{"class":1002},[988,3346,3347],{"class":1083},"\"Invalid due date format\"",[988,3349,1358],{"class":1002},[988,3351,3352],{"class":990,"line":1584},[988,3353,1676],{"class":1002},[988,3355,3356],{"class":990,"line":1929},[988,3357,1309],{"emptyLinePlaceholder":6},[988,3359,3360,3362,3364],{"class":990,"line":1935},[988,3361,1789],{"class":1615},[988,3363,3164],{"class":1270},[988,3365,1195],{"class":1002},[988,3367,3368],{"class":990,"line":1946},[988,3369,1137],{"class":1002},[969,3371,3372],{"id":3372},"性能考虑",[973,3374,3375],{"id":3375},"大型任务列表",[978,3377,3379],{"className":1256,"code":3378,"language":1258,"meta":983,"style":983},"\u002F\u002F 大列表分页\nfunction getTasksPage(tasks, page = 1, pageSize = 50) {\n  const start = (page - 1) * pageSize;\n  const end = start + pageSize;\n  return tasks.slice(start, end);\n}\n\n\u002F\u002F 虚拟滚动支持\nfunction getVisibleTasks(tasks, scrollTop, viewportHeight, itemHeight) {\n  const startIndex = Math.floor(scrollTop \u002F itemHeight);\n  const visibleCount = Math.ceil(viewportHeight \u002F itemHeight);\n  return tasks.slice(startIndex, startIndex + visibleCount);\n}\n",[985,3380,3381,3386,3418,3445,3463,3486,3490,3494,3499,3527,3553,3579,3604],{"__ignoreMap":983},[988,3382,3383],{"class":990,"line":991},[988,3384,3385],{"class":1024},"\u002F\u002F 大列表分页\n",[988,3387,3388,3390,3393,3395,3397,3399,3402,3404,3406,3408,3411,3413,3416],{"class":990,"line":1006},[988,3389,1599],{"class":994},[988,3391,3392],{"class":1277}," getTasksPage",[988,3394,1281],{"class":1002},[988,3396,1301],{"class":1009},[988,3398,1287],{"class":1002},[988,3400,3401],{"class":1009},"page",[988,3403,1325],{"class":1013},[988,3405,2231],{"class":2145},[988,3407,1287],{"class":1002},[988,3409,3410],{"class":1009},"pageSize",[988,3412,1325],{"class":1013},[988,3414,3415],{"class":2145}," 50",[988,3417,1610],{"class":1002},[988,3419,3420,3422,3425,3427,3429,3431,3433,3435,3437,3440,3443],{"class":990,"line":1028},[988,3421,2190],{"class":994},[988,3423,3424],{"class":1290}," start",[988,3426,1325],{"class":1013},[988,3428,1619],{"class":1002},[988,3430,3401],{"class":1270},[988,3432,2912],{"class":1013},[988,3434,2231],{"class":2145},[988,3436,1349],{"class":1002},[988,3438,3439],{"class":1013},"*",[988,3441,3442],{"class":1270}," pageSize",[988,3444,1195],{"class":1002},[988,3446,3447,3449,3452,3454,3456,3459,3461],{"class":990,"line":1043},[988,3448,2190],{"class":994},[988,3450,3451],{"class":1290}," end",[988,3453,1325],{"class":1013},[988,3455,3424],{"class":1270},[988,3457,3458],{"class":1013}," +",[988,3460,3442],{"class":1270},[988,3462,1195],{"class":1002},[988,3464,3465,3467,3469,3471,3474,3476,3479,3481,3484],{"class":990,"line":1059},[988,3466,1789],{"class":1615},[988,3468,1322],{"class":1270},[988,3470,1274],{"class":1002},[988,3472,3473],{"class":1277},"slice",[988,3475,1281],{"class":1002},[988,3477,3478],{"class":1270},"start",[988,3480,1287],{"class":1002},[988,3482,3483],{"class":1270},"end",[988,3485,1358],{"class":1002},[988,3487,3488],{"class":990,"line":1075},[988,3489,1137],{"class":1002},[988,3491,3492],{"class":990,"line":1103},[988,3493,1309],{"emptyLinePlaceholder":6},[988,3495,3496],{"class":990,"line":1119},[988,3497,3498],{"class":1024},"\u002F\u002F 虚拟滚动支持\n",[988,3500,3501,3503,3506,3508,3510,3512,3515,3517,3520,3522,3525],{"class":990,"line":1134},[988,3502,1599],{"class":994},[988,3504,3505],{"class":1277}," getVisibleTasks",[988,3507,1281],{"class":1002},[988,3509,1301],{"class":1009},[988,3511,1287],{"class":1002},[988,3513,3514],{"class":1009},"scrollTop",[988,3516,1287],{"class":1002},[988,3518,3519],{"class":1009},"viewportHeight",[988,3521,1287],{"class":1002},[988,3523,3524],{"class":1009},"itemHeight",[988,3526,1610],{"class":1002},[988,3528,3529,3531,3534,3536,3538,3540,3542,3544,3546,3548,3551],{"class":990,"line":1402},[988,3530,2190],{"class":994},[988,3532,3533],{"class":1290}," startIndex",[988,3535,1325],{"class":1013},[988,3537,2129],{"class":1270},[988,3539,1274],{"class":1002},[988,3541,2483],{"class":1277},[988,3543,1281],{"class":1002},[988,3545,3514],{"class":1270},[988,3547,2491],{"class":1013},[988,3549,3550],{"class":1270}," itemHeight",[988,3552,1358],{"class":1002},[988,3554,3555,3557,3560,3562,3564,3566,3569,3571,3573,3575,3577],{"class":990,"line":1408},[988,3556,2190],{"class":994},[988,3558,3559],{"class":1290}," visibleCount",[988,3561,1325],{"class":1013},[988,3563,2129],{"class":1270},[988,3565,1274],{"class":1002},[988,3567,3568],{"class":1277},"ceil",[988,3570,1281],{"class":1002},[988,3572,3519],{"class":1270},[988,3574,2491],{"class":1013},[988,3576,3550],{"class":1270},[988,3578,1358],{"class":1002},[988,3580,3581,3583,3585,3587,3589,3591,3594,3596,3598,3600,3602],{"class":990,"line":1567},[988,3582,1789],{"class":1615},[988,3584,1322],{"class":1270},[988,3586,1274],{"class":1002},[988,3588,3473],{"class":1277},[988,3590,1281],{"class":1002},[988,3592,3593],{"class":1270},"startIndex",[988,3595,1287],{"class":1002},[988,3597,3593],{"class":1270},[988,3599,3458],{"class":1013},[988,3601,3559],{"class":1270},[988,3603,1358],{"class":1002},[988,3605,3606],{"class":990,"line":1573},[988,3607,1137],{"class":1002},[973,3609,3610],{"id":3610},"内存管理",[978,3612,3614],{"className":1256,"code":3613,"language":1258,"meta":983,"style":983},"\u002F\u002F 限制历史记录数量\nfunction addHistoryRecord(history, record, maxRecords = 100) {\n  history.unshift(record);\n  if (history.length > maxRecords) {\n    history = history.slice(0, maxRecords);\n  }\n  return history;\n}\n\n\u002F\u002F 清理旧已完成任务\nfunction cleanupOldTasks(tasks, daysToKeep = 30) {\n  const cutoff = new Date();\n  cutoff.setDate(cutoff.getDate() - daysToKeep);\n\n  return tasks.filter((task) => !task.completed || task.completedAt > cutoff);\n}\n",[985,3615,3616,3621,3649,3665,3684,3707,3711,3719,3723,3727,3732,3755,3770,3797,3801,3843],{"__ignoreMap":983},[988,3617,3618],{"class":990,"line":991},[988,3619,3620],{"class":1024},"\u002F\u002F 限制历史记录数量\n",[988,3622,3623,3625,3628,3630,3632,3634,3637,3639,3642,3644,3647],{"class":990,"line":1006},[988,3624,1599],{"class":994},[988,3626,3627],{"class":1277}," addHistoryRecord",[988,3629,1281],{"class":1002},[988,3631,1393],{"class":1009},[988,3633,1287],{"class":1002},[988,3635,3636],{"class":1009},"record",[988,3638,1287],{"class":1002},[988,3640,3641],{"class":1009},"maxRecords",[988,3643,1325],{"class":1013},[988,3645,3646],{"class":2145}," 100",[988,3648,1610],{"class":1002},[988,3650,3651,3654,3656,3659,3661,3663],{"class":990,"line":1028},[988,3652,3653],{"class":1270},"  history",[988,3655,1274],{"class":1002},[988,3657,3658],{"class":1277},"unshift",[988,3660,1281],{"class":1002},[988,3662,3636],{"class":1270},[988,3664,1358],{"class":1002},[988,3666,3667,3669,3671,3673,3675,3677,3679,3682],{"class":990,"line":1043},[988,3668,1616],{"class":1615},[988,3670,1619],{"class":1002},[988,3672,1393],{"class":1270},[988,3674,1274],{"class":1002},[988,3676,3204],{"class":1465},[988,3678,2564],{"class":1013},[988,3680,3681],{"class":1270}," maxRecords",[988,3683,1610],{"class":1002},[988,3685,3686,3689,3691,3693,3695,3697,3699,3701,3703,3705],{"class":990,"line":1059},[988,3687,3688],{"class":1270},"    history",[988,3690,1325],{"class":1013},[988,3692,1413],{"class":1270},[988,3694,1274],{"class":1002},[988,3696,3473],{"class":1277},[988,3698,1281],{"class":1002},[988,3700,2260],{"class":2145},[988,3702,1287],{"class":1002},[988,3704,3641],{"class":1270},[988,3706,1358],{"class":1002},[988,3708,3709],{"class":990,"line":1075},[988,3710,1676],{"class":1002},[988,3712,3713,3715,3717],{"class":990,"line":1103},[988,3714,1789],{"class":1615},[988,3716,1413],{"class":1270},[988,3718,1195],{"class":1002},[988,3720,3721],{"class":990,"line":1119},[988,3722,1137],{"class":1002},[988,3724,3725],{"class":990,"line":1134},[988,3726,1309],{"emptyLinePlaceholder":6},[988,3728,3729],{"class":990,"line":1402},[988,3730,3731],{"class":1024},"\u002F\u002F 清理旧已完成任务\n",[988,3733,3734,3736,3739,3741,3743,3745,3748,3750,3753],{"class":990,"line":1408},[988,3735,1599],{"class":994},[988,3737,3738],{"class":1277}," cleanupOldTasks",[988,3740,1281],{"class":1002},[988,3742,1301],{"class":1009},[988,3744,1287],{"class":1002},[988,3746,3747],{"class":1009},"daysToKeep",[988,3749,1325],{"class":1013},[988,3751,3752],{"class":2145}," 30",[988,3754,1610],{"class":1002},[988,3756,3757,3759,3762,3764,3766,3768],{"class":990,"line":1567},[988,3758,2190],{"class":994},[988,3760,3761],{"class":1290}," cutoff",[988,3763,1325],{"class":1013},[988,3765,1661],{"class":994},[988,3767,1111],{"class":1277},[988,3769,2202],{"class":1002},[988,3771,3772,3775,3777,3779,3781,3784,3786,3788,3790,3792,3795],{"class":990,"line":1573},[988,3773,3774],{"class":1270},"  cutoff",[988,3776,1274],{"class":1002},[988,3778,2212],{"class":1277},[988,3780,1281],{"class":1002},[988,3782,3783],{"class":1270},"cutoff",[988,3785,1274],{"class":1002},[988,3787,2222],{"class":1277},[988,3789,2225],{"class":1002},[988,3791,2458],{"class":1013},[988,3793,3794],{"class":1270}," daysToKeep",[988,3796,1358],{"class":1002},[988,3798,3799],{"class":990,"line":1584},[988,3800,1309],{"emptyLinePlaceholder":6},[988,3802,3803,3805,3807,3809,3812,3814,3816,3818,3820,3822,3824,3826,3828,3830,3832,3834,3837,3839,3841],{"class":990,"line":1929},[988,3804,1789],{"class":1615},[988,3806,1322],{"class":1270},[988,3808,1274],{"class":1002},[988,3810,3811],{"class":1277},"filter",[988,3813,1697],{"class":1002},[988,3815,1700],{"class":1009},[988,3817,1349],{"class":1002},[988,3819,1705],{"class":994},[988,3821,1634],{"class":1013},[988,3823,1700],{"class":1270},[988,3825,1274],{"class":1002},[988,3827,1747],{"class":1270},[988,3829,1631],{"class":1013},[988,3831,1742],{"class":1270},[988,3833,1274],{"class":1002},[988,3835,3836],{"class":1270},"completedAt",[988,3838,2564],{"class":1013},[988,3840,3761],{"class":1270},[988,3842,1358],{"class":1002},[988,3844,3845],{"class":990,"line":1935},[988,3846,1137],{"class":1002},[969,3848,3849],{"id":3849},"集成示例",[973,3851,3852],{"id":3852},"外部工具集成",[978,3854,3856],{"className":1256,"code":3855,"language":1258,"meta":983,"style":983},"\u002F\u002F 导出到外部日历\nfunction exportToCalendar(tasks) {\n  const calendarEvents = tasks\n    .filter((task) => task.dueDate && !task.completed)\n    .map((task) => ({\n      title: task.text,\n      start: task.dueDate,\n      priority: task.priority,\n    }));\n\n  \u002F\u002F 生成日历文件或发送到 API\n  return calendarEvents;\n}\n\n\u002F\u002F 从外部源导入\nasync function importFromExternal(source) {\n  try {\n    const response = await fetch(source);\n    const data = await response.json();\n\n    if (validateImportData(data)) {\n      return data.tasks;\n    }\n  } catch (error) {\n    console.error(\"Import failed:\", error);\n    throw error;\n  }\n}\n",[985,3857,3858,3863,3876,3888,3922,3940,3953,3966,3979,3984,3988,3993,4001,4005,4009,4014,4032,4039,4060,4079,4083,4098,4110,4114,4127,4147,4156,4160],{"__ignoreMap":983},[988,3859,3860],{"class":990,"line":991},[988,3861,3862],{"class":1024},"\u002F\u002F 导出到外部日历\n",[988,3864,3865,3867,3870,3872,3874],{"class":990,"line":1006},[988,3866,1599],{"class":994},[988,3868,3869],{"class":1277}," exportToCalendar",[988,3871,1281],{"class":1002},[988,3873,1301],{"class":1009},[988,3875,1610],{"class":1002},[988,3877,3878,3880,3883,3885],{"class":990,"line":1028},[988,3879,2190],{"class":994},[988,3881,3882],{"class":1290}," calendarEvents",[988,3884,1325],{"class":1013},[988,3886,3887],{"class":1270}," tasks\n",[988,3889,3890,3893,3895,3897,3899,3901,3903,3905,3907,3909,3911,3913,3915,3917,3919],{"class":990,"line":1043},[988,3891,3892],{"class":1002},"    .",[988,3894,3811],{"class":1277},[988,3896,1697],{"class":1002},[988,3898,1700],{"class":1009},[988,3900,1349],{"class":1002},[988,3902,1705],{"class":994},[988,3904,1742],{"class":1270},[988,3906,1274],{"class":1002},[988,3908,2283],{"class":1270},[988,3910,2837],{"class":1013},[988,3912,1634],{"class":1013},[988,3914,1700],{"class":1270},[988,3916,1274],{"class":1002},[988,3918,1747],{"class":1270},[988,3920,3921],{"class":1002},")\n",[988,3923,3924,3926,3929,3931,3933,3935,3937],{"class":990,"line":1059},[988,3925,3892],{"class":1002},[988,3927,3928],{"class":1277},"map",[988,3930,1697],{"class":1002},[988,3932,1700],{"class":1009},[988,3934,1349],{"class":1002},[988,3936,1705],{"class":994},[988,3938,3939],{"class":1002}," ({\n",[988,3941,3942,3945,3947,3949,3951],{"class":990,"line":1075},[988,3943,3944],{"class":1270},"      title:",[988,3946,1742],{"class":1270},[988,3948,1274],{"class":1002},[988,3950,1734],{"class":1270},[988,3952,1488],{"class":1002},[988,3954,3955,3958,3960,3962,3964],{"class":990,"line":1103},[988,3956,3957],{"class":1270},"      start:",[988,3959,1742],{"class":1270},[988,3961,1274],{"class":1002},[988,3963,2283],{"class":1270},[988,3965,1488],{"class":1002},[988,3967,3968,3971,3973,3975,3977],{"class":990,"line":1119},[988,3969,3970],{"class":1270},"      priority:",[988,3972,1742],{"class":1270},[988,3974,1274],{"class":1002},[988,3976,2775],{"class":1270},[988,3978,1488],{"class":1002},[988,3980,3981],{"class":990,"line":1134},[988,3982,3983],{"class":1002},"    }));\n",[988,3985,3986],{"class":990,"line":1402},[988,3987,1309],{"emptyLinePlaceholder":6},[988,3989,3990],{"class":990,"line":1408},[988,3991,3992],{"class":1024},"  \u002F\u002F 生成日历文件或发送到 API\n",[988,3994,3995,3997,3999],{"class":990,"line":1567},[988,3996,1789],{"class":1615},[988,3998,3882],{"class":1270},[988,4000,1195],{"class":1002},[988,4002,4003],{"class":990,"line":1573},[988,4004,1137],{"class":1002},[988,4006,4007],{"class":990,"line":1584},[988,4008,1309],{"emptyLinePlaceholder":6},[988,4010,4011],{"class":990,"line":1929},[988,4012,4013],{"class":1024},"\u002F\u002F 从外部源导入\n",[988,4015,4016,4019,4022,4025,4027,4030],{"class":990,"line":1935},[988,4017,4018],{"class":994},"async",[988,4020,4021],{"class":994}," function",[988,4023,4024],{"class":1277}," importFromExternal",[988,4026,1281],{"class":1002},[988,4028,4029],{"class":1009},"source",[988,4031,1610],{"class":1002},[988,4033,4034,4037],{"class":990,"line":1946},[988,4035,4036],{"class":1615},"  try",[988,4038,1003],{"class":1002},[988,4040,4041,4043,4046,4048,4051,4054,4056,4058],{"class":990,"line":1960},[988,4042,2723],{"class":994},[988,4044,4045],{"class":1290}," response",[988,4047,1325],{"class":1013},[988,4049,4050],{"class":1615}," await",[988,4052,4053],{"class":1277}," fetch",[988,4055,1281],{"class":1002},[988,4057,4029],{"class":1270},[988,4059,1358],{"class":1002},[988,4061,4062,4064,4067,4069,4071,4073,4075,4077],{"class":990,"line":1974},[988,4063,2723],{"class":994},[988,4065,4066],{"class":1290}," data",[988,4068,1325],{"class":1013},[988,4070,4050],{"class":1615},[988,4072,4045],{"class":1270},[988,4074,1274],{"class":1002},[988,4076,1453],{"class":1277},[988,4078,2202],{"class":1002},[988,4080,4081],{"class":990,"line":1979},[988,4082,1309],{"emptyLinePlaceholder":6},[988,4084,4085,4087,4089,4092,4094,4096],{"class":990,"line":1984},[988,4086,1712],{"class":1615},[988,4088,1619],{"class":1002},[988,4090,4091],{"class":1277},"validateImportData",[988,4093,1281],{"class":1002},[988,4095,1607],{"class":1270},[988,4097,1653],{"class":1002},[988,4099,4100,4102,4104,4106,4108],{"class":990,"line":1989},[988,4101,2851],{"class":1615},[988,4103,4066],{"class":1270},[988,4105,1274],{"class":1002},[988,4107,1301],{"class":1270},[988,4109,1195],{"class":1002},[988,4111,4112],{"class":990,"line":1995},[988,4113,1564],{"class":1002},[988,4115,4116,4119,4121,4123,4125],{"class":990,"line":2006},[988,4117,4118],{"class":1002},"  } ",[988,4120,3090],{"class":1615},[988,4122,1619],{"class":1002},[988,4124,3095],{"class":1270},[988,4126,1610],{"class":1002},[988,4128,4129,4132,4134,4136,4138,4141,4143,4145],{"class":990,"line":2020},[988,4130,4131],{"class":1270},"    console",[988,4133,1274],{"class":1002},[988,4135,3095],{"class":1277},[988,4137,1281],{"class":1002},[988,4139,4140],{"class":1083},"\"Import failed:\"",[988,4142,1287],{"class":1002},[988,4144,3095],{"class":1270},[988,4146,1358],{"class":1002},[988,4148,4149,4151,4154],{"class":990,"line":2035},[988,4150,1658],{"class":1615},[988,4152,4153],{"class":1270}," error",[988,4155,1195],{"class":1002},[988,4157,4158],{"class":990,"line":2040},[988,4159,1676],{"class":1002},[988,4161,4162],{"class":990,"line":2622},[988,4163,1137],{"class":1002},[973,4165,4167],{"id":4166},"webhook-集成","Webhook 集成",[978,4169,4171],{"className":1256,"code":4170,"language":1258,"meta":983,"style":983},"\u002F\u002F 任务完成时发送 Webhook\nasync function sendWebhook(task, webhookUrl) {\n  try {\n    await fetch(webhookUrl, {\n      method: \"POST\",\n      headers: { \"Content-Type\": \"application\u002Fjson\" },\n      body: JSON.stringify({\n        event: \"taskCompleted\",\n        task: task,\n        timestamp: new Date().toISOString(),\n      }),\n    });\n  } catch (error) {\n    console.error(\"Webhook failed:\", error);\n  }\n}\n",[985,4172,4173,4178,4198,4204,4217,4227,4244,4258,4268,4277,4293,4298,4303,4315,4334,4338],{"__ignoreMap":983},[988,4174,4175],{"class":990,"line":991},[988,4176,4177],{"class":1024},"\u002F\u002F 任务完成时发送 Webhook\n",[988,4179,4180,4182,4184,4187,4189,4191,4193,4196],{"class":990,"line":1006},[988,4181,4018],{"class":994},[988,4183,4021],{"class":994},[988,4185,4186],{"class":1277}," sendWebhook",[988,4188,1281],{"class":1002},[988,4190,1700],{"class":1009},[988,4192,1287],{"class":1002},[988,4194,4195],{"class":1009},"webhookUrl",[988,4197,1610],{"class":1002},[988,4199,4200,4202],{"class":990,"line":1028},[988,4201,4036],{"class":1615},[988,4203,1003],{"class":1002},[988,4205,4206,4209,4211,4213,4215],{"class":990,"line":1043},[988,4207,4208],{"class":1615},"    await",[988,4210,4053],{"class":1277},[988,4212,1281],{"class":1002},[988,4214,4195],{"class":1270},[988,4216,1843],{"class":1002},[988,4218,4219,4222,4225],{"class":990,"line":1059},[988,4220,4221],{"class":1270},"      method:",[988,4223,4224],{"class":1083}," \"POST\"",[988,4226,1488],{"class":1002},[988,4228,4229,4232,4234,4237,4239,4242],{"class":990,"line":1075},[988,4230,4231],{"class":1270},"      headers:",[988,4233,1851],{"class":1002},[988,4235,4236],{"class":1083},"\"Content-Type\"",[988,4238,1014],{"class":1270},[988,4240,4241],{"class":1083}," \"application\u002Fjson\"",[988,4243,1860],{"class":1002},[988,4245,4246,4249,4251,4253,4255],{"class":990,"line":1103},[988,4247,4248],{"class":1270},"      body:",[988,4250,1328],{"class":1290},[988,4252,1274],{"class":1002},[988,4254,1296],{"class":1277},[988,4256,4257],{"class":1002},"({\n",[988,4259,4260,4263,4266],{"class":990,"line":1119},[988,4261,4262],{"class":1270},"        event:",[988,4264,4265],{"class":1083}," \"taskCompleted\"",[988,4267,1488],{"class":1002},[988,4269,4270,4273,4275],{"class":990,"line":1134},[988,4271,4272],{"class":1270},"        task:",[988,4274,1742],{"class":1270},[988,4276,1488],{"class":1002},[988,4278,4279,4282,4284,4286,4288,4290],{"class":990,"line":1402},[988,4280,4281],{"class":1270},"        timestamp:",[988,4283,1661],{"class":994},[988,4285,1111],{"class":1277},[988,4287,2137],{"class":1002},[988,4289,2244],{"class":1277},[988,4291,4292],{"class":1002},"(),\n",[988,4294,4295],{"class":990,"line":1408},[988,4296,4297],{"class":1002},"      }),\n",[988,4299,4300],{"class":990,"line":1567},[988,4301,4302],{"class":1002},"    });\n",[988,4304,4305,4307,4309,4311,4313],{"class":990,"line":1573},[988,4306,4118],{"class":1002},[988,4308,3090],{"class":1615},[988,4310,1619],{"class":1002},[988,4312,3095],{"class":1270},[988,4314,1610],{"class":1002},[988,4316,4317,4319,4321,4323,4325,4328,4330,4332],{"class":990,"line":1584},[988,4318,4131],{"class":1270},[988,4320,1274],{"class":1002},[988,4322,3095],{"class":1277},[988,4324,1281],{"class":1002},[988,4326,4327],{"class":1083},"\"Webhook failed:\"",[988,4329,1287],{"class":1002},[988,4331,3095],{"class":1270},[988,4333,1358],{"class":1002},[988,4335,4336],{"class":990,"line":1929},[988,4337,1676],{"class":1002},[988,4339,4340],{"class":990,"line":1935},[988,4341,1137],{"class":1002},[969,4343,4344],{"id":4344},"下一步",[4346,4347,4348,4349,4352,4353,4356],"p",{},"查看",[2702,4350,66],{"href":4351},"\u002Fdocs\u002Fcore\u002Ftodo-list\u002Fexamples","了解实际应用场景，或浏览",[2702,4354,74],{"href":4355},"\u002Fdocs\u002Fcore\u002Ftodo-list\u002Frelated-tools","探索互补工具。",[4358,4359,4360],"style",{},"html pre.shiki code .sGiLm, html code.shiki .sGiLm{--shiki-default:#D73A49;--shiki-light:#D73A49;--shiki-dark:#569CD6}html pre.shiki code .s_0E6, html code.shiki .s_0E6{--shiki-default:#6F42C1;--shiki-light:#6F42C1;--shiki-dark:#4EC9B0}html pre.shiki code .svVIm, html code.shiki .svVIm{--shiki-default:#24292E;--shiki-light:#24292E;--shiki-dark:#D4D4D4}html pre.shiki code .szM7h, html code.shiki .szM7h{--shiki-default:#E36209;--shiki-light:#E36209;--shiki-dark:#9CDCFE}html pre.shiki code .sGmsN, html code.shiki .sGmsN{--shiki-default:#D73A49;--shiki-light:#D73A49;--shiki-dark:#D4D4D4}html pre.shiki code .s2-Xe, html code.shiki .s2-Xe{--shiki-default:#005CC5;--shiki-light:#005CC5;--shiki-dark:#4EC9B0}html pre.shiki code .sLEZ0, html code.shiki .sLEZ0{--shiki-default:#6A737D;--shiki-light:#6A737D;--shiki-dark:#6A9955}html pre.shiki code .sjj1j, html code.shiki .sjj1j{--shiki-default:#032F62;--shiki-light:#032F62;--shiki-dark:#CE9178}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html.light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html pre.shiki code .szTj3, html code.shiki .szTj3{--shiki-default:#24292E;--shiki-light:#24292E;--shiki-dark:#9CDCFE}html pre.shiki code .sqMzV, html code.shiki .sqMzV{--shiki-default:#6F42C1;--shiki-light:#6F42C1;--shiki-dark:#DCDCAA}html pre.shiki code .sdRU0, html code.shiki .sdRU0{--shiki-default:#005CC5;--shiki-light:#005CC5;--shiki-dark:#4FC1FF}html pre.shiki code .sSQ6O, html code.shiki .sSQ6O{--shiki-default:#005CC5;--shiki-light:#005CC5;--shiki-dark:#9CDCFE}html pre.shiki code .sLV08, html code.shiki .sLV08{--shiki-default:#005CC5;--shiki-light:#005CC5;--shiki-dark:#569CD6}html pre.shiki code .srAhW, html code.shiki .srAhW{--shiki-default:#D73A49;--shiki-light:#D73A49;--shiki-dark:#C586C0}html pre.shiki code .sewGd, html code.shiki .sewGd{--shiki-default:#005CC5;--shiki-light:#005CC5;--shiki-dark:#B5CEA8}html pre.shiki code .s7eq4, html code.shiki .s7eq4{--shiki-default:#032F62;--shiki-light:#032F62;--shiki-dark:#569CD6}",{"title":983,"searchDepth":1006,"depth":1006,"links":4362},[4363,4367,4371,4375,4379,4384,4388,4392,4396,4400],{"id":971,"depth":1006,"text":971,"children":4364},[4365,4366],{"id":975,"depth":1028,"text":976},{"id":1140,"depth":1028,"text":1141},{"id":1230,"depth":1006,"text":1231,"children":4368},[4369,4370],{"id":1234,"depth":1028,"text":1234},{"id":1253,"depth":1028,"text":1253},{"id":1444,"depth":1006,"text":1445,"children":4372},[4373,4374],{"id":1448,"depth":1028,"text":1448},{"id":1589,"depth":1028,"text":1589},{"id":1801,"depth":1006,"text":1801,"children":4376},[4377,4378],{"id":1804,"depth":1028,"text":1804},{"id":2045,"depth":1028,"text":2045},{"id":2103,"depth":1006,"text":2103,"children":4380},[4381,4382,4383],{"id":2106,"depth":1028,"text":2107},{"id":2171,"depth":1028,"text":2171},{"id":2668,"depth":1028,"text":2668},{"id":2990,"depth":1006,"text":2990,"children":4385},[4386,4387],{"id":2993,"depth":1028,"text":2994},{"id":3022,"depth":1028,"text":3022},{"id":3039,"depth":1006,"text":3039,"children":4389},[4390,4391],{"id":3042,"depth":1028,"text":3042},{"id":3139,"depth":1028,"text":3139},{"id":3372,"depth":1006,"text":3372,"children":4393},[4394,4395],{"id":3375,"depth":1028,"text":3375},{"id":3610,"depth":1028,"text":3610},{"id":3849,"depth":1006,"text":3849,"children":4397},[4398,4399],{"id":3852,"depth":1028,"text":3852},{"id":4166,"depth":1028,"text":4167},{"id":4344,"depth":1006,"text":4344},"待办事项清单工具的数据结构、本地存储 API 与集成示例","md",{},{"title":62,"description":4401},{"loc":360},"3Y2FLAZs7Rqc1J6dJqy8kukyjapjyxmr9_pe7DhxOm0",[4408,4408],null]