[{"data":1,"prerenderedAt":714},["ShallowReactive",2],{"navigation":3,"\u002Ffeatures\u002Fremote-data":252,"\u002Ffeatures\u002Fremote-data-surround":709},[4,89,128,171,213,217,248],{"title":5,"path":6,"stem":7,"children":8,"icon":88},"Guide","\u002Fguide","1.guide\u002F01.index",[9,10,14,18,22,26,30,34,38,42,73],{"title":5,"path":6,"stem":7},{"title":11,"path":12,"stem":13},"Install","\u002Fguide\u002Finstall","1.guide\u002F02.install",{"title":15,"path":16,"stem":17},"First widget","\u002Fguide\u002Ffirst-widget","1.guide\u002F03.first-widget",{"title":19,"path":20,"stem":21},"Concepts","\u002Fguide\u002Fconcepts","1.guide\u002F05.concepts",{"title":23,"path":24,"stem":25},"Apple data transport","\u002Fguide\u002Ftransport","1.guide\u002F06.transport",{"title":27,"path":28,"stem":29},"Doctor","\u002Fguide\u002Fdoctor","1.guide\u002F07.doctor",{"title":31,"path":32,"stem":33},"CLI","\u002Fguide\u002Fcli","1.guide\u002F08.cli",{"title":35,"path":36,"stem":37},"Core vs extended","\u002Fguide\u002Ftiers","1.guide\u002F09.tiers",{"title":39,"path":40,"stem":41},"Troubleshooting","\u002Fguide\u002Ftroubleshooting","1.guide\u002F10.troubleshooting",{"title":43,"path":44,"stem":45,"children":46,"icon":72},"Platform setup","\u002Fguide\u002Fsetup","1.guide\u002F12.setup\u002F1.index",[47,48,52,56,60,64,68],{"title":43,"path":44,"stem":45},{"title":49,"path":50,"stem":51},"Android setup","\u002Fguide\u002Fsetup\u002Fandroid","1.guide\u002F12.setup\u002F2.android",{"title":53,"path":54,"stem":55},"iOS setup","\u002Fguide\u002Fsetup\u002Fios","1.guide\u002F12.setup\u002F3.ios",{"title":57,"path":58,"stem":59},"macOS setup","\u002Fguide\u002Fsetup\u002Fmacos","1.guide\u002F12.setup\u002F4.macos",{"title":61,"path":62,"stem":63},"Windows setup","\u002Fguide\u002Fsetup\u002Fwindows","1.guide\u002F12.setup\u002F5.windows",{"title":65,"path":66,"stem":67},"Linux setup","\u002Fguide\u002Fsetup\u002Flinux","1.guide\u002F12.setup\u002F6.linux",{"title":69,"path":70,"stem":71},"Desktop webview","\u002Fguide\u002Fsetup\u002Fdesktop","1.guide\u002F12.setup\u002F7.desktop","i-lucide-monitor-smartphone",{"title":74,"icon":75,"path":76,"stem":77,"children":78,"page":87},"Recipes","i-lucide-chef-hat","\u002Fguide\u002Frecipes","1.guide\u002F13.recipes",[79,83],{"title":80,"path":81,"stem":82},"Multi-widget","\u002Fguide\u002Frecipes\u002Fmulti-widget","1.guide\u002F13.recipes\u002F4.multi-widget",{"title":84,"path":85,"stem":86},"Testing your widget","\u002Fguide\u002Frecipes\u002Ftesting","1.guide\u002F13.recipes\u002F5.testing",false,"i-lucide-rocket",{"title":90,"path":91,"stem":92,"children":93,"icon":127},"Elements","\u002Felements","2.elements\u002F1.index",[94,95,99,103,107,111,115,119,123],{"title":90,"path":91,"stem":92},{"title":96,"path":97,"stem":98},"Layout elements","\u002Felements\u002Flayout","2.elements\u002F2.layout",{"title":100,"path":101,"stem":102},"Text elements","\u002Felements\u002Ftext","2.elements\u002F3.text",{"title":104,"path":105,"stem":106},"Media elements","\u002Felements\u002Fmedia","2.elements\u002F4.media",{"title":108,"path":109,"stem":110},"Data elements","\u002Felements\u002Fdata","2.elements\u002F5.data",{"title":112,"path":113,"stem":114},"Interactive elements","\u002Felements\u002Finteractive","2.elements\u002F6.interactive",{"title":116,"path":117,"stem":118},"Spacing elements","\u002Felements\u002Fspacing","2.elements\u002F7.spacing",{"title":120,"path":121,"stem":122},"Style","\u002Felements\u002Fstyle","2.elements\u002F8.style",{"title":124,"path":125,"stem":126},"Colors","\u002Felements\u002Fcolors","2.elements\u002F9.colors","i-lucide-blocks",{"title":129,"path":130,"stem":131,"children":132,"icon":170},"Features","\u002Ffeatures","2.features\u002F01.index",[133,134,138,142,146,150,154,158,162,166],{"title":129,"path":130,"stem":131},{"title":135,"path":136,"stem":137},"Dynamic Island","\u002Ffeatures\u002Fdynamic-island","2.features\u002F02.dynamic-island",{"title":139,"path":140,"stem":141},"Interactive widgets","\u002Ffeatures\u002Finteractive","2.features\u002F03.interactive",{"title":143,"path":144,"stem":145},"Live activities","\u002Ffeatures\u002Flive-activities","2.features\u002F04.live-activities",{"title":147,"path":148,"stem":149},"Timelines and transitions","\u002Ffeatures\u002Ftimelines","2.features\u002F05.timelines",{"title":151,"path":152,"stem":153},"Remote data","\u002Ffeatures\u002Fremote-data","2.features\u002F06.remote-data",{"title":155,"path":156,"stem":157},"Widget updater","\u002Ffeatures\u002Fwidget-updater","2.features\u002F07.widget-updater",{"title":159,"path":160,"stem":161},"Instances","\u002Ffeatures\u002Finstances","2.features\u002F08.instances",{"title":163,"path":164,"stem":165},"Conditions, lists and templates","\u002Ffeatures\u002Fdynamic-content","2.features\u002F09.dynamic-content",{"title":167,"path":168,"stem":169},"Images","\u002Ffeatures\u002Fimages","2.features\u002F10.images","i-lucide-sparkles",{"title":172,"icon":173,"path":174,"stem":175,"children":176,"page":87},"API","i-lucide-file-code","\u002Fapi","3.api",[177,181,185,189,193,197,201,205,209],{"title":178,"path":179,"stem":180},"JavaScript API","\u002Fapi\u002Fjs","3.api\u002F1.js",{"title":182,"path":183,"stem":184},"JS reference","\u002Fapi\u002Freference","3.api\u002F2.reference",{"title":186,"path":187,"stem":188},"Rust API","\u002Fapi\u002Frust","3.api\u002F3.rust",{"title":190,"path":191,"stem":192},"Tauri commands","\u002Fapi\u002Fcommands","3.api\u002F4.commands",{"title":194,"path":195,"stem":196},"Plugin config","\u002Fapi\u002Fplugin-config","3.api\u002F5.plugin-config",{"title":198,"path":199,"stem":200},"Cargo features","\u002Fapi\u002Fcargo-features","3.api\u002F6.cargo-features",{"title":202,"path":203,"stem":204},"Environment variables","\u002Fapi\u002Fenv","3.api\u002F7.env",{"title":206,"path":207,"stem":208},"Permissions","\u002Fapi\u002Fpermissions","3.api\u002F8.permissions",{"title":210,"path":211,"stem":212},"JSON Schema","\u002Fapi\u002Fjson-schema","3.api\u002F9.json-schema",{"title":214,"path":215,"stem":216},"Showcase","\u002Fshowcase","4.showcase",{"title":218,"path":219,"stem":220,"children":221,"icon":247},"Contributing","\u002Fcontributing","5.contributing\u002F1.index",[222,223,227,231,235,239,243],{"title":218,"path":219,"stem":220},{"title":224,"path":225,"stem":226},"Development guide","\u002Fcontributing\u002Fdevelopment","5.contributing\u002F2.development",{"title":228,"path":229,"stem":230},"Render testing (config → geometry \u002F pixels)","\u002Fcontributing\u002Frender-testing","5.contributing\u002F3.render-testing",{"title":232,"path":233,"stem":234},"Visual stand (Level-2 pixels)","\u002Fcontributing\u002Fvisual-stand","5.contributing\u002F4.visual-stand",{"title":236,"path":237,"stem":238},"Linux harness (Docker)","\u002Fcontributing\u002Flinux-harness","5.contributing\u002F5.linux-harness",{"title":240,"path":241,"stem":242},"Windows surface split","\u002Fcontributing\u002Fwindows-surfaces","5.contributing\u002F6.windows-surfaces",{"title":244,"path":245,"stem":246},"Mutation testing","\u002Fcontributing\u002Fmutation-testing","5.contributing\u002F7.mutation-testing","i-lucide-git-pull-request",{"title":249,"path":250,"stem":251},"Changelog","\u002Fchangelog","6.changelog",{"id":253,"title":151,"body":254,"description":703,"extension":704,"generated":87,"links":705,"meta":706,"navigation":538,"path":152,"seo":707,"stem":153,"__hash__":708},"docs\u002F2.features\u002F06.remote-data.md",{"type":255,"value":256,"toc":699},"minimark",[257,266,271,287,315,318,339,575,631,695],[258,259,260,261,265],"p",{},"Keep the layout once and send only the values: ",[262,263,264],"code",{},"{{data.path}}"," placeholders resolve on\nevery platform from the app's data or from a URL the widget fetches itself.",[267,268],"demo-video",{"caption":269,"src":270},"setWidgetData pushes values; digits roll with transition numeric (desktop renderer).","live-data",[272,273,275,276,279,280,279,283,286],"h2",{"id":274},"data-data-setwidgetdata-source","Data (",[262,277,278],{},"data",", ",[262,281,282],{},"setWidgetData",[262,284,285],{},"source",")",[258,288,289,291,292,279,295,298,299,302,303,306,307,310,311,314],{},[262,290,264],{}," reads a value: ",[262,293,294],{},"{{data.city}}",[262,296,297],{},"{{data.days.0.hi}}",". Integers print as\nintegers, whole floats as integers up to 1e21 (",[262,300,301],{},"21.0"," → ",[262,304,305],{},"21","), other numbers as the shortest\ndecimal without an exponent; a missing value prints nothing. An object printed whole\n(",[262,308,309],{},"{{data.obj}}",") is JSON, but key order and escaping differ between platforms — don't rely\non its exact text. Placeholders fill strings only\n(text, labels, URLs) — numeric fields such as ",[262,312,313],{},"progress.value"," stay literal.",[258,316,317],{},"Three layers, later wins per top-level key:",[319,320,321,328,334],"ol",{},[322,323,324,327],"li",{},[262,325,326],{},"config.data"," — defaults in the config.",[322,329,330,333],{},[262,331,332],{},"setWidgetData(widgetId, data)"," — the app updates values without resending the layout.",[322,335,336,338],{},[262,337,285],{}," — JSON the widget fetches itself.",[340,341,346],"pre",{"className":342,"code":343,"language":344,"meta":345,"style":345},"language-ts shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","await setWidgetConfig({\n  data: { city: \"London\" },\n  source: {\n    url: \"https:\u002F\u002Fapi.example.com\u002Fweather?city=London&lang={{locale}}\",\n    refreshMinutes: 30,\n    headers: { Authorization: \"Bearer …\" },\n  },\n  small: { type: \"text\", content: \"{{data.city}} {{data.temp}}°\" },\n}, undefined, \"weather\");\n\nawait setWidgetData(\"weather\", { temp: 21 });\n","ts","",[262,347,348,369,400,411,429,443,467,473,512,533,540],{"__ignoreMap":345},[349,350,353,357,361,365],"span",{"class":351,"line":352},"line",1,[349,354,356],{"class":355},"s7zQu","await",[349,358,360],{"class":359},"s2Zo4"," setWidgetConfig",[349,362,364],{"class":363},"sTEyZ","(",[349,366,368],{"class":367},"sMK4o","{\n",[349,370,372,376,379,382,385,387,390,394,397],{"class":351,"line":371},2,[349,373,375],{"class":374},"swJcz","  data",[349,377,378],{"class":367},":",[349,380,381],{"class":367}," {",[349,383,384],{"class":374}," city",[349,386,378],{"class":367},[349,388,389],{"class":367}," \"",[349,391,393],{"class":392},"sfazB","London",[349,395,396],{"class":367},"\"",[349,398,399],{"class":367}," },\n",[349,401,403,406,408],{"class":351,"line":402},3,[349,404,405],{"class":374},"  source",[349,407,378],{"class":367},[349,409,410],{"class":367}," {\n",[349,412,414,417,419,421,424,426],{"class":351,"line":413},4,[349,415,416],{"class":374},"    url",[349,418,378],{"class":367},[349,420,389],{"class":367},[349,422,423],{"class":392},"https:\u002F\u002Fapi.example.com\u002Fweather?city=London&lang={{locale}}",[349,425,396],{"class":367},[349,427,428],{"class":367},",\n",[349,430,432,435,437,441],{"class":351,"line":431},5,[349,433,434],{"class":374},"    refreshMinutes",[349,436,378],{"class":367},[349,438,440],{"class":439},"sbssI"," 30",[349,442,428],{"class":367},[349,444,446,449,451,453,456,458,460,463,465],{"class":351,"line":445},6,[349,447,448],{"class":374},"    headers",[349,450,378],{"class":367},[349,452,381],{"class":367},[349,454,455],{"class":374}," Authorization",[349,457,378],{"class":367},[349,459,389],{"class":367},[349,461,462],{"class":392},"Bearer …",[349,464,396],{"class":367},[349,466,399],{"class":367},[349,468,470],{"class":351,"line":469},7,[349,471,472],{"class":367},"  },\n",[349,474,476,479,481,483,486,488,490,493,495,498,501,503,505,508,510],{"class":351,"line":475},8,[349,477,478],{"class":374},"  small",[349,480,378],{"class":367},[349,482,381],{"class":367},[349,484,485],{"class":374}," type",[349,487,378],{"class":367},[349,489,389],{"class":367},[349,491,492],{"class":392},"text",[349,494,396],{"class":367},[349,496,497],{"class":367},",",[349,499,500],{"class":374}," content",[349,502,378],{"class":367},[349,504,389],{"class":367},[349,506,507],{"class":392},"{{data.city}} {{data.temp}}°",[349,509,396],{"class":367},[349,511,399],{"class":367},[349,513,515,518,521,523,526,528,530],{"class":351,"line":514},9,[349,516,517],{"class":367},"},",[349,519,520],{"class":367}," undefined,",[349,522,389],{"class":367},[349,524,525],{"class":392},"weather",[349,527,396],{"class":367},[349,529,286],{"class":363},[349,531,532],{"class":367},";\n",[349,534,536],{"class":351,"line":535},10,[349,537,539],{"emptyLinePlaceholder":538},true,"\n",[349,541,543,545,548,550,552,554,556,558,560,563,565,568,571,573],{"class":351,"line":542},11,[349,544,356],{"class":355},[349,546,547],{"class":359}," setWidgetData",[349,549,364],{"class":363},[349,551,396],{"class":367},[349,553,525],{"class":392},[349,555,396],{"class":367},[349,557,497],{"class":367},[349,559,381],{"class":367},[349,561,562],{"class":374}," temp",[349,564,378],{"class":367},[349,566,567],{"class":439}," 21",[349,569,570],{"class":367}," }",[349,572,286],{"class":363},[349,574,532],{"class":367},[258,576,577,579,580,583,584,587,588,591,592,595,596,599,600,603,604,607,608,611,612,614,615,618,619,622,623,626,627,630],{},[262,578,285],{}," rules: ",[262,581,582],{},"https:\u002F\u002F"," only (",[262,585,586],{},"http:\u002F\u002Flocalhost"," \u002F ",[262,589,590],{},"127.0.0.1"," exactly for development;\nlook-alike hosts are refused), ",[262,593,594],{},"GET"," or ",[262,597,598],{},"POST"," (",[262,601,602],{},"body","), response a JSON value up to 256 KiB\n(of UTF-8 bytes on desktop), ",[262,605,606],{},"refreshMinutes"," 15–1440 (default 30). The\nlast good response is cached per placement; a failed fetch keeps it. ",[262,609,610],{},"url",", header values\nand ",[262,613,602],{}," may use only ",[262,616,617],{},"{{locale}}"," and ",[262,620,621],{},"{{instance}}"," (no ",[262,624,625],{},"{{data.…}}",") (one request per placement, see\n",[628,629,159],"a",{"href":160},").",[632,633,634,647],"table",{},[635,636,637],"thead",{},[638,639,640,644],"tr",{},[641,642,643],"th",{},"Platform",[641,645,646],{},"Fetch",[648,649,650,659,669,684],"tbody",{},[638,651,652,656],{},[653,654,655],"td",{},"iOS \u002F macOS",[653,657,658],{},"In the timeline request (8 s budget), cache in the extension",[638,660,661,664],{},[653,662,663],{},"Android",[653,665,666,667],{},"On redraw when due; an inexact RTC alarm redraws when the next fetch is due (not waking the device); a failed fetch retries after ",[262,668,606],{},[638,670,671,674],{},[653,672,673],{},"Desktop window",[653,675,676,677,679,680,683],{},"Each time a window opens, then every ",[262,678,606],{},"; cached under ",[262,681,682],{},"fetched:{id}"," in the shared store",[638,685,686,689],{},[653,687,688],{},"Windows Widgets Board",[653,690,691,692,694],{},"Not fetched — call ",[262,693,282],{}," from the app",[696,697,698],"style",{},"html pre.shiki code .s7zQu, html code.shiki .s7zQu{--shiki-light:#39ADB5;--shiki-light-font-style:italic;--shiki-default:#89DDFF;--shiki-default-font-style:italic;--shiki-dark:#89DDFF;--shiki-dark-font-style:italic}html pre.shiki code .s2Zo4, html code.shiki .s2Zo4{--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF}html pre.shiki code .sTEyZ, html code.shiki .sTEyZ{--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8}html pre.shiki code .sMK4o, html code.shiki .sMK4o{--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF}html pre.shiki code .swJcz, html code.shiki .swJcz{--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178}html pre.shiki code .sfazB, html code.shiki .sfazB{--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D}html pre.shiki code .sbssI, html code.shiki .sbssI{--shiki-light:#F76D47;--shiki-default:#F78C6C;--shiki-dark:#F78C6C}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 .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 .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);}",{"title":345,"searchDepth":371,"depth":402,"links":700},[701],{"id":274,"depth":371,"text":702},"Data (data, setWidgetData, source)","Fill a widget from your app (setWidgetData) or let it fetch JSON by itself (source).","md",null,{},{"title":151,"description":703},"XGYLjDQhI7k4i2joHZ_4WX_JdhEQ-VibnT9H2KsWBsI",[710,712],{"title":147,"path":148,"stem":149,"description":711,"children":-1},"Switch a widget to prepared layouts at set times, and animate what changes between them.",{"title":155,"path":156,"stem":157,"description":713,"children":-1},"[object Object]",1794660587928]