[{"data":1,"prerenderedAt":9858},["ShallowReactive",2],{"docs-nav":3,"doc-latest\u002Fgetting-started\u002Ftutorial":691,"docs-prevnext-flat":9539},[4,27,51,653,663,670,683],{"title":5,"order":6,"key":7,"items":8,"packages":26},"Getting Started",1,"getting-started",[9,11,15,19,23],{"path":10,"title":5,"order":6},"\u002Fdocs\u002Flatest\u002Fgetting-started",{"path":12,"title":13,"order":14},"\u002Fdocs\u002Flatest\u002Fgetting-started\u002Finstallation","Installation",3,{"path":16,"title":17,"order":18},"\u002Fdocs\u002Flatest\u002Fgetting-started\u002Fconfiguration","Configuration",4,{"path":20,"title":21,"order":22},"\u002Fdocs\u002Flatest\u002Fgetting-started\u002Fquick-start","Quick Start",50,{"path":24,"title":25,"order":22},"\u002Fdocs\u002Flatest\u002Fgetting-started\u002Ftutorial","Tutorial: Build a Notes Plugin",{},{"title":28,"order":29,"key":30,"items":31,"packages":50},"Core Concepts",2,"concepts",[32,35,38,41,44,47],{"path":33,"title":34,"order":22},"\u002Fdocs\u002Flatest\u002Fconcepts\u002Farchitecture","Architecture Overview",{"path":36,"title":37,"order":22},"\u002Fdocs\u002Flatest\u002Fconcepts\u002Fhooks","Hook System",{"path":39,"title":40,"order":22},"\u002Fdocs\u002Flatest\u002Fconcepts\u002Fplugin-context","Plugin Context",{"path":42,"title":43,"order":22},"\u002Fdocs\u002Flatest\u002Fconcepts\u002Flifecycle","Request Lifecycle",{"path":45,"title":46,"order":22},"\u002Fdocs\u002Flatest\u002Fconcepts\u002Fcontainer","Service Container",{"path":48,"title":49,"order":22},"\u002Fdocs\u002Flatest\u002Fconcepts\u002Fservice-providers","Service Providers",{},{"title":52,"order":14,"key":53,"items":54,"packages":55},"Packages","packages",[],{"wpzylos-assets":56,"wpzylos-cli-core":91,"wpzylos-cli-devtool":114,"wpzylos-config":136,"wpzylos-container":158,"wpzylos-core":180,"wpzylos-database":202,"wpzylos-events":224,"wpzylos-hooks":246,"wpzylos-http":269,"wpzylos-i18n":291,"wpzylos-logger":313,"wpzylos-mail":335,"wpzylos-mcp":357,"wpzylos-migrations":376,"wpzylos-model":398,"wpzylos-notification":420,"wpzylos-queue":442,"wpzylos-requirements":464,"wpzylos-routing":486,"wpzylos-scaffold":514,"wpzylos-scheduler":545,"wpzylos-security":567,"wpzylos-validation":587,"wpzylos-views":609,"wpzylos-wp-cli":631},[57,60,63,65,67,71,75,79,83,87],{"path":58,"title":59,"order":6},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-assets","WPZylos Assets",{"path":61,"title":62,"order":29},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-assets\u002Foverview","Overview",{"path":64,"title":13,"order":14},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-assets\u002Finstallation",{"path":66,"title":17,"order":18},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-assets\u002Fconfiguration",{"path":68,"title":69,"order":70},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-assets\u002Fusage","Usage",5,{"path":72,"title":73,"order":74},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-assets\u002Fapi-reference","API Reference",6,{"path":76,"title":77,"order":78},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-assets\u002Fexamples","Examples",7,{"path":80,"title":81,"order":82},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-assets\u002Ftesting","Testing",8,{"path":84,"title":85,"order":86},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-assets\u002Fsecurity","Security",9,{"path":88,"title":89,"order":90},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-assets\u002Ftroubleshooting","Troubleshooting",10,[92,95,97,99,101,103,105,107,109,112],{"path":93,"title":94,"order":6},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-cli-core","WPZylos CLI Core Documentation",{"path":96,"title":62,"order":29},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-cli-core\u002Foverview",{"path":98,"title":13,"order":14},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-cli-core\u002Finstallation",{"path":100,"title":17,"order":18},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-cli-core\u002Fconfiguration",{"path":102,"title":69,"order":70},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-cli-core\u002Fusage",{"path":104,"title":73,"order":74},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-cli-core\u002Fapi-reference",{"path":106,"title":77,"order":78},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-cli-core\u002Fexamples",{"path":108,"title":81,"order":82},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-cli-core\u002Ftesting",{"path":110,"title":111,"order":86},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-cli-core\u002Fsecurity","Security Notes",{"path":113,"title":89,"order":90},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-cli-core\u002Ftroubleshooting",[115,118,120,122,124,126,128,130,132,134],{"path":116,"title":117,"order":6},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-cli-devtool","WPZylos CLI Devtool Documentation",{"path":119,"title":62,"order":29},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-cli-devtool\u002Foverview",{"path":121,"title":13,"order":14},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-cli-devtool\u002Finstallation",{"path":123,"title":17,"order":18},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-cli-devtool\u002Fconfiguration",{"path":125,"title":69,"order":70},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-cli-devtool\u002Fusage",{"path":127,"title":73,"order":74},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-cli-devtool\u002Fapi-reference",{"path":129,"title":77,"order":78},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-cli-devtool\u002Fexamples",{"path":131,"title":81,"order":82},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-cli-devtool\u002Ftesting",{"path":133,"title":111,"order":86},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-cli-devtool\u002Fsecurity",{"path":135,"title":89,"order":90},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-cli-devtool\u002Ftroubleshooting",[137,140,142,144,146,148,150,152,154,156],{"path":138,"title":139,"order":6},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-config","WPZylos Config",{"path":141,"title":62,"order":29},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-config\u002Foverview",{"path":143,"title":13,"order":14},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-config\u002Finstallation",{"path":145,"title":17,"order":18},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-config\u002Fconfiguration",{"path":147,"title":69,"order":70},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-config\u002Fusage",{"path":149,"title":73,"order":74},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-config\u002Fapi-reference",{"path":151,"title":77,"order":78},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-config\u002Fexamples",{"path":153,"title":81,"order":82},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-config\u002Ftesting",{"path":155,"title":111,"order":86},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-config\u002Fsecurity",{"path":157,"title":89,"order":90},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-config\u002Ftroubleshooting",[159,162,164,166,168,170,172,174,176,178],{"path":160,"title":161,"order":6},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-container","WPZylos Container",{"path":163,"title":62,"order":29},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-container\u002Foverview",{"path":165,"title":13,"order":14},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-container\u002Finstallation",{"path":167,"title":17,"order":18},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-container\u002Fconfiguration",{"path":169,"title":69,"order":70},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-container\u002Fusage",{"path":171,"title":73,"order":74},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-container\u002Fapi-reference",{"path":173,"title":77,"order":78},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-container\u002Fexamples",{"path":175,"title":81,"order":82},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-container\u002Ftesting",{"path":177,"title":111,"order":86},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-container\u002Fsecurity",{"path":179,"title":89,"order":90},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-container\u002Ftroubleshooting",[181,184,186,188,190,192,194,196,198,200],{"path":182,"title":183,"order":6},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-core","WPZylos Core",{"path":185,"title":62,"order":29},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-core\u002Foverview",{"path":187,"title":13,"order":14},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-core\u002Finstallation",{"path":189,"title":17,"order":18},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-core\u002Fconfiguration",{"path":191,"title":69,"order":70},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-core\u002Fusage",{"path":193,"title":73,"order":74},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-core\u002Fapi-reference",{"path":195,"title":77,"order":78},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-core\u002Fexamples",{"path":197,"title":81,"order":82},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-core\u002Ftesting",{"path":199,"title":111,"order":86},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-core\u002Fsecurity",{"path":201,"title":89,"order":90},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-core\u002Ftroubleshooting",[203,206,208,210,212,214,216,218,220,222],{"path":204,"title":205,"order":6},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-database","WPZylos Database",{"path":207,"title":62,"order":29},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-database\u002Foverview",{"path":209,"title":13,"order":14},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-database\u002Finstallation",{"path":211,"title":17,"order":18},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-database\u002Fconfiguration",{"path":213,"title":69,"order":70},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-database\u002Fusage",{"path":215,"title":73,"order":74},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-database\u002Fapi-reference",{"path":217,"title":77,"order":78},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-database\u002Fexamples",{"path":219,"title":81,"order":82},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-database\u002Ftesting",{"path":221,"title":111,"order":86},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-database\u002Fsecurity",{"path":223,"title":89,"order":90},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-database\u002Ftroubleshooting",[225,228,230,232,234,236,238,240,242,244],{"path":226,"title":227,"order":6},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-events","WPZylos Events",{"path":229,"title":62,"order":29},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-events\u002Foverview",{"path":231,"title":13,"order":14},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-events\u002Finstallation",{"path":233,"title":17,"order":18},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-events\u002Fconfiguration",{"path":235,"title":69,"order":70},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-events\u002Fusage",{"path":237,"title":73,"order":74},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-events\u002Fapi-reference",{"path":239,"title":77,"order":78},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-events\u002Fexamples",{"path":241,"title":81,"order":82},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-events\u002Ftesting",{"path":243,"title":85,"order":86},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-events\u002Fsecurity",{"path":245,"title":89,"order":90},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-events\u002Ftroubleshooting",[247,250,252,254,256,259,261,263,265,267],{"path":248,"title":249,"order":6},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-hooks","WPZylos Hooks",{"path":251,"title":62,"order":29},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-hooks\u002Foverview",{"path":253,"title":13,"order":14},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-hooks\u002Finstallation",{"path":255,"title":17,"order":18},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-hooks\u002Fconfiguration",{"path":257,"title":258,"order":70},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-hooks\u002Fusage","Usage Guide",{"path":260,"title":73,"order":74},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-hooks\u002Fapi-reference",{"path":262,"title":77,"order":78},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-hooks\u002Fexamples",{"path":264,"title":81,"order":82},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-hooks\u002Ftesting",{"path":266,"title":111,"order":86},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-hooks\u002Fsecurity",{"path":268,"title":89,"order":90},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-hooks\u002Ftroubleshooting",[270,273,275,277,279,281,283,285,287,289],{"path":271,"title":272,"order":6},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-http","WPZylos HTTP",{"path":274,"title":62,"order":29},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-http\u002Foverview",{"path":276,"title":13,"order":14},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-http\u002Finstallation",{"path":278,"title":17,"order":18},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-http\u002Fconfiguration",{"path":280,"title":258,"order":70},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-http\u002Fusage",{"path":282,"title":73,"order":74},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-http\u002Fapi-reference",{"path":284,"title":77,"order":78},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-http\u002Fexamples",{"path":286,"title":81,"order":82},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-http\u002Ftesting",{"path":288,"title":111,"order":86},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-http\u002Fsecurity",{"path":290,"title":89,"order":90},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-http\u002Ftroubleshooting",[292,295,297,299,301,303,305,307,309,311],{"path":293,"title":294,"order":6},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-i18n","WPZylos I18n",{"path":296,"title":62,"order":29},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-i18n\u002Foverview",{"path":298,"title":13,"order":14},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-i18n\u002Finstallation",{"path":300,"title":17,"order":18},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-i18n\u002Fconfiguration",{"path":302,"title":69,"order":70},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-i18n\u002Fusage",{"path":304,"title":73,"order":74},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-i18n\u002Fapi-reference",{"path":306,"title":77,"order":78},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-i18n\u002Fexamples",{"path":308,"title":81,"order":82},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-i18n\u002Ftesting",{"path":310,"title":111,"order":86},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-i18n\u002Fsecurity",{"path":312,"title":89,"order":90},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-i18n\u002Ftroubleshooting",[314,317,319,321,323,325,327,329,331,333],{"path":315,"title":316,"order":6},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-logger","WPZylos Logger",{"path":318,"title":62,"order":29},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-logger\u002Foverview",{"path":320,"title":13,"order":14},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-logger\u002Finstallation",{"path":322,"title":17,"order":18},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-logger\u002Fconfiguration",{"path":324,"title":69,"order":70},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-logger\u002Fusage",{"path":326,"title":73,"order":74},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-logger\u002Fapi-reference",{"path":328,"title":77,"order":78},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-logger\u002Fexamples",{"path":330,"title":81,"order":82},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-logger\u002Ftesting",{"path":332,"title":111,"order":86},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-logger\u002Fsecurity",{"path":334,"title":89,"order":90},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-logger\u002Ftroubleshooting",[336,339,341,343,345,347,349,351,353,355],{"path":337,"title":338,"order":6},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-mail","WPZylos Mail",{"path":340,"title":62,"order":29},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-mail\u002Foverview",{"path":342,"title":13,"order":14},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-mail\u002Finstallation",{"path":344,"title":17,"order":18},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-mail\u002Fconfiguration",{"path":346,"title":258,"order":70},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-mail\u002Fusage",{"path":348,"title":73,"order":74},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-mail\u002Fapi-reference",{"path":350,"title":77,"order":78},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-mail\u002Fexamples",{"path":352,"title":81,"order":82},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-mail\u002Ftesting",{"path":354,"title":85,"order":86},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-mail\u002Fsecurity",{"path":356,"title":89,"order":90},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-mail\u002Ftroubleshooting",[358,361,363,365,367,369,371,373],{"path":359,"title":360,"order":6},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-mcp","WPZylos MCP",{"path":362,"title":62,"order":29},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-mcp\u002Foverview",{"path":364,"title":13,"order":14},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-mcp\u002Finstallation",{"path":366,"title":258,"order":70},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-mcp\u002Fusage",{"path":368,"title":73,"order":74},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-mcp\u002Fapi-reference",{"path":370,"title":77,"order":78},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-mcp\u002Fexamples",{"path":372,"title":89,"order":90},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-mcp\u002Ftroubleshooting",{"path":374,"title":375,"order":22},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-mcp\u002Fcompanion-mcps","MCP Setup Guide",[377,380,382,384,386,388,390,392,394,396],{"path":378,"title":379,"order":6},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-migrations","WPZylos Migrations",{"path":381,"title":62,"order":29},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-migrations\u002Foverview",{"path":383,"title":13,"order":14},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-migrations\u002Finstallation",{"path":385,"title":17,"order":18},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-migrations\u002Fconfiguration",{"path":387,"title":69,"order":70},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-migrations\u002Fusage",{"path":389,"title":73,"order":74},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-migrations\u002Fapi-reference",{"path":391,"title":77,"order":78},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-migrations\u002Fexamples",{"path":393,"title":81,"order":82},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-migrations\u002Ftesting",{"path":395,"title":111,"order":86},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-migrations\u002Fsecurity",{"path":397,"title":89,"order":90},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-migrations\u002Ftroubleshooting",[399,402,404,406,408,410,412,414,416,418],{"path":400,"title":401,"order":6},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-model","WPZylos Model",{"path":403,"title":62,"order":29},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-model\u002Foverview",{"path":405,"title":13,"order":14},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-model\u002Finstallation",{"path":407,"title":17,"order":18},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-model\u002Fconfiguration",{"path":409,"title":69,"order":70},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-model\u002Fusage",{"path":411,"title":73,"order":74},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-model\u002Fapi-reference",{"path":413,"title":77,"order":78},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-model\u002Fexamples",{"path":415,"title":81,"order":82},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-model\u002Ftesting",{"path":417,"title":85,"order":86},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-model\u002Fsecurity",{"path":419,"title":89,"order":90},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-model\u002Ftroubleshooting",[421,424,426,428,430,432,434,436,438,440],{"path":422,"title":423,"order":6},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-notification","WPZylos Notification",{"path":425,"title":62,"order":29},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-notification\u002Foverview",{"path":427,"title":13,"order":14},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-notification\u002Finstallation",{"path":429,"title":17,"order":18},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-notification\u002Fconfiguration",{"path":431,"title":69,"order":70},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-notification\u002Fusage",{"path":433,"title":73,"order":74},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-notification\u002Fapi-reference",{"path":435,"title":77,"order":78},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-notification\u002Fexamples",{"path":437,"title":81,"order":82},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-notification\u002Ftesting",{"path":439,"title":85,"order":86},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-notification\u002Fsecurity",{"path":441,"title":89,"order":90},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-notification\u002Ftroubleshooting",[443,446,448,450,452,454,456,458,460,462],{"path":444,"title":445,"order":6},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-queue","WPZylos Queue",{"path":447,"title":62,"order":29},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-queue\u002Foverview",{"path":449,"title":13,"order":14},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-queue\u002Finstallation",{"path":451,"title":17,"order":18},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-queue\u002Fconfiguration",{"path":453,"title":69,"order":70},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-queue\u002Fusage",{"path":455,"title":73,"order":74},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-queue\u002Fapi-reference",{"path":457,"title":77,"order":78},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-queue\u002Fexamples",{"path":459,"title":81,"order":82},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-queue\u002Ftesting",{"path":461,"title":85,"order":86},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-queue\u002Fsecurity",{"path":463,"title":89,"order":90},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-queue\u002Ftroubleshooting",[465,468,470,472,474,476,478,480,482,484],{"path":466,"title":467,"order":6},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-requirements","WPZylos Requirements",{"path":469,"title":62,"order":29},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-requirements\u002Foverview",{"path":471,"title":13,"order":14},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-requirements\u002Finstallation",{"path":473,"title":17,"order":18},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-requirements\u002Fconfiguration",{"path":475,"title":69,"order":70},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-requirements\u002Fusage",{"path":477,"title":73,"order":74},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-requirements\u002Fapi-reference",{"path":479,"title":77,"order":78},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-requirements\u002Fexamples",{"path":481,"title":81,"order":82},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-requirements\u002Ftesting",{"path":483,"title":85,"order":86},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-requirements\u002Fsecurity",{"path":485,"title":89,"order":90},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-requirements\u002Ftroubleshooting",[487,490,492,494,496,498,500,502,504,506,508,511],{"path":488,"title":489,"order":6},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-routing","WPZylos Routing",{"path":491,"title":62,"order":29},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-routing\u002Foverview",{"path":493,"title":13,"order":14},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-routing\u002Finstallation",{"path":495,"title":17,"order":18},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-routing\u002Fconfiguration",{"path":497,"title":69,"order":70},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-routing\u002Fusage",{"path":499,"title":73,"order":74},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-routing\u002Fapi-reference",{"path":501,"title":77,"order":78},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-routing\u002Fexamples",{"path":503,"title":81,"order":82},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-routing\u002Ftesting",{"path":505,"title":85,"order":86},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-routing\u002Fsecurity",{"path":507,"title":89,"order":90},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-routing\u002Ftroubleshooting",{"path":509,"title":510,"order":22},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-routing\u002Fajax","AJAX Routing",{"path":512,"title":513,"order":22},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-routing\u002Frest-api","REST API Routing",[515,518,520,522,524,526,528,530,532,535,537,539,542],{"path":516,"title":517,"order":6},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-scaffold","WPZylos Scaffold Documentation",{"path":519,"title":62,"order":29},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-scaffold\u002Foverview",{"path":521,"title":13,"order":14},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-scaffold\u002Finstallation",{"path":523,"title":17,"order":18},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-scaffold\u002Fconfiguration",{"path":525,"title":69,"order":70},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-scaffold\u002Fusage",{"path":527,"title":73,"order":74},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-scaffold\u002Fapi-reference",{"path":529,"title":77,"order":78},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-scaffold\u002Fexamples",{"path":531,"title":81,"order":82},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-scaffold\u002Ftesting",{"path":533,"title":534,"order":82},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-scaffold\u002Fui","UI Components (DaisyUI)",{"path":536,"title":111,"order":86},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-scaffold\u002Fsecurity",{"path":538,"title":89,"order":90},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-scaffold\u002Ftroubleshooting",{"path":540,"title":541,"order":22},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-scaffold\u002Fcli-reference","Scaffold CLI Reference",{"path":543,"title":544,"order":22},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-scaffold\u002Fwalkthrough","Scaffold Walkthrough",[546,549,551,553,555,557,559,561,563,565],{"path":547,"title":548,"order":6},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-scheduler","WPZylos Scheduler",{"path":550,"title":62,"order":29},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-scheduler\u002Foverview",{"path":552,"title":13,"order":14},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-scheduler\u002Finstallation",{"path":554,"title":17,"order":18},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-scheduler\u002Fconfiguration",{"path":556,"title":69,"order":70},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-scheduler\u002Fusage",{"path":558,"title":73,"order":74},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-scheduler\u002Fapi-reference",{"path":560,"title":77,"order":78},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-scheduler\u002Fexamples",{"path":562,"title":81,"order":82},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-scheduler\u002Ftesting",{"path":564,"title":85,"order":86},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-scheduler\u002Fsecurity",{"path":566,"title":89,"order":90},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-scheduler\u002Ftroubleshooting",[568,571,573,575,577,579,581,583,585],{"path":569,"title":570,"order":6},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-security","WPZylos Security",{"path":572,"title":62,"order":29},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-security\u002Foverview",{"path":574,"title":13,"order":14},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-security\u002Finstallation",{"path":576,"title":17,"order":18},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-security\u002Fconfiguration",{"path":578,"title":258,"order":70},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-security\u002Fusage",{"path":580,"title":73,"order":74},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-security\u002Fapi-reference",{"path":582,"title":77,"order":78},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-security\u002Fexamples",{"path":584,"title":81,"order":82},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-security\u002Ftesting",{"path":586,"title":89,"order":90},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-security\u002Ftroubleshooting",[588,591,593,595,597,599,601,603,605,607],{"path":589,"title":590,"order":6},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-validation","WPZylos Validation",{"path":592,"title":62,"order":29},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-validation\u002Foverview",{"path":594,"title":13,"order":14},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-validation\u002Finstallation",{"path":596,"title":17,"order":18},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-validation\u002Fconfiguration",{"path":598,"title":258,"order":70},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-validation\u002Fusage",{"path":600,"title":73,"order":74},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-validation\u002Fapi-reference",{"path":602,"title":77,"order":78},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-validation\u002Fexamples",{"path":604,"title":81,"order":82},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-validation\u002Ftesting",{"path":606,"title":111,"order":86},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-validation\u002Fsecurity",{"path":608,"title":89,"order":90},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-validation\u002Ftroubleshooting",[610,613,615,617,619,621,623,625,627,629],{"path":611,"title":612,"order":6},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-views","WPZylos Views",{"path":614,"title":62,"order":29},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-views\u002Foverview",{"path":616,"title":13,"order":14},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-views\u002Finstallation",{"path":618,"title":17,"order":18},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-views\u002Fconfiguration",{"path":620,"title":258,"order":70},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-views\u002Fusage",{"path":622,"title":73,"order":74},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-views\u002Fapi-reference",{"path":624,"title":77,"order":78},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-views\u002Fexamples",{"path":626,"title":81,"order":82},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-views\u002Ftesting",{"path":628,"title":111,"order":86},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-views\u002Fsecurity",{"path":630,"title":89,"order":90},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-views\u002Ftroubleshooting",[632,635,637,639,641,643,645,647,649,651],{"path":633,"title":634,"order":6},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-wp-cli","WPZylos WP-CLI",{"path":636,"title":62,"order":29},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-wp-cli\u002Foverview",{"path":638,"title":13,"order":14},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-wp-cli\u002Finstallation",{"path":640,"title":17,"order":18},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-wp-cli\u002Fconfiguration",{"path":642,"title":69,"order":70},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-wp-cli\u002Fusage",{"path":644,"title":73,"order":74},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-wp-cli\u002Fapi-reference",{"path":646,"title":77,"order":78},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-wp-cli\u002Fexamples",{"path":648,"title":81,"order":82},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-wp-cli\u002Ftesting",{"path":650,"title":111,"order":86},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-wp-cli\u002Fsecurity",{"path":652,"title":89,"order":90},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fwpzylos-wp-cli\u002Ftroubleshooting",{"title":654,"order":18,"key":655,"items":656,"packages":662},"Scaffold","scaffold",[657,660],{"path":658,"title":659,"order":6},"\u002Fdocs\u002Flatest\u002Fscaffold","Scaffold Guide",{"path":661,"title":544,"order":22},"\u002Fdocs\u002Flatest\u002Fscaffold\u002Fwalkthrough",{},{"title":85,"order":70,"key":664,"items":665,"packages":669},"security",[666],{"path":667,"title":668,"order":29},"\u002Fdocs\u002Flatest\u002Fsecurity\u002Foverview","Security Overview",{},{"title":81,"order":74,"key":671,"items":672,"packages":682},"testing",[673,676,679],{"path":674,"title":675,"order":29},"\u002Fdocs\u002Flatest\u002Ftesting\u002Foverview","Testing Overview",{"path":677,"title":678,"order":22},"\u002Fdocs\u002Flatest\u002Ftesting\u002Fintegration-tests","Integration Testing",{"path":680,"title":681,"order":22},"\u002Fdocs\u002Flatest\u002Ftesting\u002Funit-tests","Unit Testing",{},{"title":684,"order":78,"key":685,"items":686,"packages":690},"Distribution","distribution",[687],{"path":688,"title":689,"order":29},"\u002Fdocs\u002Flatest\u002Fdistribution\u002Foverview","Distribution Guide",{},{"id":692,"title":25,"body":693,"description":9532,"extension":9533,"meta":9534,"navigation":833,"order":22,"package":9535,"path":24,"seo":9536,"stem":9537,"__hash__":9538},"content\u002Fdocs\u002Flatest\u002Fgetting-started\u002Ftutorial.md",{"type":694,"value":695,"toc":9496},"minimark",[696,700,709,731,736,764,767,771,774,809,812,845,848,882,885,904,906,910,917,924,1298,1303,1340,1344,1351,1386,1392,1650,1652,1656,1659,1666,2247,2251,2254,2515,2519,2530,2580,2583,2595,2597,2601,2604,2611,2985,2989,3018,3020,3024,3027,3034,4411,4415,4454,4456,4460,4463,4467,4474,7747,7751,7754,7761,7972,7976,7983,8119,8123,8138,8140,8144,8147,8154,8881,8885,8891,8898,9104,9110,9138,9140,9144,9148,9171,9175,9178,9270,9274,9294,9298,9312,9314,9318,9321,9328,9330,9334,9337,9429,9431,9435,9492],[697,698,25],"h1",{"id":699},"tutorial-build-a-notes-plugin",[701,702,703,704,708],"p",{},"In this tutorial, you'll build ",[705,706,707],"strong",{},"WP Notes"," — a complete plugin that lets users create, read, update, and delete notes from the WordPress admin panel. You'll learn every layer of WPZylos: database migrations, models, REST API routing, Vue.js admin UI, and frontend shortcodes.",[710,711,712],"blockquote",{},[701,713,714,717,718,721,722,725,726,730],{},[705,715,716],{},"Time:"," ~30 minutes | ",[705,719,720],{},"Level:"," Beginner-friendly | ",[705,723,724],{},"Prerequisites:"," ",[727,728,21],"a",{"href":729},"quick-start"," completed",[732,733,735],"h2",{"id":734},"what-youll-build","What You'll Build",[737,738,739,748,755,758,761],"ul",{},[740,741,742,743,747],"li",{},"📝 A ",[744,745,746],"code",{},"notes"," database table with migrations",[740,749,750,751,754],{},"🗃️ A ",[744,752,753],{},"Note"," model with the WPZylos ORM",[740,756,757],{},"🔌 REST API endpoints for CRUD operations",[740,759,760],{},"🖥️ A Vue.js admin page to manage notes",[740,762,763],{},"🌐 A frontend shortcode to display notes",[765,766],"hr",{},[732,768,770],{"id":769},"step-1-create-the-plugin","Step 1: Create the Plugin",[701,772,773],{},"Start by scaffolding a new plugin:",[775,776,781],"pre",{"className":777,"code":778,"language":779,"meta":780,"style":780},"language-bash shiki shiki-themes github-light github-dark","composer create-project KYNetCode\u002Fwpzylos-scaffold wp-notes\ncd wp-notes\n","bash","",[744,782,783,801],{"__ignoreMap":780},[784,785,787,791,795,798],"span",{"class":786,"line":6},"line",[784,788,790],{"class":789},"sScJk","composer",[784,792,794],{"class":793},"sZZnC"," create-project",[784,796,797],{"class":793}," KYNetCode\u002Fwpzylos-scaffold",[784,799,800],{"class":793}," wp-notes\n",[784,802,803,807],{"class":786,"line":29},[784,804,806],{"class":805},"sj4cs","cd",[784,808,800],{"class":793},[701,810,811],{},"Initialize it:",[775,813,817],{"className":814,"code":815,"language":816,"meta":780,"style":780},"language-powershell shiki shiki-themes github-light github-dark","# Windows\n.scripts\u002Finit-plugin.ps1 -PluginName \"WP Notes\"\n\n# Linux\u002FMac\nbash .scripts\u002Finit-plugin.sh --name \"WP Notes\"\n","powershell",[744,818,819,824,829,835,840],{"__ignoreMap":780},[784,820,821],{"class":786,"line":6},[784,822,823],{},"# Windows\n",[784,825,826],{"class":786,"line":29},[784,827,828],{},".scripts\u002Finit-plugin.ps1 -PluginName \"WP Notes\"\n",[784,830,831],{"class":786,"line":14},[784,832,834],{"emptyLinePlaceholder":833},true,"\n",[784,836,837],{"class":786,"line":18},[784,838,839],{},"# Linux\u002FMac\n",[784,841,842],{"class":786,"line":70},[784,843,844],{},"bash .scripts\u002Finit-plugin.sh --name \"WP Notes\"\n",[701,846,847],{},"This sets up:",[737,849,850,858,866,874],{},[740,851,852,725,855],{},[705,853,854],{},"Slug:",[744,856,857],{},"wp-notes",[740,859,860,725,863],{},[705,861,862],{},"Namespace:",[744,864,865],{},"WpNotes",[740,867,868,725,871],{},[705,869,870],{},"CSS prefix:",[744,872,873],{},"wn-",[740,875,876,725,879],{},[705,877,878],{},"DB prefix:",[744,880,881],{},"wpnotes_",[701,883,884],{},"Install dependencies:",[775,886,888],{"className":777,"code":887,"language":779,"meta":780,"style":780},"composer install\nnpm install\n",[744,889,890,897],{"__ignoreMap":780},[784,891,892,894],{"class":786,"line":6},[784,893,790],{"class":789},[784,895,896],{"class":793}," install\n",[784,898,899,902],{"class":786,"line":29},[784,900,901],{"class":789},"npm",[784,903,896],{"class":793},[765,905],{},[732,907,909],{"id":908},"step-2-create-a-database-migration","Step 2: Create a Database Migration",[701,911,912,913,916],{},"WPZylos uses a migration system built on WordPress ",[744,914,915],{},"dbDelta()",". Create a migration file:",[701,918,919],{},[705,920,921],{},[744,922,923],{},"database\u002Fmigrations\u002F2024_01_01_000001_create_notes_table.php",[775,925,929],{"className":926,"code":927,"language":928,"meta":780,"style":780},"language-php shiki shiki-themes github-light github-dark","\u003C?php\n\ndeclare(strict_types=1);\n\nuse WPZylos\\Framework\\Migrations\\Migration;\n\n\u002F**\n * Create the notes table.\n *\u002F\nclass CreateNotesTable extends Migration\n{\n    \u002F**\n     * Run the migration.\n     *\u002F\n    public function up(): void\n    {\n        $this->create('wpnotes_notes', [\n            'id'         => 'bigint(20) unsigned NOT NULL AUTO_INCREMENT',\n            'title'      => 'varchar(255) NOT NULL DEFAULT \\'\\'',\n            'content'    => 'longtext NOT NULL',\n            'status'     => \"varchar(20) NOT NULL DEFAULT 'draft'\",\n            'user_id'    => 'bigint(20) unsigned NOT NULL DEFAULT 0',\n            'created_at' => 'datetime NOT NULL DEFAULT CURRENT_TIMESTAMP',\n            'updated_at' => 'datetime NOT NULL DEFAULT CURRENT_TIMESTAMP',\n        ], [\n            'PRIMARY KEY (id)',\n            'KEY status (status)',\n            'KEY user_id (user_id)',\n        ]);\n    }\n\n    \u002F**\n     * Reverse the migration.\n     *\u002F\n    public function down(): void\n    {\n        $this->drop('wpnotes_notes');\n    }\n}\n","php",[744,930,931,940,944,965,969,980,984,990,995,1000,1014,1020,1026,1032,1038,1059,1065,1085,1100,1120,1134,1148,1161,1175,1187,1193,1201,1209,1217,1223,1229,1234,1239,1245,1250,1266,1271,1287,1292],{"__ignoreMap":780},[784,932,933,937],{"class":786,"line":6},[784,934,936],{"class":935},"szBVR","\u003C?",[784,938,939],{"class":805},"php\n",[784,941,942],{"class":786,"line":29},[784,943,834],{"emptyLinePlaceholder":833},[784,945,946,949,953,956,959,962],{"class":786,"line":14},[784,947,948],{"class":935},"declare",[784,950,952],{"class":951},"sVt8B","(",[784,954,955],{"class":805},"strict_types",[784,957,958],{"class":935},"=",[784,960,961],{"class":805},"1",[784,963,964],{"class":951},");\n",[784,966,967],{"class":786,"line":18},[784,968,834],{"emptyLinePlaceholder":833},[784,970,971,974,977],{"class":786,"line":70},[784,972,973],{"class":935},"use",[784,975,976],{"class":805}," WPZylos\\Framework\\Migrations\\Migration",[784,978,979],{"class":951},";\n",[784,981,982],{"class":786,"line":74},[784,983,834],{"emptyLinePlaceholder":833},[784,985,986],{"class":786,"line":78},[784,987,989],{"class":988},"sJ8bj","\u002F**\n",[784,991,992],{"class":786,"line":82},[784,993,994],{"class":988}," * Create the notes table.\n",[784,996,997],{"class":786,"line":86},[784,998,999],{"class":988}," *\u002F\n",[784,1001,1002,1005,1008,1011],{"class":786,"line":90},[784,1003,1004],{"class":935},"class",[784,1006,1007],{"class":789}," CreateNotesTable",[784,1009,1010],{"class":935}," extends",[784,1012,1013],{"class":789}," Migration\n",[784,1015,1017],{"class":786,"line":1016},11,[784,1018,1019],{"class":951},"{\n",[784,1021,1023],{"class":786,"line":1022},12,[784,1024,1025],{"class":988},"    \u002F**\n",[784,1027,1029],{"class":786,"line":1028},13,[784,1030,1031],{"class":988},"     * Run the migration.\n",[784,1033,1035],{"class":786,"line":1034},14,[784,1036,1037],{"class":988},"     *\u002F\n",[784,1039,1041,1044,1047,1050,1053,1056],{"class":786,"line":1040},15,[784,1042,1043],{"class":935},"    public",[784,1045,1046],{"class":935}," function",[784,1048,1049],{"class":789}," up",[784,1051,1052],{"class":951},"()",[784,1054,1055],{"class":935},":",[784,1057,1058],{"class":935}," void\n",[784,1060,1062],{"class":786,"line":1061},16,[784,1063,1064],{"class":951},"    {\n",[784,1066,1068,1071,1074,1077,1079,1082],{"class":786,"line":1067},17,[784,1069,1070],{"class":805},"        $this",[784,1072,1073],{"class":935},"->",[784,1075,1076],{"class":789},"create",[784,1078,952],{"class":951},[784,1080,1081],{"class":793},"'wpnotes_notes'",[784,1083,1084],{"class":951},", [\n",[784,1086,1088,1091,1094,1097],{"class":786,"line":1087},18,[784,1089,1090],{"class":793},"            'id'",[784,1092,1093],{"class":935},"         =>",[784,1095,1096],{"class":793}," 'bigint(20) unsigned NOT NULL AUTO_INCREMENT'",[784,1098,1099],{"class":951},",\n",[784,1101,1103,1106,1109,1112,1115,1118],{"class":786,"line":1102},19,[784,1104,1105],{"class":793},"            'title'",[784,1107,1108],{"class":935},"      =>",[784,1110,1111],{"class":793}," 'varchar(255) NOT NULL DEFAULT ",[784,1113,1114],{"class":805},"\\'\\'",[784,1116,1117],{"class":793},"'",[784,1119,1099],{"class":951},[784,1121,1123,1126,1129,1132],{"class":786,"line":1122},20,[784,1124,1125],{"class":793},"            'content'",[784,1127,1128],{"class":935},"    =>",[784,1130,1131],{"class":793}," 'longtext NOT NULL'",[784,1133,1099],{"class":951},[784,1135,1137,1140,1143,1146],{"class":786,"line":1136},21,[784,1138,1139],{"class":793},"            'status'",[784,1141,1142],{"class":935},"     =>",[784,1144,1145],{"class":793}," \"varchar(20) NOT NULL DEFAULT 'draft'\"",[784,1147,1099],{"class":951},[784,1149,1151,1154,1156,1159],{"class":786,"line":1150},22,[784,1152,1153],{"class":793},"            'user_id'",[784,1155,1128],{"class":935},[784,1157,1158],{"class":793}," 'bigint(20) unsigned NOT NULL DEFAULT 0'",[784,1160,1099],{"class":951},[784,1162,1164,1167,1170,1173],{"class":786,"line":1163},23,[784,1165,1166],{"class":793},"            'created_at'",[784,1168,1169],{"class":935}," =>",[784,1171,1172],{"class":793}," 'datetime NOT NULL DEFAULT CURRENT_TIMESTAMP'",[784,1174,1099],{"class":951},[784,1176,1178,1181,1183,1185],{"class":786,"line":1177},24,[784,1179,1180],{"class":793},"            'updated_at'",[784,1182,1169],{"class":935},[784,1184,1172],{"class":793},[784,1186,1099],{"class":951},[784,1188,1190],{"class":786,"line":1189},25,[784,1191,1192],{"class":951},"        ], [\n",[784,1194,1196,1199],{"class":786,"line":1195},26,[784,1197,1198],{"class":793},"            'PRIMARY KEY (id)'",[784,1200,1099],{"class":951},[784,1202,1204,1207],{"class":786,"line":1203},27,[784,1205,1206],{"class":793},"            'KEY status (status)'",[784,1208,1099],{"class":951},[784,1210,1212,1215],{"class":786,"line":1211},28,[784,1213,1214],{"class":793},"            'KEY user_id (user_id)'",[784,1216,1099],{"class":951},[784,1218,1220],{"class":786,"line":1219},29,[784,1221,1222],{"class":951},"        ]);\n",[784,1224,1226],{"class":786,"line":1225},30,[784,1227,1228],{"class":951},"    }\n",[784,1230,1232],{"class":786,"line":1231},31,[784,1233,834],{"emptyLinePlaceholder":833},[784,1235,1237],{"class":786,"line":1236},32,[784,1238,1025],{"class":988},[784,1240,1242],{"class":786,"line":1241},33,[784,1243,1244],{"class":988},"     * Reverse the migration.\n",[784,1246,1248],{"class":786,"line":1247},34,[784,1249,1037],{"class":988},[784,1251,1253,1255,1257,1260,1262,1264],{"class":786,"line":1252},35,[784,1254,1043],{"class":935},[784,1256,1046],{"class":935},[784,1258,1259],{"class":789}," down",[784,1261,1052],{"class":951},[784,1263,1055],{"class":935},[784,1265,1058],{"class":935},[784,1267,1269],{"class":786,"line":1268},36,[784,1270,1064],{"class":951},[784,1272,1274,1276,1278,1281,1283,1285],{"class":786,"line":1273},37,[784,1275,1070],{"class":805},[784,1277,1073],{"class":935},[784,1279,1280],{"class":789},"drop",[784,1282,952],{"class":951},[784,1284,1081],{"class":793},[784,1286,964],{"class":951},[784,1288,1290],{"class":786,"line":1289},38,[784,1291,1228],{"class":951},[784,1293,1295],{"class":786,"line":1294},39,[784,1296,1297],{"class":951},"}\n",[1299,1300,1302],"h3",{"id":1301},"how-migrations-work","How migrations work",[737,1304,1305,1318,1328,1334],{},[740,1306,1307,1308,1311,1312,1315,1316],{},"The ",[744,1309,1310],{},"create()"," helper method builds a ",[744,1313,1314],{},"CREATE TABLE"," statement and runs it through ",[744,1317,915],{},[740,1319,1320,1321,1323,1324,1327],{},"Table names passed to ",[744,1322,1310],{}," get the WordPress prefix automatically (e.g., ",[744,1325,1326],{},"wp_wpnotes_notes",")",[740,1329,1307,1330,1333],{},[744,1331,1332],{},"charsetCollate()"," method is called internally to use your database's charset",[740,1335,1336,1337],{},"Migrations run on activation — uncomment the migration line in ",[744,1338,1339],{},"Activator.php",[1299,1341,1343],{"id":1342},"enable-migrations-on-activation","Enable migrations on activation",[701,1345,1346,1347,1350],{},"Open ",[744,1348,1349],{},"app\u002FLifecycle\u002FActivator.php"," and uncomment the migration call:",[775,1352,1354],{"className":926,"code":1353,"language":928,"meta":780,"style":780},"\u002F\u002F In the activate() method, change:\n\u002F\u002F self::runMigrations($context);\n\n\u002F\u002F To:\nself::runMigrations($context);\n",[744,1355,1356,1361,1366,1370,1375],{"__ignoreMap":780},[784,1357,1358],{"class":786,"line":6},[784,1359,1360],{"class":988},"\u002F\u002F In the activate() method, change:\n",[784,1362,1363],{"class":786,"line":29},[784,1364,1365],{"class":988},"\u002F\u002F self::runMigrations($context);\n",[784,1367,1368],{"class":786,"line":14},[784,1369,834],{"emptyLinePlaceholder":833},[784,1371,1372],{"class":786,"line":18},[784,1373,1374],{"class":988},"\u002F\u002F To:\n",[784,1376,1377,1380,1383],{"class":786,"line":70},[784,1378,1379],{"class":935},"self::",[784,1381,1382],{"class":789},"runMigrations",[784,1384,1385],{"class":951},"($context);\n",[701,1387,1388,1389,1391],{},"Then add the ",[744,1390,1382],{}," method if it doesn't exist:",[775,1393,1395],{"className":926,"code":1394,"language":928,"meta":780,"style":780},"\u002F**\n * Run database migrations.\n *\n * @param PluginContext $context Plugin context\n * @return void\n *\u002F\nprivate static function runMigrations(PluginContext $context): void\n{\n    $migrationsPath = $context->path('database\u002Fmigrations');\n\n    if (!is_dir($migrationsPath)) {\n        return;\n    }\n\n    $files = glob($migrationsPath . '\u002F*.php');\n\n    foreach ($files as $file) {\n        require_once $file;\n    }\n\n    \u002F\u002F Migrations will run their up() method via dbDelta\n    \u002F\u002F dbDelta is safe to call multiple times (idempotent)\n    $migration = new \\CreateNotesTable();\n    $migration->setConnection(\n        new \\WPZylos\\Framework\\Database\\Connection()\n    );\n    $migration->up();\n}\n",[744,1396,1397,1401,1406,1411,1425,1434,1438,1463,1467,1489,1493,1510,1517,1521,1525,1546,1550,1564,1572,1576,1580,1585,1590,1606,1619,1630,1635,1646],{"__ignoreMap":780},[784,1398,1399],{"class":786,"line":6},[784,1400,989],{"class":988},[784,1402,1403],{"class":786,"line":29},[784,1404,1405],{"class":988}," * Run database migrations.\n",[784,1407,1408],{"class":786,"line":14},[784,1409,1410],{"class":988}," *\n",[784,1412,1413,1416,1419,1422],{"class":786,"line":18},[784,1414,1415],{"class":988}," * ",[784,1417,1418],{"class":935},"@param",[784,1420,1421],{"class":805}," PluginContext",[784,1423,1424],{"class":988}," $context Plugin context\n",[784,1426,1427,1429,1432],{"class":786,"line":70},[784,1428,1415],{"class":988},[784,1430,1431],{"class":935},"@return",[784,1433,1058],{"class":935},[784,1435,1436],{"class":786,"line":74},[784,1437,999],{"class":988},[784,1439,1440,1443,1446,1448,1451,1453,1456,1459,1461],{"class":786,"line":78},[784,1441,1442],{"class":935},"private",[784,1444,1445],{"class":935}," static",[784,1447,1046],{"class":935},[784,1449,1450],{"class":789}," runMigrations",[784,1452,952],{"class":951},[784,1454,1455],{"class":805},"PluginContext",[784,1457,1458],{"class":951}," $context)",[784,1460,1055],{"class":935},[784,1462,1058],{"class":935},[784,1464,1465],{"class":786,"line":82},[784,1466,1019],{"class":951},[784,1468,1469,1472,1474,1477,1479,1482,1484,1487],{"class":786,"line":86},[784,1470,1471],{"class":951},"    $migrationsPath ",[784,1473,958],{"class":935},[784,1475,1476],{"class":951}," $context",[784,1478,1073],{"class":935},[784,1480,1481],{"class":789},"path",[784,1483,952],{"class":951},[784,1485,1486],{"class":793},"'database\u002Fmigrations'",[784,1488,964],{"class":951},[784,1490,1491],{"class":786,"line":90},[784,1492,834],{"emptyLinePlaceholder":833},[784,1494,1495,1498,1501,1504,1507],{"class":786,"line":1016},[784,1496,1497],{"class":935},"    if",[784,1499,1500],{"class":951}," (",[784,1502,1503],{"class":935},"!",[784,1505,1506],{"class":805},"is_dir",[784,1508,1509],{"class":951},"($migrationsPath)) {\n",[784,1511,1512,1515],{"class":786,"line":1022},[784,1513,1514],{"class":935},"        return",[784,1516,979],{"class":951},[784,1518,1519],{"class":786,"line":1028},[784,1520,1228],{"class":951},[784,1522,1523],{"class":786,"line":1034},[784,1524,834],{"emptyLinePlaceholder":833},[784,1526,1527,1530,1532,1535,1538,1541,1544],{"class":786,"line":1040},[784,1528,1529],{"class":951},"    $files ",[784,1531,958],{"class":935},[784,1533,1534],{"class":805}," glob",[784,1536,1537],{"class":951},"($migrationsPath ",[784,1539,1540],{"class":935},".",[784,1542,1543],{"class":793}," '\u002F*.php'",[784,1545,964],{"class":951},[784,1547,1548],{"class":786,"line":1061},[784,1549,834],{"emptyLinePlaceholder":833},[784,1551,1552,1555,1558,1561],{"class":786,"line":1067},[784,1553,1554],{"class":935},"    foreach",[784,1556,1557],{"class":951}," ($files ",[784,1559,1560],{"class":935},"as",[784,1562,1563],{"class":951}," $file) {\n",[784,1565,1566,1569],{"class":786,"line":1087},[784,1567,1568],{"class":935},"        require_once",[784,1570,1571],{"class":951}," $file;\n",[784,1573,1574],{"class":786,"line":1102},[784,1575,1228],{"class":951},[784,1577,1578],{"class":786,"line":1122},[784,1579,834],{"emptyLinePlaceholder":833},[784,1581,1582],{"class":786,"line":1136},[784,1583,1584],{"class":988},"    \u002F\u002F Migrations will run their up() method via dbDelta\n",[784,1586,1587],{"class":786,"line":1150},[784,1588,1589],{"class":988},"    \u002F\u002F dbDelta is safe to call multiple times (idempotent)\n",[784,1591,1592,1595,1597,1600,1603],{"class":786,"line":1163},[784,1593,1594],{"class":951},"    $migration ",[784,1596,958],{"class":935},[784,1598,1599],{"class":935}," new",[784,1601,1602],{"class":805}," \\CreateNotesTable",[784,1604,1605],{"class":951},"();\n",[784,1607,1608,1611,1613,1616],{"class":786,"line":1177},[784,1609,1610],{"class":951},"    $migration",[784,1612,1073],{"class":935},[784,1614,1615],{"class":789},"setConnection",[784,1617,1618],{"class":951},"(\n",[784,1620,1621,1624,1627],{"class":786,"line":1189},[784,1622,1623],{"class":935},"        new",[784,1625,1626],{"class":805}," \\WPZylos\\Framework\\Database\\Connection",[784,1628,1629],{"class":951},"()\n",[784,1631,1632],{"class":786,"line":1195},[784,1633,1634],{"class":951},"    );\n",[784,1636,1637,1639,1641,1644],{"class":786,"line":1203},[784,1638,1610],{"class":951},[784,1640,1073],{"class":935},[784,1642,1643],{"class":789},"up",[784,1645,1605],{"class":951},[784,1647,1648],{"class":786,"line":1211},[784,1649,1297],{"class":951},[765,1651],{},[732,1653,1655],{"id":1654},"step-3-create-the-note-model","Step 3: Create the Note Model",[701,1657,1658],{},"WPZylos provides an Active Record ORM. Create the model:",[701,1660,1661],{},[705,1662,1663],{},[744,1664,1665],{},"app\u002FModels\u002FNote.php",[775,1667,1669],{"className":926,"code":1668,"language":928,"meta":780,"style":780},"\u003C?php\n\ndeclare(strict_types=1);\n\nnamespace WpNotes\\Models;\n\nuse WPZylos\\Framework\\Model\\Model;\n\n\u002F**\n * Note model.\n *\n * @property int    $id\n * @property string $title\n * @property string $content\n * @property string $status\n * @property int    $user_id\n * @property string $created_at\n * @property string $updated_at\n *\u002F\nclass Note extends Model\n{\n    \u002F**\n     * The table name (without WordPress prefix).\n     * Full table name will be: wp_wpnotes_notes\n     *\u002F\n    protected static string $table = 'wpnotes_notes';\n\n    \u002F**\n     * Mass-assignable attributes.\n     *\n     * @var string[]\n     *\u002F\n    protected array $fillable = [\n        'title',\n        'content',\n        'status',\n        'user_id',\n    ];\n\n    \u002F**\n     * Attribute casts.\n     *\n     * @var array\u003Cstring, string>\n     *\u002F\n    protected array $casts = [\n        'id'      => 'int',\n        'user_id' => 'int',\n    ];\n\n    \u002F**\n     * Auto-manage created_at\u002Fupdated_at.\n     *\u002F\n    protected bool $timestamps = true;\n\n    \u002F\u002F -------------------------------------------------------------------------\n    \u002F\u002F  Scopes\n    \u002F\u002F -------------------------------------------------------------------------\n\n    \u002F**\n     * Scope: only published notes.\n     *\u002F\n    public function scopePublished($query)\n    {\n        return $query->where('status', 'published');\n    }\n\n    \u002F**\n     * Scope: notes by a specific user.\n     *\u002F\n    public function scopeByUser($query, int $userId)\n    {\n        return $query->where('user_id', $userId);\n    }\n}\n",[744,1670,1671,1677,1681,1695,1699,1709,1713,1722,1726,1730,1735,1739,1752,1764,1775,1786,1797,1808,1819,1823,1835,1839,1843,1848,1853,1857,1876,1880,1884,1889,1894,1905,1909,1924,1931,1938,1945,1952,1957,1961,1966,1972,1977,1995,2000,2014,2027,2038,2043,2048,2052,2058,2063,2081,2086,2092,2098,2103,2108,2113,2119,2124,2137,2142,2168,2173,2178,2183,2189,2194,2213,2218,2237,2242],{"__ignoreMap":780},[784,1672,1673,1675],{"class":786,"line":6},[784,1674,936],{"class":935},[784,1676,939],{"class":805},[784,1678,1679],{"class":786,"line":29},[784,1680,834],{"emptyLinePlaceholder":833},[784,1682,1683,1685,1687,1689,1691,1693],{"class":786,"line":14},[784,1684,948],{"class":935},[784,1686,952],{"class":951},[784,1688,955],{"class":805},[784,1690,958],{"class":935},[784,1692,961],{"class":805},[784,1694,964],{"class":951},[784,1696,1697],{"class":786,"line":18},[784,1698,834],{"emptyLinePlaceholder":833},[784,1700,1701,1704,1707],{"class":786,"line":70},[784,1702,1703],{"class":935},"namespace",[784,1705,1706],{"class":789}," WpNotes\\Models",[784,1708,979],{"class":951},[784,1710,1711],{"class":786,"line":74},[784,1712,834],{"emptyLinePlaceholder":833},[784,1714,1715,1717,1720],{"class":786,"line":78},[784,1716,973],{"class":935},[784,1718,1719],{"class":805}," WPZylos\\Framework\\Model\\Model",[784,1721,979],{"class":951},[784,1723,1724],{"class":786,"line":82},[784,1725,834],{"emptyLinePlaceholder":833},[784,1727,1728],{"class":786,"line":86},[784,1729,989],{"class":988},[784,1731,1732],{"class":786,"line":90},[784,1733,1734],{"class":988}," * Note model.\n",[784,1736,1737],{"class":786,"line":1016},[784,1738,1410],{"class":988},[784,1740,1741,1743,1746,1749],{"class":786,"line":1022},[784,1742,1415],{"class":988},[784,1744,1745],{"class":935},"@property",[784,1747,1748],{"class":935}," int",[784,1750,1751],{"class":988},"    $id\n",[784,1753,1754,1756,1758,1761],{"class":786,"line":1028},[784,1755,1415],{"class":988},[784,1757,1745],{"class":935},[784,1759,1760],{"class":935}," string",[784,1762,1763],{"class":988}," $title\n",[784,1765,1766,1768,1770,1772],{"class":786,"line":1034},[784,1767,1415],{"class":988},[784,1769,1745],{"class":935},[784,1771,1760],{"class":935},[784,1773,1774],{"class":988}," $content\n",[784,1776,1777,1779,1781,1783],{"class":786,"line":1040},[784,1778,1415],{"class":988},[784,1780,1745],{"class":935},[784,1782,1760],{"class":935},[784,1784,1785],{"class":988}," $status\n",[784,1787,1788,1790,1792,1794],{"class":786,"line":1061},[784,1789,1415],{"class":988},[784,1791,1745],{"class":935},[784,1793,1748],{"class":935},[784,1795,1796],{"class":988},"    $user_id\n",[784,1798,1799,1801,1803,1805],{"class":786,"line":1067},[784,1800,1415],{"class":988},[784,1802,1745],{"class":935},[784,1804,1760],{"class":935},[784,1806,1807],{"class":988}," $created_at\n",[784,1809,1810,1812,1814,1816],{"class":786,"line":1087},[784,1811,1415],{"class":988},[784,1813,1745],{"class":935},[784,1815,1760],{"class":935},[784,1817,1818],{"class":988}," $updated_at\n",[784,1820,1821],{"class":786,"line":1102},[784,1822,999],{"class":988},[784,1824,1825,1827,1830,1832],{"class":786,"line":1122},[784,1826,1004],{"class":935},[784,1828,1829],{"class":789}," Note",[784,1831,1010],{"class":935},[784,1833,1834],{"class":789}," Model\n",[784,1836,1837],{"class":786,"line":1136},[784,1838,1019],{"class":951},[784,1840,1841],{"class":786,"line":1150},[784,1842,1025],{"class":988},[784,1844,1845],{"class":786,"line":1163},[784,1846,1847],{"class":988},"     * The table name (without WordPress prefix).\n",[784,1849,1850],{"class":786,"line":1177},[784,1851,1852],{"class":988},"     * Full table name will be: wp_wpnotes_notes\n",[784,1854,1855],{"class":786,"line":1189},[784,1856,1037],{"class":988},[784,1858,1859,1862,1864,1866,1869,1871,1874],{"class":786,"line":1195},[784,1860,1861],{"class":935},"    protected",[784,1863,1445],{"class":935},[784,1865,1760],{"class":935},[784,1867,1868],{"class":951}," $table ",[784,1870,958],{"class":935},[784,1872,1873],{"class":793}," 'wpnotes_notes'",[784,1875,979],{"class":951},[784,1877,1878],{"class":786,"line":1203},[784,1879,834],{"emptyLinePlaceholder":833},[784,1881,1882],{"class":786,"line":1211},[784,1883,1025],{"class":988},[784,1885,1886],{"class":786,"line":1219},[784,1887,1888],{"class":988},"     * Mass-assignable attributes.\n",[784,1890,1891],{"class":786,"line":1225},[784,1892,1893],{"class":988},"     *\n",[784,1895,1896,1899,1902],{"class":786,"line":1231},[784,1897,1898],{"class":988},"     * ",[784,1900,1901],{"class":935},"@var",[784,1903,1904],{"class":935}," string[]\n",[784,1906,1907],{"class":786,"line":1236},[784,1908,1037],{"class":988},[784,1910,1911,1913,1916,1919,1921],{"class":786,"line":1241},[784,1912,1861],{"class":935},[784,1914,1915],{"class":935}," array",[784,1917,1918],{"class":951}," $fillable ",[784,1920,958],{"class":935},[784,1922,1923],{"class":951}," [\n",[784,1925,1926,1929],{"class":786,"line":1247},[784,1927,1928],{"class":793},"        'title'",[784,1930,1099],{"class":951},[784,1932,1933,1936],{"class":786,"line":1252},[784,1934,1935],{"class":793},"        'content'",[784,1937,1099],{"class":951},[784,1939,1940,1943],{"class":786,"line":1268},[784,1941,1942],{"class":793},"        'status'",[784,1944,1099],{"class":951},[784,1946,1947,1950],{"class":786,"line":1273},[784,1948,1949],{"class":793},"        'user_id'",[784,1951,1099],{"class":951},[784,1953,1954],{"class":786,"line":1289},[784,1955,1956],{"class":951},"    ];\n",[784,1958,1959],{"class":786,"line":1294},[784,1960,834],{"emptyLinePlaceholder":833},[784,1962,1964],{"class":786,"line":1963},40,[784,1965,1025],{"class":988},[784,1967,1969],{"class":786,"line":1968},41,[784,1970,1971],{"class":988},"     * Attribute casts.\n",[784,1973,1975],{"class":786,"line":1974},42,[784,1976,1893],{"class":988},[784,1978,1980,1982,1984,1986,1989,1992],{"class":786,"line":1979},43,[784,1981,1898],{"class":988},[784,1983,1901],{"class":935},[784,1985,1915],{"class":935},[784,1987,1988],{"class":988},"\u003C",[784,1990,1991],{"class":935},"string",[784,1993,1994],{"class":988},", string>\n",[784,1996,1998],{"class":786,"line":1997},44,[784,1999,1037],{"class":988},[784,2001,2003,2005,2007,2010,2012],{"class":786,"line":2002},45,[784,2004,1861],{"class":935},[784,2006,1915],{"class":935},[784,2008,2009],{"class":951}," $casts ",[784,2011,958],{"class":935},[784,2013,1923],{"class":951},[784,2015,2017,2020,2022,2025],{"class":786,"line":2016},46,[784,2018,2019],{"class":793},"        'id'",[784,2021,1108],{"class":935},[784,2023,2024],{"class":793}," 'int'",[784,2026,1099],{"class":951},[784,2028,2030,2032,2034,2036],{"class":786,"line":2029},47,[784,2031,1949],{"class":793},[784,2033,1169],{"class":935},[784,2035,2024],{"class":793},[784,2037,1099],{"class":951},[784,2039,2041],{"class":786,"line":2040},48,[784,2042,1956],{"class":951},[784,2044,2046],{"class":786,"line":2045},49,[784,2047,834],{"emptyLinePlaceholder":833},[784,2049,2050],{"class":786,"line":22},[784,2051,1025],{"class":988},[784,2053,2055],{"class":786,"line":2054},51,[784,2056,2057],{"class":988},"     * Auto-manage created_at\u002Fupdated_at.\n",[784,2059,2061],{"class":786,"line":2060},52,[784,2062,1037],{"class":988},[784,2064,2066,2068,2071,2074,2076,2079],{"class":786,"line":2065},53,[784,2067,1861],{"class":935},[784,2069,2070],{"class":935}," bool",[784,2072,2073],{"class":951}," $timestamps ",[784,2075,958],{"class":935},[784,2077,2078],{"class":805}," true",[784,2080,979],{"class":951},[784,2082,2084],{"class":786,"line":2083},54,[784,2085,834],{"emptyLinePlaceholder":833},[784,2087,2089],{"class":786,"line":2088},55,[784,2090,2091],{"class":988},"    \u002F\u002F -------------------------------------------------------------------------\n",[784,2093,2095],{"class":786,"line":2094},56,[784,2096,2097],{"class":988},"    \u002F\u002F  Scopes\n",[784,2099,2101],{"class":786,"line":2100},57,[784,2102,2091],{"class":988},[784,2104,2106],{"class":786,"line":2105},58,[784,2107,834],{"emptyLinePlaceholder":833},[784,2109,2111],{"class":786,"line":2110},59,[784,2112,1025],{"class":988},[784,2114,2116],{"class":786,"line":2115},60,[784,2117,2118],{"class":988},"     * Scope: only published notes.\n",[784,2120,2122],{"class":786,"line":2121},61,[784,2123,1037],{"class":988},[784,2125,2127,2129,2131,2134],{"class":786,"line":2126},62,[784,2128,1043],{"class":935},[784,2130,1046],{"class":935},[784,2132,2133],{"class":789}," scopePublished",[784,2135,2136],{"class":951},"($query)\n",[784,2138,2140],{"class":786,"line":2139},63,[784,2141,1064],{"class":951},[784,2143,2145,2147,2150,2152,2155,2157,2160,2163,2166],{"class":786,"line":2144},64,[784,2146,1514],{"class":935},[784,2148,2149],{"class":951}," $query",[784,2151,1073],{"class":935},[784,2153,2154],{"class":789},"where",[784,2156,952],{"class":951},[784,2158,2159],{"class":793},"'status'",[784,2161,2162],{"class":951},", ",[784,2164,2165],{"class":793},"'published'",[784,2167,964],{"class":951},[784,2169,2171],{"class":786,"line":2170},65,[784,2172,1228],{"class":951},[784,2174,2176],{"class":786,"line":2175},66,[784,2177,834],{"emptyLinePlaceholder":833},[784,2179,2181],{"class":786,"line":2180},67,[784,2182,1025],{"class":988},[784,2184,2186],{"class":786,"line":2185},68,[784,2187,2188],{"class":988},"     * Scope: notes by a specific user.\n",[784,2190,2192],{"class":786,"line":2191},69,[784,2193,1037],{"class":988},[784,2195,2197,2199,2201,2204,2207,2210],{"class":786,"line":2196},70,[784,2198,1043],{"class":935},[784,2200,1046],{"class":935},[784,2202,2203],{"class":789}," scopeByUser",[784,2205,2206],{"class":951},"($query, ",[784,2208,2209],{"class":935},"int",[784,2211,2212],{"class":951}," $userId)\n",[784,2214,2216],{"class":786,"line":2215},71,[784,2217,1064],{"class":951},[784,2219,2221,2223,2225,2227,2229,2231,2234],{"class":786,"line":2220},72,[784,2222,1514],{"class":935},[784,2224,2149],{"class":951},[784,2226,1073],{"class":935},[784,2228,2154],{"class":789},[784,2230,952],{"class":951},[784,2232,2233],{"class":793},"'user_id'",[784,2235,2236],{"class":951},", $userId);\n",[784,2238,2240],{"class":786,"line":2239},73,[784,2241,1228],{"class":951},[784,2243,2245],{"class":786,"line":2244},74,[784,2246,1297],{"class":951},[1299,2248,2250],{"id":2249},"how-the-model-works","How the Model works",[701,2252,2253],{},"The WPZylos Model uses the same patterns you might know from Laravel's Eloquent:",[775,2255,2257],{"className":926,"code":2256,"language":928,"meta":780,"style":780},"\u002F\u002F Create a note\n$note = Note::create([\n    'title'   => 'My First Note',\n    'content' => 'Hello from WPZylos!',\n    'status'  => 'published',\n    'user_id' => get_current_user_id(),\n]);\n\n\u002F\u002F Find by ID\n$note = Note::find(1);\n\n\u002F\u002F Query with conditions\n$notes = Note::where('status', 'published')->get();\n\n\u002F\u002F Update\n$note->update(['title' => 'Updated Title']);\n\n\u002F\u002F Delete\n$note->delete();\n\n\u002F\u002F Use scopes\n$published = Note::published()->get();\n$myNotes = Note::byUser(get_current_user_id())->get();\n",[744,2258,2259,2264,2281,2294,2306,2319,2332,2337,2341,2346,2365,2369,2374,2404,2408,2413,2436,2440,2445,2456,2460,2465,2487],{"__ignoreMap":780},[784,2260,2261],{"class":786,"line":6},[784,2262,2263],{"class":988},"\u002F\u002F Create a note\n",[784,2265,2266,2269,2271,2273,2276,2278],{"class":786,"line":29},[784,2267,2268],{"class":951},"$note ",[784,2270,958],{"class":935},[784,2272,1829],{"class":805},[784,2274,2275],{"class":935},"::",[784,2277,1076],{"class":789},[784,2279,2280],{"class":951},"([\n",[784,2282,2283,2286,2289,2292],{"class":786,"line":14},[784,2284,2285],{"class":793},"    'title'",[784,2287,2288],{"class":935},"   =>",[784,2290,2291],{"class":793}," 'My First Note'",[784,2293,1099],{"class":951},[784,2295,2296,2299,2301,2304],{"class":786,"line":18},[784,2297,2298],{"class":793},"    'content'",[784,2300,1169],{"class":935},[784,2302,2303],{"class":793}," 'Hello from WPZylos!'",[784,2305,1099],{"class":951},[784,2307,2308,2311,2314,2317],{"class":786,"line":70},[784,2309,2310],{"class":793},"    'status'",[784,2312,2313],{"class":935},"  =>",[784,2315,2316],{"class":793}," 'published'",[784,2318,1099],{"class":951},[784,2320,2321,2324,2326,2329],{"class":786,"line":74},[784,2322,2323],{"class":793},"    'user_id'",[784,2325,1169],{"class":935},[784,2327,2328],{"class":789}," get_current_user_id",[784,2330,2331],{"class":951},"(),\n",[784,2333,2334],{"class":786,"line":78},[784,2335,2336],{"class":951},"]);\n",[784,2338,2339],{"class":786,"line":82},[784,2340,834],{"emptyLinePlaceholder":833},[784,2342,2343],{"class":786,"line":86},[784,2344,2345],{"class":988},"\u002F\u002F Find by ID\n",[784,2347,2348,2350,2352,2354,2356,2359,2361,2363],{"class":786,"line":90},[784,2349,2268],{"class":951},[784,2351,958],{"class":935},[784,2353,1829],{"class":805},[784,2355,2275],{"class":935},[784,2357,2358],{"class":789},"find",[784,2360,952],{"class":951},[784,2362,961],{"class":805},[784,2364,964],{"class":951},[784,2366,2367],{"class":786,"line":1016},[784,2368,834],{"emptyLinePlaceholder":833},[784,2370,2371],{"class":786,"line":1022},[784,2372,2373],{"class":988},"\u002F\u002F Query with conditions\n",[784,2375,2376,2379,2381,2383,2385,2387,2389,2391,2393,2395,2397,2399,2402],{"class":786,"line":1028},[784,2377,2378],{"class":951},"$notes ",[784,2380,958],{"class":935},[784,2382,1829],{"class":805},[784,2384,2275],{"class":935},[784,2386,2154],{"class":789},[784,2388,952],{"class":951},[784,2390,2159],{"class":793},[784,2392,2162],{"class":951},[784,2394,2165],{"class":793},[784,2396,1327],{"class":951},[784,2398,1073],{"class":935},[784,2400,2401],{"class":789},"get",[784,2403,1605],{"class":951},[784,2405,2406],{"class":786,"line":1034},[784,2407,834],{"emptyLinePlaceholder":833},[784,2409,2410],{"class":786,"line":1040},[784,2411,2412],{"class":988},"\u002F\u002F Update\n",[784,2414,2415,2418,2420,2423,2426,2429,2431,2434],{"class":786,"line":1061},[784,2416,2417],{"class":951},"$note",[784,2419,1073],{"class":935},[784,2421,2422],{"class":789},"update",[784,2424,2425],{"class":951},"([",[784,2427,2428],{"class":793},"'title'",[784,2430,1169],{"class":935},[784,2432,2433],{"class":793}," 'Updated Title'",[784,2435,2336],{"class":951},[784,2437,2438],{"class":786,"line":1067},[784,2439,834],{"emptyLinePlaceholder":833},[784,2441,2442],{"class":786,"line":1087},[784,2443,2444],{"class":988},"\u002F\u002F Delete\n",[784,2446,2447,2449,2451,2454],{"class":786,"line":1102},[784,2448,2417],{"class":951},[784,2450,1073],{"class":935},[784,2452,2453],{"class":789},"delete",[784,2455,1605],{"class":951},[784,2457,2458],{"class":786,"line":1122},[784,2459,834],{"emptyLinePlaceholder":833},[784,2461,2462],{"class":786,"line":1136},[784,2463,2464],{"class":988},"\u002F\u002F Use scopes\n",[784,2466,2467,2470,2472,2474,2476,2479,2481,2483,2485],{"class":786,"line":1150},[784,2468,2469],{"class":951},"$published ",[784,2471,958],{"class":935},[784,2473,1829],{"class":805},[784,2475,2275],{"class":935},[784,2477,2478],{"class":789},"published",[784,2480,1052],{"class":951},[784,2482,1073],{"class":935},[784,2484,2401],{"class":789},[784,2486,1605],{"class":951},[784,2488,2489,2492,2494,2496,2498,2501,2503,2506,2509,2511,2513],{"class":786,"line":1163},[784,2490,2491],{"class":951},"$myNotes ",[784,2493,958],{"class":935},[784,2495,1829],{"class":805},[784,2497,2275],{"class":935},[784,2499,2500],{"class":789},"byUser",[784,2502,952],{"class":951},[784,2504,2505],{"class":789},"get_current_user_id",[784,2507,2508],{"class":951},"())",[784,2510,1073],{"class":935},[784,2512,2401],{"class":789},[784,2514,1605],{"class":951},[1299,2516,2518],{"id":2517},"register-the-psr-4-namespace","Register the PSR-4 namespace",[701,2520,2521,2522,2525,2526,2529],{},"Make sure ",[744,2523,2524],{},"composer.json"," maps the ",[744,2527,2528],{},"app\u002F"," directory. The scaffold already does this:",[775,2531,2535],{"className":2532,"code":2533,"language":2534,"meta":780,"style":780},"language-json shiki shiki-themes github-light github-dark","{\n  \"autoload\": {\n    \"psr-4\": {\n      \"WpNotes\\\\\": \"app\u002F\"\n    }\n  }\n}\n","json",[744,2536,2537,2541,2549,2556,2567,2571,2576],{"__ignoreMap":780},[784,2538,2539],{"class":786,"line":6},[784,2540,1019],{"class":951},[784,2542,2543,2546],{"class":786,"line":29},[784,2544,2545],{"class":805},"  \"autoload\"",[784,2547,2548],{"class":951},": {\n",[784,2550,2551,2554],{"class":786,"line":14},[784,2552,2553],{"class":805},"    \"psr-4\"",[784,2555,2548],{"class":951},[784,2557,2558,2561,2564],{"class":786,"line":18},[784,2559,2560],{"class":805},"      \"WpNotes\\\\\"",[784,2562,2563],{"class":951},": ",[784,2565,2566],{"class":793},"\"app\u002F\"\n",[784,2568,2569],{"class":786,"line":70},[784,2570,1228],{"class":951},[784,2572,2573],{"class":786,"line":74},[784,2574,2575],{"class":951},"  }\n",[784,2577,2578],{"class":786,"line":78},[784,2579,1297],{"class":951},[701,2581,2582],{},"After adding the model, dump the autoloader:",[775,2584,2586],{"className":777,"code":2585,"language":779,"meta":780,"style":780},"composer dump-autoload\n",[744,2587,2588],{"__ignoreMap":780},[784,2589,2590,2592],{"class":786,"line":6},[784,2591,790],{"class":789},[784,2593,2594],{"class":793}," dump-autoload\n",[765,2596],{},[732,2598,2600],{"id":2599},"step-4-create-rest-api-routes","Step 4: Create REST API Routes",[701,2602,2603],{},"WPZylos wraps the WordPress REST API with a fluent router. Create the API routes file:",[701,2605,2606],{},[705,2607,2608],{},[744,2609,2610],{},"routes\u002Fapi.php",[775,2612,2614],{"className":926,"code":2613,"language":928,"meta":780,"style":780},"\u003C?php\n\ndeclare(strict_types=1);\n\nuse WPZylos\\Framework\\Routing\\RestRouter;\nuse WpNotes\\Http\\Controllers\\NoteController;\n\nreturn static function (RestRouter $router): void {\n    \u002F\u002F All routes are registered under: \u002Fwp-json\u002Fwp-notes\u002Fv1\u002F\n\n    $router->get('\u002Fnotes', [NoteController::class, 'index'])\n        ->permission('manage_options')\n        ->name('notes.index');\n\n    $router->get('\u002Fnotes\u002F(?P\u003Cid>\\d+)', [NoteController::class, 'show'])\n        ->permission('manage_options')\n        ->name('notes.show');\n\n    $router->post('\u002Fnotes', [NoteController::class, 'store'])\n        ->permission('manage_options')\n        ->name('notes.store');\n\n    $router->put('\u002Fnotes\u002F(?P\u003Cid>\\d+)', [NoteController::class, 'update'])\n        ->permission('manage_options')\n        ->name('notes.update');\n\n    $router->delete('\u002Fnotes\u002F(?P\u003Cid>\\d+)', [NoteController::class, 'destroy'])\n        ->permission('manage_options')\n        ->name('notes.destroy');\n};\n",[744,2615,2616,2622,2626,2640,2644,2653,2662,2666,2691,2696,2700,2731,2747,2761,2765,2791,2803,2816,2820,2846,2858,2871,2875,2901,2913,2926,2930,2955,2967,2980],{"__ignoreMap":780},[784,2617,2618,2620],{"class":786,"line":6},[784,2619,936],{"class":935},[784,2621,939],{"class":805},[784,2623,2624],{"class":786,"line":29},[784,2625,834],{"emptyLinePlaceholder":833},[784,2627,2628,2630,2632,2634,2636,2638],{"class":786,"line":14},[784,2629,948],{"class":935},[784,2631,952],{"class":951},[784,2633,955],{"class":805},[784,2635,958],{"class":935},[784,2637,961],{"class":805},[784,2639,964],{"class":951},[784,2641,2642],{"class":786,"line":18},[784,2643,834],{"emptyLinePlaceholder":833},[784,2645,2646,2648,2651],{"class":786,"line":70},[784,2647,973],{"class":935},[784,2649,2650],{"class":805}," WPZylos\\Framework\\Routing\\RestRouter",[784,2652,979],{"class":951},[784,2654,2655,2657,2660],{"class":786,"line":74},[784,2656,973],{"class":935},[784,2658,2659],{"class":805}," WpNotes\\Http\\Controllers\\NoteController",[784,2661,979],{"class":951},[784,2663,2664],{"class":786,"line":78},[784,2665,834],{"emptyLinePlaceholder":833},[784,2667,2668,2671,2673,2675,2677,2680,2683,2685,2688],{"class":786,"line":82},[784,2669,2670],{"class":935},"return",[784,2672,1445],{"class":935},[784,2674,1046],{"class":935},[784,2676,1500],{"class":951},[784,2678,2679],{"class":805},"RestRouter",[784,2681,2682],{"class":951}," $router)",[784,2684,1055],{"class":935},[784,2686,2687],{"class":935}," void",[784,2689,2690],{"class":951}," {\n",[784,2692,2693],{"class":786,"line":86},[784,2694,2695],{"class":988},"    \u002F\u002F All routes are registered under: \u002Fwp-json\u002Fwp-notes\u002Fv1\u002F\n",[784,2697,2698],{"class":786,"line":90},[784,2699,834],{"emptyLinePlaceholder":833},[784,2701,2702,2705,2707,2709,2711,2714,2717,2720,2723,2725,2728],{"class":786,"line":1016},[784,2703,2704],{"class":951},"    $router",[784,2706,1073],{"class":935},[784,2708,2401],{"class":789},[784,2710,952],{"class":951},[784,2712,2713],{"class":793},"'\u002Fnotes'",[784,2715,2716],{"class":951},", [",[784,2718,2719],{"class":805},"NoteController",[784,2721,2722],{"class":935},"::class",[784,2724,2162],{"class":951},[784,2726,2727],{"class":793},"'index'",[784,2729,2730],{"class":951},"])\n",[784,2732,2733,2736,2739,2741,2744],{"class":786,"line":1022},[784,2734,2735],{"class":935},"        ->",[784,2737,2738],{"class":789},"permission",[784,2740,952],{"class":951},[784,2742,2743],{"class":793},"'manage_options'",[784,2745,2746],{"class":951},")\n",[784,2748,2749,2751,2754,2756,2759],{"class":786,"line":1028},[784,2750,2735],{"class":935},[784,2752,2753],{"class":789},"name",[784,2755,952],{"class":951},[784,2757,2758],{"class":793},"'notes.index'",[784,2760,964],{"class":951},[784,2762,2763],{"class":786,"line":1034},[784,2764,834],{"emptyLinePlaceholder":833},[784,2766,2767,2769,2771,2773,2775,2778,2780,2782,2784,2786,2789],{"class":786,"line":1040},[784,2768,2704],{"class":951},[784,2770,1073],{"class":935},[784,2772,2401],{"class":789},[784,2774,952],{"class":951},[784,2776,2777],{"class":793},"'\u002Fnotes\u002F(?P\u003Cid>\\d+)'",[784,2779,2716],{"class":951},[784,2781,2719],{"class":805},[784,2783,2722],{"class":935},[784,2785,2162],{"class":951},[784,2787,2788],{"class":793},"'show'",[784,2790,2730],{"class":951},[784,2792,2793,2795,2797,2799,2801],{"class":786,"line":1061},[784,2794,2735],{"class":935},[784,2796,2738],{"class":789},[784,2798,952],{"class":951},[784,2800,2743],{"class":793},[784,2802,2746],{"class":951},[784,2804,2805,2807,2809,2811,2814],{"class":786,"line":1067},[784,2806,2735],{"class":935},[784,2808,2753],{"class":789},[784,2810,952],{"class":951},[784,2812,2813],{"class":793},"'notes.show'",[784,2815,964],{"class":951},[784,2817,2818],{"class":786,"line":1087},[784,2819,834],{"emptyLinePlaceholder":833},[784,2821,2822,2824,2826,2829,2831,2833,2835,2837,2839,2841,2844],{"class":786,"line":1102},[784,2823,2704],{"class":951},[784,2825,1073],{"class":935},[784,2827,2828],{"class":789},"post",[784,2830,952],{"class":951},[784,2832,2713],{"class":793},[784,2834,2716],{"class":951},[784,2836,2719],{"class":805},[784,2838,2722],{"class":935},[784,2840,2162],{"class":951},[784,2842,2843],{"class":793},"'store'",[784,2845,2730],{"class":951},[784,2847,2848,2850,2852,2854,2856],{"class":786,"line":1122},[784,2849,2735],{"class":935},[784,2851,2738],{"class":789},[784,2853,952],{"class":951},[784,2855,2743],{"class":793},[784,2857,2746],{"class":951},[784,2859,2860,2862,2864,2866,2869],{"class":786,"line":1136},[784,2861,2735],{"class":935},[784,2863,2753],{"class":789},[784,2865,952],{"class":951},[784,2867,2868],{"class":793},"'notes.store'",[784,2870,964],{"class":951},[784,2872,2873],{"class":786,"line":1150},[784,2874,834],{"emptyLinePlaceholder":833},[784,2876,2877,2879,2881,2884,2886,2888,2890,2892,2894,2896,2899],{"class":786,"line":1163},[784,2878,2704],{"class":951},[784,2880,1073],{"class":935},[784,2882,2883],{"class":789},"put",[784,2885,952],{"class":951},[784,2887,2777],{"class":793},[784,2889,2716],{"class":951},[784,2891,2719],{"class":805},[784,2893,2722],{"class":935},[784,2895,2162],{"class":951},[784,2897,2898],{"class":793},"'update'",[784,2900,2730],{"class":951},[784,2902,2903,2905,2907,2909,2911],{"class":786,"line":1177},[784,2904,2735],{"class":935},[784,2906,2738],{"class":789},[784,2908,952],{"class":951},[784,2910,2743],{"class":793},[784,2912,2746],{"class":951},[784,2914,2915,2917,2919,2921,2924],{"class":786,"line":1189},[784,2916,2735],{"class":935},[784,2918,2753],{"class":789},[784,2920,952],{"class":951},[784,2922,2923],{"class":793},"'notes.update'",[784,2925,964],{"class":951},[784,2927,2928],{"class":786,"line":1195},[784,2929,834],{"emptyLinePlaceholder":833},[784,2931,2932,2934,2936,2938,2940,2942,2944,2946,2948,2950,2953],{"class":786,"line":1203},[784,2933,2704],{"class":951},[784,2935,1073],{"class":935},[784,2937,2453],{"class":789},[784,2939,952],{"class":951},[784,2941,2777],{"class":793},[784,2943,2716],{"class":951},[784,2945,2719],{"class":805},[784,2947,2722],{"class":935},[784,2949,2162],{"class":951},[784,2951,2952],{"class":793},"'destroy'",[784,2954,2730],{"class":951},[784,2956,2957,2959,2961,2963,2965],{"class":786,"line":1211},[784,2958,2735],{"class":935},[784,2960,2738],{"class":789},[784,2962,952],{"class":951},[784,2964,2743],{"class":793},[784,2966,2746],{"class":951},[784,2968,2969,2971,2973,2975,2978],{"class":786,"line":1219},[784,2970,2735],{"class":935},[784,2972,2753],{"class":789},[784,2974,952],{"class":951},[784,2976,2977],{"class":793},"'notes.destroy'",[784,2979,964],{"class":951},[784,2981,2982],{"class":786,"line":1225},[784,2983,2984],{"class":951},"};\n",[1299,2986,2988],{"id":2987},"how-rest-routing-works","How REST routing works",[737,2990,2991,3000,3006,3015],{},[740,2992,1307,2993,2996,2997,2999],{},[744,2994,2995],{},"RoutingServiceProvider"," automatically loads ",[744,2998,2610],{}," on boot",[740,3001,3002,3003],{},"Routes are registered under ",[744,3004,3005],{},"\u002Fwp-json\u002F{plugin-slug}\u002Fv1\u002F",[740,3007,1307,3008,3011,3012],{},[744,3009,3010],{},"->permission()"," method maps to WordPress's ",[744,3013,3014],{},"permission_callback",[740,3016,3017],{},"Route parameters use WordPress REST API regex patterns",[765,3019],{},[732,3021,3023],{"id":3022},"step-5-create-the-rest-controller","Step 5: Create the REST Controller",[701,3025,3026],{},"Create the controller that handles the API requests:",[701,3028,3029],{},[705,3030,3031],{},[744,3032,3033],{},"app\u002FHttp\u002FControllers\u002FNoteController.php",[775,3035,3037],{"className":926,"code":3036,"language":928,"meta":780,"style":780},"\u003C?php\n\ndeclare(strict_types=1);\n\nnamespace WpNotes\\Http\\Controllers;\n\nuse WP_REST_Request;\nuse WP_REST_Response;\nuse WpNotes\\Models\\Note;\n\n\u002F**\n * REST API controller for notes.\n *\u002F\nclass NoteController\n{\n    \u002F**\n     * List all notes.\n     *\n     * GET \u002Fwp-json\u002Fwp-notes\u002Fv1\u002Fnotes\n     *\u002F\n    public function index(WP_REST_Request $request): WP_REST_Response\n    {\n        $notes = Note::query()\n            ->orderBy('created_at', 'DESC')\n            ->get();\n\n        $data = array_map(\n            fn(object $row) => Note::newFromRow($row)->toArray(),\n            $notes\n        );\n\n        return new WP_REST_Response([\n            'success' => true,\n            'data'    => $data,\n        ]);\n    }\n\n    \u002F**\n     * Show a single note.\n     *\n     * GET \u002Fwp-json\u002Fwp-notes\u002Fv1\u002Fnotes\u002F{id}\n     *\u002F\n    public function show(WP_REST_Request $request): WP_REST_Response\n    {\n        $id = (int) $request->get_param('id');\n        $note = Note::find($id);\n\n        if ($note === null) {\n            return new WP_REST_Response([\n                'success' => false,\n                'message' => 'Note not found.',\n            ], 404);\n        }\n\n        return new WP_REST_Response([\n            'success' => true,\n            'data'    => $note->toArray(),\n        ]);\n    }\n\n    \u002F**\n     * Create a new note.\n     *\n     * POST \u002Fwp-json\u002Fwp-notes\u002Fv1\u002Fnotes\n     *\u002F\n    public function store(WP_REST_Request $request): WP_REST_Response\n    {\n        $note = Note::create([\n            'title'   => sanitize_text_field($request->get_param('title') ?? ''),\n            'content' => wp_kses_post($request->get_param('content') ?? ''),\n            'status'  => sanitize_text_field($request->get_param('status') ?? 'draft'),\n            'user_id' => get_current_user_id(),\n        ]);\n\n        return new WP_REST_Response([\n            'success' => true,\n            'data'    => $note->toArray(),\n        ], 201);\n    }\n\n    \u002F**\n     * Update a note.\n     *\n     * PUT \u002Fwp-json\u002Fwp-notes\u002Fv1\u002Fnotes\u002F{id}\n     *\u002F\n    public function update(WP_REST_Request $request): WP_REST_Response\n    {\n        $id = (int) $request->get_param('id');\n        $note = Note::find($id);\n\n        if ($note === null) {\n            return new WP_REST_Response([\n                'success' => false,\n                'message' => 'Note not found.',\n            ], 404);\n        }\n\n        $data = [];\n\n        if ($request->get_param('title') !== null) {\n            $data['title'] = sanitize_text_field($request->get_param('title'));\n        }\n\n        if ($request->get_param('content') !== null) {\n            $data['content'] = wp_kses_post($request->get_param('content'));\n        }\n\n        if ($request->get_param('status') !== null) {\n            $data['status'] = sanitize_text_field($request->get_param('status'));\n        }\n\n        $note->update($data);\n\n        return new WP_REST_Response([\n            'success' => true,\n            'data'    => $note->toArray(),\n        ]);\n    }\n\n    \u002F**\n     * Delete a note.\n     *\n     * DELETE \u002Fwp-json\u002Fwp-notes\u002Fv1\u002Fnotes\u002F{id}\n     *\u002F\n    public function destroy(WP_REST_Request $request): WP_REST_Response\n    {\n        $id = (int) $request->get_param('id');\n        $note = Note::find($id);\n\n        if ($note === null) {\n            return new WP_REST_Response([\n                'success' => false,\n                'message' => 'Note not found.',\n            ], 404);\n        }\n\n        $note->delete();\n\n        return new WP_REST_Response([\n            'success' => true,\n            'message' => 'Note deleted.',\n        ]);\n    }\n}\n",[744,3038,3039,3045,3049,3063,3067,3076,3080,3089,3098,3107,3111,3115,3120,3124,3131,3135,3139,3144,3148,3153,3157,3179,3183,3199,3219,3227,3231,3243,3273,3278,3283,3287,3297,3308,3318,3322,3326,3330,3334,3339,3343,3348,3352,3371,3375,3401,3417,3421,3438,3449,3461,3473,3483,3488,3492,3502,3512,3527,3531,3535,3539,3543,3548,3552,3557,3561,3580,3584,3598,3630,3658,3685,3695,3699,3703,3714,3725,3740,3751,3756,3761,3766,3772,3777,3783,3788,3808,3813,3836,3851,3856,3869,3880,3891,3902,3911,3916,3921,3931,3936,3961,3989,3994,3999,4022,4047,4052,4057,4080,4105,4110,4115,4128,4133,4144,4155,4170,4175,4180,4185,4190,4196,4201,4207,4212,4232,4237,4260,4275,4280,4293,4304,4315,4326,4335,4340,4345,4356,4361,4372,4383,4396,4401,4406],{"__ignoreMap":780},[784,3040,3041,3043],{"class":786,"line":6},[784,3042,936],{"class":935},[784,3044,939],{"class":805},[784,3046,3047],{"class":786,"line":29},[784,3048,834],{"emptyLinePlaceholder":833},[784,3050,3051,3053,3055,3057,3059,3061],{"class":786,"line":14},[784,3052,948],{"class":935},[784,3054,952],{"class":951},[784,3056,955],{"class":805},[784,3058,958],{"class":935},[784,3060,961],{"class":805},[784,3062,964],{"class":951},[784,3064,3065],{"class":786,"line":18},[784,3066,834],{"emptyLinePlaceholder":833},[784,3068,3069,3071,3074],{"class":786,"line":70},[784,3070,1703],{"class":935},[784,3072,3073],{"class":789}," WpNotes\\Http\\Controllers",[784,3075,979],{"class":951},[784,3077,3078],{"class":786,"line":74},[784,3079,834],{"emptyLinePlaceholder":833},[784,3081,3082,3084,3087],{"class":786,"line":78},[784,3083,973],{"class":935},[784,3085,3086],{"class":805}," WP_REST_Request",[784,3088,979],{"class":951},[784,3090,3091,3093,3096],{"class":786,"line":82},[784,3092,973],{"class":935},[784,3094,3095],{"class":805}," WP_REST_Response",[784,3097,979],{"class":951},[784,3099,3100,3102,3105],{"class":786,"line":86},[784,3101,973],{"class":935},[784,3103,3104],{"class":805}," WpNotes\\Models\\Note",[784,3106,979],{"class":951},[784,3108,3109],{"class":786,"line":90},[784,3110,834],{"emptyLinePlaceholder":833},[784,3112,3113],{"class":786,"line":1016},[784,3114,989],{"class":988},[784,3116,3117],{"class":786,"line":1022},[784,3118,3119],{"class":988}," * REST API controller for notes.\n",[784,3121,3122],{"class":786,"line":1028},[784,3123,999],{"class":988},[784,3125,3126,3128],{"class":786,"line":1034},[784,3127,1004],{"class":935},[784,3129,3130],{"class":789}," NoteController\n",[784,3132,3133],{"class":786,"line":1040},[784,3134,1019],{"class":951},[784,3136,3137],{"class":786,"line":1061},[784,3138,1025],{"class":988},[784,3140,3141],{"class":786,"line":1067},[784,3142,3143],{"class":988},"     * List all notes.\n",[784,3145,3146],{"class":786,"line":1087},[784,3147,1893],{"class":988},[784,3149,3150],{"class":786,"line":1102},[784,3151,3152],{"class":988},"     * GET \u002Fwp-json\u002Fwp-notes\u002Fv1\u002Fnotes\n",[784,3154,3155],{"class":786,"line":1122},[784,3156,1037],{"class":988},[784,3158,3159,3161,3163,3166,3168,3171,3174,3176],{"class":786,"line":1136},[784,3160,1043],{"class":935},[784,3162,1046],{"class":935},[784,3164,3165],{"class":789}," index",[784,3167,952],{"class":951},[784,3169,3170],{"class":805},"WP_REST_Request",[784,3172,3173],{"class":951}," $request)",[784,3175,1055],{"class":935},[784,3177,3178],{"class":805}," WP_REST_Response\n",[784,3180,3181],{"class":786,"line":1150},[784,3182,1064],{"class":951},[784,3184,3185,3188,3190,3192,3194,3197],{"class":786,"line":1163},[784,3186,3187],{"class":951},"        $notes ",[784,3189,958],{"class":935},[784,3191,1829],{"class":805},[784,3193,2275],{"class":935},[784,3195,3196],{"class":789},"query",[784,3198,1629],{"class":951},[784,3200,3201,3204,3207,3209,3212,3214,3217],{"class":786,"line":1177},[784,3202,3203],{"class":935},"            ->",[784,3205,3206],{"class":789},"orderBy",[784,3208,952],{"class":951},[784,3210,3211],{"class":793},"'created_at'",[784,3213,2162],{"class":951},[784,3215,3216],{"class":793},"'DESC'",[784,3218,2746],{"class":951},[784,3220,3221,3223,3225],{"class":786,"line":1189},[784,3222,3203],{"class":935},[784,3224,2401],{"class":789},[784,3226,1605],{"class":951},[784,3228,3229],{"class":786,"line":1195},[784,3230,834],{"emptyLinePlaceholder":833},[784,3232,3233,3236,3238,3241],{"class":786,"line":1203},[784,3234,3235],{"class":951},"        $data ",[784,3237,958],{"class":935},[784,3239,3240],{"class":805}," array_map",[784,3242,1618],{"class":951},[784,3244,3245,3248,3250,3253,3256,3258,3260,3263,3266,3268,3271],{"class":786,"line":1211},[784,3246,3247],{"class":935},"            fn",[784,3249,952],{"class":951},[784,3251,3252],{"class":935},"object",[784,3254,3255],{"class":951}," $row) => ",[784,3257,753],{"class":805},[784,3259,2275],{"class":935},[784,3261,3262],{"class":789},"newFromRow",[784,3264,3265],{"class":951},"($row)",[784,3267,1073],{"class":935},[784,3269,3270],{"class":789},"toArray",[784,3272,2331],{"class":951},[784,3274,3275],{"class":786,"line":1219},[784,3276,3277],{"class":951},"            $notes\n",[784,3279,3280],{"class":786,"line":1225},[784,3281,3282],{"class":951},"        );\n",[784,3284,3285],{"class":786,"line":1231},[784,3286,834],{"emptyLinePlaceholder":833},[784,3288,3289,3291,3293,3295],{"class":786,"line":1236},[784,3290,1514],{"class":935},[784,3292,1599],{"class":935},[784,3294,3095],{"class":805},[784,3296,2280],{"class":951},[784,3298,3299,3302,3304,3306],{"class":786,"line":1241},[784,3300,3301],{"class":793},"            'success'",[784,3303,1169],{"class":935},[784,3305,2078],{"class":805},[784,3307,1099],{"class":951},[784,3309,3310,3313,3315],{"class":786,"line":1247},[784,3311,3312],{"class":793},"            'data'",[784,3314,1128],{"class":935},[784,3316,3317],{"class":951}," $data,\n",[784,3319,3320],{"class":786,"line":1252},[784,3321,1222],{"class":951},[784,3323,3324],{"class":786,"line":1268},[784,3325,1228],{"class":951},[784,3327,3328],{"class":786,"line":1273},[784,3329,834],{"emptyLinePlaceholder":833},[784,3331,3332],{"class":786,"line":1289},[784,3333,1025],{"class":988},[784,3335,3336],{"class":786,"line":1294},[784,3337,3338],{"class":988},"     * Show a single note.\n",[784,3340,3341],{"class":786,"line":1963},[784,3342,1893],{"class":988},[784,3344,3345],{"class":786,"line":1968},[784,3346,3347],{"class":988},"     * GET \u002Fwp-json\u002Fwp-notes\u002Fv1\u002Fnotes\u002F{id}\n",[784,3349,3350],{"class":786,"line":1974},[784,3351,1037],{"class":988},[784,3353,3354,3356,3358,3361,3363,3365,3367,3369],{"class":786,"line":1979},[784,3355,1043],{"class":935},[784,3357,1046],{"class":935},[784,3359,3360],{"class":789}," show",[784,3362,952],{"class":951},[784,3364,3170],{"class":805},[784,3366,3173],{"class":951},[784,3368,1055],{"class":935},[784,3370,3178],{"class":805},[784,3372,3373],{"class":786,"line":1997},[784,3374,1064],{"class":951},[784,3376,3377,3380,3382,3384,3386,3389,3391,3394,3396,3399],{"class":786,"line":2002},[784,3378,3379],{"class":951},"        $id ",[784,3381,958],{"class":935},[784,3383,1500],{"class":951},[784,3385,2209],{"class":935},[784,3387,3388],{"class":951},") $request",[784,3390,1073],{"class":935},[784,3392,3393],{"class":789},"get_param",[784,3395,952],{"class":951},[784,3397,3398],{"class":793},"'id'",[784,3400,964],{"class":951},[784,3402,3403,3406,3408,3410,3412,3414],{"class":786,"line":2016},[784,3404,3405],{"class":951},"        $note ",[784,3407,958],{"class":935},[784,3409,1829],{"class":805},[784,3411,2275],{"class":935},[784,3413,2358],{"class":789},[784,3415,3416],{"class":951},"($id);\n",[784,3418,3419],{"class":786,"line":2029},[784,3420,834],{"emptyLinePlaceholder":833},[784,3422,3423,3426,3429,3432,3435],{"class":786,"line":2040},[784,3424,3425],{"class":935},"        if",[784,3427,3428],{"class":951}," ($note ",[784,3430,3431],{"class":935},"===",[784,3433,3434],{"class":805}," null",[784,3436,3437],{"class":951},") {\n",[784,3439,3440,3443,3445,3447],{"class":786,"line":2045},[784,3441,3442],{"class":935},"            return",[784,3444,1599],{"class":935},[784,3446,3095],{"class":805},[784,3448,2280],{"class":951},[784,3450,3451,3454,3456,3459],{"class":786,"line":22},[784,3452,3453],{"class":793},"                'success'",[784,3455,1169],{"class":935},[784,3457,3458],{"class":805}," false",[784,3460,1099],{"class":951},[784,3462,3463,3466,3468,3471],{"class":786,"line":2054},[784,3464,3465],{"class":793},"                'message'",[784,3467,1169],{"class":935},[784,3469,3470],{"class":793}," 'Note not found.'",[784,3472,1099],{"class":951},[784,3474,3475,3478,3481],{"class":786,"line":2060},[784,3476,3477],{"class":951},"            ], ",[784,3479,3480],{"class":805},"404",[784,3482,964],{"class":951},[784,3484,3485],{"class":786,"line":2065},[784,3486,3487],{"class":951},"        }\n",[784,3489,3490],{"class":786,"line":2083},[784,3491,834],{"emptyLinePlaceholder":833},[784,3493,3494,3496,3498,3500],{"class":786,"line":2088},[784,3495,1514],{"class":935},[784,3497,1599],{"class":935},[784,3499,3095],{"class":805},[784,3501,2280],{"class":951},[784,3503,3504,3506,3508,3510],{"class":786,"line":2094},[784,3505,3301],{"class":793},[784,3507,1169],{"class":935},[784,3509,2078],{"class":805},[784,3511,1099],{"class":951},[784,3513,3514,3516,3518,3521,3523,3525],{"class":786,"line":2100},[784,3515,3312],{"class":793},[784,3517,1128],{"class":935},[784,3519,3520],{"class":951}," $note",[784,3522,1073],{"class":935},[784,3524,3270],{"class":789},[784,3526,2331],{"class":951},[784,3528,3529],{"class":786,"line":2105},[784,3530,1222],{"class":951},[784,3532,3533],{"class":786,"line":2110},[784,3534,1228],{"class":951},[784,3536,3537],{"class":786,"line":2115},[784,3538,834],{"emptyLinePlaceholder":833},[784,3540,3541],{"class":786,"line":2121},[784,3542,1025],{"class":988},[784,3544,3545],{"class":786,"line":2126},[784,3546,3547],{"class":988},"     * Create a new note.\n",[784,3549,3550],{"class":786,"line":2139},[784,3551,1893],{"class":988},[784,3553,3554],{"class":786,"line":2144},[784,3555,3556],{"class":988},"     * POST \u002Fwp-json\u002Fwp-notes\u002Fv1\u002Fnotes\n",[784,3558,3559],{"class":786,"line":2170},[784,3560,1037],{"class":988},[784,3562,3563,3565,3567,3570,3572,3574,3576,3578],{"class":786,"line":2175},[784,3564,1043],{"class":935},[784,3566,1046],{"class":935},[784,3568,3569],{"class":789}," store",[784,3571,952],{"class":951},[784,3573,3170],{"class":805},[784,3575,3173],{"class":951},[784,3577,1055],{"class":935},[784,3579,3178],{"class":805},[784,3581,3582],{"class":786,"line":2180},[784,3583,1064],{"class":951},[784,3585,3586,3588,3590,3592,3594,3596],{"class":786,"line":2185},[784,3587,3405],{"class":951},[784,3589,958],{"class":935},[784,3591,1829],{"class":805},[784,3593,2275],{"class":935},[784,3595,1076],{"class":789},[784,3597,2280],{"class":951},[784,3599,3600,3602,3604,3607,3610,3612,3614,3616,3618,3621,3624,3627],{"class":786,"line":2191},[784,3601,1105],{"class":793},[784,3603,2288],{"class":935},[784,3605,3606],{"class":789}," sanitize_text_field",[784,3608,3609],{"class":951},"($request",[784,3611,1073],{"class":935},[784,3613,3393],{"class":789},[784,3615,952],{"class":951},[784,3617,2428],{"class":793},[784,3619,3620],{"class":951},") ",[784,3622,3623],{"class":935},"??",[784,3625,3626],{"class":793}," ''",[784,3628,3629],{"class":951},"),\n",[784,3631,3632,3634,3636,3639,3641,3643,3645,3647,3650,3652,3654,3656],{"class":786,"line":2196},[784,3633,1125],{"class":793},[784,3635,1169],{"class":935},[784,3637,3638],{"class":789}," wp_kses_post",[784,3640,3609],{"class":951},[784,3642,1073],{"class":935},[784,3644,3393],{"class":789},[784,3646,952],{"class":951},[784,3648,3649],{"class":793},"'content'",[784,3651,3620],{"class":951},[784,3653,3623],{"class":935},[784,3655,3626],{"class":793},[784,3657,3629],{"class":951},[784,3659,3660,3662,3664,3666,3668,3670,3672,3674,3676,3678,3680,3683],{"class":786,"line":2215},[784,3661,1139],{"class":793},[784,3663,2313],{"class":935},[784,3665,3606],{"class":789},[784,3667,3609],{"class":951},[784,3669,1073],{"class":935},[784,3671,3393],{"class":789},[784,3673,952],{"class":951},[784,3675,2159],{"class":793},[784,3677,3620],{"class":951},[784,3679,3623],{"class":935},[784,3681,3682],{"class":793}," 'draft'",[784,3684,3629],{"class":951},[784,3686,3687,3689,3691,3693],{"class":786,"line":2220},[784,3688,1153],{"class":793},[784,3690,1169],{"class":935},[784,3692,2328],{"class":789},[784,3694,2331],{"class":951},[784,3696,3697],{"class":786,"line":2239},[784,3698,1222],{"class":951},[784,3700,3701],{"class":786,"line":2244},[784,3702,834],{"emptyLinePlaceholder":833},[784,3704,3706,3708,3710,3712],{"class":786,"line":3705},75,[784,3707,1514],{"class":935},[784,3709,1599],{"class":935},[784,3711,3095],{"class":805},[784,3713,2280],{"class":951},[784,3715,3717,3719,3721,3723],{"class":786,"line":3716},76,[784,3718,3301],{"class":793},[784,3720,1169],{"class":935},[784,3722,2078],{"class":805},[784,3724,1099],{"class":951},[784,3726,3728,3730,3732,3734,3736,3738],{"class":786,"line":3727},77,[784,3729,3312],{"class":793},[784,3731,1128],{"class":935},[784,3733,3520],{"class":951},[784,3735,1073],{"class":935},[784,3737,3270],{"class":789},[784,3739,2331],{"class":951},[784,3741,3743,3746,3749],{"class":786,"line":3742},78,[784,3744,3745],{"class":951},"        ], ",[784,3747,3748],{"class":805},"201",[784,3750,964],{"class":951},[784,3752,3754],{"class":786,"line":3753},79,[784,3755,1228],{"class":951},[784,3757,3759],{"class":786,"line":3758},80,[784,3760,834],{"emptyLinePlaceholder":833},[784,3762,3764],{"class":786,"line":3763},81,[784,3765,1025],{"class":988},[784,3767,3769],{"class":786,"line":3768},82,[784,3770,3771],{"class":988},"     * Update a note.\n",[784,3773,3775],{"class":786,"line":3774},83,[784,3776,1893],{"class":988},[784,3778,3780],{"class":786,"line":3779},84,[784,3781,3782],{"class":988},"     * PUT \u002Fwp-json\u002Fwp-notes\u002Fv1\u002Fnotes\u002F{id}\n",[784,3784,3786],{"class":786,"line":3785},85,[784,3787,1037],{"class":988},[784,3789,3791,3793,3795,3798,3800,3802,3804,3806],{"class":786,"line":3790},86,[784,3792,1043],{"class":935},[784,3794,1046],{"class":935},[784,3796,3797],{"class":789}," update",[784,3799,952],{"class":951},[784,3801,3170],{"class":805},[784,3803,3173],{"class":951},[784,3805,1055],{"class":935},[784,3807,3178],{"class":805},[784,3809,3811],{"class":786,"line":3810},87,[784,3812,1064],{"class":951},[784,3814,3816,3818,3820,3822,3824,3826,3828,3830,3832,3834],{"class":786,"line":3815},88,[784,3817,3379],{"class":951},[784,3819,958],{"class":935},[784,3821,1500],{"class":951},[784,3823,2209],{"class":935},[784,3825,3388],{"class":951},[784,3827,1073],{"class":935},[784,3829,3393],{"class":789},[784,3831,952],{"class":951},[784,3833,3398],{"class":793},[784,3835,964],{"class":951},[784,3837,3839,3841,3843,3845,3847,3849],{"class":786,"line":3838},89,[784,3840,3405],{"class":951},[784,3842,958],{"class":935},[784,3844,1829],{"class":805},[784,3846,2275],{"class":935},[784,3848,2358],{"class":789},[784,3850,3416],{"class":951},[784,3852,3854],{"class":786,"line":3853},90,[784,3855,834],{"emptyLinePlaceholder":833},[784,3857,3859,3861,3863,3865,3867],{"class":786,"line":3858},91,[784,3860,3425],{"class":935},[784,3862,3428],{"class":951},[784,3864,3431],{"class":935},[784,3866,3434],{"class":805},[784,3868,3437],{"class":951},[784,3870,3872,3874,3876,3878],{"class":786,"line":3871},92,[784,3873,3442],{"class":935},[784,3875,1599],{"class":935},[784,3877,3095],{"class":805},[784,3879,2280],{"class":951},[784,3881,3883,3885,3887,3889],{"class":786,"line":3882},93,[784,3884,3453],{"class":793},[784,3886,1169],{"class":935},[784,3888,3458],{"class":805},[784,3890,1099],{"class":951},[784,3892,3894,3896,3898,3900],{"class":786,"line":3893},94,[784,3895,3465],{"class":793},[784,3897,1169],{"class":935},[784,3899,3470],{"class":793},[784,3901,1099],{"class":951},[784,3903,3905,3907,3909],{"class":786,"line":3904},95,[784,3906,3477],{"class":951},[784,3908,3480],{"class":805},[784,3910,964],{"class":951},[784,3912,3914],{"class":786,"line":3913},96,[784,3915,3487],{"class":951},[784,3917,3919],{"class":786,"line":3918},97,[784,3920,834],{"emptyLinePlaceholder":833},[784,3922,3924,3926,3928],{"class":786,"line":3923},98,[784,3925,3235],{"class":951},[784,3927,958],{"class":935},[784,3929,3930],{"class":951}," [];\n",[784,3932,3934],{"class":786,"line":3933},99,[784,3935,834],{"emptyLinePlaceholder":833},[784,3937,3939,3941,3944,3946,3948,3950,3952,3954,3957,3959],{"class":786,"line":3938},100,[784,3940,3425],{"class":935},[784,3942,3943],{"class":951}," ($request",[784,3945,1073],{"class":935},[784,3947,3393],{"class":789},[784,3949,952],{"class":951},[784,3951,2428],{"class":793},[784,3953,3620],{"class":951},[784,3955,3956],{"class":935},"!==",[784,3958,3434],{"class":805},[784,3960,3437],{"class":951},[784,3962,3964,3967,3969,3972,3974,3976,3978,3980,3982,3984,3986],{"class":786,"line":3963},101,[784,3965,3966],{"class":951},"            $data[",[784,3968,2428],{"class":793},[784,3970,3971],{"class":951},"] ",[784,3973,958],{"class":935},[784,3975,3606],{"class":789},[784,3977,3609],{"class":951},[784,3979,1073],{"class":935},[784,3981,3393],{"class":789},[784,3983,952],{"class":951},[784,3985,2428],{"class":793},[784,3987,3988],{"class":951},"));\n",[784,3990,3992],{"class":786,"line":3991},102,[784,3993,3487],{"class":951},[784,3995,3997],{"class":786,"line":3996},103,[784,3998,834],{"emptyLinePlaceholder":833},[784,4000,4002,4004,4006,4008,4010,4012,4014,4016,4018,4020],{"class":786,"line":4001},104,[784,4003,3425],{"class":935},[784,4005,3943],{"class":951},[784,4007,1073],{"class":935},[784,4009,3393],{"class":789},[784,4011,952],{"class":951},[784,4013,3649],{"class":793},[784,4015,3620],{"class":951},[784,4017,3956],{"class":935},[784,4019,3434],{"class":805},[784,4021,3437],{"class":951},[784,4023,4025,4027,4029,4031,4033,4035,4037,4039,4041,4043,4045],{"class":786,"line":4024},105,[784,4026,3966],{"class":951},[784,4028,3649],{"class":793},[784,4030,3971],{"class":951},[784,4032,958],{"class":935},[784,4034,3638],{"class":789},[784,4036,3609],{"class":951},[784,4038,1073],{"class":935},[784,4040,3393],{"class":789},[784,4042,952],{"class":951},[784,4044,3649],{"class":793},[784,4046,3988],{"class":951},[784,4048,4050],{"class":786,"line":4049},106,[784,4051,3487],{"class":951},[784,4053,4055],{"class":786,"line":4054},107,[784,4056,834],{"emptyLinePlaceholder":833},[784,4058,4060,4062,4064,4066,4068,4070,4072,4074,4076,4078],{"class":786,"line":4059},108,[784,4061,3425],{"class":935},[784,4063,3943],{"class":951},[784,4065,1073],{"class":935},[784,4067,3393],{"class":789},[784,4069,952],{"class":951},[784,4071,2159],{"class":793},[784,4073,3620],{"class":951},[784,4075,3956],{"class":935},[784,4077,3434],{"class":805},[784,4079,3437],{"class":951},[784,4081,4083,4085,4087,4089,4091,4093,4095,4097,4099,4101,4103],{"class":786,"line":4082},109,[784,4084,3966],{"class":951},[784,4086,2159],{"class":793},[784,4088,3971],{"class":951},[784,4090,958],{"class":935},[784,4092,3606],{"class":789},[784,4094,3609],{"class":951},[784,4096,1073],{"class":935},[784,4098,3393],{"class":789},[784,4100,952],{"class":951},[784,4102,2159],{"class":793},[784,4104,3988],{"class":951},[784,4106,4108],{"class":786,"line":4107},110,[784,4109,3487],{"class":951},[784,4111,4113],{"class":786,"line":4112},111,[784,4114,834],{"emptyLinePlaceholder":833},[784,4116,4118,4121,4123,4125],{"class":786,"line":4117},112,[784,4119,4120],{"class":951},"        $note",[784,4122,1073],{"class":935},[784,4124,2422],{"class":789},[784,4126,4127],{"class":951},"($data);\n",[784,4129,4131],{"class":786,"line":4130},113,[784,4132,834],{"emptyLinePlaceholder":833},[784,4134,4136,4138,4140,4142],{"class":786,"line":4135},114,[784,4137,1514],{"class":935},[784,4139,1599],{"class":935},[784,4141,3095],{"class":805},[784,4143,2280],{"class":951},[784,4145,4147,4149,4151,4153],{"class":786,"line":4146},115,[784,4148,3301],{"class":793},[784,4150,1169],{"class":935},[784,4152,2078],{"class":805},[784,4154,1099],{"class":951},[784,4156,4158,4160,4162,4164,4166,4168],{"class":786,"line":4157},116,[784,4159,3312],{"class":793},[784,4161,1128],{"class":935},[784,4163,3520],{"class":951},[784,4165,1073],{"class":935},[784,4167,3270],{"class":789},[784,4169,2331],{"class":951},[784,4171,4173],{"class":786,"line":4172},117,[784,4174,1222],{"class":951},[784,4176,4178],{"class":786,"line":4177},118,[784,4179,1228],{"class":951},[784,4181,4183],{"class":786,"line":4182},119,[784,4184,834],{"emptyLinePlaceholder":833},[784,4186,4188],{"class":786,"line":4187},120,[784,4189,1025],{"class":988},[784,4191,4193],{"class":786,"line":4192},121,[784,4194,4195],{"class":988},"     * Delete a note.\n",[784,4197,4199],{"class":786,"line":4198},122,[784,4200,1893],{"class":988},[784,4202,4204],{"class":786,"line":4203},123,[784,4205,4206],{"class":988},"     * DELETE \u002Fwp-json\u002Fwp-notes\u002Fv1\u002Fnotes\u002F{id}\n",[784,4208,4210],{"class":786,"line":4209},124,[784,4211,1037],{"class":988},[784,4213,4215,4217,4219,4222,4224,4226,4228,4230],{"class":786,"line":4214},125,[784,4216,1043],{"class":935},[784,4218,1046],{"class":935},[784,4220,4221],{"class":789}," destroy",[784,4223,952],{"class":951},[784,4225,3170],{"class":805},[784,4227,3173],{"class":951},[784,4229,1055],{"class":935},[784,4231,3178],{"class":805},[784,4233,4235],{"class":786,"line":4234},126,[784,4236,1064],{"class":951},[784,4238,4240,4242,4244,4246,4248,4250,4252,4254,4256,4258],{"class":786,"line":4239},127,[784,4241,3379],{"class":951},[784,4243,958],{"class":935},[784,4245,1500],{"class":951},[784,4247,2209],{"class":935},[784,4249,3388],{"class":951},[784,4251,1073],{"class":935},[784,4253,3393],{"class":789},[784,4255,952],{"class":951},[784,4257,3398],{"class":793},[784,4259,964],{"class":951},[784,4261,4263,4265,4267,4269,4271,4273],{"class":786,"line":4262},128,[784,4264,3405],{"class":951},[784,4266,958],{"class":935},[784,4268,1829],{"class":805},[784,4270,2275],{"class":935},[784,4272,2358],{"class":789},[784,4274,3416],{"class":951},[784,4276,4278],{"class":786,"line":4277},129,[784,4279,834],{"emptyLinePlaceholder":833},[784,4281,4283,4285,4287,4289,4291],{"class":786,"line":4282},130,[784,4284,3425],{"class":935},[784,4286,3428],{"class":951},[784,4288,3431],{"class":935},[784,4290,3434],{"class":805},[784,4292,3437],{"class":951},[784,4294,4296,4298,4300,4302],{"class":786,"line":4295},131,[784,4297,3442],{"class":935},[784,4299,1599],{"class":935},[784,4301,3095],{"class":805},[784,4303,2280],{"class":951},[784,4305,4307,4309,4311,4313],{"class":786,"line":4306},132,[784,4308,3453],{"class":793},[784,4310,1169],{"class":935},[784,4312,3458],{"class":805},[784,4314,1099],{"class":951},[784,4316,4318,4320,4322,4324],{"class":786,"line":4317},133,[784,4319,3465],{"class":793},[784,4321,1169],{"class":935},[784,4323,3470],{"class":793},[784,4325,1099],{"class":951},[784,4327,4329,4331,4333],{"class":786,"line":4328},134,[784,4330,3477],{"class":951},[784,4332,3480],{"class":805},[784,4334,964],{"class":951},[784,4336,4338],{"class":786,"line":4337},135,[784,4339,3487],{"class":951},[784,4341,4343],{"class":786,"line":4342},136,[784,4344,834],{"emptyLinePlaceholder":833},[784,4346,4348,4350,4352,4354],{"class":786,"line":4347},137,[784,4349,4120],{"class":951},[784,4351,1073],{"class":935},[784,4353,2453],{"class":789},[784,4355,1605],{"class":951},[784,4357,4359],{"class":786,"line":4358},138,[784,4360,834],{"emptyLinePlaceholder":833},[784,4362,4364,4366,4368,4370],{"class":786,"line":4363},139,[784,4365,1514],{"class":935},[784,4367,1599],{"class":935},[784,4369,3095],{"class":805},[784,4371,2280],{"class":951},[784,4373,4375,4377,4379,4381],{"class":786,"line":4374},140,[784,4376,3301],{"class":793},[784,4378,1169],{"class":935},[784,4380,2078],{"class":805},[784,4382,1099],{"class":951},[784,4384,4386,4389,4391,4394],{"class":786,"line":4385},141,[784,4387,4388],{"class":793},"            'message'",[784,4390,1169],{"class":935},[784,4392,4393],{"class":793}," 'Note deleted.'",[784,4395,1099],{"class":951},[784,4397,4399],{"class":786,"line":4398},142,[784,4400,1222],{"class":951},[784,4402,4404],{"class":786,"line":4403},143,[784,4405,1228],{"class":951},[784,4407,4409],{"class":786,"line":4408},144,[784,4410,1297],{"class":951},[1299,4412,4414],{"id":4413},"key-points","Key points",[737,4416,4417,4427,4441,4447],{},[740,4418,4419,4420,4422,4423,4426],{},"Controllers receive ",[744,4421,3170],{}," and return ",[744,4424,4425],{},"WP_REST_Response"," — standard WordPress REST API objects",[740,4428,4429,4432,4433,4436,4437,4440],{},[705,4430,4431],{},"Always sanitize input:"," use ",[744,4434,4435],{},"sanitize_text_field()"," for plain text, ",[744,4438,4439],{},"wp_kses_post()"," for HTML content",[740,4442,1307,4443,4446],{},[744,4444,4445],{},"permission('manage_options')"," on the route ensures only admins can access these endpoints",[740,4448,4449,4450,4453],{},"WordPress handles nonce verification automatically for REST API requests via the ",[744,4451,4452],{},"X-WP-Nonce"," header",[765,4455],{},[732,4457,4459],{"id":4458},"step-6-build-the-vuejs-admin-page","Step 6: Build the Vue.js Admin Page",[701,4461,4462],{},"Now let's create the admin interface. Replace the default AdminApp component with our notes manager.",[1299,4464,4466],{"id":4465},"_6a-update-the-vue-component","6a. Update the Vue Component",[701,4468,4469],{},[705,4470,4471],{},[744,4472,4473],{},"resources\u002Fjs\u002Fcomponents\u002FAdminApp.vue",[775,4475,4479],{"className":4476,"code":4477,"language":4478,"meta":780,"style":780},"language-vue shiki shiki-themes github-light github-dark","\u003Ctemplate>\n  \u003Cdiv :data-theme=\"darkMode ? 'dark' : 'light'\">\n    \u003C!-- Header -->\n    \u003Cdiv class=\"wn-flex wn-justify-between wn-items-center wn-mb-6\">\n      \u003Ch2 class=\"wn-text-xl wn-font-bold\">My Notes\u003C\u002Fh2>\n      \u003Cdiv class=\"wn-flex wn-gap-2\">\n        \u003Cbutton\n          class=\"wn-btn wn-btn-primary wn-btn-sm\"\n          @click=\"showForm = !showForm\"\n        >\n          {{ showForm ? 'Cancel' : '+ New Note' }}\n        \u003C\u002Fbutton>\n        \u003Cbutton\n          class=\"wn-btn wn-btn-ghost wn-btn-circle wn-btn-sm\"\n          @click=\"darkMode = !darkMode\"\n          :title=\"darkMode ? 'Light Mode' : 'Dark Mode'\"\n        >\n          🌓\n        \u003C\u002Fbutton>\n      \u003C\u002Fdiv>\n    \u003C\u002Fdiv>\n\n    \u003C!-- Alert Messages -->\n    \u003Cdiv v-if=\"message\" class=\"wn-alert wn-mb-4\" :class=\"messageClass\">\n      \u003Cspan>{{ message }}\u003C\u002Fspan>\n    \u003C\u002Fdiv>\n\n    \u003C!-- Create\u002FEdit Form -->\n    \u003Cdiv v-if=\"showForm\" class=\"wn-card wn-bg-base-100 wn-shadow-xl wn-mb-6\">\n      \u003Cdiv class=\"wn-card-body\">\n        \u003Ch3 class=\"wn-card-title\">\n          {{ editingNote ? 'Edit Note' : 'New Note' }}\n        \u003C\u002Fh3>\n\n        \u003Cdiv class=\"wn-form-control wn-w-full wn-mb-4\">\n          \u003Clabel class=\"wn-label\">\n            \u003Cspan class=\"wn-label-text\">Title\u003C\u002Fspan>\n          \u003C\u002Flabel>\n          \u003Cinput\n            v-model=\"form.title\"\n            type=\"text\"\n            class=\"wn-input wn-input-bordered wn-w-full\"\n            placeholder=\"Enter note title\"\n          \u002F>\n        \u003C\u002Fdiv>\n\n        \u003Cdiv class=\"wn-form-control wn-w-full wn-mb-4\">\n          \u003Clabel class=\"wn-label\">\n            \u003Cspan class=\"wn-label-text\">Content\u003C\u002Fspan>\n          \u003C\u002Flabel>\n          \u003Ctextarea\n            v-model=\"form.content\"\n            class=\"wn-textarea wn-textarea-bordered wn-w-full\"\n            rows=\"4\"\n            placeholder=\"Write your note...\"\n          >\u003C\u002Ftextarea>\n        \u003C\u002Fdiv>\n\n        \u003Cdiv class=\"wn-form-control wn-w-full wn-max-w-xs wn-mb-4\">\n          \u003Clabel class=\"wn-label\">\n            \u003Cspan class=\"wn-label-text\">Status\u003C\u002Fspan>\n          \u003C\u002Flabel>\n          \u003Cselect v-model=\"form.status\" class=\"wn-select wn-select-bordered\">\n            \u003Coption value=\"draft\">Draft\u003C\u002Foption>\n            \u003Coption value=\"published\">Published\u003C\u002Foption>\n          \u003C\u002Fselect>\n        \u003C\u002Fdiv>\n\n        \u003Cdiv class=\"wn-flex wn-gap-2\">\n          \u003Cbutton\n            class=\"wn-btn wn-btn-primary\"\n            @click=\"saveNote\"\n            :disabled=\"saving\"\n          >\n            \u003Cspan v-if=\"saving\" class=\"wn-loading wn-loading-spinner\">\u003C\u002Fspan>\n            {{ editingNote ? 'Update' : 'Create' }}\n          \u003C\u002Fbutton>\n          \u003Cbutton class=\"wn-btn wn-btn-ghost\" @click=\"resetForm\">Cancel\u003C\u002Fbutton>\n        \u003C\u002Fdiv>\n      \u003C\u002Fdiv>\n    \u003C\u002Fdiv>\n\n    \u003C!-- Notes List -->\n    \u003Cdiv class=\"wn-card wn-bg-base-100 wn-shadow-xl\">\n      \u003Cdiv class=\"wn-card-body\">\n        \u003Cdiv v-if=\"loading\" class=\"wn-flex wn-justify-center wn-py-8\">\n          \u003Cspan class=\"wn-loading wn-loading-spinner wn-loading-lg\">\u003C\u002Fspan>\n        \u003C\u002Fdiv>\n\n        \u003Cdiv v-else-if=\"notes.length === 0\" class=\"wn-text-center wn-py-8 wn-opacity-60\">\n          \u003Cp>No notes yet. Click \"+ New Note\" to create one!\u003C\u002Fp>\n        \u003C\u002Fdiv>\n\n        \u003Cdiv v-else class=\"wn-overflow-x-auto\">\n          \u003Ctable class=\"wn-table wn-table-zebra wn-w-full\">\n            \u003Cthead>\n              \u003Ctr>\n                \u003Cth>Title\u003C\u002Fth>\n                \u003Cth>Status\u003C\u002Fth>\n                \u003Cth>Created\u003C\u002Fth>\n                \u003Cth>Actions\u003C\u002Fth>\n              \u003C\u002Ftr>\n            \u003C\u002Fthead>\n            \u003Ctbody>\n              \u003Ctr v-for=\"note in notes\" :key=\"note.id\">\n                \u003Ctd class=\"wn-font-medium\">{{ note.title }}\u003C\u002Ftd>\n                \u003Ctd>\n                  \u003Cspan\n                    class=\"wn-badge\"\n                    :class=\"note.status === 'published'\n                      ? 'wn-badge-success'\n                      : 'wn-badge-warning'\"\n                  >\n                    {{ note.status }}\n                  \u003C\u002Fspan>\n                \u003C\u002Ftd>\n                \u003Ctd class=\"wn-text-sm wn-opacity-70\">\n                  {{ formatDate(note.created_at) }}\n                \u003C\u002Ftd>\n                \u003Ctd>\n                  \u003Cdiv class=\"wn-flex wn-gap-1\">\n                    \u003Cbutton\n                      class=\"wn-btn wn-btn-ghost wn-btn-xs\"\n                      @click=\"editNote(note)\"\n                    >Edit\u003C\u002Fbutton>\n                    \u003Cbutton\n                      class=\"wn-btn wn-btn-ghost wn-btn-xs wn-text-error\"\n                      @click=\"deleteNote(note.id)\"\n                    >Delete\u003C\u002Fbutton>\n                  \u003C\u002Fdiv>\n                \u003C\u002Ftd>\n              \u003C\u002Ftr>\n            \u003C\u002Ftbody>\n          \u003C\u002Ftable>\n        \u003C\u002Fdiv>\n      \u003C\u002Fdiv>\n    \u003C\u002Fdiv>\n  \u003C\u002Fdiv>\n\u003C\u002Ftemplate>\n\n\u003Cscript>\nexport default {\n  name: 'AdminApp',\n  data() {\n    return {\n      darkMode: false,\n      showForm: false,\n      loading: true,\n      saving: false,\n      message: '',\n      messageClass: '',\n      notes: [],\n      editingNote: null,\n      form: {\n        title: '',\n        content: '',\n        status: 'draft',\n      },\n    };\n  },\n  mounted() {\n    this.fetchNotes();\n  },\n  methods: {\n    \u002F**\n     * Fetch all notes from the REST API.\n     *\u002F\n    fetchNotes() {\n      this.loading = true;\n\n      fetch(this.apiUrl('\u002Fnotes'), {\n        headers: this.apiHeaders(),\n      })\n        .then(res => res.json())\n        .then(data => {\n          this.notes = data.data || [];\n          this.loading = false;\n        })\n        .catch(() => {\n          this.showMessage('Failed to load notes.', 'error');\n          this.loading = false;\n        });\n    },\n\n    \u002F**\n     * Save (create or update) a note.\n     *\u002F\n    saveNote() {\n      if (!this.form.title.trim()) {\n        this.showMessage('Title is required.', 'warning');\n        return;\n      }\n\n      this.saving = true;\n\n      const isEditing = this.editingNote !== null;\n      const url = isEditing\n        ? this.apiUrl('\u002Fnotes\u002F' + this.editingNote.id)\n        : this.apiUrl('\u002Fnotes');\n      const method = isEditing ? 'PUT' : 'POST';\n\n      fetch(url, {\n        method: method,\n        headers: {\n          ...this.apiHeaders(),\n          'Content-Type': 'application\u002Fjson',\n        },\n        body: JSON.stringify(this.form),\n      })\n        .then(res => res.json())\n        .then(data => {\n          if (data.success) {\n            this.showMessage(\n              isEditing ? 'Note updated!' : 'Note created!',\n              'success'\n            );\n            this.resetForm();\n            this.fetchNotes();\n          } else {\n            this.showMessage('Error saving note.', 'error');\n          }\n          this.saving = false;\n        })\n        .catch(() => {\n          this.showMessage('Network error.', 'error');\n          this.saving = false;\n        });\n    },\n\n    \u002F**\n     * Load a note into the form for editing.\n     *\u002F\n    editNote(note) {\n      this.editingNote = note;\n      this.form = {\n        title: note.title,\n        content: note.content,\n        status: note.status,\n      };\n      this.showForm = true;\n    },\n\n    \u002F**\n     * Delete a note.\n     *\u002F\n    deleteNote(id) {\n      if (!confirm('Delete this note?')) {\n        return;\n      }\n\n      fetch(this.apiUrl('\u002Fnotes\u002F' + id), {\n        method: 'DELETE',\n        headers: this.apiHeaders(),\n      })\n        .then(res => res.json())\n        .then(data => {\n          if (data.success) {\n            this.showMessage('Note deleted.', 'success');\n            this.fetchNotes();\n          }\n        });\n    },\n\n    \u002F**\n     * Reset the form to default state.\n     *\u002F\n    resetForm() {\n      this.form = { title: '', content: '', status: 'draft' };\n      this.editingNote = null;\n      this.showForm = false;\n    },\n\n    \u002F**\n     * Build a REST API URL.\n     *\u002F\n    apiUrl(path) {\n      const base = window.wpNotesData?.restUrl || '\u002Fwp-json\u002Fwp-notes\u002Fv1';\n      return base + path;\n    },\n\n    \u002F**\n     * Build headers with the WP REST nonce.\n     *\u002F\n    apiHeaders() {\n      return {\n        'X-WP-Nonce': window.wpNotesData?.nonce || '',\n      };\n    },\n\n    \u002F**\n     * Show a temporary message.\n     *\u002F\n    showMessage(text, type) {\n      this.message = text;\n      this.messageClass = {\n        'wn-alert-success': type === 'success',\n        'wn-alert-error': type === 'error',\n        'wn-alert-warning': type === 'warning',\n      };\n      setTimeout(() => { this.message = ''; }, 3000);\n    },\n\n    \u002F**\n     * Format a date string for display.\n     *\u002F\n    formatDate(dateStr) {\n      if (!dateStr) return '';\n      const d = new Date(dateStr);\n      return d.toLocaleDateString(undefined, {\n        year: 'numeric',\n        month: 'short',\n        day: 'numeric',\n      });\n    },\n  },\n};\n\u003C\u002Fscript>\n","vue",[744,4480,4481,4492,4510,4515,4532,4553,4568,4576,4586,4596,4601,4606,4616,4622,4631,4640,4650,4654,4659,4667,4676,4685,4689,4694,4725,4738,4746,4750,4755,4777,4792,4807,4812,4820,4824,4839,4856,4877,4886,4893,4903,4913,4923,4933,4938,4946,4950,4964,4978,4997,5005,5012,5021,5030,5040,5049,5059,5067,5071,5086,5100,5119,5127,5151,5173,5193,5201,5209,5213,5227,5233,5242,5252,5262,5267,5294,5299,5307,5335,5343,5351,5359,5363,5368,5383,5397,5419,5438,5446,5450,5473,5486,5494,5498,5516,5532,5541,5551,5565,5577,5590,5603,5612,5621,5630,5654,5675,5683,5691,5701,5711,5716,5721,5726,5731,5740,5749,5764,5769,5777,5785,5800,5807,5817,5827,5836,5842,5851,5860,5869,5877,5885,5893,5901,5909,5917,5925,5933,5942,5951,5955,5964,5974,5984,5992,6000,6011,6021,6032,6042,6053,6063,6069,6080,6086,6096,6106,6117,6123,6129,6135,6143,6156,6161,6167,6172,6178,6183,6191,6206,6211,6234,6249,6255,6280,6296,6315,6328,6334,6350,6372,6385,6391,6397,6402,6407,6413,6418,6426,6447,6469,6476,6482,6487,6501,6506,6530,6543,6568,6586,6613,6618,6626,6632,6638,6652,6665,6671,6692,6697,6716,6731,6740,6752,6770,6776,6782,6794,6805,6816,6836,6842,6855,6860,6873,6893,6906,6911,6916,6921,6926,6932,6937,6950,6962,6974,6980,6986,6992,6998,7012,7017,7022,7027,7032,7037,7050,7070,7077,7082,7087,7109,7120,7133,7138,7157,7172,7179,7200,7211,7216,7221,7226,7231,7236,7242,7247,7255,7282,7295,7308,7313,7318,7323,7329,7334,7346,7366,7381,7386,7391,7396,7402,7407,7415,7422,7437,7442,7447,7452,7457,7463,7468,7486,7499,7511,7527,7542,7557,7562,7591,7596,7601,7606,7612,7617,7630,7648,7666,7685,7696,7707,7717,7723,7728,7733,7738],{"__ignoreMap":780},[784,4482,4483,4485,4489],{"class":786,"line":6},[784,4484,1988],{"class":951},[784,4486,4488],{"class":4487},"s9eBZ","template",[784,4490,4491],{"class":951},">\n",[784,4493,4494,4497,4500,4503,4505,4508],{"class":786,"line":29},[784,4495,4496],{"class":951},"  \u003C",[784,4498,4499],{"class":4487},"div",[784,4501,4502],{"class":789}," :data-theme",[784,4504,958],{"class":951},[784,4506,4507],{"class":793},"\"darkMode ? 'dark' : 'light'\"",[784,4509,4491],{"class":951},[784,4511,4512],{"class":786,"line":14},[784,4513,4514],{"class":988},"    \u003C!-- Header -->\n",[784,4516,4517,4520,4522,4525,4527,4530],{"class":786,"line":18},[784,4518,4519],{"class":951},"    \u003C",[784,4521,4499],{"class":4487},[784,4523,4524],{"class":789}," class",[784,4526,958],{"class":951},[784,4528,4529],{"class":793},"\"wn-flex wn-justify-between wn-items-center wn-mb-6\"",[784,4531,4491],{"class":951},[784,4533,4534,4537,4539,4541,4543,4546,4549,4551],{"class":786,"line":70},[784,4535,4536],{"class":951},"      \u003C",[784,4538,732],{"class":4487},[784,4540,4524],{"class":789},[784,4542,958],{"class":951},[784,4544,4545],{"class":793},"\"wn-text-xl wn-font-bold\"",[784,4547,4548],{"class":951},">My Notes\u003C\u002F",[784,4550,732],{"class":4487},[784,4552,4491],{"class":951},[784,4554,4555,4557,4559,4561,4563,4566],{"class":786,"line":74},[784,4556,4536],{"class":951},[784,4558,4499],{"class":4487},[784,4560,4524],{"class":789},[784,4562,958],{"class":951},[784,4564,4565],{"class":793},"\"wn-flex wn-gap-2\"",[784,4567,4491],{"class":951},[784,4569,4570,4573],{"class":786,"line":78},[784,4571,4572],{"class":951},"        \u003C",[784,4574,4575],{"class":4487},"button\n",[784,4577,4578,4581,4583],{"class":786,"line":82},[784,4579,4580],{"class":789},"          class",[784,4582,958],{"class":951},[784,4584,4585],{"class":793},"\"wn-btn wn-btn-primary wn-btn-sm\"\n",[784,4587,4588,4591,4593],{"class":786,"line":86},[784,4589,4590],{"class":789},"          @click",[784,4592,958],{"class":951},[784,4594,4595],{"class":793},"\"showForm = !showForm\"\n",[784,4597,4598],{"class":786,"line":90},[784,4599,4600],{"class":951},"        >\n",[784,4602,4603],{"class":786,"line":1016},[784,4604,4605],{"class":951},"          {{ showForm ? 'Cancel' : '+ New Note' }}\n",[784,4607,4608,4611,4614],{"class":786,"line":1022},[784,4609,4610],{"class":951},"        \u003C\u002F",[784,4612,4613],{"class":4487},"button",[784,4615,4491],{"class":951},[784,4617,4618,4620],{"class":786,"line":1028},[784,4619,4572],{"class":951},[784,4621,4575],{"class":4487},[784,4623,4624,4626,4628],{"class":786,"line":1034},[784,4625,4580],{"class":789},[784,4627,958],{"class":951},[784,4629,4630],{"class":793},"\"wn-btn wn-btn-ghost wn-btn-circle wn-btn-sm\"\n",[784,4632,4633,4635,4637],{"class":786,"line":1040},[784,4634,4590],{"class":789},[784,4636,958],{"class":951},[784,4638,4639],{"class":793},"\"darkMode = !darkMode\"\n",[784,4641,4642,4645,4647],{"class":786,"line":1061},[784,4643,4644],{"class":789},"          :title",[784,4646,958],{"class":951},[784,4648,4649],{"class":793},"\"darkMode ? 'Light Mode' : 'Dark Mode'\"\n",[784,4651,4652],{"class":786,"line":1067},[784,4653,4600],{"class":951},[784,4655,4656],{"class":786,"line":1087},[784,4657,4658],{"class":951},"          🌓\n",[784,4660,4661,4663,4665],{"class":786,"line":1102},[784,4662,4610],{"class":951},[784,4664,4613],{"class":4487},[784,4666,4491],{"class":951},[784,4668,4669,4672,4674],{"class":786,"line":1122},[784,4670,4671],{"class":951},"      \u003C\u002F",[784,4673,4499],{"class":4487},[784,4675,4491],{"class":951},[784,4677,4678,4681,4683],{"class":786,"line":1136},[784,4679,4680],{"class":951},"    \u003C\u002F",[784,4682,4499],{"class":4487},[784,4684,4491],{"class":951},[784,4686,4687],{"class":786,"line":1150},[784,4688,834],{"emptyLinePlaceholder":833},[784,4690,4691],{"class":786,"line":1163},[784,4692,4693],{"class":988},"    \u003C!-- Alert Messages -->\n",[784,4695,4696,4698,4700,4703,4705,4708,4710,4712,4715,4718,4720,4723],{"class":786,"line":1177},[784,4697,4519],{"class":951},[784,4699,4499],{"class":4487},[784,4701,4702],{"class":789}," v-if",[784,4704,958],{"class":951},[784,4706,4707],{"class":793},"\"message\"",[784,4709,4524],{"class":789},[784,4711,958],{"class":951},[784,4713,4714],{"class":793},"\"wn-alert wn-mb-4\"",[784,4716,4717],{"class":789}," :class",[784,4719,958],{"class":951},[784,4721,4722],{"class":793},"\"messageClass\"",[784,4724,4491],{"class":951},[784,4726,4727,4729,4731,4734,4736],{"class":786,"line":1189},[784,4728,4536],{"class":951},[784,4730,784],{"class":4487},[784,4732,4733],{"class":951},">{{ message }}\u003C\u002F",[784,4735,784],{"class":4487},[784,4737,4491],{"class":951},[784,4739,4740,4742,4744],{"class":786,"line":1195},[784,4741,4680],{"class":951},[784,4743,4499],{"class":4487},[784,4745,4491],{"class":951},[784,4747,4748],{"class":786,"line":1203},[784,4749,834],{"emptyLinePlaceholder":833},[784,4751,4752],{"class":786,"line":1211},[784,4753,4754],{"class":988},"    \u003C!-- Create\u002FEdit Form -->\n",[784,4756,4757,4759,4761,4763,4765,4768,4770,4772,4775],{"class":786,"line":1219},[784,4758,4519],{"class":951},[784,4760,4499],{"class":4487},[784,4762,4702],{"class":789},[784,4764,958],{"class":951},[784,4766,4767],{"class":793},"\"showForm\"",[784,4769,4524],{"class":789},[784,4771,958],{"class":951},[784,4773,4774],{"class":793},"\"wn-card wn-bg-base-100 wn-shadow-xl wn-mb-6\"",[784,4776,4491],{"class":951},[784,4778,4779,4781,4783,4785,4787,4790],{"class":786,"line":1225},[784,4780,4536],{"class":951},[784,4782,4499],{"class":4487},[784,4784,4524],{"class":789},[784,4786,958],{"class":951},[784,4788,4789],{"class":793},"\"wn-card-body\"",[784,4791,4491],{"class":951},[784,4793,4794,4796,4798,4800,4802,4805],{"class":786,"line":1231},[784,4795,4572],{"class":951},[784,4797,1299],{"class":4487},[784,4799,4524],{"class":789},[784,4801,958],{"class":951},[784,4803,4804],{"class":793},"\"wn-card-title\"",[784,4806,4491],{"class":951},[784,4808,4809],{"class":786,"line":1236},[784,4810,4811],{"class":951},"          {{ editingNote ? 'Edit Note' : 'New Note' }}\n",[784,4813,4814,4816,4818],{"class":786,"line":1241},[784,4815,4610],{"class":951},[784,4817,1299],{"class":4487},[784,4819,4491],{"class":951},[784,4821,4822],{"class":786,"line":1247},[784,4823,834],{"emptyLinePlaceholder":833},[784,4825,4826,4828,4830,4832,4834,4837],{"class":786,"line":1252},[784,4827,4572],{"class":951},[784,4829,4499],{"class":4487},[784,4831,4524],{"class":789},[784,4833,958],{"class":951},[784,4835,4836],{"class":793},"\"wn-form-control wn-w-full wn-mb-4\"",[784,4838,4491],{"class":951},[784,4840,4841,4844,4847,4849,4851,4854],{"class":786,"line":1268},[784,4842,4843],{"class":951},"          \u003C",[784,4845,4846],{"class":4487},"label",[784,4848,4524],{"class":789},[784,4850,958],{"class":951},[784,4852,4853],{"class":793},"\"wn-label\"",[784,4855,4491],{"class":951},[784,4857,4858,4861,4863,4865,4867,4870,4873,4875],{"class":786,"line":1273},[784,4859,4860],{"class":951},"            \u003C",[784,4862,784],{"class":4487},[784,4864,4524],{"class":789},[784,4866,958],{"class":951},[784,4868,4869],{"class":793},"\"wn-label-text\"",[784,4871,4872],{"class":951},">Title\u003C\u002F",[784,4874,784],{"class":4487},[784,4876,4491],{"class":951},[784,4878,4879,4882,4884],{"class":786,"line":1289},[784,4880,4881],{"class":951},"          \u003C\u002F",[784,4883,4846],{"class":4487},[784,4885,4491],{"class":951},[784,4887,4888,4890],{"class":786,"line":1294},[784,4889,4843],{"class":951},[784,4891,4892],{"class":4487},"input\n",[784,4894,4895,4898,4900],{"class":786,"line":1963},[784,4896,4897],{"class":789},"            v-model",[784,4899,958],{"class":951},[784,4901,4902],{"class":793},"\"form.title\"\n",[784,4904,4905,4908,4910],{"class":786,"line":1968},[784,4906,4907],{"class":789},"            type",[784,4909,958],{"class":951},[784,4911,4912],{"class":793},"\"text\"\n",[784,4914,4915,4918,4920],{"class":786,"line":1974},[784,4916,4917],{"class":789},"            class",[784,4919,958],{"class":951},[784,4921,4922],{"class":793},"\"wn-input wn-input-bordered wn-w-full\"\n",[784,4924,4925,4928,4930],{"class":786,"line":1979},[784,4926,4927],{"class":789},"            placeholder",[784,4929,958],{"class":951},[784,4931,4932],{"class":793},"\"Enter note title\"\n",[784,4934,4935],{"class":786,"line":1997},[784,4936,4937],{"class":951},"          \u002F>\n",[784,4939,4940,4942,4944],{"class":786,"line":2002},[784,4941,4610],{"class":951},[784,4943,4499],{"class":4487},[784,4945,4491],{"class":951},[784,4947,4948],{"class":786,"line":2016},[784,4949,834],{"emptyLinePlaceholder":833},[784,4951,4952,4954,4956,4958,4960,4962],{"class":786,"line":2029},[784,4953,4572],{"class":951},[784,4955,4499],{"class":4487},[784,4957,4524],{"class":789},[784,4959,958],{"class":951},[784,4961,4836],{"class":793},[784,4963,4491],{"class":951},[784,4965,4966,4968,4970,4972,4974,4976],{"class":786,"line":2040},[784,4967,4843],{"class":951},[784,4969,4846],{"class":4487},[784,4971,4524],{"class":789},[784,4973,958],{"class":951},[784,4975,4853],{"class":793},[784,4977,4491],{"class":951},[784,4979,4980,4982,4984,4986,4988,4990,4993,4995],{"class":786,"line":2045},[784,4981,4860],{"class":951},[784,4983,784],{"class":4487},[784,4985,4524],{"class":789},[784,4987,958],{"class":951},[784,4989,4869],{"class":793},[784,4991,4992],{"class":951},">Content\u003C\u002F",[784,4994,784],{"class":4487},[784,4996,4491],{"class":951},[784,4998,4999,5001,5003],{"class":786,"line":22},[784,5000,4881],{"class":951},[784,5002,4846],{"class":4487},[784,5004,4491],{"class":951},[784,5006,5007,5009],{"class":786,"line":2054},[784,5008,4843],{"class":951},[784,5010,5011],{"class":4487},"textarea\n",[784,5013,5014,5016,5018],{"class":786,"line":2060},[784,5015,4897],{"class":789},[784,5017,958],{"class":951},[784,5019,5020],{"class":793},"\"form.content\"\n",[784,5022,5023,5025,5027],{"class":786,"line":2065},[784,5024,4917],{"class":789},[784,5026,958],{"class":951},[784,5028,5029],{"class":793},"\"wn-textarea wn-textarea-bordered wn-w-full\"\n",[784,5031,5032,5035,5037],{"class":786,"line":2083},[784,5033,5034],{"class":789},"            rows",[784,5036,958],{"class":951},[784,5038,5039],{"class":793},"\"4\"\n",[784,5041,5042,5044,5046],{"class":786,"line":2088},[784,5043,4927],{"class":789},[784,5045,958],{"class":951},[784,5047,5048],{"class":793},"\"Write your note...\"\n",[784,5050,5051,5054,5057],{"class":786,"line":2094},[784,5052,5053],{"class":951},"          >\u003C\u002F",[784,5055,5056],{"class":4487},"textarea",[784,5058,4491],{"class":951},[784,5060,5061,5063,5065],{"class":786,"line":2100},[784,5062,4610],{"class":951},[784,5064,4499],{"class":4487},[784,5066,4491],{"class":951},[784,5068,5069],{"class":786,"line":2105},[784,5070,834],{"emptyLinePlaceholder":833},[784,5072,5073,5075,5077,5079,5081,5084],{"class":786,"line":2110},[784,5074,4572],{"class":951},[784,5076,4499],{"class":4487},[784,5078,4524],{"class":789},[784,5080,958],{"class":951},[784,5082,5083],{"class":793},"\"wn-form-control wn-w-full wn-max-w-xs wn-mb-4\"",[784,5085,4491],{"class":951},[784,5087,5088,5090,5092,5094,5096,5098],{"class":786,"line":2115},[784,5089,4843],{"class":951},[784,5091,4846],{"class":4487},[784,5093,4524],{"class":789},[784,5095,958],{"class":951},[784,5097,4853],{"class":793},[784,5099,4491],{"class":951},[784,5101,5102,5104,5106,5108,5110,5112,5115,5117],{"class":786,"line":2121},[784,5103,4860],{"class":951},[784,5105,784],{"class":4487},[784,5107,4524],{"class":789},[784,5109,958],{"class":951},[784,5111,4869],{"class":793},[784,5113,5114],{"class":951},">Status\u003C\u002F",[784,5116,784],{"class":4487},[784,5118,4491],{"class":951},[784,5120,5121,5123,5125],{"class":786,"line":2126},[784,5122,4881],{"class":951},[784,5124,4846],{"class":4487},[784,5126,4491],{"class":951},[784,5128,5129,5131,5134,5137,5139,5142,5144,5146,5149],{"class":786,"line":2139},[784,5130,4843],{"class":951},[784,5132,5133],{"class":4487},"select",[784,5135,5136],{"class":789}," v-model",[784,5138,958],{"class":951},[784,5140,5141],{"class":793},"\"form.status\"",[784,5143,4524],{"class":789},[784,5145,958],{"class":951},[784,5147,5148],{"class":793},"\"wn-select wn-select-bordered\"",[784,5150,4491],{"class":951},[784,5152,5153,5155,5158,5161,5163,5166,5169,5171],{"class":786,"line":2144},[784,5154,4860],{"class":951},[784,5156,5157],{"class":4487},"option",[784,5159,5160],{"class":789}," value",[784,5162,958],{"class":951},[784,5164,5165],{"class":793},"\"draft\"",[784,5167,5168],{"class":951},">Draft\u003C\u002F",[784,5170,5157],{"class":4487},[784,5172,4491],{"class":951},[784,5174,5175,5177,5179,5181,5183,5186,5189,5191],{"class":786,"line":2170},[784,5176,4860],{"class":951},[784,5178,5157],{"class":4487},[784,5180,5160],{"class":789},[784,5182,958],{"class":951},[784,5184,5185],{"class":793},"\"published\"",[784,5187,5188],{"class":951},">Published\u003C\u002F",[784,5190,5157],{"class":4487},[784,5192,4491],{"class":951},[784,5194,5195,5197,5199],{"class":786,"line":2175},[784,5196,4881],{"class":951},[784,5198,5133],{"class":4487},[784,5200,4491],{"class":951},[784,5202,5203,5205,5207],{"class":786,"line":2180},[784,5204,4610],{"class":951},[784,5206,4499],{"class":4487},[784,5208,4491],{"class":951},[784,5210,5211],{"class":786,"line":2185},[784,5212,834],{"emptyLinePlaceholder":833},[784,5214,5215,5217,5219,5221,5223,5225],{"class":786,"line":2191},[784,5216,4572],{"class":951},[784,5218,4499],{"class":4487},[784,5220,4524],{"class":789},[784,5222,958],{"class":951},[784,5224,4565],{"class":793},[784,5226,4491],{"class":951},[784,5228,5229,5231],{"class":786,"line":2196},[784,5230,4843],{"class":951},[784,5232,4575],{"class":4487},[784,5234,5235,5237,5239],{"class":786,"line":2215},[784,5236,4917],{"class":789},[784,5238,958],{"class":951},[784,5240,5241],{"class":793},"\"wn-btn wn-btn-primary\"\n",[784,5243,5244,5247,5249],{"class":786,"line":2220},[784,5245,5246],{"class":789},"            @click",[784,5248,958],{"class":951},[784,5250,5251],{"class":793},"\"saveNote\"\n",[784,5253,5254,5257,5259],{"class":786,"line":2239},[784,5255,5256],{"class":789},"            :disabled",[784,5258,958],{"class":951},[784,5260,5261],{"class":793},"\"saving\"\n",[784,5263,5264],{"class":786,"line":2244},[784,5265,5266],{"class":951},"          >\n",[784,5268,5269,5271,5273,5275,5277,5280,5282,5284,5287,5290,5292],{"class":786,"line":3705},[784,5270,4860],{"class":951},[784,5272,784],{"class":4487},[784,5274,4702],{"class":789},[784,5276,958],{"class":951},[784,5278,5279],{"class":793},"\"saving\"",[784,5281,4524],{"class":789},[784,5283,958],{"class":951},[784,5285,5286],{"class":793},"\"wn-loading wn-loading-spinner\"",[784,5288,5289],{"class":951},">\u003C\u002F",[784,5291,784],{"class":4487},[784,5293,4491],{"class":951},[784,5295,5296],{"class":786,"line":3716},[784,5297,5298],{"class":951},"            {{ editingNote ? 'Update' : 'Create' }}\n",[784,5300,5301,5303,5305],{"class":786,"line":3727},[784,5302,4881],{"class":951},[784,5304,4613],{"class":4487},[784,5306,4491],{"class":951},[784,5308,5309,5311,5313,5315,5317,5320,5323,5325,5328,5331,5333],{"class":786,"line":3742},[784,5310,4843],{"class":951},[784,5312,4613],{"class":4487},[784,5314,4524],{"class":789},[784,5316,958],{"class":951},[784,5318,5319],{"class":793},"\"wn-btn wn-btn-ghost\"",[784,5321,5322],{"class":789}," @click",[784,5324,958],{"class":951},[784,5326,5327],{"class":793},"\"resetForm\"",[784,5329,5330],{"class":951},">Cancel\u003C\u002F",[784,5332,4613],{"class":4487},[784,5334,4491],{"class":951},[784,5336,5337,5339,5341],{"class":786,"line":3753},[784,5338,4610],{"class":951},[784,5340,4499],{"class":4487},[784,5342,4491],{"class":951},[784,5344,5345,5347,5349],{"class":786,"line":3758},[784,5346,4671],{"class":951},[784,5348,4499],{"class":4487},[784,5350,4491],{"class":951},[784,5352,5353,5355,5357],{"class":786,"line":3763},[784,5354,4680],{"class":951},[784,5356,4499],{"class":4487},[784,5358,4491],{"class":951},[784,5360,5361],{"class":786,"line":3768},[784,5362,834],{"emptyLinePlaceholder":833},[784,5364,5365],{"class":786,"line":3774},[784,5366,5367],{"class":988},"    \u003C!-- Notes List -->\n",[784,5369,5370,5372,5374,5376,5378,5381],{"class":786,"line":3779},[784,5371,4519],{"class":951},[784,5373,4499],{"class":4487},[784,5375,4524],{"class":789},[784,5377,958],{"class":951},[784,5379,5380],{"class":793},"\"wn-card wn-bg-base-100 wn-shadow-xl\"",[784,5382,4491],{"class":951},[784,5384,5385,5387,5389,5391,5393,5395],{"class":786,"line":3785},[784,5386,4536],{"class":951},[784,5388,4499],{"class":4487},[784,5390,4524],{"class":789},[784,5392,958],{"class":951},[784,5394,4789],{"class":793},[784,5396,4491],{"class":951},[784,5398,5399,5401,5403,5405,5407,5410,5412,5414,5417],{"class":786,"line":3790},[784,5400,4572],{"class":951},[784,5402,4499],{"class":4487},[784,5404,4702],{"class":789},[784,5406,958],{"class":951},[784,5408,5409],{"class":793},"\"loading\"",[784,5411,4524],{"class":789},[784,5413,958],{"class":951},[784,5415,5416],{"class":793},"\"wn-flex wn-justify-center wn-py-8\"",[784,5418,4491],{"class":951},[784,5420,5421,5423,5425,5427,5429,5432,5434,5436],{"class":786,"line":3810},[784,5422,4843],{"class":951},[784,5424,784],{"class":4487},[784,5426,4524],{"class":789},[784,5428,958],{"class":951},[784,5430,5431],{"class":793},"\"wn-loading wn-loading-spinner wn-loading-lg\"",[784,5433,5289],{"class":951},[784,5435,784],{"class":4487},[784,5437,4491],{"class":951},[784,5439,5440,5442,5444],{"class":786,"line":3815},[784,5441,4610],{"class":951},[784,5443,4499],{"class":4487},[784,5445,4491],{"class":951},[784,5447,5448],{"class":786,"line":3838},[784,5449,834],{"emptyLinePlaceholder":833},[784,5451,5452,5454,5456,5459,5461,5464,5466,5468,5471],{"class":786,"line":3853},[784,5453,4572],{"class":951},[784,5455,4499],{"class":4487},[784,5457,5458],{"class":789}," v-else-if",[784,5460,958],{"class":951},[784,5462,5463],{"class":793},"\"notes.length === 0\"",[784,5465,4524],{"class":789},[784,5467,958],{"class":951},[784,5469,5470],{"class":793},"\"wn-text-center wn-py-8 wn-opacity-60\"",[784,5472,4491],{"class":951},[784,5474,5475,5477,5479,5482,5484],{"class":786,"line":3858},[784,5476,4843],{"class":951},[784,5478,701],{"class":4487},[784,5480,5481],{"class":951},">No notes yet. Click \"+ New Note\" to create one!\u003C\u002F",[784,5483,701],{"class":4487},[784,5485,4491],{"class":951},[784,5487,5488,5490,5492],{"class":786,"line":3871},[784,5489,4610],{"class":951},[784,5491,4499],{"class":4487},[784,5493,4491],{"class":951},[784,5495,5496],{"class":786,"line":3882},[784,5497,834],{"emptyLinePlaceholder":833},[784,5499,5500,5502,5504,5507,5509,5511,5514],{"class":786,"line":3893},[784,5501,4572],{"class":951},[784,5503,4499],{"class":4487},[784,5505,5506],{"class":789}," v-else",[784,5508,4524],{"class":789},[784,5510,958],{"class":951},[784,5512,5513],{"class":793},"\"wn-overflow-x-auto\"",[784,5515,4491],{"class":951},[784,5517,5518,5520,5523,5525,5527,5530],{"class":786,"line":3904},[784,5519,4843],{"class":951},[784,5521,5522],{"class":4487},"table",[784,5524,4524],{"class":789},[784,5526,958],{"class":951},[784,5528,5529],{"class":793},"\"wn-table wn-table-zebra wn-w-full\"",[784,5531,4491],{"class":951},[784,5533,5534,5536,5539],{"class":786,"line":3913},[784,5535,4860],{"class":951},[784,5537,5538],{"class":4487},"thead",[784,5540,4491],{"class":951},[784,5542,5543,5546,5549],{"class":786,"line":3918},[784,5544,5545],{"class":951},"              \u003C",[784,5547,5548],{"class":4487},"tr",[784,5550,4491],{"class":951},[784,5552,5553,5556,5559,5561,5563],{"class":786,"line":3923},[784,5554,5555],{"class":951},"                \u003C",[784,5557,5558],{"class":4487},"th",[784,5560,4872],{"class":951},[784,5562,5558],{"class":4487},[784,5564,4491],{"class":951},[784,5566,5567,5569,5571,5573,5575],{"class":786,"line":3933},[784,5568,5555],{"class":951},[784,5570,5558],{"class":4487},[784,5572,5114],{"class":951},[784,5574,5558],{"class":4487},[784,5576,4491],{"class":951},[784,5578,5579,5581,5583,5586,5588],{"class":786,"line":3938},[784,5580,5555],{"class":951},[784,5582,5558],{"class":4487},[784,5584,5585],{"class":951},">Created\u003C\u002F",[784,5587,5558],{"class":4487},[784,5589,4491],{"class":951},[784,5591,5592,5594,5596,5599,5601],{"class":786,"line":3963},[784,5593,5555],{"class":951},[784,5595,5558],{"class":4487},[784,5597,5598],{"class":951},">Actions\u003C\u002F",[784,5600,5558],{"class":4487},[784,5602,4491],{"class":951},[784,5604,5605,5608,5610],{"class":786,"line":3991},[784,5606,5607],{"class":951},"              \u003C\u002F",[784,5609,5548],{"class":4487},[784,5611,4491],{"class":951},[784,5613,5614,5617,5619],{"class":786,"line":3996},[784,5615,5616],{"class":951},"            \u003C\u002F",[784,5618,5538],{"class":4487},[784,5620,4491],{"class":951},[784,5622,5623,5625,5628],{"class":786,"line":4001},[784,5624,4860],{"class":951},[784,5626,5627],{"class":4487},"tbody",[784,5629,4491],{"class":951},[784,5631,5632,5634,5636,5639,5641,5644,5647,5649,5652],{"class":786,"line":4024},[784,5633,5545],{"class":951},[784,5635,5548],{"class":4487},[784,5637,5638],{"class":789}," v-for",[784,5640,958],{"class":951},[784,5642,5643],{"class":793},"\"note in notes\"",[784,5645,5646],{"class":789}," :key",[784,5648,958],{"class":951},[784,5650,5651],{"class":793},"\"note.id\"",[784,5653,4491],{"class":951},[784,5655,5656,5658,5661,5663,5665,5668,5671,5673],{"class":786,"line":4049},[784,5657,5555],{"class":951},[784,5659,5660],{"class":4487},"td",[784,5662,4524],{"class":789},[784,5664,958],{"class":951},[784,5666,5667],{"class":793},"\"wn-font-medium\"",[784,5669,5670],{"class":951},">{{ note.title }}\u003C\u002F",[784,5672,5660],{"class":4487},[784,5674,4491],{"class":951},[784,5676,5677,5679,5681],{"class":786,"line":4054},[784,5678,5555],{"class":951},[784,5680,5660],{"class":4487},[784,5682,4491],{"class":951},[784,5684,5685,5688],{"class":786,"line":4059},[784,5686,5687],{"class":951},"                  \u003C",[784,5689,5690],{"class":4487},"span\n",[784,5692,5693,5696,5698],{"class":786,"line":4082},[784,5694,5695],{"class":789},"                    class",[784,5697,958],{"class":951},[784,5699,5700],{"class":793},"\"wn-badge\"\n",[784,5702,5703,5706,5708],{"class":786,"line":4107},[784,5704,5705],{"class":789},"                    :class",[784,5707,958],{"class":951},[784,5709,5710],{"class":793},"\"note.status === 'published'\n",[784,5712,5713],{"class":786,"line":4112},[784,5714,5715],{"class":793},"                      ? 'wn-badge-success'\n",[784,5717,5718],{"class":786,"line":4117},[784,5719,5720],{"class":793},"                      : 'wn-badge-warning'\"\n",[784,5722,5723],{"class":786,"line":4130},[784,5724,5725],{"class":951},"                  >\n",[784,5727,5728],{"class":786,"line":4135},[784,5729,5730],{"class":951},"                    {{ note.status }}\n",[784,5732,5733,5736,5738],{"class":786,"line":4146},[784,5734,5735],{"class":951},"                  \u003C\u002F",[784,5737,784],{"class":4487},[784,5739,4491],{"class":951},[784,5741,5742,5745,5747],{"class":786,"line":4157},[784,5743,5744],{"class":951},"                \u003C\u002F",[784,5746,5660],{"class":4487},[784,5748,4491],{"class":951},[784,5750,5751,5753,5755,5757,5759,5762],{"class":786,"line":4172},[784,5752,5555],{"class":951},[784,5754,5660],{"class":4487},[784,5756,4524],{"class":789},[784,5758,958],{"class":951},[784,5760,5761],{"class":793},"\"wn-text-sm wn-opacity-70\"",[784,5763,4491],{"class":951},[784,5765,5766],{"class":786,"line":4177},[784,5767,5768],{"class":951},"                  {{ formatDate(note.created_at) }}\n",[784,5770,5771,5773,5775],{"class":786,"line":4182},[784,5772,5744],{"class":951},[784,5774,5660],{"class":4487},[784,5776,4491],{"class":951},[784,5778,5779,5781,5783],{"class":786,"line":4187},[784,5780,5555],{"class":951},[784,5782,5660],{"class":4487},[784,5784,4491],{"class":951},[784,5786,5787,5789,5791,5793,5795,5798],{"class":786,"line":4192},[784,5788,5687],{"class":951},[784,5790,4499],{"class":4487},[784,5792,4524],{"class":789},[784,5794,958],{"class":951},[784,5796,5797],{"class":793},"\"wn-flex wn-gap-1\"",[784,5799,4491],{"class":951},[784,5801,5802,5805],{"class":786,"line":4198},[784,5803,5804],{"class":951},"                    \u003C",[784,5806,4575],{"class":4487},[784,5808,5809,5812,5814],{"class":786,"line":4203},[784,5810,5811],{"class":789},"                      class",[784,5813,958],{"class":951},[784,5815,5816],{"class":793},"\"wn-btn wn-btn-ghost wn-btn-xs\"\n",[784,5818,5819,5822,5824],{"class":786,"line":4209},[784,5820,5821],{"class":789},"                      @click",[784,5823,958],{"class":951},[784,5825,5826],{"class":793},"\"editNote(note)\"\n",[784,5828,5829,5832,5834],{"class":786,"line":4214},[784,5830,5831],{"class":951},"                    >Edit\u003C\u002F",[784,5833,4613],{"class":4487},[784,5835,4491],{"class":951},[784,5837,5838,5840],{"class":786,"line":4234},[784,5839,5804],{"class":951},[784,5841,4575],{"class":4487},[784,5843,5844,5846,5848],{"class":786,"line":4239},[784,5845,5811],{"class":789},[784,5847,958],{"class":951},[784,5849,5850],{"class":793},"\"wn-btn wn-btn-ghost wn-btn-xs wn-text-error\"\n",[784,5852,5853,5855,5857],{"class":786,"line":4262},[784,5854,5821],{"class":789},[784,5856,958],{"class":951},[784,5858,5859],{"class":793},"\"deleteNote(note.id)\"\n",[784,5861,5862,5865,5867],{"class":786,"line":4277},[784,5863,5864],{"class":951},"                    >Delete\u003C\u002F",[784,5866,4613],{"class":4487},[784,5868,4491],{"class":951},[784,5870,5871,5873,5875],{"class":786,"line":4282},[784,5872,5735],{"class":951},[784,5874,4499],{"class":4487},[784,5876,4491],{"class":951},[784,5878,5879,5881,5883],{"class":786,"line":4295},[784,5880,5744],{"class":951},[784,5882,5660],{"class":4487},[784,5884,4491],{"class":951},[784,5886,5887,5889,5891],{"class":786,"line":4306},[784,5888,5607],{"class":951},[784,5890,5548],{"class":4487},[784,5892,4491],{"class":951},[784,5894,5895,5897,5899],{"class":786,"line":4317},[784,5896,5616],{"class":951},[784,5898,5627],{"class":4487},[784,5900,4491],{"class":951},[784,5902,5903,5905,5907],{"class":786,"line":4328},[784,5904,4881],{"class":951},[784,5906,5522],{"class":4487},[784,5908,4491],{"class":951},[784,5910,5911,5913,5915],{"class":786,"line":4337},[784,5912,4610],{"class":951},[784,5914,4499],{"class":4487},[784,5916,4491],{"class":951},[784,5918,5919,5921,5923],{"class":786,"line":4342},[784,5920,4671],{"class":951},[784,5922,4499],{"class":4487},[784,5924,4491],{"class":951},[784,5926,5927,5929,5931],{"class":786,"line":4347},[784,5928,4680],{"class":951},[784,5930,4499],{"class":4487},[784,5932,4491],{"class":951},[784,5934,5935,5938,5940],{"class":786,"line":4358},[784,5936,5937],{"class":951},"  \u003C\u002F",[784,5939,4499],{"class":4487},[784,5941,4491],{"class":951},[784,5943,5944,5947,5949],{"class":786,"line":4363},[784,5945,5946],{"class":951},"\u003C\u002F",[784,5948,4488],{"class":4487},[784,5950,4491],{"class":951},[784,5952,5953],{"class":786,"line":4374},[784,5954,834],{"emptyLinePlaceholder":833},[784,5956,5957,5959,5962],{"class":786,"line":4385},[784,5958,1988],{"class":951},[784,5960,5961],{"class":4487},"script",[784,5963,4491],{"class":951},[784,5965,5966,5969,5972],{"class":786,"line":4398},[784,5967,5968],{"class":935},"export",[784,5970,5971],{"class":935}," default",[784,5973,2690],{"class":951},[784,5975,5976,5979,5982],{"class":786,"line":4403},[784,5977,5978],{"class":951},"  name: ",[784,5980,5981],{"class":793},"'AdminApp'",[784,5983,1099],{"class":951},[784,5985,5986,5989],{"class":786,"line":4408},[784,5987,5988],{"class":789},"  data",[784,5990,5991],{"class":951},"() {\n",[784,5993,5995,5998],{"class":786,"line":5994},145,[784,5996,5997],{"class":935},"    return",[784,5999,2690],{"class":951},[784,6001,6003,6006,6009],{"class":786,"line":6002},146,[784,6004,6005],{"class":951},"      darkMode: ",[784,6007,6008],{"class":805},"false",[784,6010,1099],{"class":951},[784,6012,6014,6017,6019],{"class":786,"line":6013},147,[784,6015,6016],{"class":951},"      showForm: ",[784,6018,6008],{"class":805},[784,6020,1099],{"class":951},[784,6022,6024,6027,6030],{"class":786,"line":6023},148,[784,6025,6026],{"class":951},"      loading: ",[784,6028,6029],{"class":805},"true",[784,6031,1099],{"class":951},[784,6033,6035,6038,6040],{"class":786,"line":6034},149,[784,6036,6037],{"class":951},"      saving: ",[784,6039,6008],{"class":805},[784,6041,1099],{"class":951},[784,6043,6045,6048,6051],{"class":786,"line":6044},150,[784,6046,6047],{"class":951},"      message: ",[784,6049,6050],{"class":793},"''",[784,6052,1099],{"class":951},[784,6054,6056,6059,6061],{"class":786,"line":6055},151,[784,6057,6058],{"class":951},"      messageClass: ",[784,6060,6050],{"class":793},[784,6062,1099],{"class":951},[784,6064,6066],{"class":786,"line":6065},152,[784,6067,6068],{"class":951},"      notes: [],\n",[784,6070,6072,6075,6078],{"class":786,"line":6071},153,[784,6073,6074],{"class":951},"      editingNote: ",[784,6076,6077],{"class":805},"null",[784,6079,1099],{"class":951},[784,6081,6083],{"class":786,"line":6082},154,[784,6084,6085],{"class":951},"      form: {\n",[784,6087,6089,6092,6094],{"class":786,"line":6088},155,[784,6090,6091],{"class":951},"        title: ",[784,6093,6050],{"class":793},[784,6095,1099],{"class":951},[784,6097,6099,6102,6104],{"class":786,"line":6098},156,[784,6100,6101],{"class":951},"        content: ",[784,6103,6050],{"class":793},[784,6105,1099],{"class":951},[784,6107,6109,6112,6115],{"class":786,"line":6108},157,[784,6110,6111],{"class":951},"        status: ",[784,6113,6114],{"class":793},"'draft'",[784,6116,1099],{"class":951},[784,6118,6120],{"class":786,"line":6119},158,[784,6121,6122],{"class":951},"      },\n",[784,6124,6126],{"class":786,"line":6125},159,[784,6127,6128],{"class":951},"    };\n",[784,6130,6132],{"class":786,"line":6131},160,[784,6133,6134],{"class":951},"  },\n",[784,6136,6138,6141],{"class":786,"line":6137},161,[784,6139,6140],{"class":789},"  mounted",[784,6142,5991],{"class":951},[784,6144,6146,6149,6151,6154],{"class":786,"line":6145},162,[784,6147,6148],{"class":805},"    this",[784,6150,1540],{"class":951},[784,6152,6153],{"class":789},"fetchNotes",[784,6155,1605],{"class":951},[784,6157,6159],{"class":786,"line":6158},163,[784,6160,6134],{"class":951},[784,6162,6164],{"class":786,"line":6163},164,[784,6165,6166],{"class":951},"  methods: {\n",[784,6168,6170],{"class":786,"line":6169},165,[784,6171,1025],{"class":988},[784,6173,6175],{"class":786,"line":6174},166,[784,6176,6177],{"class":988},"     * Fetch all notes from the REST API.\n",[784,6179,6181],{"class":786,"line":6180},167,[784,6182,1037],{"class":988},[784,6184,6186,6189],{"class":786,"line":6185},168,[784,6187,6188],{"class":789},"    fetchNotes",[784,6190,5991],{"class":951},[784,6192,6194,6197,6200,6202,6204],{"class":786,"line":6193},169,[784,6195,6196],{"class":805},"      this",[784,6198,6199],{"class":951},".loading ",[784,6201,958],{"class":935},[784,6203,2078],{"class":805},[784,6205,979],{"class":951},[784,6207,6209],{"class":786,"line":6208},170,[784,6210,834],{"emptyLinePlaceholder":833},[784,6212,6214,6217,6219,6222,6224,6227,6229,6231],{"class":786,"line":6213},171,[784,6215,6216],{"class":789},"      fetch",[784,6218,952],{"class":951},[784,6220,6221],{"class":805},"this",[784,6223,1540],{"class":951},[784,6225,6226],{"class":789},"apiUrl",[784,6228,952],{"class":951},[784,6230,2713],{"class":793},[784,6232,6233],{"class":951},"), {\n",[784,6235,6237,6240,6242,6244,6247],{"class":786,"line":6236},172,[784,6238,6239],{"class":951},"        headers: ",[784,6241,6221],{"class":805},[784,6243,1540],{"class":951},[784,6245,6246],{"class":789},"apiHeaders",[784,6248,2331],{"class":951},[784,6250,6252],{"class":786,"line":6251},173,[784,6253,6254],{"class":951},"      })\n",[784,6256,6258,6261,6264,6266,6270,6272,6275,6277],{"class":786,"line":6257},174,[784,6259,6260],{"class":951},"        .",[784,6262,6263],{"class":789},"then",[784,6265,952],{"class":951},[784,6267,6269],{"class":6268},"s4XuR","res",[784,6271,1169],{"class":935},[784,6273,6274],{"class":951}," res.",[784,6276,2534],{"class":789},[784,6278,6279],{"class":951},"())\n",[784,6281,6283,6285,6287,6289,6292,6294],{"class":786,"line":6282},175,[784,6284,6260],{"class":951},[784,6286,6263],{"class":789},[784,6288,952],{"class":951},[784,6290,6291],{"class":6268},"data",[784,6293,1169],{"class":935},[784,6295,2690],{"class":951},[784,6297,6299,6302,6305,6307,6310,6313],{"class":786,"line":6298},176,[784,6300,6301],{"class":805},"          this",[784,6303,6304],{"class":951},".notes ",[784,6306,958],{"class":935},[784,6308,6309],{"class":951}," data.data ",[784,6311,6312],{"class":935},"||",[784,6314,3930],{"class":951},[784,6316,6318,6320,6322,6324,6326],{"class":786,"line":6317},177,[784,6319,6301],{"class":805},[784,6321,6199],{"class":951},[784,6323,958],{"class":935},[784,6325,3458],{"class":805},[784,6327,979],{"class":951},[784,6329,6331],{"class":786,"line":6330},178,[784,6332,6333],{"class":951},"        })\n",[784,6335,6337,6339,6342,6345,6348],{"class":786,"line":6336},179,[784,6338,6260],{"class":951},[784,6340,6341],{"class":789},"catch",[784,6343,6344],{"class":951},"(() ",[784,6346,6347],{"class":935},"=>",[784,6349,2690],{"class":951},[784,6351,6353,6355,6357,6360,6362,6365,6367,6370],{"class":786,"line":6352},180,[784,6354,6301],{"class":805},[784,6356,1540],{"class":951},[784,6358,6359],{"class":789},"showMessage",[784,6361,952],{"class":951},[784,6363,6364],{"class":793},"'Failed to load notes.'",[784,6366,2162],{"class":951},[784,6368,6369],{"class":793},"'error'",[784,6371,964],{"class":951},[784,6373,6375,6377,6379,6381,6383],{"class":786,"line":6374},181,[784,6376,6301],{"class":805},[784,6378,6199],{"class":951},[784,6380,958],{"class":935},[784,6382,3458],{"class":805},[784,6384,979],{"class":951},[784,6386,6388],{"class":786,"line":6387},182,[784,6389,6390],{"class":951},"        });\n",[784,6392,6394],{"class":786,"line":6393},183,[784,6395,6396],{"class":951},"    },\n",[784,6398,6400],{"class":786,"line":6399},184,[784,6401,834],{"emptyLinePlaceholder":833},[784,6403,6405],{"class":786,"line":6404},185,[784,6406,1025],{"class":988},[784,6408,6410],{"class":786,"line":6409},186,[784,6411,6412],{"class":988},"     * Save (create or update) a note.\n",[784,6414,6416],{"class":786,"line":6415},187,[784,6417,1037],{"class":988},[784,6419,6421,6424],{"class":786,"line":6420},188,[784,6422,6423],{"class":789},"    saveNote",[784,6425,5991],{"class":951},[784,6427,6429,6432,6434,6436,6438,6441,6444],{"class":786,"line":6428},189,[784,6430,6431],{"class":935},"      if",[784,6433,1500],{"class":951},[784,6435,1503],{"class":935},[784,6437,6221],{"class":805},[784,6439,6440],{"class":951},".form.title.",[784,6442,6443],{"class":789},"trim",[784,6445,6446],{"class":951},"()) {\n",[784,6448,6450,6453,6455,6457,6459,6462,6464,6467],{"class":786,"line":6449},190,[784,6451,6452],{"class":805},"        this",[784,6454,1540],{"class":951},[784,6456,6359],{"class":789},[784,6458,952],{"class":951},[784,6460,6461],{"class":793},"'Title is required.'",[784,6463,2162],{"class":951},[784,6465,6466],{"class":793},"'warning'",[784,6468,964],{"class":951},[784,6470,6472,6474],{"class":786,"line":6471},191,[784,6473,1514],{"class":935},[784,6475,979],{"class":951},[784,6477,6479],{"class":786,"line":6478},192,[784,6480,6481],{"class":951},"      }\n",[784,6483,6485],{"class":786,"line":6484},193,[784,6486,834],{"emptyLinePlaceholder":833},[784,6488,6490,6492,6495,6497,6499],{"class":786,"line":6489},194,[784,6491,6196],{"class":805},[784,6493,6494],{"class":951},".saving ",[784,6496,958],{"class":935},[784,6498,2078],{"class":805},[784,6500,979],{"class":951},[784,6502,6504],{"class":786,"line":6503},195,[784,6505,834],{"emptyLinePlaceholder":833},[784,6507,6509,6512,6515,6518,6521,6524,6526,6528],{"class":786,"line":6508},196,[784,6510,6511],{"class":935},"      const",[784,6513,6514],{"class":805}," isEditing",[784,6516,6517],{"class":935}," =",[784,6519,6520],{"class":805}," this",[784,6522,6523],{"class":951},".editingNote ",[784,6525,3956],{"class":935},[784,6527,3434],{"class":805},[784,6529,979],{"class":951},[784,6531,6533,6535,6538,6540],{"class":786,"line":6532},197,[784,6534,6511],{"class":935},[784,6536,6537],{"class":805}," url",[784,6539,6517],{"class":935},[784,6541,6542],{"class":951}," isEditing\n",[784,6544,6546,6549,6551,6553,6555,6557,6560,6563,6565],{"class":786,"line":6545},198,[784,6547,6548],{"class":935},"        ?",[784,6550,6520],{"class":805},[784,6552,1540],{"class":951},[784,6554,6226],{"class":789},[784,6556,952],{"class":951},[784,6558,6559],{"class":793},"'\u002Fnotes\u002F'",[784,6561,6562],{"class":935}," +",[784,6564,6520],{"class":805},[784,6566,6567],{"class":951},".editingNote.id)\n",[784,6569,6571,6574,6576,6578,6580,6582,6584],{"class":786,"line":6570},199,[784,6572,6573],{"class":935},"        :",[784,6575,6520],{"class":805},[784,6577,1540],{"class":951},[784,6579,6226],{"class":789},[784,6581,952],{"class":951},[784,6583,2713],{"class":793},[784,6585,964],{"class":951},[784,6587,6589,6591,6594,6596,6599,6602,6605,6608,6611],{"class":786,"line":6588},200,[784,6590,6511],{"class":935},[784,6592,6593],{"class":805}," method",[784,6595,6517],{"class":935},[784,6597,6598],{"class":951}," isEditing ",[784,6600,6601],{"class":935},"?",[784,6603,6604],{"class":793}," 'PUT'",[784,6606,6607],{"class":935}," :",[784,6609,6610],{"class":793}," 'POST'",[784,6612,979],{"class":951},[784,6614,6616],{"class":786,"line":6615},201,[784,6617,834],{"emptyLinePlaceholder":833},[784,6619,6621,6623],{"class":786,"line":6620},202,[784,6622,6216],{"class":789},[784,6624,6625],{"class":951},"(url, {\n",[784,6627,6629],{"class":786,"line":6628},203,[784,6630,6631],{"class":951},"        method: method,\n",[784,6633,6635],{"class":786,"line":6634},204,[784,6636,6637],{"class":951},"        headers: {\n",[784,6639,6641,6644,6646,6648,6650],{"class":786,"line":6640},205,[784,6642,6643],{"class":935},"          ...",[784,6645,6221],{"class":805},[784,6647,1540],{"class":951},[784,6649,6246],{"class":789},[784,6651,2331],{"class":951},[784,6653,6655,6658,6660,6663],{"class":786,"line":6654},206,[784,6656,6657],{"class":793},"          'Content-Type'",[784,6659,2563],{"class":951},[784,6661,6662],{"class":793},"'application\u002Fjson'",[784,6664,1099],{"class":951},[784,6666,6668],{"class":786,"line":6667},207,[784,6669,6670],{"class":951},"        },\n",[784,6672,6674,6677,6680,6682,6685,6687,6689],{"class":786,"line":6673},208,[784,6675,6676],{"class":951},"        body: ",[784,6678,6679],{"class":805},"JSON",[784,6681,1540],{"class":951},[784,6683,6684],{"class":789},"stringify",[784,6686,952],{"class":951},[784,6688,6221],{"class":805},[784,6690,6691],{"class":951},".form),\n",[784,6693,6695],{"class":786,"line":6694},209,[784,6696,6254],{"class":951},[784,6698,6700,6702,6704,6706,6708,6710,6712,6714],{"class":786,"line":6699},210,[784,6701,6260],{"class":951},[784,6703,6263],{"class":789},[784,6705,952],{"class":951},[784,6707,6269],{"class":6268},[784,6709,1169],{"class":935},[784,6711,6274],{"class":951},[784,6713,2534],{"class":789},[784,6715,6279],{"class":951},[784,6717,6719,6721,6723,6725,6727,6729],{"class":786,"line":6718},211,[784,6720,6260],{"class":951},[784,6722,6263],{"class":789},[784,6724,952],{"class":951},[784,6726,6291],{"class":6268},[784,6728,1169],{"class":935},[784,6730,2690],{"class":951},[784,6732,6734,6737],{"class":786,"line":6733},212,[784,6735,6736],{"class":935},"          if",[784,6738,6739],{"class":951}," (data.success) {\n",[784,6741,6743,6746,6748,6750],{"class":786,"line":6742},213,[784,6744,6745],{"class":805},"            this",[784,6747,1540],{"class":951},[784,6749,6359],{"class":789},[784,6751,1618],{"class":951},[784,6753,6755,6758,6760,6763,6765,6768],{"class":786,"line":6754},214,[784,6756,6757],{"class":951},"              isEditing ",[784,6759,6601],{"class":935},[784,6761,6762],{"class":793}," 'Note updated!'",[784,6764,6607],{"class":935},[784,6766,6767],{"class":793}," 'Note created!'",[784,6769,1099],{"class":951},[784,6771,6773],{"class":786,"line":6772},215,[784,6774,6775],{"class":793},"              'success'\n",[784,6777,6779],{"class":786,"line":6778},216,[784,6780,6781],{"class":951},"            );\n",[784,6783,6785,6787,6789,6792],{"class":786,"line":6784},217,[784,6786,6745],{"class":805},[784,6788,1540],{"class":951},[784,6790,6791],{"class":789},"resetForm",[784,6793,1605],{"class":951},[784,6795,6797,6799,6801,6803],{"class":786,"line":6796},218,[784,6798,6745],{"class":805},[784,6800,1540],{"class":951},[784,6802,6153],{"class":789},[784,6804,1605],{"class":951},[784,6806,6808,6811,6814],{"class":786,"line":6807},219,[784,6809,6810],{"class":951},"          } ",[784,6812,6813],{"class":935},"else",[784,6815,2690],{"class":951},[784,6817,6819,6821,6823,6825,6827,6830,6832,6834],{"class":786,"line":6818},220,[784,6820,6745],{"class":805},[784,6822,1540],{"class":951},[784,6824,6359],{"class":789},[784,6826,952],{"class":951},[784,6828,6829],{"class":793},"'Error saving note.'",[784,6831,2162],{"class":951},[784,6833,6369],{"class":793},[784,6835,964],{"class":951},[784,6837,6839],{"class":786,"line":6838},221,[784,6840,6841],{"class":951},"          }\n",[784,6843,6845,6847,6849,6851,6853],{"class":786,"line":6844},222,[784,6846,6301],{"class":805},[784,6848,6494],{"class":951},[784,6850,958],{"class":935},[784,6852,3458],{"class":805},[784,6854,979],{"class":951},[784,6856,6858],{"class":786,"line":6857},223,[784,6859,6333],{"class":951},[784,6861,6863,6865,6867,6869,6871],{"class":786,"line":6862},224,[784,6864,6260],{"class":951},[784,6866,6341],{"class":789},[784,6868,6344],{"class":951},[784,6870,6347],{"class":935},[784,6872,2690],{"class":951},[784,6874,6876,6878,6880,6882,6884,6887,6889,6891],{"class":786,"line":6875},225,[784,6877,6301],{"class":805},[784,6879,1540],{"class":951},[784,6881,6359],{"class":789},[784,6883,952],{"class":951},[784,6885,6886],{"class":793},"'Network error.'",[784,6888,2162],{"class":951},[784,6890,6369],{"class":793},[784,6892,964],{"class":951},[784,6894,6896,6898,6900,6902,6904],{"class":786,"line":6895},226,[784,6897,6301],{"class":805},[784,6899,6494],{"class":951},[784,6901,958],{"class":935},[784,6903,3458],{"class":805},[784,6905,979],{"class":951},[784,6907,6909],{"class":786,"line":6908},227,[784,6910,6390],{"class":951},[784,6912,6914],{"class":786,"line":6913},228,[784,6915,6396],{"class":951},[784,6917,6919],{"class":786,"line":6918},229,[784,6920,834],{"emptyLinePlaceholder":833},[784,6922,6924],{"class":786,"line":6923},230,[784,6925,1025],{"class":988},[784,6927,6929],{"class":786,"line":6928},231,[784,6930,6931],{"class":988},"     * Load a note into the form for editing.\n",[784,6933,6935],{"class":786,"line":6934},232,[784,6936,1037],{"class":988},[784,6938,6940,6943,6945,6948],{"class":786,"line":6939},233,[784,6941,6942],{"class":789},"    editNote",[784,6944,952],{"class":951},[784,6946,6947],{"class":6268},"note",[784,6949,3437],{"class":951},[784,6951,6953,6955,6957,6959],{"class":786,"line":6952},234,[784,6954,6196],{"class":805},[784,6956,6523],{"class":951},[784,6958,958],{"class":935},[784,6960,6961],{"class":951}," note;\n",[784,6963,6965,6967,6970,6972],{"class":786,"line":6964},235,[784,6966,6196],{"class":805},[784,6968,6969],{"class":951},".form ",[784,6971,958],{"class":935},[784,6973,2690],{"class":951},[784,6975,6977],{"class":786,"line":6976},236,[784,6978,6979],{"class":951},"        title: note.title,\n",[784,6981,6983],{"class":786,"line":6982},237,[784,6984,6985],{"class":951},"        content: note.content,\n",[784,6987,6989],{"class":786,"line":6988},238,[784,6990,6991],{"class":951},"        status: note.status,\n",[784,6993,6995],{"class":786,"line":6994},239,[784,6996,6997],{"class":951},"      };\n",[784,6999,7001,7003,7006,7008,7010],{"class":786,"line":7000},240,[784,7002,6196],{"class":805},[784,7004,7005],{"class":951},".showForm ",[784,7007,958],{"class":935},[784,7009,2078],{"class":805},[784,7011,979],{"class":951},[784,7013,7015],{"class":786,"line":7014},241,[784,7016,6396],{"class":951},[784,7018,7020],{"class":786,"line":7019},242,[784,7021,834],{"emptyLinePlaceholder":833},[784,7023,7025],{"class":786,"line":7024},243,[784,7026,1025],{"class":988},[784,7028,7030],{"class":786,"line":7029},244,[784,7031,4195],{"class":988},[784,7033,7035],{"class":786,"line":7034},245,[784,7036,1037],{"class":988},[784,7038,7040,7043,7045,7048],{"class":786,"line":7039},246,[784,7041,7042],{"class":789},"    deleteNote",[784,7044,952],{"class":951},[784,7046,7047],{"class":6268},"id",[784,7049,3437],{"class":951},[784,7051,7053,7055,7057,7059,7062,7064,7067],{"class":786,"line":7052},247,[784,7054,6431],{"class":935},[784,7056,1500],{"class":951},[784,7058,1503],{"class":935},[784,7060,7061],{"class":789},"confirm",[784,7063,952],{"class":951},[784,7065,7066],{"class":793},"'Delete this note?'",[784,7068,7069],{"class":951},")) {\n",[784,7071,7073,7075],{"class":786,"line":7072},248,[784,7074,1514],{"class":935},[784,7076,979],{"class":951},[784,7078,7080],{"class":786,"line":7079},249,[784,7081,6481],{"class":951},[784,7083,7085],{"class":786,"line":7084},250,[784,7086,834],{"emptyLinePlaceholder":833},[784,7088,7090,7092,7094,7096,7098,7100,7102,7104,7106],{"class":786,"line":7089},251,[784,7091,6216],{"class":789},[784,7093,952],{"class":951},[784,7095,6221],{"class":805},[784,7097,1540],{"class":951},[784,7099,6226],{"class":789},[784,7101,952],{"class":951},[784,7103,6559],{"class":793},[784,7105,6562],{"class":935},[784,7107,7108],{"class":951}," id), {\n",[784,7110,7112,7115,7118],{"class":786,"line":7111},252,[784,7113,7114],{"class":951},"        method: ",[784,7116,7117],{"class":793},"'DELETE'",[784,7119,1099],{"class":951},[784,7121,7123,7125,7127,7129,7131],{"class":786,"line":7122},253,[784,7124,6239],{"class":951},[784,7126,6221],{"class":805},[784,7128,1540],{"class":951},[784,7130,6246],{"class":789},[784,7132,2331],{"class":951},[784,7134,7136],{"class":786,"line":7135},254,[784,7137,6254],{"class":951},[784,7139,7141,7143,7145,7147,7149,7151,7153,7155],{"class":786,"line":7140},255,[784,7142,6260],{"class":951},[784,7144,6263],{"class":789},[784,7146,952],{"class":951},[784,7148,6269],{"class":6268},[784,7150,1169],{"class":935},[784,7152,6274],{"class":951},[784,7154,2534],{"class":789},[784,7156,6279],{"class":951},[784,7158,7160,7162,7164,7166,7168,7170],{"class":786,"line":7159},256,[784,7161,6260],{"class":951},[784,7163,6263],{"class":789},[784,7165,952],{"class":951},[784,7167,6291],{"class":6268},[784,7169,1169],{"class":935},[784,7171,2690],{"class":951},[784,7173,7175,7177],{"class":786,"line":7174},257,[784,7176,6736],{"class":935},[784,7178,6739],{"class":951},[784,7180,7182,7184,7186,7188,7190,7193,7195,7198],{"class":786,"line":7181},258,[784,7183,6745],{"class":805},[784,7185,1540],{"class":951},[784,7187,6359],{"class":789},[784,7189,952],{"class":951},[784,7191,7192],{"class":793},"'Note deleted.'",[784,7194,2162],{"class":951},[784,7196,7197],{"class":793},"'success'",[784,7199,964],{"class":951},[784,7201,7203,7205,7207,7209],{"class":786,"line":7202},259,[784,7204,6745],{"class":805},[784,7206,1540],{"class":951},[784,7208,6153],{"class":789},[784,7210,1605],{"class":951},[784,7212,7214],{"class":786,"line":7213},260,[784,7215,6841],{"class":951},[784,7217,7219],{"class":786,"line":7218},261,[784,7220,6390],{"class":951},[784,7222,7224],{"class":786,"line":7223},262,[784,7225,6396],{"class":951},[784,7227,7229],{"class":786,"line":7228},263,[784,7230,834],{"emptyLinePlaceholder":833},[784,7232,7234],{"class":786,"line":7233},264,[784,7235,1025],{"class":988},[784,7237,7239],{"class":786,"line":7238},265,[784,7240,7241],{"class":988},"     * Reset the form to default state.\n",[784,7243,7245],{"class":786,"line":7244},266,[784,7246,1037],{"class":988},[784,7248,7250,7253],{"class":786,"line":7249},267,[784,7251,7252],{"class":789},"    resetForm",[784,7254,5991],{"class":951},[784,7256,7258,7260,7262,7264,7267,7269,7272,7274,7277,7279],{"class":786,"line":7257},268,[784,7259,6196],{"class":805},[784,7261,6969],{"class":951},[784,7263,958],{"class":935},[784,7265,7266],{"class":951}," { title: ",[784,7268,6050],{"class":793},[784,7270,7271],{"class":951},", content: ",[784,7273,6050],{"class":793},[784,7275,7276],{"class":951},", status: ",[784,7278,6114],{"class":793},[784,7280,7281],{"class":951}," };\n",[784,7283,7285,7287,7289,7291,7293],{"class":786,"line":7284},269,[784,7286,6196],{"class":805},[784,7288,6523],{"class":951},[784,7290,958],{"class":935},[784,7292,3434],{"class":805},[784,7294,979],{"class":951},[784,7296,7298,7300,7302,7304,7306],{"class":786,"line":7297},270,[784,7299,6196],{"class":805},[784,7301,7005],{"class":951},[784,7303,958],{"class":935},[784,7305,3458],{"class":805},[784,7307,979],{"class":951},[784,7309,7311],{"class":786,"line":7310},271,[784,7312,6396],{"class":951},[784,7314,7316],{"class":786,"line":7315},272,[784,7317,834],{"emptyLinePlaceholder":833},[784,7319,7321],{"class":786,"line":7320},273,[784,7322,1025],{"class":988},[784,7324,7326],{"class":786,"line":7325},274,[784,7327,7328],{"class":988},"     * Build a REST API URL.\n",[784,7330,7332],{"class":786,"line":7331},275,[784,7333,1037],{"class":988},[784,7335,7337,7340,7342,7344],{"class":786,"line":7336},276,[784,7338,7339],{"class":789},"    apiUrl",[784,7341,952],{"class":951},[784,7343,1481],{"class":6268},[784,7345,3437],{"class":951},[784,7347,7349,7351,7354,7356,7359,7361,7364],{"class":786,"line":7348},277,[784,7350,6511],{"class":935},[784,7352,7353],{"class":805}," base",[784,7355,6517],{"class":935},[784,7357,7358],{"class":951}," window.wpNotesData?.restUrl ",[784,7360,6312],{"class":935},[784,7362,7363],{"class":793}," '\u002Fwp-json\u002Fwp-notes\u002Fv1'",[784,7365,979],{"class":951},[784,7367,7369,7372,7375,7378],{"class":786,"line":7368},278,[784,7370,7371],{"class":935},"      return",[784,7373,7374],{"class":951}," base ",[784,7376,7377],{"class":935},"+",[784,7379,7380],{"class":951}," path;\n",[784,7382,7384],{"class":786,"line":7383},279,[784,7385,6396],{"class":951},[784,7387,7389],{"class":786,"line":7388},280,[784,7390,834],{"emptyLinePlaceholder":833},[784,7392,7394],{"class":786,"line":7393},281,[784,7395,1025],{"class":988},[784,7397,7399],{"class":786,"line":7398},282,[784,7400,7401],{"class":988},"     * Build headers with the WP REST nonce.\n",[784,7403,7405],{"class":786,"line":7404},283,[784,7406,1037],{"class":988},[784,7408,7410,7413],{"class":786,"line":7409},284,[784,7411,7412],{"class":789},"    apiHeaders",[784,7414,5991],{"class":951},[784,7416,7418,7420],{"class":786,"line":7417},285,[784,7419,7371],{"class":935},[784,7421,2690],{"class":951},[784,7423,7425,7428,7431,7433,7435],{"class":786,"line":7424},286,[784,7426,7427],{"class":793},"        'X-WP-Nonce'",[784,7429,7430],{"class":951},": window.wpNotesData?.nonce ",[784,7432,6312],{"class":935},[784,7434,3626],{"class":793},[784,7436,1099],{"class":951},[784,7438,7440],{"class":786,"line":7439},287,[784,7441,6997],{"class":951},[784,7443,7445],{"class":786,"line":7444},288,[784,7446,6396],{"class":951},[784,7448,7450],{"class":786,"line":7449},289,[784,7451,834],{"emptyLinePlaceholder":833},[784,7453,7455],{"class":786,"line":7454},290,[784,7456,1025],{"class":988},[784,7458,7460],{"class":786,"line":7459},291,[784,7461,7462],{"class":988},"     * Show a temporary message.\n",[784,7464,7466],{"class":786,"line":7465},292,[784,7467,1037],{"class":988},[784,7469,7471,7474,7476,7479,7481,7484],{"class":786,"line":7470},293,[784,7472,7473],{"class":789},"    showMessage",[784,7475,952],{"class":951},[784,7477,7478],{"class":6268},"text",[784,7480,2162],{"class":951},[784,7482,7483],{"class":6268},"type",[784,7485,3437],{"class":951},[784,7487,7489,7491,7494,7496],{"class":786,"line":7488},294,[784,7490,6196],{"class":805},[784,7492,7493],{"class":951},".message ",[784,7495,958],{"class":935},[784,7497,7498],{"class":951}," text;\n",[784,7500,7502,7504,7507,7509],{"class":786,"line":7501},295,[784,7503,6196],{"class":805},[784,7505,7506],{"class":951},".messageClass ",[784,7508,958],{"class":935},[784,7510,2690],{"class":951},[784,7512,7514,7517,7520,7522,7525],{"class":786,"line":7513},296,[784,7515,7516],{"class":793},"        'wn-alert-success'",[784,7518,7519],{"class":951},": type ",[784,7521,3431],{"class":935},[784,7523,7524],{"class":793}," 'success'",[784,7526,1099],{"class":951},[784,7528,7530,7533,7535,7537,7540],{"class":786,"line":7529},297,[784,7531,7532],{"class":793},"        'wn-alert-error'",[784,7534,7519],{"class":951},[784,7536,3431],{"class":935},[784,7538,7539],{"class":793}," 'error'",[784,7541,1099],{"class":951},[784,7543,7545,7548,7550,7552,7555],{"class":786,"line":7544},298,[784,7546,7547],{"class":793},"        'wn-alert-warning'",[784,7549,7519],{"class":951},[784,7551,3431],{"class":935},[784,7553,7554],{"class":793}," 'warning'",[784,7556,1099],{"class":951},[784,7558,7560],{"class":786,"line":7559},299,[784,7561,6997],{"class":951},[784,7563,7565,7568,7570,7572,7575,7577,7579,7581,7583,7586,7589],{"class":786,"line":7564},300,[784,7566,7567],{"class":789},"      setTimeout",[784,7569,6344],{"class":951},[784,7571,6347],{"class":935},[784,7573,7574],{"class":951}," { ",[784,7576,6221],{"class":805},[784,7578,7493],{"class":951},[784,7580,958],{"class":935},[784,7582,3626],{"class":793},[784,7584,7585],{"class":951},"; }, ",[784,7587,7588],{"class":805},"3000",[784,7590,964],{"class":951},[784,7592,7594],{"class":786,"line":7593},301,[784,7595,6396],{"class":951},[784,7597,7599],{"class":786,"line":7598},302,[784,7600,834],{"emptyLinePlaceholder":833},[784,7602,7604],{"class":786,"line":7603},303,[784,7605,1025],{"class":988},[784,7607,7609],{"class":786,"line":7608},304,[784,7610,7611],{"class":988},"     * Format a date string for display.\n",[784,7613,7615],{"class":786,"line":7614},305,[784,7616,1037],{"class":988},[784,7618,7620,7623,7625,7628],{"class":786,"line":7619},306,[784,7621,7622],{"class":789},"    formatDate",[784,7624,952],{"class":951},[784,7626,7627],{"class":6268},"dateStr",[784,7629,3437],{"class":951},[784,7631,7633,7635,7637,7639,7642,7644,7646],{"class":786,"line":7632},307,[784,7634,6431],{"class":935},[784,7636,1500],{"class":951},[784,7638,1503],{"class":935},[784,7640,7641],{"class":951},"dateStr) ",[784,7643,2670],{"class":935},[784,7645,3626],{"class":793},[784,7647,979],{"class":951},[784,7649,7651,7653,7656,7658,7660,7663],{"class":786,"line":7650},308,[784,7652,6511],{"class":935},[784,7654,7655],{"class":805}," d",[784,7657,6517],{"class":935},[784,7659,1599],{"class":935},[784,7661,7662],{"class":789}," Date",[784,7664,7665],{"class":951},"(dateStr);\n",[784,7667,7669,7671,7674,7677,7679,7682],{"class":786,"line":7668},309,[784,7670,7371],{"class":935},[784,7672,7673],{"class":951}," d.",[784,7675,7676],{"class":789},"toLocaleDateString",[784,7678,952],{"class":951},[784,7680,7681],{"class":805},"undefined",[784,7683,7684],{"class":951},", {\n",[784,7686,7688,7691,7694],{"class":786,"line":7687},310,[784,7689,7690],{"class":951},"        year: ",[784,7692,7693],{"class":793},"'numeric'",[784,7695,1099],{"class":951},[784,7697,7699,7702,7705],{"class":786,"line":7698},311,[784,7700,7701],{"class":951},"        month: ",[784,7703,7704],{"class":793},"'short'",[784,7706,1099],{"class":951},[784,7708,7710,7713,7715],{"class":786,"line":7709},312,[784,7711,7712],{"class":951},"        day: ",[784,7714,7693],{"class":793},[784,7716,1099],{"class":951},[784,7718,7720],{"class":786,"line":7719},313,[784,7721,7722],{"class":951},"      });\n",[784,7724,7726],{"class":786,"line":7725},314,[784,7727,6396],{"class":951},[784,7729,7731],{"class":786,"line":7730},315,[784,7732,6134],{"class":951},[784,7734,7736],{"class":786,"line":7735},316,[784,7737,2984],{"class":951},[784,7739,7741,7743,7745],{"class":786,"line":7740},317,[784,7742,5946],{"class":951},[784,7744,5961],{"class":4487},[784,7746,4491],{"class":951},[1299,7748,7750],{"id":7749},"_6b-update-the-admin-view","6b. Update the Admin View",[701,7752,7753],{},"The PHP view file passes data to the Vue app. Update the Blade template:",[701,7755,7756],{},[705,7757,7758],{},[744,7759,7760],{},"resources\u002Fviews\u002Fadmin\u002Fsettings.blade.php",[775,7762,7764],{"className":926,"code":7763,"language":928,"meta":780,"style":780},"\u003Cdiv id=\"wn-admin\" class=\"wrap\">\n    \u003Ch1 class=\"text-2xl font-bold mb-6\">{{ $page_title ?? 'WP Notes' }}\u003C\u002Fh1>\n\n    {{-- Vue.js App Mount Point --}}\n    \u003Cdiv id=\"wp-notes-admin-app\">\u003C\u002Fdiv>\n\n    {{-- Pass data from PHP to JavaScript --}}\n    \u003Cscript>\n        window.wpNotesData = {\n            nonce: '{{ wp_create_nonce(\"wp_rest\") }}',\n            restUrl: '{{ esc_url(rest_url(\"wp-notes\u002Fv1\")) }}',\n        };\n    \u003C\u002Fscript>\n\u003C\u002Fdiv>\n",[744,7765,7766,7788,7819,7823,7854,7873,7877,7905,7913,7927,7939,7951,7956,7964],{"__ignoreMap":780},[784,7767,7768,7770,7772,7775,7777,7780,7783,7786],{"class":786,"line":6},[784,7769,1988],{"class":935},[784,7771,4499],{"class":805},[784,7773,7774],{"class":805}," id",[784,7776,958],{"class":935},[784,7778,7779],{"class":793},"\"wn-admin\"",[784,7781,7782],{"class":935}," class=",[784,7784,7785],{"class":793},"\"wrap\"",[784,7787,4491],{"class":935},[784,7789,7790,7792,7794,7796,7799,7802,7805,7807,7810,7813,7815,7817],{"class":786,"line":29},[784,7791,4519],{"class":935},[784,7793,697],{"class":805},[784,7795,7782],{"class":935},[784,7797,7798],{"class":793},"\"text-2xl font-bold mb-6\"",[784,7800,7801],{"class":935},">",[784,7803,7804],{"class":951},"{{ $page_title ",[784,7806,3623],{"class":935},[784,7808,7809],{"class":793}," 'WP Notes'",[784,7811,7812],{"class":951}," }}",[784,7814,5946],{"class":935},[784,7816,697],{"class":805},[784,7818,4491],{"class":935},[784,7820,7821],{"class":786,"line":14},[784,7822,834],{"emptyLinePlaceholder":833},[784,7824,7825,7828,7831,7834,7836,7839,7842,7845,7848,7851],{"class":786,"line":18},[784,7826,7827],{"class":951},"    {{",[784,7829,7830],{"class":935},"--",[784,7832,7833],{"class":805}," Vue",[784,7835,1540],{"class":935},[784,7837,7838],{"class":805},"js",[784,7840,7841],{"class":805}," App",[784,7843,7844],{"class":805}," Mount",[784,7846,7847],{"class":805}," Point",[784,7849,7850],{"class":935}," --",[784,7852,7853],{"class":951},"}}\n",[784,7855,7856,7858,7860,7862,7864,7867,7869,7871],{"class":786,"line":70},[784,7857,4519],{"class":935},[784,7859,4499],{"class":805},[784,7861,7774],{"class":805},[784,7863,958],{"class":935},[784,7865,7866],{"class":793},"\"wp-notes-admin-app\"",[784,7868,5289],{"class":935},[784,7870,4499],{"class":805},[784,7872,4491],{"class":935},[784,7874,7875],{"class":786,"line":74},[784,7876,834],{"emptyLinePlaceholder":833},[784,7878,7879,7881,7883,7886,7889,7892,7895,7898,7901,7903],{"class":786,"line":78},[784,7880,7827],{"class":951},[784,7882,7830],{"class":935},[784,7884,7885],{"class":805}," Pass",[784,7887,7888],{"class":805}," data",[784,7890,7891],{"class":805}," from",[784,7893,7894],{"class":805}," PHP",[784,7896,7897],{"class":805}," to",[784,7899,7900],{"class":805}," JavaScript",[784,7902,7850],{"class":935},[784,7904,7853],{"class":951},[784,7906,7907,7909,7911],{"class":786,"line":82},[784,7908,4519],{"class":935},[784,7910,5961],{"class":805},[784,7912,4491],{"class":935},[784,7914,7915,7918,7920,7923,7925],{"class":786,"line":86},[784,7916,7917],{"class":805},"        window",[784,7919,1540],{"class":935},[784,7921,7922],{"class":805},"wpNotesData",[784,7924,6517],{"class":935},[784,7926,2690],{"class":951},[784,7928,7929,7932,7934,7937],{"class":786,"line":90},[784,7930,7931],{"class":789},"            nonce",[784,7933,2563],{"class":951},[784,7935,7936],{"class":793},"'{{ wp_create_nonce(\"wp_rest\") }}'",[784,7938,1099],{"class":951},[784,7940,7941,7944,7946,7949],{"class":786,"line":1016},[784,7942,7943],{"class":789},"            restUrl",[784,7945,2563],{"class":951},[784,7947,7948],{"class":793},"'{{ esc_url(rest_url(\"wp-notes\u002Fv1\")) }}'",[784,7950,1099],{"class":951},[784,7952,7953],{"class":786,"line":1022},[784,7954,7955],{"class":951},"        };\n",[784,7957,7958,7960,7962],{"class":786,"line":1028},[784,7959,4680],{"class":935},[784,7961,5961],{"class":805},[784,7963,4491],{"class":935},[784,7965,7966,7968,7970],{"class":786,"line":1034},[784,7967,5946],{"class":935},[784,7969,4499],{"class":805},[784,7971,4491],{"class":935},[1299,7973,7975],{"id":7974},"_6c-update-the-admin-js-entry","6c. Update the Admin JS Entry",[701,7977,7978],{},[705,7979,7980],{},[744,7981,7982],{},"resources\u002Fjs\u002Fadmin.js",[775,7984,7987],{"className":7985,"code":7986,"language":7838,"meta":780,"style":780},"language-js shiki shiki-themes github-light github-dark","import '..\u002Fcss\u002Fadmin.css';\nimport { createApp } from 'vue';\nimport AdminApp from '.\u002Fcomponents\u002FAdminApp.vue';\n\ndocument.addEventListener('DOMContentLoaded', () => {\n  const mountEl = document.getElementById('wp-notes-admin-app');\n  if (mountEl) {\n    const app = createApp(AdminApp);\n    app.mount(mountEl);\n  }\n});\n",[744,7988,7989,7999,8014,8028,8032,8052,8075,8083,8099,8110,8114],{"__ignoreMap":780},[784,7990,7991,7994,7997],{"class":786,"line":6},[784,7992,7993],{"class":935},"import",[784,7995,7996],{"class":793}," '..\u002Fcss\u002Fadmin.css'",[784,7998,979],{"class":951},[784,8000,8001,8003,8006,8009,8012],{"class":786,"line":29},[784,8002,7993],{"class":935},[784,8004,8005],{"class":951}," { createApp } ",[784,8007,8008],{"class":935},"from",[784,8010,8011],{"class":793}," 'vue'",[784,8013,979],{"class":951},[784,8015,8016,8018,8021,8023,8026],{"class":786,"line":14},[784,8017,7993],{"class":935},[784,8019,8020],{"class":951}," AdminApp ",[784,8022,8008],{"class":935},[784,8024,8025],{"class":793}," '.\u002Fcomponents\u002FAdminApp.vue'",[784,8027,979],{"class":951},[784,8029,8030],{"class":786,"line":18},[784,8031,834],{"emptyLinePlaceholder":833},[784,8033,8034,8037,8040,8042,8045,8048,8050],{"class":786,"line":70},[784,8035,8036],{"class":951},"document.",[784,8038,8039],{"class":789},"addEventListener",[784,8041,952],{"class":951},[784,8043,8044],{"class":793},"'DOMContentLoaded'",[784,8046,8047],{"class":951},", () ",[784,8049,6347],{"class":935},[784,8051,2690],{"class":951},[784,8053,8054,8057,8060,8062,8065,8068,8070,8073],{"class":786,"line":74},[784,8055,8056],{"class":935},"  const",[784,8058,8059],{"class":805}," mountEl",[784,8061,6517],{"class":935},[784,8063,8064],{"class":951}," document.",[784,8066,8067],{"class":789},"getElementById",[784,8069,952],{"class":951},[784,8071,8072],{"class":793},"'wp-notes-admin-app'",[784,8074,964],{"class":951},[784,8076,8077,8080],{"class":786,"line":78},[784,8078,8079],{"class":935},"  if",[784,8081,8082],{"class":951}," (mountEl) {\n",[784,8084,8085,8088,8091,8093,8096],{"class":786,"line":82},[784,8086,8087],{"class":935},"    const",[784,8089,8090],{"class":805}," app",[784,8092,6517],{"class":935},[784,8094,8095],{"class":789}," createApp",[784,8097,8098],{"class":951},"(AdminApp);\n",[784,8100,8101,8104,8107],{"class":786,"line":86},[784,8102,8103],{"class":951},"    app.",[784,8105,8106],{"class":789},"mount",[784,8108,8109],{"class":951},"(mountEl);\n",[784,8111,8112],{"class":786,"line":90},[784,8113,2575],{"class":951},[784,8115,8116],{"class":786,"line":1016},[784,8117,8118],{"class":951},"});\n",[1299,8120,8122],{"id":8121},"_6d-build-the-frontend","6d. Build the Frontend",[775,8124,8126],{"className":777,"code":8125,"language":779,"meta":780,"style":780},"npm run build\n",[744,8127,8128],{"__ignoreMap":780},[784,8129,8130,8132,8135],{"class":786,"line":6},[784,8131,901],{"class":789},[784,8133,8134],{"class":793}," run",[784,8136,8137],{"class":793}," build\n",[765,8139],{},[732,8141,8143],{"id":8142},"step-7-add-a-frontend-shortcode","Step 7: Add a Frontend Shortcode",[701,8145,8146],{},"Let's display published notes on the frontend using a shortcode.",[701,8148,8149],{},[705,8150,8151],{},[744,8152,8153],{},"app\u002FHttp\u002FShortcodes\u002FNotesShortcode.php",[775,8155,8157],{"className":926,"code":8156,"language":928,"meta":780,"style":780},"\u003C?php\n\ndeclare(strict_types=1);\n\nnamespace WpNotes\\Http\\Shortcodes;\n\nuse WPZylos\\Framework\\Core\\Contracts\\ContextInterface;\nuse WpNotes\\Models\\Note;\n\n\u002F**\n * [wp_notes] shortcode — displays published notes on the frontend.\n *\n * Usage:\n *   [wp_notes]              — Show all published notes\n *   [wp_notes limit=\"5\"]    — Show the 5 most recent notes\n *\u002F\nclass NotesShortcode\n{\n    private ContextInterface $context;\n\n    public function __construct(ContextInterface $context)\n    {\n        $this->context = $context;\n    }\n\n    \u002F**\n     * Register the shortcode with WordPress.\n     *\u002F\n    public function register(): void\n    {\n        add_shortcode('wp_notes', [$this, 'render']);\n    }\n\n    \u002F**\n     * Render the shortcode output.\n     *\n     * @param array $atts Shortcode attributes\n     * @return string HTML output\n     *\u002F\n    public function render(array $atts = []): string\n    {\n        $atts = shortcode_atts([\n            'limit' => 10,\n        ], $atts);\n\n        $notes = Note::where('status', 'published')\n            ->orderBy('created_at', 'DESC')\n            ->limit((int) $atts['limit'])\n            ->get();\n\n        if (empty($notes)) {\n            return '\u003Cp>No notes to display.\u003C\u002Fp>';\n        }\n\n        $html = '\u003Cdiv class=\"wn-space-y-4\">';\n\n        foreach ($notes as $row) {\n            $note = Note::newFromRow($row);\n            $title   = esc_html($note->title);\n            $content = wp_kses_post($note->content);\n            $date    = esc_html(\n                date_i18n(get_option('date_format'), strtotime($note->created_at))\n            );\n\n            $html .= \u003C\u003C\u003CHTML\n            \u003Cdiv class=\"wn-card wn-bg-base-100 wn-shadow-md\">\n                \u003Cdiv class=\"wn-card-body\">\n                    \u003Ch3 class=\"wn-card-title\">{$title}\u003C\u002Fh3>\n                    \u003Cp class=\"wn-text-sm wn-opacity-60\">{$date}\u003C\u002Fp>\n                    \u003Cdiv>{$content}\u003C\u002Fdiv>\n                \u003C\u002Fdiv>\n            \u003C\u002Fdiv>\n            HTML;\n        }\n\n        $html .= '\u003C\u002Fdiv>';\n\n        return $html;\n    }\n}\n",[744,8158,8159,8165,8169,8183,8187,8196,8200,8209,8217,8221,8225,8230,8234,8239,8244,8249,8253,8260,8264,8275,8279,8296,8300,8313,8317,8321,8325,8330,8334,8349,8353,8375,8379,8383,8387,8392,8396,8407,8418,8422,8449,8453,8465,8477,8482,8486,8508,8524,8544,8552,8556,8568,8577,8581,8585,8597,8601,8614,8630,8648,8664,8675,8703,8707,8711,8725,8740,8754,8779,8803,8820,8828,8836,8843,8847,8851,8862,8866,8873,8877],{"__ignoreMap":780},[784,8160,8161,8163],{"class":786,"line":6},[784,8162,936],{"class":935},[784,8164,939],{"class":805},[784,8166,8167],{"class":786,"line":29},[784,8168,834],{"emptyLinePlaceholder":833},[784,8170,8171,8173,8175,8177,8179,8181],{"class":786,"line":14},[784,8172,948],{"class":935},[784,8174,952],{"class":951},[784,8176,955],{"class":805},[784,8178,958],{"class":935},[784,8180,961],{"class":805},[784,8182,964],{"class":951},[784,8184,8185],{"class":786,"line":18},[784,8186,834],{"emptyLinePlaceholder":833},[784,8188,8189,8191,8194],{"class":786,"line":70},[784,8190,1703],{"class":935},[784,8192,8193],{"class":789}," WpNotes\\Http\\Shortcodes",[784,8195,979],{"class":951},[784,8197,8198],{"class":786,"line":74},[784,8199,834],{"emptyLinePlaceholder":833},[784,8201,8202,8204,8207],{"class":786,"line":78},[784,8203,973],{"class":935},[784,8205,8206],{"class":805}," WPZylos\\Framework\\Core\\Contracts\\ContextInterface",[784,8208,979],{"class":951},[784,8210,8211,8213,8215],{"class":786,"line":82},[784,8212,973],{"class":935},[784,8214,3104],{"class":805},[784,8216,979],{"class":951},[784,8218,8219],{"class":786,"line":86},[784,8220,834],{"emptyLinePlaceholder":833},[784,8222,8223],{"class":786,"line":90},[784,8224,989],{"class":988},[784,8226,8227],{"class":786,"line":1016},[784,8228,8229],{"class":988}," * [wp_notes] shortcode — displays published notes on the frontend.\n",[784,8231,8232],{"class":786,"line":1022},[784,8233,1410],{"class":988},[784,8235,8236],{"class":786,"line":1028},[784,8237,8238],{"class":988}," * Usage:\n",[784,8240,8241],{"class":786,"line":1034},[784,8242,8243],{"class":988}," *   [wp_notes]              — Show all published notes\n",[784,8245,8246],{"class":786,"line":1040},[784,8247,8248],{"class":988}," *   [wp_notes limit=\"5\"]    — Show the 5 most recent notes\n",[784,8250,8251],{"class":786,"line":1061},[784,8252,999],{"class":988},[784,8254,8255,8257],{"class":786,"line":1067},[784,8256,1004],{"class":935},[784,8258,8259],{"class":789}," NotesShortcode\n",[784,8261,8262],{"class":786,"line":1087},[784,8263,1019],{"class":951},[784,8265,8266,8269,8272],{"class":786,"line":1102},[784,8267,8268],{"class":935},"    private",[784,8270,8271],{"class":805}," ContextInterface",[784,8273,8274],{"class":951}," $context;\n",[784,8276,8277],{"class":786,"line":1122},[784,8278,834],{"emptyLinePlaceholder":833},[784,8280,8281,8283,8285,8288,8290,8293],{"class":786,"line":1136},[784,8282,1043],{"class":935},[784,8284,1046],{"class":935},[784,8286,8287],{"class":805}," __construct",[784,8289,952],{"class":951},[784,8291,8292],{"class":805},"ContextInterface",[784,8294,8295],{"class":951}," $context)\n",[784,8297,8298],{"class":786,"line":1150},[784,8299,1064],{"class":951},[784,8301,8302,8304,8306,8309,8311],{"class":786,"line":1163},[784,8303,1070],{"class":805},[784,8305,1073],{"class":935},[784,8307,8308],{"class":951},"context ",[784,8310,958],{"class":935},[784,8312,8274],{"class":951},[784,8314,8315],{"class":786,"line":1177},[784,8316,1228],{"class":951},[784,8318,8319],{"class":786,"line":1189},[784,8320,834],{"emptyLinePlaceholder":833},[784,8322,8323],{"class":786,"line":1195},[784,8324,1025],{"class":988},[784,8326,8327],{"class":786,"line":1203},[784,8328,8329],{"class":988},"     * Register the shortcode with WordPress.\n",[784,8331,8332],{"class":786,"line":1211},[784,8333,1037],{"class":988},[784,8335,8336,8338,8340,8343,8345,8347],{"class":786,"line":1219},[784,8337,1043],{"class":935},[784,8339,1046],{"class":935},[784,8341,8342],{"class":789}," register",[784,8344,1052],{"class":951},[784,8346,1055],{"class":935},[784,8348,1058],{"class":935},[784,8350,8351],{"class":786,"line":1225},[784,8352,1064],{"class":951},[784,8354,8355,8358,8360,8363,8365,8368,8370,8373],{"class":786,"line":1231},[784,8356,8357],{"class":789},"        add_shortcode",[784,8359,952],{"class":951},[784,8361,8362],{"class":793},"'wp_notes'",[784,8364,2716],{"class":951},[784,8366,8367],{"class":805},"$this",[784,8369,2162],{"class":951},[784,8371,8372],{"class":793},"'render'",[784,8374,2336],{"class":951},[784,8376,8377],{"class":786,"line":1236},[784,8378,1228],{"class":951},[784,8380,8381],{"class":786,"line":1241},[784,8382,834],{"emptyLinePlaceholder":833},[784,8384,8385],{"class":786,"line":1247},[784,8386,1025],{"class":988},[784,8388,8389],{"class":786,"line":1252},[784,8390,8391],{"class":988},"     * Render the shortcode output.\n",[784,8393,8394],{"class":786,"line":1268},[784,8395,1893],{"class":988},[784,8397,8398,8400,8402,8404],{"class":786,"line":1273},[784,8399,1898],{"class":988},[784,8401,1418],{"class":935},[784,8403,1915],{"class":935},[784,8405,8406],{"class":988}," $atts Shortcode attributes\n",[784,8408,8409,8411,8413,8415],{"class":786,"line":1289},[784,8410,1898],{"class":988},[784,8412,1431],{"class":935},[784,8414,1760],{"class":935},[784,8416,8417],{"class":988}," HTML output\n",[784,8419,8420],{"class":786,"line":1294},[784,8421,1037],{"class":988},[784,8423,8424,8426,8428,8431,8433,8436,8439,8441,8444,8446],{"class":786,"line":1963},[784,8425,1043],{"class":935},[784,8427,1046],{"class":935},[784,8429,8430],{"class":789}," render",[784,8432,952],{"class":951},[784,8434,8435],{"class":935},"array",[784,8437,8438],{"class":951}," $atts ",[784,8440,958],{"class":935},[784,8442,8443],{"class":951}," [])",[784,8445,1055],{"class":935},[784,8447,8448],{"class":935}," string\n",[784,8450,8451],{"class":786,"line":1968},[784,8452,1064],{"class":951},[784,8454,8455,8458,8460,8463],{"class":786,"line":1974},[784,8456,8457],{"class":951},"        $atts ",[784,8459,958],{"class":935},[784,8461,8462],{"class":789}," shortcode_atts",[784,8464,2280],{"class":951},[784,8466,8467,8470,8472,8475],{"class":786,"line":1979},[784,8468,8469],{"class":793},"            'limit'",[784,8471,1169],{"class":935},[784,8473,8474],{"class":805}," 10",[784,8476,1099],{"class":951},[784,8478,8479],{"class":786,"line":1997},[784,8480,8481],{"class":951},"        ], $atts);\n",[784,8483,8484],{"class":786,"line":2002},[784,8485,834],{"emptyLinePlaceholder":833},[784,8487,8488,8490,8492,8494,8496,8498,8500,8502,8504,8506],{"class":786,"line":2016},[784,8489,3187],{"class":951},[784,8491,958],{"class":935},[784,8493,1829],{"class":805},[784,8495,2275],{"class":935},[784,8497,2154],{"class":789},[784,8499,952],{"class":951},[784,8501,2159],{"class":793},[784,8503,2162],{"class":951},[784,8505,2165],{"class":793},[784,8507,2746],{"class":951},[784,8509,8510,8512,8514,8516,8518,8520,8522],{"class":786,"line":2029},[784,8511,3203],{"class":935},[784,8513,3206],{"class":789},[784,8515,952],{"class":951},[784,8517,3211],{"class":793},[784,8519,2162],{"class":951},[784,8521,3216],{"class":793},[784,8523,2746],{"class":951},[784,8525,8526,8528,8531,8534,8536,8539,8542],{"class":786,"line":2040},[784,8527,3203],{"class":935},[784,8529,8530],{"class":789},"limit",[784,8532,8533],{"class":951},"((",[784,8535,2209],{"class":935},[784,8537,8538],{"class":951},") $atts[",[784,8540,8541],{"class":793},"'limit'",[784,8543,2730],{"class":951},[784,8545,8546,8548,8550],{"class":786,"line":2045},[784,8547,3203],{"class":935},[784,8549,2401],{"class":789},[784,8551,1605],{"class":951},[784,8553,8554],{"class":786,"line":22},[784,8555,834],{"emptyLinePlaceholder":833},[784,8557,8558,8560,8562,8565],{"class":786,"line":2054},[784,8559,3425],{"class":935},[784,8561,1500],{"class":951},[784,8563,8564],{"class":805},"empty",[784,8566,8567],{"class":951},"($notes)) {\n",[784,8569,8570,8572,8575],{"class":786,"line":2060},[784,8571,3442],{"class":935},[784,8573,8574],{"class":793}," '\u003Cp>No notes to display.\u003C\u002Fp>'",[784,8576,979],{"class":951},[784,8578,8579],{"class":786,"line":2065},[784,8580,3487],{"class":951},[784,8582,8583],{"class":786,"line":2083},[784,8584,834],{"emptyLinePlaceholder":833},[784,8586,8587,8590,8592,8595],{"class":786,"line":2088},[784,8588,8589],{"class":951},"        $html ",[784,8591,958],{"class":935},[784,8593,8594],{"class":793}," '\u003Cdiv class=\"wn-space-y-4\">'",[784,8596,979],{"class":951},[784,8598,8599],{"class":786,"line":2094},[784,8600,834],{"emptyLinePlaceholder":833},[784,8602,8603,8606,8609,8611],{"class":786,"line":2100},[784,8604,8605],{"class":935},"        foreach",[784,8607,8608],{"class":951}," ($notes ",[784,8610,1560],{"class":935},[784,8612,8613],{"class":951}," $row) {\n",[784,8615,8616,8619,8621,8623,8625,8627],{"class":786,"line":2105},[784,8617,8618],{"class":951},"            $note ",[784,8620,958],{"class":935},[784,8622,1829],{"class":805},[784,8624,2275],{"class":935},[784,8626,3262],{"class":789},[784,8628,8629],{"class":951},"($row);\n",[784,8631,8632,8635,8637,8640,8643,8645],{"class":786,"line":2110},[784,8633,8634],{"class":951},"            $title   ",[784,8636,958],{"class":935},[784,8638,8639],{"class":789}," esc_html",[784,8641,8642],{"class":951},"($note",[784,8644,1073],{"class":935},[784,8646,8647],{"class":951},"title);\n",[784,8649,8650,8653,8655,8657,8659,8661],{"class":786,"line":2115},[784,8651,8652],{"class":951},"            $content ",[784,8654,958],{"class":935},[784,8656,3638],{"class":789},[784,8658,8642],{"class":951},[784,8660,1073],{"class":935},[784,8662,8663],{"class":951},"content);\n",[784,8665,8666,8669,8671,8673],{"class":786,"line":2121},[784,8667,8668],{"class":951},"            $date    ",[784,8670,958],{"class":935},[784,8672,8639],{"class":789},[784,8674,1618],{"class":951},[784,8676,8677,8680,8682,8685,8687,8690,8693,8696,8698,8700],{"class":786,"line":2126},[784,8678,8679],{"class":789},"                date_i18n",[784,8681,952],{"class":951},[784,8683,8684],{"class":789},"get_option",[784,8686,952],{"class":951},[784,8688,8689],{"class":793},"'date_format'",[784,8691,8692],{"class":951},"), ",[784,8694,8695],{"class":805},"strtotime",[784,8697,8642],{"class":951},[784,8699,1073],{"class":935},[784,8701,8702],{"class":951},"created_at))\n",[784,8704,8705],{"class":786,"line":2139},[784,8706,6781],{"class":951},[784,8708,8709],{"class":786,"line":2144},[784,8710,834],{"emptyLinePlaceholder":833},[784,8712,8713,8716,8719,8722],{"class":786,"line":2170},[784,8714,8715],{"class":951},"            $html ",[784,8717,8718],{"class":935},".=",[784,8720,8721],{"class":793}," \u003C\u003C\u003C",[784,8723,8724],{"class":935},"HTML\n",[784,8726,8727,8729,8731,8733,8735,8738],{"class":786,"line":2175},[784,8728,4860],{"class":793},[784,8730,4499],{"class":4487},[784,8732,4524],{"class":789},[784,8734,958],{"class":793},[784,8736,8737],{"class":793},"\"wn-card wn-bg-base-100 wn-shadow-md\"",[784,8739,4491],{"class":793},[784,8741,8742,8744,8746,8748,8750,8752],{"class":786,"line":2180},[784,8743,5555],{"class":793},[784,8745,4499],{"class":4487},[784,8747,4524],{"class":789},[784,8749,958],{"class":793},[784,8751,4789],{"class":793},[784,8753,4491],{"class":793},[784,8755,8756,8758,8760,8762,8764,8766,8769,8772,8775,8777],{"class":786,"line":2185},[784,8757,5804],{"class":793},[784,8759,1299],{"class":4487},[784,8761,4524],{"class":789},[784,8763,958],{"class":793},[784,8765,4804],{"class":793},[784,8767,8768],{"class":793},">{",[784,8770,8771],{"class":951},"$title",[784,8773,8774],{"class":793},"}\u003C\u002F",[784,8776,1299],{"class":4487},[784,8778,4491],{"class":793},[784,8780,8781,8783,8785,8787,8789,8792,8794,8797,8799,8801],{"class":786,"line":2191},[784,8782,5804],{"class":793},[784,8784,701],{"class":4487},[784,8786,4524],{"class":789},[784,8788,958],{"class":793},[784,8790,8791],{"class":793},"\"wn-text-sm wn-opacity-60\"",[784,8793,8768],{"class":793},[784,8795,8796],{"class":951},"$date",[784,8798,8774],{"class":793},[784,8800,701],{"class":4487},[784,8802,4491],{"class":793},[784,8804,8805,8807,8809,8811,8814,8816,8818],{"class":786,"line":2196},[784,8806,5804],{"class":793},[784,8808,4499],{"class":4487},[784,8810,8768],{"class":793},[784,8812,8813],{"class":951},"$content",[784,8815,8774],{"class":793},[784,8817,4499],{"class":4487},[784,8819,4491],{"class":793},[784,8821,8822,8824,8826],{"class":786,"line":2215},[784,8823,5744],{"class":793},[784,8825,4499],{"class":4487},[784,8827,4491],{"class":793},[784,8829,8830,8832,8834],{"class":786,"line":2220},[784,8831,5616],{"class":793},[784,8833,4499],{"class":4487},[784,8835,4491],{"class":793},[784,8837,8838,8841],{"class":786,"line":2239},[784,8839,8840],{"class":935},"            HTML",[784,8842,979],{"class":951},[784,8844,8845],{"class":786,"line":2244},[784,8846,3487],{"class":951},[784,8848,8849],{"class":786,"line":3705},[784,8850,834],{"emptyLinePlaceholder":833},[784,8852,8853,8855,8857,8860],{"class":786,"line":3716},[784,8854,8589],{"class":951},[784,8856,8718],{"class":935},[784,8858,8859],{"class":793}," '\u003C\u002Fdiv>'",[784,8861,979],{"class":951},[784,8863,8864],{"class":786,"line":3727},[784,8865,834],{"emptyLinePlaceholder":833},[784,8867,8868,8870],{"class":786,"line":3742},[784,8869,1514],{"class":935},[784,8871,8872],{"class":951}," $html;\n",[784,8874,8875],{"class":786,"line":3753},[784,8876,1228],{"class":951},[784,8878,8879],{"class":786,"line":3758},[784,8880,1297],{"class":951},[1299,8882,8884],{"id":8883},"register-the-shortcode","Register the shortcode",[701,8886,8887,8888,1055],{},"Register it in a service provider. Create or update your ",[744,8889,8890],{},"AppServiceProvider",[701,8892,8893],{},[705,8894,8895],{},[744,8896,8897],{},"app\u002FProviders\u002FAppServiceProvider.php",[775,8899,8901],{"className":926,"code":8900,"language":928,"meta":780,"style":780},"\u003C?php\n\ndeclare(strict_types=1);\n\nnamespace WpNotes\\Providers;\n\nuse WPZylos\\Framework\\Core\\Contracts\\ApplicationInterface;\nuse WPZylos\\Framework\\Core\\ServiceProvider;\nuse WpNotes\\Http\\Shortcodes\\NotesShortcode;\n\nclass AppServiceProvider extends ServiceProvider\n{\n    public function register(ApplicationInterface $app): void\n    {\n        parent::register($app);\n    }\n\n    public function boot(ApplicationInterface $app): void\n    {\n        \u002F\u002F Register shortcodes\n        $shortcode = new NotesShortcode($app->context());\n        $shortcode->register();\n    }\n}\n",[744,8902,8903,8909,8913,8927,8931,8940,8944,8953,8962,8971,8975,8987,8991,9011,9015,9026,9030,9034,9053,9057,9062,9085,9096,9100],{"__ignoreMap":780},[784,8904,8905,8907],{"class":786,"line":6},[784,8906,936],{"class":935},[784,8908,939],{"class":805},[784,8910,8911],{"class":786,"line":29},[784,8912,834],{"emptyLinePlaceholder":833},[784,8914,8915,8917,8919,8921,8923,8925],{"class":786,"line":14},[784,8916,948],{"class":935},[784,8918,952],{"class":951},[784,8920,955],{"class":805},[784,8922,958],{"class":935},[784,8924,961],{"class":805},[784,8926,964],{"class":951},[784,8928,8929],{"class":786,"line":18},[784,8930,834],{"emptyLinePlaceholder":833},[784,8932,8933,8935,8938],{"class":786,"line":70},[784,8934,1703],{"class":935},[784,8936,8937],{"class":789}," WpNotes\\Providers",[784,8939,979],{"class":951},[784,8941,8942],{"class":786,"line":74},[784,8943,834],{"emptyLinePlaceholder":833},[784,8945,8946,8948,8951],{"class":786,"line":78},[784,8947,973],{"class":935},[784,8949,8950],{"class":805}," WPZylos\\Framework\\Core\\Contracts\\ApplicationInterface",[784,8952,979],{"class":951},[784,8954,8955,8957,8960],{"class":786,"line":82},[784,8956,973],{"class":935},[784,8958,8959],{"class":805}," WPZylos\\Framework\\Core\\ServiceProvider",[784,8961,979],{"class":951},[784,8963,8964,8966,8969],{"class":786,"line":86},[784,8965,973],{"class":935},[784,8967,8968],{"class":805}," WpNotes\\Http\\Shortcodes\\NotesShortcode",[784,8970,979],{"class":951},[784,8972,8973],{"class":786,"line":90},[784,8974,834],{"emptyLinePlaceholder":833},[784,8976,8977,8979,8982,8984],{"class":786,"line":1016},[784,8978,1004],{"class":935},[784,8980,8981],{"class":789}," AppServiceProvider",[784,8983,1010],{"class":935},[784,8985,8986],{"class":789}," ServiceProvider\n",[784,8988,8989],{"class":786,"line":1022},[784,8990,1019],{"class":951},[784,8992,8993,8995,8997,8999,9001,9004,9007,9009],{"class":786,"line":1028},[784,8994,1043],{"class":935},[784,8996,1046],{"class":935},[784,8998,8342],{"class":789},[784,9000,952],{"class":951},[784,9002,9003],{"class":805},"ApplicationInterface",[784,9005,9006],{"class":951}," $app)",[784,9008,1055],{"class":935},[784,9010,1058],{"class":935},[784,9012,9013],{"class":786,"line":1034},[784,9014,1064],{"class":951},[784,9016,9017,9020,9023],{"class":786,"line":1040},[784,9018,9019],{"class":935},"        parent::",[784,9021,9022],{"class":789},"register",[784,9024,9025],{"class":951},"($app);\n",[784,9027,9028],{"class":786,"line":1061},[784,9029,1228],{"class":951},[784,9031,9032],{"class":786,"line":1067},[784,9033,834],{"emptyLinePlaceholder":833},[784,9035,9036,9038,9040,9043,9045,9047,9049,9051],{"class":786,"line":1087},[784,9037,1043],{"class":935},[784,9039,1046],{"class":935},[784,9041,9042],{"class":789}," boot",[784,9044,952],{"class":951},[784,9046,9003],{"class":805},[784,9048,9006],{"class":951},[784,9050,1055],{"class":935},[784,9052,1058],{"class":935},[784,9054,9055],{"class":786,"line":1102},[784,9056,1064],{"class":951},[784,9058,9059],{"class":786,"line":1122},[784,9060,9061],{"class":988},"        \u002F\u002F Register shortcodes\n",[784,9063,9064,9067,9069,9071,9074,9077,9079,9082],{"class":786,"line":1136},[784,9065,9066],{"class":951},"        $shortcode ",[784,9068,958],{"class":935},[784,9070,1599],{"class":935},[784,9072,9073],{"class":805}," NotesShortcode",[784,9075,9076],{"class":951},"($app",[784,9078,1073],{"class":935},[784,9080,9081],{"class":789},"context",[784,9083,9084],{"class":951},"());\n",[784,9086,9087,9090,9092,9094],{"class":786,"line":1150},[784,9088,9089],{"class":951},"        $shortcode",[784,9091,1073],{"class":935},[784,9093,9022],{"class":789},[784,9095,1605],{"class":951},[784,9097,9098],{"class":786,"line":1163},[784,9099,1228],{"class":951},[784,9101,9102],{"class":786,"line":1177},[784,9103,1297],{"class":951},[701,9105,9106,9107,1055],{},"Then register this provider in ",[744,9108,9109],{},"config\u002Fapp.php",[775,9111,9113],{"className":926,"code":9112,"language":928,"meta":780,"style":780},"'providers' => [\n    \\WpNotes\\Providers\\AppServiceProvider::class,\n],\n",[744,9114,9115,9124,9133],{"__ignoreMap":780},[784,9116,9117,9120,9122],{"class":786,"line":6},[784,9118,9119],{"class":793},"'providers'",[784,9121,1169],{"class":935},[784,9123,1923],{"class":951},[784,9125,9126,9129,9131],{"class":786,"line":29},[784,9127,9128],{"class":805},"    \\WpNotes\\Providers\\AppServiceProvider",[784,9130,2722],{"class":935},[784,9132,1099],{"class":951},[784,9134,9135],{"class":786,"line":14},[784,9136,9137],{"class":951},"],\n",[765,9139],{},[732,9141,9143],{"id":9142},"step-8-test-everything","Step 8: Test Everything",[1299,9145,9147],{"id":9146},"activate-the-plugin","Activate the plugin",[775,9149,9151],{"className":777,"code":9150,"language":779,"meta":780,"style":780},"# Copy\u002Fsymlink to wp-content\u002Fplugins\u002F\nwp plugin activate wp-notes\n",[744,9152,9153,9158],{"__ignoreMap":780},[784,9154,9155],{"class":786,"line":6},[784,9156,9157],{"class":988},"# Copy\u002Fsymlink to wp-content\u002Fplugins\u002F\n",[784,9159,9160,9163,9166,9169],{"class":786,"line":29},[784,9161,9162],{"class":789},"wp",[784,9164,9165],{"class":793}," plugin",[784,9167,9168],{"class":793}," activate",[784,9170,800],{"class":793},[1299,9172,9174],{"id":9173},"test-the-rest-api","Test the REST API",[701,9176,9177],{},"Open your browser's console or use a tool like Postman:",[775,9179,9181],{"className":777,"code":9180,"language":779,"meta":780,"style":780},"# List notes\ncurl -X GET \"http:\u002F\u002Flocalhost\u002Fwp-json\u002Fwp-notes\u002Fv1\u002Fnotes\" \\\n  -H \"X-WP-Nonce: YOUR_NONCE\" \\\n  --cookie \"wordpress_logged_in_xxx=...\"\n\n# Create a note\ncurl -X POST \"http:\u002F\u002Flocalhost\u002Fwp-json\u002Fwp-notes\u002Fv1\u002Fnotes\" \\\n  -H \"Content-Type: application\u002Fjson\" \\\n  -H \"X-WP-Nonce: YOUR_NONCE\" \\\n  -d '{\"title\": \"Hello World\", \"content\": \"My first note!\", \"status\": \"published\"}'\n",[744,9182,9183,9188,9205,9215,9223,9227,9232,9245,9254,9262],{"__ignoreMap":780},[784,9184,9185],{"class":786,"line":6},[784,9186,9187],{"class":988},"# List notes\n",[784,9189,9190,9193,9196,9199,9202],{"class":786,"line":29},[784,9191,9192],{"class":789},"curl",[784,9194,9195],{"class":805}," -X",[784,9197,9198],{"class":793}," GET",[784,9200,9201],{"class":793}," \"http:\u002F\u002Flocalhost\u002Fwp-json\u002Fwp-notes\u002Fv1\u002Fnotes\"",[784,9203,9204],{"class":805}," \\\n",[784,9206,9207,9210,9213],{"class":786,"line":14},[784,9208,9209],{"class":805},"  -H",[784,9211,9212],{"class":793}," \"X-WP-Nonce: YOUR_NONCE\"",[784,9214,9204],{"class":805},[784,9216,9217,9220],{"class":786,"line":18},[784,9218,9219],{"class":805},"  --cookie",[784,9221,9222],{"class":793}," \"wordpress_logged_in_xxx=...\"\n",[784,9224,9225],{"class":786,"line":70},[784,9226,834],{"emptyLinePlaceholder":833},[784,9228,9229],{"class":786,"line":74},[784,9230,9231],{"class":988},"# Create a note\n",[784,9233,9234,9236,9238,9241,9243],{"class":786,"line":78},[784,9235,9192],{"class":789},[784,9237,9195],{"class":805},[784,9239,9240],{"class":793}," POST",[784,9242,9201],{"class":793},[784,9244,9204],{"class":805},[784,9246,9247,9249,9252],{"class":786,"line":82},[784,9248,9209],{"class":805},[784,9250,9251],{"class":793}," \"Content-Type: application\u002Fjson\"",[784,9253,9204],{"class":805},[784,9255,9256,9258,9260],{"class":786,"line":86},[784,9257,9209],{"class":805},[784,9259,9212],{"class":793},[784,9261,9204],{"class":805},[784,9263,9264,9267],{"class":786,"line":90},[784,9265,9266],{"class":805},"  -d",[784,9268,9269],{"class":793}," '{\"title\": \"Hello World\", \"content\": \"My first note!\", \"status\": \"published\"}'\n",[1299,9271,9273],{"id":9272},"test-the-admin-page","Test the admin page",[9275,9276,9277,9284,9291],"ol",{},[740,9278,9279,9280,9283],{},"Go to ",[705,9281,9282],{},"WordPress Admin"," → your plugin's settings page",[740,9285,9286,9287,9290],{},"Click ",[705,9288,9289],{},"+ New Note"," and fill out the form",[740,9292,9293],{},"Create a few notes, edit them, and delete one",[1299,9295,9297],{"id":9296},"test-the-shortcode","Test the shortcode",[9275,9299,9300,9303,9309],{},[740,9301,9302],{},"Create a new WordPress page",[740,9304,9305,9306],{},"Add the shortcode: ",[744,9307,9308],{},"[wp_notes limit=\"5\"]",[740,9310,9311],{},"View the page to see your published notes displayed with DaisyUI cards",[765,9313],{},[732,9315,9317],{"id":9316},"project-structure-final","Project Structure (Final)",[701,9319,9320],{},"Here's what your completed plugin looks like:",[775,9322,9326],{"className":9323,"code":9325,"language":7478},[9324],"language-text","wp-notes\u002F\n+-- wp-notes.php                    # Main plugin file\n+-- composer.json\n+-- package.json\n+-- vite.config.js\n+-- bootstrap\u002F\n|   +-- app.php                     # Service provider registration\n+-- config\u002F\n|   +-- app.php                     # App config + provider list\n+-- app\u002F\n|   +-- Core\u002F\n|   |   +-- PluginContext.php\n|   +-- Http\u002F\n|   |   +-- Controllers\u002F\n|   |   |   +-- NoteController.php      # ← NEW: REST API controller\n|   |   +-- Shortcodes\u002F\n|   |       +-- ExampleShortcode.php\n|   |       +-- NotesShortcode.php      # ← NEW: Frontend shortcode\n|   +-- Lifecycle\u002F\n|   |   +-- Activator.php               # Updated: runs migrations\n|   |   +-- Deactivator.php\n|   |   +-- Uninstaller.php\n|   +-- Models\u002F\n|   |   +-- Note.php                    # ← NEW: Note model\n|   +-- Providers\u002F\n|   |   +-- AppServiceProvider.php      # ← NEW: Shortcode registration\n|   +-- Support\u002F\n|       +-- helpers.php\n+-- database\u002F\n|   +-- migrations\u002F\n|       +-- 2024_01_01_000001_create_notes_table.php  # ← NEW\n+-- resources\u002F\n|   +-- css\u002F\n|   |   +-- admin.css\n|   |   +-- app.css\n|   +-- js\u002F\n|   |   +-- admin.js                    # Updated: mount point\n|   |   +-- app.js\n|   |   +-- components\u002F\n|   |       +-- AdminApp.vue            # Updated: Notes CRUD UI\n|   +-- views\u002F\n|       +-- admin\u002F\n|           +-- settings.blade.php      # Updated: REST data passing\n+-- routes\u002F\n|   +-- api.php                         # ← NEW: REST API routes\n|   +-- web.php\n+-- tests\u002F\n",[744,9327,9325],{"__ignoreMap":780},[765,9329],{},[732,9331,9333],{"id":9332},"what-you-learned","What You Learned",[701,9335,9336],{},"In this tutorial, you've used all the major layers of WPZylos:",[5522,9338,9339,9349],{},[5538,9340,9341],{},[5548,9342,9343,9346],{},[5558,9344,9345],{},"Layer",[5558,9347,9348],{},"What you did",[5627,9350,9351,9366,9379,9389,9399,9409,9419],{},[5548,9352,9353,9358],{},[5660,9354,9355],{},[705,9356,9357],{},"Migrations",[5660,9359,9360,9361,9363,9364],{},"Created a ",[744,9362,746],{}," table using ",[744,9365,915],{},[5548,9367,9368,9373],{},[5660,9369,9370],{},[705,9371,9372],{},"Model (ORM)",[5660,9374,9375,9376,9378],{},"Built a ",[744,9377,753],{}," model with fillable attrs, casts, scopes",[5548,9380,9381,9386],{},[5660,9382,9383],{},[705,9384,9385],{},"REST Routing",[5660,9387,9388],{},"Registered GET\u002FPOST\u002FPUT\u002FDELETE endpoints with permission checks",[5548,9390,9391,9396],{},[5660,9392,9393],{},[705,9394,9395],{},"Controller",[5660,9397,9398],{},"Handled requests with sanitization and JSON responses",[5548,9400,9401,9406],{},[5660,9402,9403],{},[705,9404,9405],{},"Vue.js (Options API)",[5660,9407,9408],{},"Built a full CRUD admin interface with DaisyUI components",[5548,9410,9411,9416],{},[5660,9412,9413],{},[705,9414,9415],{},"Shortcode",[5660,9417,9418],{},"Rendered published notes on the frontend",[5548,9420,9421,9426],{},[5660,9422,9423],{},[705,9424,9425],{},"Service Provider",[5660,9427,9428],{},"Wired everything together via the DI container",[765,9430],{},[732,9432,9434],{"id":9433},"next-steps","Next Steps",[737,9436,9437,9445,9452,9460,9468,9476,9483],{},[740,9438,9439,9444],{},[705,9440,9441],{},[727,9442,17],{"href":9443},"\u002Fdocs\u002Flatest\u002Fpackages\u002Fgetting-started\u002Fconfiguration"," — Customize your plugin's behavior per environment",[740,9446,9447,9451],{},[705,9448,9449],{},[727,9450,34],{"href":33}," — Deep dive into the framework design",[740,9453,9454,9459],{},[705,9455,9456],{},[727,9457,9458],{"href":204},"Database Package"," — Advanced queries, joins, and transactions",[740,9461,9462,9467],{},[705,9463,9464],{},[727,9465,9466],{"href":400},"Model Package"," — Relationships, soft deletes, and events",[740,9469,9470,9475],{},[705,9471,9472],{},[727,9473,9474],{"href":589},"Validation"," — Validate request data with 26 built-in rules",[740,9477,9478,9482],{},[705,9479,9480],{},[727,9481,85],{"href":569}," — Rate limiting, sanitization, capability gates",[740,9484,9485,9491],{},[705,9486,9487],{},[727,9488,9490],{"href":9489},"\u002Fdocs\u002Flatest\u002Fscaffold\u002Fui","UI Components"," — Full DaisyUI component reference and theming",[9493,9494,9495],"style",{},"html pre.shiki code .sScJk, html code.shiki .sScJk{--shiki-default:#6F42C1;--shiki-dark:#B392F0}html pre.shiki code .sZZnC, html code.shiki .sZZnC{--shiki-default:#032F62;--shiki-dark:#9ECBFF}html pre.shiki code .sj4cs, html code.shiki .sj4cs{--shiki-default:#005CC5;--shiki-dark:#79B8FF}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);}html pre.shiki code .szBVR, html code.shiki .szBVR{--shiki-default:#D73A49;--shiki-dark:#F97583}html pre.shiki code .sVt8B, html code.shiki .sVt8B{--shiki-default:#24292E;--shiki-dark:#E1E4E8}html pre.shiki code .sJ8bj, html code.shiki .sJ8bj{--shiki-default:#6A737D;--shiki-dark:#6A737D}html pre.shiki code .s9eBZ, html code.shiki .s9eBZ{--shiki-default:#22863A;--shiki-dark:#85E89D}html pre.shiki code .s4XuR, html code.shiki .s4XuR{--shiki-default:#E36209;--shiki-dark:#FFAB70}",{"title":780,"searchDepth":29,"depth":29,"links":9497},[9498,9499,9500,9504,9508,9511,9514,9520,9523,9529,9530,9531],{"id":734,"depth":29,"text":735},{"id":769,"depth":29,"text":770},{"id":908,"depth":29,"text":909,"children":9501},[9502,9503],{"id":1301,"depth":14,"text":1302},{"id":1342,"depth":14,"text":1343},{"id":1654,"depth":29,"text":1655,"children":9505},[9506,9507],{"id":2249,"depth":14,"text":2250},{"id":2517,"depth":14,"text":2518},{"id":2599,"depth":29,"text":2600,"children":9509},[9510],{"id":2987,"depth":14,"text":2988},{"id":3022,"depth":29,"text":3023,"children":9512},[9513],{"id":4413,"depth":14,"text":4414},{"id":4458,"depth":29,"text":4459,"children":9515},[9516,9517,9518,9519],{"id":4465,"depth":14,"text":4466},{"id":7749,"depth":14,"text":7750},{"id":7974,"depth":14,"text":7975},{"id":8121,"depth":14,"text":8122},{"id":8142,"depth":29,"text":8143,"children":9521},[9522],{"id":8883,"depth":14,"text":8884},{"id":9142,"depth":29,"text":9143,"children":9524},[9525,9526,9527,9528],{"id":9146,"depth":14,"text":9147},{"id":9173,"depth":14,"text":9174},{"id":9272,"depth":14,"text":9273},{"id":9296,"depth":14,"text":9297},{"id":9316,"depth":29,"text":9317},{"id":9332,"depth":29,"text":9333},{"id":9433,"depth":29,"text":9434},"Build a complete CRUD plugin with database, REST API, and Vue.js admin interface","md",{},null,{"title":25,"description":9532},"docs\u002Flatest\u002Fgetting-started\u002Ftutorial","u2DGFL2pcqEbJqYaTNChQFZWJj76TljL7dY7gVVFyI0",[9540,9541,9542,9543,9544,9545,9546,9547,9548,9549,9550,9551,9553,9554,9555,9556,9557,9558,9559,9560,9561,9562,9564,9565,9566,9567,9568,9569,9570,9571,9572,9573,9575,9576,9577,9578,9579,9580,9581,9582,9583,9584,9586,9587,9588,9589,9590,9591,9592,9593,9594,9595,9597,9598,9599,9600,9601,9602,9603,9604,9605,9606,9608,9609,9610,9611,9612,9613,9614,9615,9616,9617,9619,9620,9621,9622,9623,9624,9625,9626,9627,9628,9630,9631,9632,9633,9634,9635,9636,9637,9638,9639,9641,9642,9643,9644,9645,9646,9647,9648,9649,9650,9652,9653,9654,9655,9656,9657,9658,9659,9660,9661,9663,9664,9665,9666,9667,9668,9669,9670,9671,9672,9674,9675,9676,9677,9678,9679,9680,9681,9682,9683,9685,9686,9687,9688,9689,9690,9691,9692,9693,9694,9696,9697,9698,9699,9700,9701,9702,9703,9705,9706,9707,9708,9709,9710,9711,9712,9713,9714,9716,9717,9718,9719,9720,9721,9722,9723,9724,9725,9727,9728,9729,9730,9731,9732,9733,9734,9735,9736,9738,9739,9740,9741,9742,9743,9744,9745,9746,9747,9749,9750,9751,9752,9753,9754,9755,9756,9757,9758,9760,9761,9762,9763,9764,9765,9766,9767,9768,9769,9770,9771,9773,9774,9775,9776,9777,9778,9779,9780,9781,9782,9783,9784,9785,9787,9788,9789,9790,9791,9792,9793,9794,9795,9796,9798,9799,9800,9801,9802,9803,9804,9805,9806,9808,9809,9810,9811,9812,9813,9814,9815,9816,9817,9819,9820,9821,9822,9823,9824,9825,9826,9827,9828,9830,9831,9832,9833,9834,9835,9836,9837,9838,9839,9840,9841,9842,9843,9844,9845,9846,9850,9854],{"path":10,"title":5,"sectionKey":7,"sectionOrder":6,"itemOrder":6,"packageName":780,"depth":6},{"path":12,"title":13,"sectionKey":7,"sectionOrder":6,"itemOrder":14,"packageName":780,"depth":29},{"path":16,"title":17,"sectionKey":7,"sectionOrder":6,"itemOrder":18,"packageName":780,"depth":29},{"path":20,"title":21,"sectionKey":7,"sectionOrder":6,"itemOrder":22,"packageName":780,"depth":29},{"path":24,"title":25,"sectionKey":7,"sectionOrder":6,"itemOrder":22,"packageName":780,"depth":29},{"path":33,"title":34,"sectionKey":30,"sectionOrder":29,"itemOrder":22,"packageName":780,"depth":29},{"path":36,"title":37,"sectionKey":30,"sectionOrder":29,"itemOrder":22,"packageName":780,"depth":29},{"path":39,"title":40,"sectionKey":30,"sectionOrder":29,"itemOrder":22,"packageName":780,"depth":29},{"path":42,"title":43,"sectionKey":30,"sectionOrder":29,"itemOrder":22,"packageName":780,"depth":29},{"path":45,"title":46,"sectionKey":30,"sectionOrder":29,"itemOrder":22,"packageName":780,"depth":29},{"path":48,"title":49,"sectionKey":30,"sectionOrder":29,"itemOrder":22,"packageName":780,"depth":29},{"path":58,"title":59,"sectionKey":53,"sectionOrder":14,"itemOrder":6,"packageName":9552,"depth":29},"wpzylos-assets",{"path":61,"title":62,"sectionKey":53,"sectionOrder":14,"itemOrder":29,"packageName":9552,"depth":14},{"path":64,"title":13,"sectionKey":53,"sectionOrder":14,"itemOrder":14,"packageName":9552,"depth":14},{"path":66,"title":17,"sectionKey":53,"sectionOrder":14,"itemOrder":18,"packageName":9552,"depth":14},{"path":68,"title":69,"sectionKey":53,"sectionOrder":14,"itemOrder":70,"packageName":9552,"depth":14},{"path":72,"title":73,"sectionKey":53,"sectionOrder":14,"itemOrder":74,"packageName":9552,"depth":14},{"path":76,"title":77,"sectionKey":53,"sectionOrder":14,"itemOrder":78,"packageName":9552,"depth":14},{"path":80,"title":81,"sectionKey":53,"sectionOrder":14,"itemOrder":82,"packageName":9552,"depth":14},{"path":84,"title":85,"sectionKey":53,"sectionOrder":14,"itemOrder":86,"packageName":9552,"depth":14},{"path":88,"title":89,"sectionKey":53,"sectionOrder":14,"itemOrder":90,"packageName":9552,"depth":14},{"path":93,"title":94,"sectionKey":53,"sectionOrder":14,"itemOrder":6,"packageName":9563,"depth":29},"wpzylos-cli-core",{"path":96,"title":62,"sectionKey":53,"sectionOrder":14,"itemOrder":29,"packageName":9563,"depth":14},{"path":98,"title":13,"sectionKey":53,"sectionOrder":14,"itemOrder":14,"packageName":9563,"depth":14},{"path":100,"title":17,"sectionKey":53,"sectionOrder":14,"itemOrder":18,"packageName":9563,"depth":14},{"path":102,"title":69,"sectionKey":53,"sectionOrder":14,"itemOrder":70,"packageName":9563,"depth":14},{"path":104,"title":73,"sectionKey":53,"sectionOrder":14,"itemOrder":74,"packageName":9563,"depth":14},{"path":106,"title":77,"sectionKey":53,"sectionOrder":14,"itemOrder":78,"packageName":9563,"depth":14},{"path":108,"title":81,"sectionKey":53,"sectionOrder":14,"itemOrder":82,"packageName":9563,"depth":14},{"path":110,"title":111,"sectionKey":53,"sectionOrder":14,"itemOrder":86,"packageName":9563,"depth":14},{"path":113,"title":89,"sectionKey":53,"sectionOrder":14,"itemOrder":90,"packageName":9563,"depth":14},{"path":116,"title":117,"sectionKey":53,"sectionOrder":14,"itemOrder":6,"packageName":9574,"depth":29},"wpzylos-cli-devtool",{"path":119,"title":62,"sectionKey":53,"sectionOrder":14,"itemOrder":29,"packageName":9574,"depth":14},{"path":121,"title":13,"sectionKey":53,"sectionOrder":14,"itemOrder":14,"packageName":9574,"depth":14},{"path":123,"title":17,"sectionKey":53,"sectionOrder":14,"itemOrder":18,"packageName":9574,"depth":14},{"path":125,"title":69,"sectionKey":53,"sectionOrder":14,"itemOrder":70,"packageName":9574,"depth":14},{"path":127,"title":73,"sectionKey":53,"sectionOrder":14,"itemOrder":74,"packageName":9574,"depth":14},{"path":129,"title":77,"sectionKey":53,"sectionOrder":14,"itemOrder":78,"packageName":9574,"depth":14},{"path":131,"title":81,"sectionKey":53,"sectionOrder":14,"itemOrder":82,"packageName":9574,"depth":14},{"path":133,"title":111,"sectionKey":53,"sectionOrder":14,"itemOrder":86,"packageName":9574,"depth":14},{"path":135,"title":89,"sectionKey":53,"sectionOrder":14,"itemOrder":90,"packageName":9574,"depth":14},{"path":138,"title":139,"sectionKey":53,"sectionOrder":14,"itemOrder":6,"packageName":9585,"depth":29},"wpzylos-config",{"path":141,"title":62,"sectionKey":53,"sectionOrder":14,"itemOrder":29,"packageName":9585,"depth":14},{"path":143,"title":13,"sectionKey":53,"sectionOrder":14,"itemOrder":14,"packageName":9585,"depth":14},{"path":145,"title":17,"sectionKey":53,"sectionOrder":14,"itemOrder":18,"packageName":9585,"depth":14},{"path":147,"title":69,"sectionKey":53,"sectionOrder":14,"itemOrder":70,"packageName":9585,"depth":14},{"path":149,"title":73,"sectionKey":53,"sectionOrder":14,"itemOrder":74,"packageName":9585,"depth":14},{"path":151,"title":77,"sectionKey":53,"sectionOrder":14,"itemOrder":78,"packageName":9585,"depth":14},{"path":153,"title":81,"sectionKey":53,"sectionOrder":14,"itemOrder":82,"packageName":9585,"depth":14},{"path":155,"title":111,"sectionKey":53,"sectionOrder":14,"itemOrder":86,"packageName":9585,"depth":14},{"path":157,"title":89,"sectionKey":53,"sectionOrder":14,"itemOrder":90,"packageName":9585,"depth":14},{"path":160,"title":161,"sectionKey":53,"sectionOrder":14,"itemOrder":6,"packageName":9596,"depth":29},"wpzylos-container",{"path":163,"title":62,"sectionKey":53,"sectionOrder":14,"itemOrder":29,"packageName":9596,"depth":14},{"path":165,"title":13,"sectionKey":53,"sectionOrder":14,"itemOrder":14,"packageName":9596,"depth":14},{"path":167,"title":17,"sectionKey":53,"sectionOrder":14,"itemOrder":18,"packageName":9596,"depth":14},{"path":169,"title":69,"sectionKey":53,"sectionOrder":14,"itemOrder":70,"packageName":9596,"depth":14},{"path":171,"title":73,"sectionKey":53,"sectionOrder":14,"itemOrder":74,"packageName":9596,"depth":14},{"path":173,"title":77,"sectionKey":53,"sectionOrder":14,"itemOrder":78,"packageName":9596,"depth":14},{"path":175,"title":81,"sectionKey":53,"sectionOrder":14,"itemOrder":82,"packageName":9596,"depth":14},{"path":177,"title":111,"sectionKey":53,"sectionOrder":14,"itemOrder":86,"packageName":9596,"depth":14},{"path":179,"title":89,"sectionKey":53,"sectionOrder":14,"itemOrder":90,"packageName":9596,"depth":14},{"path":182,"title":183,"sectionKey":53,"sectionOrder":14,"itemOrder":6,"packageName":9607,"depth":29},"wpzylos-core",{"path":185,"title":62,"sectionKey":53,"sectionOrder":14,"itemOrder":29,"packageName":9607,"depth":14},{"path":187,"title":13,"sectionKey":53,"sectionOrder":14,"itemOrder":14,"packageName":9607,"depth":14},{"path":189,"title":17,"sectionKey":53,"sectionOrder":14,"itemOrder":18,"packageName":9607,"depth":14},{"path":191,"title":69,"sectionKey":53,"sectionOrder":14,"itemOrder":70,"packageName":9607,"depth":14},{"path":193,"title":73,"sectionKey":53,"sectionOrder":14,"itemOrder":74,"packageName":9607,"depth":14},{"path":195,"title":77,"sectionKey":53,"sectionOrder":14,"itemOrder":78,"packageName":9607,"depth":14},{"path":197,"title":81,"sectionKey":53,"sectionOrder":14,"itemOrder":82,"packageName":9607,"depth":14},{"path":199,"title":111,"sectionKey":53,"sectionOrder":14,"itemOrder":86,"packageName":9607,"depth":14},{"path":201,"title":89,"sectionKey":53,"sectionOrder":14,"itemOrder":90,"packageName":9607,"depth":14},{"path":204,"title":205,"sectionKey":53,"sectionOrder":14,"itemOrder":6,"packageName":9618,"depth":29},"wpzylos-database",{"path":207,"title":62,"sectionKey":53,"sectionOrder":14,"itemOrder":29,"packageName":9618,"depth":14},{"path":209,"title":13,"sectionKey":53,"sectionOrder":14,"itemOrder":14,"packageName":9618,"depth":14},{"path":211,"title":17,"sectionKey":53,"sectionOrder":14,"itemOrder":18,"packageName":9618,"depth":14},{"path":213,"title":69,"sectionKey":53,"sectionOrder":14,"itemOrder":70,"packageName":9618,"depth":14},{"path":215,"title":73,"sectionKey":53,"sectionOrder":14,"itemOrder":74,"packageName":9618,"depth":14},{"path":217,"title":77,"sectionKey":53,"sectionOrder":14,"itemOrder":78,"packageName":9618,"depth":14},{"path":219,"title":81,"sectionKey":53,"sectionOrder":14,"itemOrder":82,"packageName":9618,"depth":14},{"path":221,"title":111,"sectionKey":53,"sectionOrder":14,"itemOrder":86,"packageName":9618,"depth":14},{"path":223,"title":89,"sectionKey":53,"sectionOrder":14,"itemOrder":90,"packageName":9618,"depth":14},{"path":226,"title":227,"sectionKey":53,"sectionOrder":14,"itemOrder":6,"packageName":9629,"depth":29},"wpzylos-events",{"path":229,"title":62,"sectionKey":53,"sectionOrder":14,"itemOrder":29,"packageName":9629,"depth":14},{"path":231,"title":13,"sectionKey":53,"sectionOrder":14,"itemOrder":14,"packageName":9629,"depth":14},{"path":233,"title":17,"sectionKey":53,"sectionOrder":14,"itemOrder":18,"packageName":9629,"depth":14},{"path":235,"title":69,"sectionKey":53,"sectionOrder":14,"itemOrder":70,"packageName":9629,"depth":14},{"path":237,"title":73,"sectionKey":53,"sectionOrder":14,"itemOrder":74,"packageName":9629,"depth":14},{"path":239,"title":77,"sectionKey":53,"sectionOrder":14,"itemOrder":78,"packageName":9629,"depth":14},{"path":241,"title":81,"sectionKey":53,"sectionOrder":14,"itemOrder":82,"packageName":9629,"depth":14},{"path":243,"title":85,"sectionKey":53,"sectionOrder":14,"itemOrder":86,"packageName":9629,"depth":14},{"path":245,"title":89,"sectionKey":53,"sectionOrder":14,"itemOrder":90,"packageName":9629,"depth":14},{"path":248,"title":249,"sectionKey":53,"sectionOrder":14,"itemOrder":6,"packageName":9640,"depth":29},"wpzylos-hooks",{"path":251,"title":62,"sectionKey":53,"sectionOrder":14,"itemOrder":29,"packageName":9640,"depth":14},{"path":253,"title":13,"sectionKey":53,"sectionOrder":14,"itemOrder":14,"packageName":9640,"depth":14},{"path":255,"title":17,"sectionKey":53,"sectionOrder":14,"itemOrder":18,"packageName":9640,"depth":14},{"path":257,"title":258,"sectionKey":53,"sectionOrder":14,"itemOrder":70,"packageName":9640,"depth":14},{"path":260,"title":73,"sectionKey":53,"sectionOrder":14,"itemOrder":74,"packageName":9640,"depth":14},{"path":262,"title":77,"sectionKey":53,"sectionOrder":14,"itemOrder":78,"packageName":9640,"depth":14},{"path":264,"title":81,"sectionKey":53,"sectionOrder":14,"itemOrder":82,"packageName":9640,"depth":14},{"path":266,"title":111,"sectionKey":53,"sectionOrder":14,"itemOrder":86,"packageName":9640,"depth":14},{"path":268,"title":89,"sectionKey":53,"sectionOrder":14,"itemOrder":90,"packageName":9640,"depth":14},{"path":271,"title":272,"sectionKey":53,"sectionOrder":14,"itemOrder":6,"packageName":9651,"depth":29},"wpzylos-http",{"path":274,"title":62,"sectionKey":53,"sectionOrder":14,"itemOrder":29,"packageName":9651,"depth":14},{"path":276,"title":13,"sectionKey":53,"sectionOrder":14,"itemOrder":14,"packageName":9651,"depth":14},{"path":278,"title":17,"sectionKey":53,"sectionOrder":14,"itemOrder":18,"packageName":9651,"depth":14},{"path":280,"title":258,"sectionKey":53,"sectionOrder":14,"itemOrder":70,"packageName":9651,"depth":14},{"path":282,"title":73,"sectionKey":53,"sectionOrder":14,"itemOrder":74,"packageName":9651,"depth":14},{"path":284,"title":77,"sectionKey":53,"sectionOrder":14,"itemOrder":78,"packageName":9651,"depth":14},{"path":286,"title":81,"sectionKey":53,"sectionOrder":14,"itemOrder":82,"packageName":9651,"depth":14},{"path":288,"title":111,"sectionKey":53,"sectionOrder":14,"itemOrder":86,"packageName":9651,"depth":14},{"path":290,"title":89,"sectionKey":53,"sectionOrder":14,"itemOrder":90,"packageName":9651,"depth":14},{"path":293,"title":294,"sectionKey":53,"sectionOrder":14,"itemOrder":6,"packageName":9662,"depth":29},"wpzylos-i18n",{"path":296,"title":62,"sectionKey":53,"sectionOrder":14,"itemOrder":29,"packageName":9662,"depth":14},{"path":298,"title":13,"sectionKey":53,"sectionOrder":14,"itemOrder":14,"packageName":9662,"depth":14},{"path":300,"title":17,"sectionKey":53,"sectionOrder":14,"itemOrder":18,"packageName":9662,"depth":14},{"path":302,"title":69,"sectionKey":53,"sectionOrder":14,"itemOrder":70,"packageName":9662,"depth":14},{"path":304,"title":73,"sectionKey":53,"sectionOrder":14,"itemOrder":74,"packageName":9662,"depth":14},{"path":306,"title":77,"sectionKey":53,"sectionOrder":14,"itemOrder":78,"packageName":9662,"depth":14},{"path":308,"title":81,"sectionKey":53,"sectionOrder":14,"itemOrder":82,"packageName":9662,"depth":14},{"path":310,"title":111,"sectionKey":53,"sectionOrder":14,"itemOrder":86,"packageName":9662,"depth":14},{"path":312,"title":89,"sectionKey":53,"sectionOrder":14,"itemOrder":90,"packageName":9662,"depth":14},{"path":315,"title":316,"sectionKey":53,"sectionOrder":14,"itemOrder":6,"packageName":9673,"depth":29},"wpzylos-logger",{"path":318,"title":62,"sectionKey":53,"sectionOrder":14,"itemOrder":29,"packageName":9673,"depth":14},{"path":320,"title":13,"sectionKey":53,"sectionOrder":14,"itemOrder":14,"packageName":9673,"depth":14},{"path":322,"title":17,"sectionKey":53,"sectionOrder":14,"itemOrder":18,"packageName":9673,"depth":14},{"path":324,"title":69,"sectionKey":53,"sectionOrder":14,"itemOrder":70,"packageName":9673,"depth":14},{"path":326,"title":73,"sectionKey":53,"sectionOrder":14,"itemOrder":74,"packageName":9673,"depth":14},{"path":328,"title":77,"sectionKey":53,"sectionOrder":14,"itemOrder":78,"packageName":9673,"depth":14},{"path":330,"title":81,"sectionKey":53,"sectionOrder":14,"itemOrder":82,"packageName":9673,"depth":14},{"path":332,"title":111,"sectionKey":53,"sectionOrder":14,"itemOrder":86,"packageName":9673,"depth":14},{"path":334,"title":89,"sectionKey":53,"sectionOrder":14,"itemOrder":90,"packageName":9673,"depth":14},{"path":337,"title":338,"sectionKey":53,"sectionOrder":14,"itemOrder":6,"packageName":9684,"depth":29},"wpzylos-mail",{"path":340,"title":62,"sectionKey":53,"sectionOrder":14,"itemOrder":29,"packageName":9684,"depth":14},{"path":342,"title":13,"sectionKey":53,"sectionOrder":14,"itemOrder":14,"packageName":9684,"depth":14},{"path":344,"title":17,"sectionKey":53,"sectionOrder":14,"itemOrder":18,"packageName":9684,"depth":14},{"path":346,"title":258,"sectionKey":53,"sectionOrder":14,"itemOrder":70,"packageName":9684,"depth":14},{"path":348,"title":73,"sectionKey":53,"sectionOrder":14,"itemOrder":74,"packageName":9684,"depth":14},{"path":350,"title":77,"sectionKey":53,"sectionOrder":14,"itemOrder":78,"packageName":9684,"depth":14},{"path":352,"title":81,"sectionKey":53,"sectionOrder":14,"itemOrder":82,"packageName":9684,"depth":14},{"path":354,"title":85,"sectionKey":53,"sectionOrder":14,"itemOrder":86,"packageName":9684,"depth":14},{"path":356,"title":89,"sectionKey":53,"sectionOrder":14,"itemOrder":90,"packageName":9684,"depth":14},{"path":359,"title":360,"sectionKey":53,"sectionOrder":14,"itemOrder":6,"packageName":9695,"depth":29},"wpzylos-mcp",{"path":362,"title":62,"sectionKey":53,"sectionOrder":14,"itemOrder":29,"packageName":9695,"depth":14},{"path":364,"title":13,"sectionKey":53,"sectionOrder":14,"itemOrder":14,"packageName":9695,"depth":14},{"path":366,"title":258,"sectionKey":53,"sectionOrder":14,"itemOrder":70,"packageName":9695,"depth":14},{"path":368,"title":73,"sectionKey":53,"sectionOrder":14,"itemOrder":74,"packageName":9695,"depth":14},{"path":370,"title":77,"sectionKey":53,"sectionOrder":14,"itemOrder":78,"packageName":9695,"depth":14},{"path":372,"title":89,"sectionKey":53,"sectionOrder":14,"itemOrder":90,"packageName":9695,"depth":14},{"path":374,"title":375,"sectionKey":53,"sectionOrder":14,"itemOrder":22,"packageName":9695,"depth":14},{"path":378,"title":379,"sectionKey":53,"sectionOrder":14,"itemOrder":6,"packageName":9704,"depth":29},"wpzylos-migrations",{"path":381,"title":62,"sectionKey":53,"sectionOrder":14,"itemOrder":29,"packageName":9704,"depth":14},{"path":383,"title":13,"sectionKey":53,"sectionOrder":14,"itemOrder":14,"packageName":9704,"depth":14},{"path":385,"title":17,"sectionKey":53,"sectionOrder":14,"itemOrder":18,"packageName":9704,"depth":14},{"path":387,"title":69,"sectionKey":53,"sectionOrder":14,"itemOrder":70,"packageName":9704,"depth":14},{"path":389,"title":73,"sectionKey":53,"sectionOrder":14,"itemOrder":74,"packageName":9704,"depth":14},{"path":391,"title":77,"sectionKey":53,"sectionOrder":14,"itemOrder":78,"packageName":9704,"depth":14},{"path":393,"title":81,"sectionKey":53,"sectionOrder":14,"itemOrder":82,"packageName":9704,"depth":14},{"path":395,"title":111,"sectionKey":53,"sectionOrder":14,"itemOrder":86,"packageName":9704,"depth":14},{"path":397,"title":89,"sectionKey":53,"sectionOrder":14,"itemOrder":90,"packageName":9704,"depth":14},{"path":400,"title":401,"sectionKey":53,"sectionOrder":14,"itemOrder":6,"packageName":9715,"depth":29},"wpzylos-model",{"path":403,"title":62,"sectionKey":53,"sectionOrder":14,"itemOrder":29,"packageName":9715,"depth":14},{"path":405,"title":13,"sectionKey":53,"sectionOrder":14,"itemOrder":14,"packageName":9715,"depth":14},{"path":407,"title":17,"sectionKey":53,"sectionOrder":14,"itemOrder":18,"packageName":9715,"depth":14},{"path":409,"title":69,"sectionKey":53,"sectionOrder":14,"itemOrder":70,"packageName":9715,"depth":14},{"path":411,"title":73,"sectionKey":53,"sectionOrder":14,"itemOrder":74,"packageName":9715,"depth":14},{"path":413,"title":77,"sectionKey":53,"sectionOrder":14,"itemOrder":78,"packageName":9715,"depth":14},{"path":415,"title":81,"sectionKey":53,"sectionOrder":14,"itemOrder":82,"packageName":9715,"depth":14},{"path":417,"title":85,"sectionKey":53,"sectionOrder":14,"itemOrder":86,"packageName":9715,"depth":14},{"path":419,"title":89,"sectionKey":53,"sectionOrder":14,"itemOrder":90,"packageName":9715,"depth":14},{"path":422,"title":423,"sectionKey":53,"sectionOrder":14,"itemOrder":6,"packageName":9726,"depth":29},"wpzylos-notification",{"path":425,"title":62,"sectionKey":53,"sectionOrder":14,"itemOrder":29,"packageName":9726,"depth":14},{"path":427,"title":13,"sectionKey":53,"sectionOrder":14,"itemOrder":14,"packageName":9726,"depth":14},{"path":429,"title":17,"sectionKey":53,"sectionOrder":14,"itemOrder":18,"packageName":9726,"depth":14},{"path":431,"title":69,"sectionKey":53,"sectionOrder":14,"itemOrder":70,"packageName":9726,"depth":14},{"path":433,"title":73,"sectionKey":53,"sectionOrder":14,"itemOrder":74,"packageName":9726,"depth":14},{"path":435,"title":77,"sectionKey":53,"sectionOrder":14,"itemOrder":78,"packageName":9726,"depth":14},{"path":437,"title":81,"sectionKey":53,"sectionOrder":14,"itemOrder":82,"packageName":9726,"depth":14},{"path":439,"title":85,"sectionKey":53,"sectionOrder":14,"itemOrder":86,"packageName":9726,"depth":14},{"path":441,"title":89,"sectionKey":53,"sectionOrder":14,"itemOrder":90,"packageName":9726,"depth":14},{"path":444,"title":445,"sectionKey":53,"sectionOrder":14,"itemOrder":6,"packageName":9737,"depth":29},"wpzylos-queue",{"path":447,"title":62,"sectionKey":53,"sectionOrder":14,"itemOrder":29,"packageName":9737,"depth":14},{"path":449,"title":13,"sectionKey":53,"sectionOrder":14,"itemOrder":14,"packageName":9737,"depth":14},{"path":451,"title":17,"sectionKey":53,"sectionOrder":14,"itemOrder":18,"packageName":9737,"depth":14},{"path":453,"title":69,"sectionKey":53,"sectionOrder":14,"itemOrder":70,"packageName":9737,"depth":14},{"path":455,"title":73,"sectionKey":53,"sectionOrder":14,"itemOrder":74,"packageName":9737,"depth":14},{"path":457,"title":77,"sectionKey":53,"sectionOrder":14,"itemOrder":78,"packageName":9737,"depth":14},{"path":459,"title":81,"sectionKey":53,"sectionOrder":14,"itemOrder":82,"packageName":9737,"depth":14},{"path":461,"title":85,"sectionKey":53,"sectionOrder":14,"itemOrder":86,"packageName":9737,"depth":14},{"path":463,"title":89,"sectionKey":53,"sectionOrder":14,"itemOrder":90,"packageName":9737,"depth":14},{"path":466,"title":467,"sectionKey":53,"sectionOrder":14,"itemOrder":6,"packageName":9748,"depth":29},"wpzylos-requirements",{"path":469,"title":62,"sectionKey":53,"sectionOrder":14,"itemOrder":29,"packageName":9748,"depth":14},{"path":471,"title":13,"sectionKey":53,"sectionOrder":14,"itemOrder":14,"packageName":9748,"depth":14},{"path":473,"title":17,"sectionKey":53,"sectionOrder":14,"itemOrder":18,"packageName":9748,"depth":14},{"path":475,"title":69,"sectionKey":53,"sectionOrder":14,"itemOrder":70,"packageName":9748,"depth":14},{"path":477,"title":73,"sectionKey":53,"sectionOrder":14,"itemOrder":74,"packageName":9748,"depth":14},{"path":479,"title":77,"sectionKey":53,"sectionOrder":14,"itemOrder":78,"packageName":9748,"depth":14},{"path":481,"title":81,"sectionKey":53,"sectionOrder":14,"itemOrder":82,"packageName":9748,"depth":14},{"path":483,"title":85,"sectionKey":53,"sectionOrder":14,"itemOrder":86,"packageName":9748,"depth":14},{"path":485,"title":89,"sectionKey":53,"sectionOrder":14,"itemOrder":90,"packageName":9748,"depth":14},{"path":488,"title":489,"sectionKey":53,"sectionOrder":14,"itemOrder":6,"packageName":9759,"depth":29},"wpzylos-routing",{"path":491,"title":62,"sectionKey":53,"sectionOrder":14,"itemOrder":29,"packageName":9759,"depth":14},{"path":493,"title":13,"sectionKey":53,"sectionOrder":14,"itemOrder":14,"packageName":9759,"depth":14},{"path":495,"title":17,"sectionKey":53,"sectionOrder":14,"itemOrder":18,"packageName":9759,"depth":14},{"path":497,"title":69,"sectionKey":53,"sectionOrder":14,"itemOrder":70,"packageName":9759,"depth":14},{"path":499,"title":73,"sectionKey":53,"sectionOrder":14,"itemOrder":74,"packageName":9759,"depth":14},{"path":501,"title":77,"sectionKey":53,"sectionOrder":14,"itemOrder":78,"packageName":9759,"depth":14},{"path":503,"title":81,"sectionKey":53,"sectionOrder":14,"itemOrder":82,"packageName":9759,"depth":14},{"path":505,"title":85,"sectionKey":53,"sectionOrder":14,"itemOrder":86,"packageName":9759,"depth":14},{"path":507,"title":89,"sectionKey":53,"sectionOrder":14,"itemOrder":90,"packageName":9759,"depth":14},{"path":509,"title":510,"sectionKey":53,"sectionOrder":14,"itemOrder":22,"packageName":9759,"depth":14},{"path":512,"title":513,"sectionKey":53,"sectionOrder":14,"itemOrder":22,"packageName":9759,"depth":14},{"path":516,"title":517,"sectionKey":53,"sectionOrder":14,"itemOrder":6,"packageName":9772,"depth":29},"wpzylos-scaffold",{"path":519,"title":62,"sectionKey":53,"sectionOrder":14,"itemOrder":29,"packageName":9772,"depth":14},{"path":521,"title":13,"sectionKey":53,"sectionOrder":14,"itemOrder":14,"packageName":9772,"depth":14},{"path":523,"title":17,"sectionKey":53,"sectionOrder":14,"itemOrder":18,"packageName":9772,"depth":14},{"path":525,"title":69,"sectionKey":53,"sectionOrder":14,"itemOrder":70,"packageName":9772,"depth":14},{"path":527,"title":73,"sectionKey":53,"sectionOrder":14,"itemOrder":74,"packageName":9772,"depth":14},{"path":529,"title":77,"sectionKey":53,"sectionOrder":14,"itemOrder":78,"packageName":9772,"depth":14},{"path":531,"title":81,"sectionKey":53,"sectionOrder":14,"itemOrder":82,"packageName":9772,"depth":14},{"path":533,"title":534,"sectionKey":53,"sectionOrder":14,"itemOrder":82,"packageName":9772,"depth":14},{"path":536,"title":111,"sectionKey":53,"sectionOrder":14,"itemOrder":86,"packageName":9772,"depth":14},{"path":538,"title":89,"sectionKey":53,"sectionOrder":14,"itemOrder":90,"packageName":9772,"depth":14},{"path":540,"title":541,"sectionKey":53,"sectionOrder":14,"itemOrder":22,"packageName":9772,"depth":14},{"path":543,"title":544,"sectionKey":53,"sectionOrder":14,"itemOrder":22,"packageName":9772,"depth":14},{"path":547,"title":548,"sectionKey":53,"sectionOrder":14,"itemOrder":6,"packageName":9786,"depth":29},"wpzylos-scheduler",{"path":550,"title":62,"sectionKey":53,"sectionOrder":14,"itemOrder":29,"packageName":9786,"depth":14},{"path":552,"title":13,"sectionKey":53,"sectionOrder":14,"itemOrder":14,"packageName":9786,"depth":14},{"path":554,"title":17,"sectionKey":53,"sectionOrder":14,"itemOrder":18,"packageName":9786,"depth":14},{"path":556,"title":69,"sectionKey":53,"sectionOrder":14,"itemOrder":70,"packageName":9786,"depth":14},{"path":558,"title":73,"sectionKey":53,"sectionOrder":14,"itemOrder":74,"packageName":9786,"depth":14},{"path":560,"title":77,"sectionKey":53,"sectionOrder":14,"itemOrder":78,"packageName":9786,"depth":14},{"path":562,"title":81,"sectionKey":53,"sectionOrder":14,"itemOrder":82,"packageName":9786,"depth":14},{"path":564,"title":85,"sectionKey":53,"sectionOrder":14,"itemOrder":86,"packageName":9786,"depth":14},{"path":566,"title":89,"sectionKey":53,"sectionOrder":14,"itemOrder":90,"packageName":9786,"depth":14},{"path":569,"title":570,"sectionKey":53,"sectionOrder":14,"itemOrder":6,"packageName":9797,"depth":29},"wpzylos-security",{"path":572,"title":62,"sectionKey":53,"sectionOrder":14,"itemOrder":29,"packageName":9797,"depth":14},{"path":574,"title":13,"sectionKey":53,"sectionOrder":14,"itemOrder":14,"packageName":9797,"depth":14},{"path":576,"title":17,"sectionKey":53,"sectionOrder":14,"itemOrder":18,"packageName":9797,"depth":14},{"path":578,"title":258,"sectionKey":53,"sectionOrder":14,"itemOrder":70,"packageName":9797,"depth":14},{"path":580,"title":73,"sectionKey":53,"sectionOrder":14,"itemOrder":74,"packageName":9797,"depth":14},{"path":582,"title":77,"sectionKey":53,"sectionOrder":14,"itemOrder":78,"packageName":9797,"depth":14},{"path":584,"title":81,"sectionKey":53,"sectionOrder":14,"itemOrder":82,"packageName":9797,"depth":14},{"path":586,"title":89,"sectionKey":53,"sectionOrder":14,"itemOrder":90,"packageName":9797,"depth":14},{"path":589,"title":590,"sectionKey":53,"sectionOrder":14,"itemOrder":6,"packageName":9807,"depth":29},"wpzylos-validation",{"path":592,"title":62,"sectionKey":53,"sectionOrder":14,"itemOrder":29,"packageName":9807,"depth":14},{"path":594,"title":13,"sectionKey":53,"sectionOrder":14,"itemOrder":14,"packageName":9807,"depth":14},{"path":596,"title":17,"sectionKey":53,"sectionOrder":14,"itemOrder":18,"packageName":9807,"depth":14},{"path":598,"title":258,"sectionKey":53,"sectionOrder":14,"itemOrder":70,"packageName":9807,"depth":14},{"path":600,"title":73,"sectionKey":53,"sectionOrder":14,"itemOrder":74,"packageName":9807,"depth":14},{"path":602,"title":77,"sectionKey":53,"sectionOrder":14,"itemOrder":78,"packageName":9807,"depth":14},{"path":604,"title":81,"sectionKey":53,"sectionOrder":14,"itemOrder":82,"packageName":9807,"depth":14},{"path":606,"title":111,"sectionKey":53,"sectionOrder":14,"itemOrder":86,"packageName":9807,"depth":14},{"path":608,"title":89,"sectionKey":53,"sectionOrder":14,"itemOrder":90,"packageName":9807,"depth":14},{"path":611,"title":612,"sectionKey":53,"sectionOrder":14,"itemOrder":6,"packageName":9818,"depth":29},"wpzylos-views",{"path":614,"title":62,"sectionKey":53,"sectionOrder":14,"itemOrder":29,"packageName":9818,"depth":14},{"path":616,"title":13,"sectionKey":53,"sectionOrder":14,"itemOrder":14,"packageName":9818,"depth":14},{"path":618,"title":17,"sectionKey":53,"sectionOrder":14,"itemOrder":18,"packageName":9818,"depth":14},{"path":620,"title":258,"sectionKey":53,"sectionOrder":14,"itemOrder":70,"packageName":9818,"depth":14},{"path":622,"title":73,"sectionKey":53,"sectionOrder":14,"itemOrder":74,"packageName":9818,"depth":14},{"path":624,"title":77,"sectionKey":53,"sectionOrder":14,"itemOrder":78,"packageName":9818,"depth":14},{"path":626,"title":81,"sectionKey":53,"sectionOrder":14,"itemOrder":82,"packageName":9818,"depth":14},{"path":628,"title":111,"sectionKey":53,"sectionOrder":14,"itemOrder":86,"packageName":9818,"depth":14},{"path":630,"title":89,"sectionKey":53,"sectionOrder":14,"itemOrder":90,"packageName":9818,"depth":14},{"path":633,"title":634,"sectionKey":53,"sectionOrder":14,"itemOrder":6,"packageName":9829,"depth":29},"wpzylos-wp-cli",{"path":636,"title":62,"sectionKey":53,"sectionOrder":14,"itemOrder":29,"packageName":9829,"depth":14},{"path":638,"title":13,"sectionKey":53,"sectionOrder":14,"itemOrder":14,"packageName":9829,"depth":14},{"path":640,"title":17,"sectionKey":53,"sectionOrder":14,"itemOrder":18,"packageName":9829,"depth":14},{"path":642,"title":69,"sectionKey":53,"sectionOrder":14,"itemOrder":70,"packageName":9829,"depth":14},{"path":644,"title":73,"sectionKey":53,"sectionOrder":14,"itemOrder":74,"packageName":9829,"depth":14},{"path":646,"title":77,"sectionKey":53,"sectionOrder":14,"itemOrder":78,"packageName":9829,"depth":14},{"path":648,"title":81,"sectionKey":53,"sectionOrder":14,"itemOrder":82,"packageName":9829,"depth":14},{"path":650,"title":111,"sectionKey":53,"sectionOrder":14,"itemOrder":86,"packageName":9829,"depth":14},{"path":652,"title":89,"sectionKey":53,"sectionOrder":14,"itemOrder":90,"packageName":9829,"depth":14},{"path":658,"title":659,"sectionKey":655,"sectionOrder":18,"itemOrder":6,"packageName":780,"depth":6},{"path":661,"title":544,"sectionKey":655,"sectionOrder":18,"itemOrder":22,"packageName":780,"depth":29},{"path":667,"title":668,"sectionKey":664,"sectionOrder":70,"itemOrder":29,"packageName":780,"depth":29},{"path":674,"title":675,"sectionKey":671,"sectionOrder":74,"itemOrder":29,"packageName":780,"depth":29},{"path":677,"title":678,"sectionKey":671,"sectionOrder":74,"itemOrder":22,"packageName":780,"depth":29},{"path":680,"title":681,"sectionKey":671,"sectionOrder":74,"itemOrder":22,"packageName":780,"depth":29},{"path":688,"title":689,"sectionKey":685,"sectionOrder":78,"itemOrder":29,"packageName":780,"depth":29},{"path":9847,"title":9848,"sectionKey":9849,"sectionOrder":3933,"itemOrder":90,"packageName":780,"depth":6},"\u002Fdocs\u002Flatest\u002Ftroubleshooting","System Troubleshooting","troubleshooting",{"path":9851,"title":9852,"sectionKey":9853,"sectionOrder":3933,"itemOrder":22,"packageName":780,"depth":6},"\u002Fdocs\u002Flatest\u002Frelease-checklist","Release Checklist","release-checklist",{"path":9855,"title":9856,"sectionKey":9857,"sectionOrder":3933,"itemOrder":22,"packageName":780,"depth":6},"\u002Fdocs\u002Flatest\u002Frules","WPZylos Framework Rules","rules",1784547675816]