[{"data":1,"prerenderedAt":3780},["ShallowReactive",2],{"docs-nav":3,"doc-latest\u002Ftesting\u002Funit-tests":691,"docs-prevnext-flat":3460},[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":681,"body":693,"description":703,"extension":3455,"meta":3456,"navigation":746,"order":22,"package":671,"path":680,"seo":3457,"stem":3458,"__hash__":3459},"content\u002Fdocs\u002Flatest\u002Ftesting\u002Funit-tests.md",{"type":694,"value":695,"toc":3438},"minimark",[696,700,704,709,714,1017,1021,1272,1276,1280,1749,1753,2457,2461,2872,2876,2880,3082,3086,3089,3110,3358,3362,3415,3419,3434],[697,698,681],"h1",{"id":699},"unit-testing",[701,702,703],"p",{},"Unit tests verify individual classes work correctly in isolation, without WordPress.",[705,706,708],"h2",{"id":707},"setup","Setup",[710,711,713],"h3",{"id":712},"bootstrap-file","Bootstrap File",[715,716,721],"pre",{"className":717,"code":718,"language":719,"meta":720,"style":720},"language-php shiki shiki-themes github-light github-dark","\u003C?php\n\u002F\u002F tests\u002FUnit\u002Fbootstrap.php\n\ndeclare(strict_types=1);\n\nrequire_once dirname(__DIR__, 2) . '\u002Fvendor\u002Fautoload.php';\n\n\u002F\u002F Mock WordPress functions for unit tests\nif (!function_exists('__')) {\n    function __(string $text, string $domain = 'default'): string {\n        return $text;\n    }\n}\n\nif (!function_exists('esc_html')) {\n    function esc_html(string $text): string {\n        return htmlspecialchars($text, ENT_QUOTES, 'UTF-8');\n    }\n}\n\nif (!defined('ABSPATH')) {\n    define('ABSPATH', '\u002Ftmp\u002Fwordpress\u002F');\n}\n","php","",[722,723,724,736,742,748,769,773,805,809,814,836,875,884,890,896,901,919,940,961,966,971,976,995,1012],"code",{"__ignoreMap":720},[725,726,728,732],"span",{"class":727,"line":6},"line",[725,729,731],{"class":730},"szBVR","\u003C?",[725,733,735],{"class":734},"sj4cs","php\n",[725,737,738],{"class":727,"line":29},[725,739,741],{"class":740},"sJ8bj","\u002F\u002F tests\u002FUnit\u002Fbootstrap.php\n",[725,743,744],{"class":727,"line":14},[725,745,747],{"emptyLinePlaceholder":746},true,"\n",[725,749,750,753,757,760,763,766],{"class":727,"line":18},[725,751,752],{"class":730},"declare",[725,754,756],{"class":755},"sVt8B","(",[725,758,759],{"class":734},"strict_types",[725,761,762],{"class":730},"=",[725,764,765],{"class":734},"1",[725,767,768],{"class":755},");\n",[725,770,771],{"class":727,"line":70},[725,772,747],{"emptyLinePlaceholder":746},[725,774,775,778,781,783,786,789,792,795,798,802],{"class":727,"line":74},[725,776,777],{"class":730},"require_once",[725,779,780],{"class":734}," dirname",[725,782,756],{"class":755},[725,784,785],{"class":734},"__DIR__",[725,787,788],{"class":755},", ",[725,790,791],{"class":734},"2",[725,793,794],{"class":755},") ",[725,796,797],{"class":730},".",[725,799,801],{"class":800},"sZZnC"," '\u002Fvendor\u002Fautoload.php'",[725,803,804],{"class":755},";\n",[725,806,807],{"class":727,"line":78},[725,808,747],{"emptyLinePlaceholder":746},[725,810,811],{"class":727,"line":82},[725,812,813],{"class":740},"\u002F\u002F Mock WordPress functions for unit tests\n",[725,815,816,819,822,825,828,830,833],{"class":727,"line":86},[725,817,818],{"class":730},"if",[725,820,821],{"class":755}," (",[725,823,824],{"class":730},"!",[725,826,827],{"class":734},"function_exists",[725,829,756],{"class":755},[725,831,832],{"class":800},"'__'",[725,834,835],{"class":755},")) {\n",[725,837,838,841,845,847,850,853,855,858,860,863,866,869,872],{"class":727,"line":90},[725,839,840],{"class":730},"    function",[725,842,844],{"class":843},"sScJk"," __",[725,846,756],{"class":755},[725,848,849],{"class":730},"string",[725,851,852],{"class":755}," $text, ",[725,854,849],{"class":730},[725,856,857],{"class":755}," $domain ",[725,859,762],{"class":730},[725,861,862],{"class":800}," 'default'",[725,864,865],{"class":755},")",[725,867,868],{"class":730},":",[725,870,871],{"class":730}," string",[725,873,874],{"class":755}," {\n",[725,876,878,881],{"class":727,"line":877},11,[725,879,880],{"class":730},"        return",[725,882,883],{"class":755}," $text;\n",[725,885,887],{"class":727,"line":886},12,[725,888,889],{"class":755},"    }\n",[725,891,893],{"class":727,"line":892},13,[725,894,895],{"class":755},"}\n",[725,897,899],{"class":727,"line":898},14,[725,900,747],{"emptyLinePlaceholder":746},[725,902,904,906,908,910,912,914,917],{"class":727,"line":903},15,[725,905,818],{"class":730},[725,907,821],{"class":755},[725,909,824],{"class":730},[725,911,827],{"class":734},[725,913,756],{"class":755},[725,915,916],{"class":800},"'esc_html'",[725,918,835],{"class":755},[725,920,922,924,927,929,931,934,936,938],{"class":727,"line":921},16,[725,923,840],{"class":730},[725,925,926],{"class":843}," esc_html",[725,928,756],{"class":755},[725,930,849],{"class":730},[725,932,933],{"class":755}," $text)",[725,935,868],{"class":730},[725,937,871],{"class":730},[725,939,874],{"class":755},[725,941,943,945,948,951,954,956,959],{"class":727,"line":942},17,[725,944,880],{"class":730},[725,946,947],{"class":734}," htmlspecialchars",[725,949,950],{"class":755},"($text, ",[725,952,953],{"class":734},"ENT_QUOTES",[725,955,788],{"class":755},[725,957,958],{"class":800},"'UTF-8'",[725,960,768],{"class":755},[725,962,964],{"class":727,"line":963},18,[725,965,889],{"class":755},[725,967,969],{"class":727,"line":968},19,[725,970,895],{"class":755},[725,972,974],{"class":727,"line":973},20,[725,975,747],{"emptyLinePlaceholder":746},[725,977,979,981,983,985,988,990,993],{"class":727,"line":978},21,[725,980,818],{"class":730},[725,982,821],{"class":755},[725,984,824],{"class":730},[725,986,987],{"class":734},"defined",[725,989,756],{"class":755},[725,991,992],{"class":800},"'ABSPATH'",[725,994,835],{"class":755},[725,996,998,1001,1003,1005,1007,1010],{"class":727,"line":997},22,[725,999,1000],{"class":734},"    define",[725,1002,756],{"class":755},[725,1004,992],{"class":800},[725,1006,788],{"class":755},[725,1008,1009],{"class":800},"'\u002Ftmp\u002Fwordpress\u002F'",[725,1011,768],{"class":755},[725,1013,1015],{"class":727,"line":1014},23,[725,1016,895],{"class":755},[710,1018,1020],{"id":1019},"test-base-class","Test Base Class",[715,1022,1024],{"className":717,"code":1023,"language":719,"meta":720,"style":720},"\u003C?php\n\u002F\u002F tests\u002FUnit\u002FTestCase.php\n\nnamespace Vendor\\MyPlugin\\Tests\\Unit;\n\nuse PHPUnit\\Framework\\TestCase as BaseTestCase;\nuse WPZylos\\Framework\\Core\\PluginContext;\nuse WPZylos\\Framework\\Container\\Container;\n\nabstract class TestCase extends BaseTestCase\n{\n    protected PluginContext $context;\n    protected Container $container;\n\n    protected function setUp(): void\n    {\n        parent::setUp();\n\n        $this->context = new PluginContext(\n            '\u002Fpath\u002Fto\u002Fplugin.php',\n            'test-plugin',\n            'tp_',\n            'test-plugin',\n            '1.0.0'\n        );\n\n        $this->container = new Container();\n    }\n}\n",[722,1025,1026,1032,1037,1041,1051,1055,1071,1080,1089,1093,1110,1115,1126,1136,1140,1158,1163,1174,1178,1199,1207,1214,1221,1227,1233,1239,1244,1262,1267],{"__ignoreMap":720},[725,1027,1028,1030],{"class":727,"line":6},[725,1029,731],{"class":730},[725,1031,735],{"class":734},[725,1033,1034],{"class":727,"line":29},[725,1035,1036],{"class":740},"\u002F\u002F tests\u002FUnit\u002FTestCase.php\n",[725,1038,1039],{"class":727,"line":14},[725,1040,747],{"emptyLinePlaceholder":746},[725,1042,1043,1046,1049],{"class":727,"line":18},[725,1044,1045],{"class":730},"namespace",[725,1047,1048],{"class":843}," Vendor\\MyPlugin\\Tests\\Unit",[725,1050,804],{"class":755},[725,1052,1053],{"class":727,"line":70},[725,1054,747],{"emptyLinePlaceholder":746},[725,1056,1057,1060,1063,1066,1069],{"class":727,"line":74},[725,1058,1059],{"class":730},"use",[725,1061,1062],{"class":734}," PHPUnit\\Framework\\TestCase",[725,1064,1065],{"class":730}," as",[725,1067,1068],{"class":843}," BaseTestCase",[725,1070,804],{"class":755},[725,1072,1073,1075,1078],{"class":727,"line":78},[725,1074,1059],{"class":730},[725,1076,1077],{"class":734}," WPZylos\\Framework\\Core\\PluginContext",[725,1079,804],{"class":755},[725,1081,1082,1084,1087],{"class":727,"line":82},[725,1083,1059],{"class":730},[725,1085,1086],{"class":734}," WPZylos\\Framework\\Container\\Container",[725,1088,804],{"class":755},[725,1090,1091],{"class":727,"line":86},[725,1092,747],{"emptyLinePlaceholder":746},[725,1094,1095,1098,1101,1104,1107],{"class":727,"line":90},[725,1096,1097],{"class":730},"abstract",[725,1099,1100],{"class":730}," class",[725,1102,1103],{"class":843}," TestCase",[725,1105,1106],{"class":730}," extends",[725,1108,1109],{"class":843}," BaseTestCase\n",[725,1111,1112],{"class":727,"line":877},[725,1113,1114],{"class":755},"{\n",[725,1116,1117,1120,1123],{"class":727,"line":886},[725,1118,1119],{"class":730},"    protected",[725,1121,1122],{"class":734}," PluginContext",[725,1124,1125],{"class":755}," $context;\n",[725,1127,1128,1130,1133],{"class":727,"line":892},[725,1129,1119],{"class":730},[725,1131,1132],{"class":734}," Container",[725,1134,1135],{"class":755}," $container;\n",[725,1137,1138],{"class":727,"line":898},[725,1139,747],{"emptyLinePlaceholder":746},[725,1141,1142,1144,1147,1150,1153,1155],{"class":727,"line":903},[725,1143,1119],{"class":730},[725,1145,1146],{"class":730}," function",[725,1148,1149],{"class":843}," setUp",[725,1151,1152],{"class":755},"()",[725,1154,868],{"class":730},[725,1156,1157],{"class":730}," void\n",[725,1159,1160],{"class":727,"line":921},[725,1161,1162],{"class":755},"    {\n",[725,1164,1165,1168,1171],{"class":727,"line":942},[725,1166,1167],{"class":730},"        parent::",[725,1169,1170],{"class":843},"setUp",[725,1172,1173],{"class":755},"();\n",[725,1175,1176],{"class":727,"line":963},[725,1177,747],{"emptyLinePlaceholder":746},[725,1179,1180,1183,1186,1189,1191,1194,1196],{"class":727,"line":968},[725,1181,1182],{"class":734},"        $this",[725,1184,1185],{"class":730},"->",[725,1187,1188],{"class":755},"context ",[725,1190,762],{"class":730},[725,1192,1193],{"class":730}," new",[725,1195,1122],{"class":734},[725,1197,1198],{"class":755},"(\n",[725,1200,1201,1204],{"class":727,"line":973},[725,1202,1203],{"class":800},"            '\u002Fpath\u002Fto\u002Fplugin.php'",[725,1205,1206],{"class":755},",\n",[725,1208,1209,1212],{"class":727,"line":978},[725,1210,1211],{"class":800},"            'test-plugin'",[725,1213,1206],{"class":755},[725,1215,1216,1219],{"class":727,"line":997},[725,1217,1218],{"class":800},"            'tp_'",[725,1220,1206],{"class":755},[725,1222,1223,1225],{"class":727,"line":1014},[725,1224,1211],{"class":800},[725,1226,1206],{"class":755},[725,1228,1230],{"class":727,"line":1229},24,[725,1231,1232],{"class":800},"            '1.0.0'\n",[725,1234,1236],{"class":727,"line":1235},25,[725,1237,1238],{"class":755},"        );\n",[725,1240,1242],{"class":727,"line":1241},26,[725,1243,747],{"emptyLinePlaceholder":746},[725,1245,1247,1249,1251,1254,1256,1258,1260],{"class":727,"line":1246},27,[725,1248,1182],{"class":734},[725,1250,1185],{"class":730},[725,1252,1253],{"class":755},"container ",[725,1255,762],{"class":730},[725,1257,1193],{"class":730},[725,1259,1132],{"class":734},[725,1261,1173],{"class":755},[725,1263,1265],{"class":727,"line":1264},28,[725,1266,889],{"class":755},[725,1268,1270],{"class":727,"line":1269},29,[725,1271,895],{"class":755},[705,1273,1275],{"id":1274},"writing-unit-tests","Writing Unit Tests",[710,1277,1279],{"id":1278},"service-test","Service Test",[715,1281,1283],{"className":717,"code":1282,"language":719,"meta":720,"style":720},"\u003C?php\n\u002F\u002F tests\u002FUnit\u002FServices\u002FContactServiceTest.php\n\nnamespace Vendor\\MyPlugin\\Tests\\Unit\\Services;\n\nuse Vendor\\MyPlugin\\Tests\\Unit\\TestCase;\nuse Vendor\\MyPlugin\\Services\\ContactService;\nuse WPZylos\\Framework\\Database\\Connection;\n\nclass ContactServiceTest extends TestCase\n{\n    private ContactService $service;\n    private Connection $mockDb;\n\n    protected function setUp(): void\n    {\n        parent::setUp();\n\n        $this->mockDb = $this->createMock(Connection::class);\n        $this->service = new ContactService($this->mockDb, $this->context);\n    }\n\n    public function testCreateReturnsInsertId(): void\n    {\n        $this->mockDb->expects($this->once())\n            ->method('insert')\n            ->with(\n                $this->stringContains('contacts'),\n                ['name' => 'John', 'email' => 'john@example.com']\n            )\n            ->willReturn(123);\n\n        $id = $this->service->create([\n            'name' => 'John',\n            'email' => 'john@example.com',\n        ]);\n\n        $this->assertSame(123, $id);\n    }\n\n    public function testFindReturnsContact(): void\n    {\n        \u002F\u002F Test implementation\n    }\n}\n",[722,1284,1285,1291,1296,1300,1309,1313,1322,1331,1340,1344,1357,1361,1372,1382,1386,1400,1404,1412,1416,1445,1477,1481,1485,1501,1505,1531,1547,1556,1574,1601,1607,1622,1627,1650,1662,1674,1680,1685,1702,1707,1712,1728,1733,1739,1744],{"__ignoreMap":720},[725,1286,1287,1289],{"class":727,"line":6},[725,1288,731],{"class":730},[725,1290,735],{"class":734},[725,1292,1293],{"class":727,"line":29},[725,1294,1295],{"class":740},"\u002F\u002F tests\u002FUnit\u002FServices\u002FContactServiceTest.php\n",[725,1297,1298],{"class":727,"line":14},[725,1299,747],{"emptyLinePlaceholder":746},[725,1301,1302,1304,1307],{"class":727,"line":18},[725,1303,1045],{"class":730},[725,1305,1306],{"class":843}," Vendor\\MyPlugin\\Tests\\Unit\\Services",[725,1308,804],{"class":755},[725,1310,1311],{"class":727,"line":70},[725,1312,747],{"emptyLinePlaceholder":746},[725,1314,1315,1317,1320],{"class":727,"line":74},[725,1316,1059],{"class":730},[725,1318,1319],{"class":734}," Vendor\\MyPlugin\\Tests\\Unit\\TestCase",[725,1321,804],{"class":755},[725,1323,1324,1326,1329],{"class":727,"line":78},[725,1325,1059],{"class":730},[725,1327,1328],{"class":734}," Vendor\\MyPlugin\\Services\\ContactService",[725,1330,804],{"class":755},[725,1332,1333,1335,1338],{"class":727,"line":82},[725,1334,1059],{"class":730},[725,1336,1337],{"class":734}," WPZylos\\Framework\\Database\\Connection",[725,1339,804],{"class":755},[725,1341,1342],{"class":727,"line":86},[725,1343,747],{"emptyLinePlaceholder":746},[725,1345,1346,1349,1352,1354],{"class":727,"line":90},[725,1347,1348],{"class":730},"class",[725,1350,1351],{"class":843}," ContactServiceTest",[725,1353,1106],{"class":730},[725,1355,1356],{"class":843}," TestCase\n",[725,1358,1359],{"class":727,"line":877},[725,1360,1114],{"class":755},[725,1362,1363,1366,1369],{"class":727,"line":886},[725,1364,1365],{"class":730},"    private",[725,1367,1368],{"class":734}," ContactService",[725,1370,1371],{"class":755}," $service;\n",[725,1373,1374,1376,1379],{"class":727,"line":892},[725,1375,1365],{"class":730},[725,1377,1378],{"class":734}," Connection",[725,1380,1381],{"class":755}," $mockDb;\n",[725,1383,1384],{"class":727,"line":898},[725,1385,747],{"emptyLinePlaceholder":746},[725,1387,1388,1390,1392,1394,1396,1398],{"class":727,"line":903},[725,1389,1119],{"class":730},[725,1391,1146],{"class":730},[725,1393,1149],{"class":843},[725,1395,1152],{"class":755},[725,1397,868],{"class":730},[725,1399,1157],{"class":730},[725,1401,1402],{"class":727,"line":921},[725,1403,1162],{"class":755},[725,1405,1406,1408,1410],{"class":727,"line":942},[725,1407,1167],{"class":730},[725,1409,1170],{"class":843},[725,1411,1173],{"class":755},[725,1413,1414],{"class":727,"line":963},[725,1415,747],{"emptyLinePlaceholder":746},[725,1417,1418,1420,1422,1425,1427,1430,1432,1435,1437,1440,1443],{"class":727,"line":968},[725,1419,1182],{"class":734},[725,1421,1185],{"class":730},[725,1423,1424],{"class":755},"mockDb ",[725,1426,762],{"class":730},[725,1428,1429],{"class":734}," $this",[725,1431,1185],{"class":730},[725,1433,1434],{"class":843},"createMock",[725,1436,756],{"class":755},[725,1438,1439],{"class":734},"Connection",[725,1441,1442],{"class":730},"::class",[725,1444,768],{"class":755},[725,1446,1447,1449,1451,1454,1456,1458,1460,1462,1465,1467,1470,1472,1474],{"class":727,"line":973},[725,1448,1182],{"class":734},[725,1450,1185],{"class":730},[725,1452,1453],{"class":755},"service ",[725,1455,762],{"class":730},[725,1457,1193],{"class":730},[725,1459,1368],{"class":734},[725,1461,756],{"class":755},[725,1463,1464],{"class":734},"$this",[725,1466,1185],{"class":730},[725,1468,1469],{"class":755},"mockDb, ",[725,1471,1464],{"class":734},[725,1473,1185],{"class":730},[725,1475,1476],{"class":755},"context);\n",[725,1478,1479],{"class":727,"line":978},[725,1480,889],{"class":755},[725,1482,1483],{"class":727,"line":997},[725,1484,747],{"emptyLinePlaceholder":746},[725,1486,1487,1490,1492,1495,1497,1499],{"class":727,"line":1014},[725,1488,1489],{"class":730},"    public",[725,1491,1146],{"class":730},[725,1493,1494],{"class":843}," testCreateReturnsInsertId",[725,1496,1152],{"class":755},[725,1498,868],{"class":730},[725,1500,1157],{"class":730},[725,1502,1503],{"class":727,"line":1229},[725,1504,1162],{"class":755},[725,1506,1507,1509,1511,1514,1516,1519,1521,1523,1525,1528],{"class":727,"line":1235},[725,1508,1182],{"class":734},[725,1510,1185],{"class":730},[725,1512,1513],{"class":755},"mockDb",[725,1515,1185],{"class":730},[725,1517,1518],{"class":843},"expects",[725,1520,756],{"class":755},[725,1522,1464],{"class":734},[725,1524,1185],{"class":730},[725,1526,1527],{"class":843},"once",[725,1529,1530],{"class":755},"())\n",[725,1532,1533,1536,1539,1541,1544],{"class":727,"line":1241},[725,1534,1535],{"class":730},"            ->",[725,1537,1538],{"class":843},"method",[725,1540,756],{"class":755},[725,1542,1543],{"class":800},"'insert'",[725,1545,1546],{"class":755},")\n",[725,1548,1549,1551,1554],{"class":727,"line":1246},[725,1550,1535],{"class":730},[725,1552,1553],{"class":843},"with",[725,1555,1198],{"class":755},[725,1557,1558,1561,1563,1566,1568,1571],{"class":727,"line":1264},[725,1559,1560],{"class":734},"                $this",[725,1562,1185],{"class":730},[725,1564,1565],{"class":843},"stringContains",[725,1567,756],{"class":755},[725,1569,1570],{"class":800},"'contacts'",[725,1572,1573],{"class":755},"),\n",[725,1575,1576,1579,1582,1585,1588,1590,1593,1595,1598],{"class":727,"line":1269},[725,1577,1578],{"class":755},"                [",[725,1580,1581],{"class":800},"'name'",[725,1583,1584],{"class":730}," =>",[725,1586,1587],{"class":800}," 'John'",[725,1589,788],{"class":755},[725,1591,1592],{"class":800},"'email'",[725,1594,1584],{"class":730},[725,1596,1597],{"class":800}," 'john@example.com'",[725,1599,1600],{"class":755},"]\n",[725,1602,1604],{"class":727,"line":1603},30,[725,1605,1606],{"class":755},"            )\n",[725,1608,1610,1612,1615,1617,1620],{"class":727,"line":1609},31,[725,1611,1535],{"class":730},[725,1613,1614],{"class":843},"willReturn",[725,1616,756],{"class":755},[725,1618,1619],{"class":734},"123",[725,1621,768],{"class":755},[725,1623,1625],{"class":727,"line":1624},32,[725,1626,747],{"emptyLinePlaceholder":746},[725,1628,1630,1633,1635,1637,1639,1642,1644,1647],{"class":727,"line":1629},33,[725,1631,1632],{"class":755},"        $id ",[725,1634,762],{"class":730},[725,1636,1429],{"class":734},[725,1638,1185],{"class":730},[725,1640,1641],{"class":755},"service",[725,1643,1185],{"class":730},[725,1645,1646],{"class":843},"create",[725,1648,1649],{"class":755},"([\n",[725,1651,1653,1656,1658,1660],{"class":727,"line":1652},34,[725,1654,1655],{"class":800},"            'name'",[725,1657,1584],{"class":730},[725,1659,1587],{"class":800},[725,1661,1206],{"class":755},[725,1663,1665,1668,1670,1672],{"class":727,"line":1664},35,[725,1666,1667],{"class":800},"            'email'",[725,1669,1584],{"class":730},[725,1671,1597],{"class":800},[725,1673,1206],{"class":755},[725,1675,1677],{"class":727,"line":1676},36,[725,1678,1679],{"class":755},"        ]);\n",[725,1681,1683],{"class":727,"line":1682},37,[725,1684,747],{"emptyLinePlaceholder":746},[725,1686,1688,1690,1692,1695,1697,1699],{"class":727,"line":1687},38,[725,1689,1182],{"class":734},[725,1691,1185],{"class":730},[725,1693,1694],{"class":843},"assertSame",[725,1696,756],{"class":755},[725,1698,1619],{"class":734},[725,1700,1701],{"class":755},", $id);\n",[725,1703,1705],{"class":727,"line":1704},39,[725,1706,889],{"class":755},[725,1708,1710],{"class":727,"line":1709},40,[725,1711,747],{"emptyLinePlaceholder":746},[725,1713,1715,1717,1719,1722,1724,1726],{"class":727,"line":1714},41,[725,1716,1489],{"class":730},[725,1718,1146],{"class":730},[725,1720,1721],{"class":843}," testFindReturnsContact",[725,1723,1152],{"class":755},[725,1725,868],{"class":730},[725,1727,1157],{"class":730},[725,1729,1731],{"class":727,"line":1730},42,[725,1732,1162],{"class":755},[725,1734,1736],{"class":727,"line":1735},43,[725,1737,1738],{"class":740},"        \u002F\u002F Test implementation\n",[725,1740,1742],{"class":727,"line":1741},44,[725,1743,889],{"class":755},[725,1745,1747],{"class":727,"line":1746},45,[725,1748,895],{"class":755},[710,1750,1752],{"id":1751},"validator-test","Validator Test",[715,1754,1756],{"className":717,"code":1755,"language":719,"meta":720,"style":720},"\u003C?php\n\u002F\u002F tests\u002FUnit\u002FValidation\u002FValidatorTest.php\n\nnamespace Vendor\\MyPlugin\\Tests\\Unit\\Validation;\n\nuse PHPUnit\\Framework\\TestCase;\nuse WPZylos\\Framework\\Validation\\Validator;\n\nclass ValidatorTest extends TestCase\n{\n    private Validator $validator;\n\n    protected function setUp(): void\n    {\n        $this->validator = new Validator();\n    }\n\n    public function testRequiredRuleFailsOnEmpty(): void\n    {\n        $result = $this->validator->validate(\n            ['name' => ''],\n            ['name' => 'required']\n        );\n\n        $this->assertTrue($result->fails());\n        $this->assertArrayHasKey('name', $result->errors());\n    }\n\n    public function testEmailRuleValidatesFormat(): void\n    {\n        $result = $this->validator->validate(\n            ['email' => 'invalid'],\n            ['email' => 'email']\n        );\n\n        $this->assertTrue($result->fails());\n\n        $result = $this->validator->validate(\n            ['email' => 'valid@example.com'],\n            ['email' => 'email']\n        );\n\n        $this->assertTrue($result->passes());\n    }\n\n    \u002F**\n     * @dataProvider validationRulesProvider\n     *\u002F\n    public function testValidationRules(array $data, array $rules, bool $shouldPass): void\n    {\n        $result = $this->validator->validate($data, $rules);\n\n        $this->assertSame($shouldPass, $result->passes());\n    }\n\n    public static function validationRulesProvider(): array\n    {\n        return [\n            'required passes' => [['name' => 'John'], ['name' => 'required'], true],\n            'required fails' => [['name' => ''], ['name' => 'required'], false],\n            'max passes' => [['name' => 'John'], ['name' => 'max:10'], true],\n            'max fails' => [['name' => 'John Doe Long Name'], ['name' => 'max:10'], false],\n        ];\n    }\n}\n",[722,1757,1758,1764,1769,1773,1782,1786,1794,1803,1807,1818,1822,1832,1836,1850,1854,1871,1875,1879,1894,1898,1919,1934,1947,1951,1955,1975,1998,2002,2006,2021,2025,2043,2056,2069,2073,2077,2093,2097,2115,2128,2140,2144,2148,2165,2169,2173,2179,2185,2191,2224,2228,2248,2253,2271,2276,2281,2301,2306,2314,2348,2379,2410,2441,2447,2452],{"__ignoreMap":720},[725,1759,1760,1762],{"class":727,"line":6},[725,1761,731],{"class":730},[725,1763,735],{"class":734},[725,1765,1766],{"class":727,"line":29},[725,1767,1768],{"class":740},"\u002F\u002F tests\u002FUnit\u002FValidation\u002FValidatorTest.php\n",[725,1770,1771],{"class":727,"line":14},[725,1772,747],{"emptyLinePlaceholder":746},[725,1774,1775,1777,1780],{"class":727,"line":18},[725,1776,1045],{"class":730},[725,1778,1779],{"class":843}," Vendor\\MyPlugin\\Tests\\Unit\\Validation",[725,1781,804],{"class":755},[725,1783,1784],{"class":727,"line":70},[725,1785,747],{"emptyLinePlaceholder":746},[725,1787,1788,1790,1792],{"class":727,"line":74},[725,1789,1059],{"class":730},[725,1791,1062],{"class":734},[725,1793,804],{"class":755},[725,1795,1796,1798,1801],{"class":727,"line":78},[725,1797,1059],{"class":730},[725,1799,1800],{"class":734}," WPZylos\\Framework\\Validation\\Validator",[725,1802,804],{"class":755},[725,1804,1805],{"class":727,"line":82},[725,1806,747],{"emptyLinePlaceholder":746},[725,1808,1809,1811,1814,1816],{"class":727,"line":86},[725,1810,1348],{"class":730},[725,1812,1813],{"class":843}," ValidatorTest",[725,1815,1106],{"class":730},[725,1817,1356],{"class":843},[725,1819,1820],{"class":727,"line":90},[725,1821,1114],{"class":755},[725,1823,1824,1826,1829],{"class":727,"line":877},[725,1825,1365],{"class":730},[725,1827,1828],{"class":734}," Validator",[725,1830,1831],{"class":755}," $validator;\n",[725,1833,1834],{"class":727,"line":886},[725,1835,747],{"emptyLinePlaceholder":746},[725,1837,1838,1840,1842,1844,1846,1848],{"class":727,"line":892},[725,1839,1119],{"class":730},[725,1841,1146],{"class":730},[725,1843,1149],{"class":843},[725,1845,1152],{"class":755},[725,1847,868],{"class":730},[725,1849,1157],{"class":730},[725,1851,1852],{"class":727,"line":898},[725,1853,1162],{"class":755},[725,1855,1856,1858,1860,1863,1865,1867,1869],{"class":727,"line":903},[725,1857,1182],{"class":734},[725,1859,1185],{"class":730},[725,1861,1862],{"class":755},"validator ",[725,1864,762],{"class":730},[725,1866,1193],{"class":730},[725,1868,1828],{"class":734},[725,1870,1173],{"class":755},[725,1872,1873],{"class":727,"line":921},[725,1874,889],{"class":755},[725,1876,1877],{"class":727,"line":942},[725,1878,747],{"emptyLinePlaceholder":746},[725,1880,1881,1883,1885,1888,1890,1892],{"class":727,"line":963},[725,1882,1489],{"class":730},[725,1884,1146],{"class":730},[725,1886,1887],{"class":843}," testRequiredRuleFailsOnEmpty",[725,1889,1152],{"class":755},[725,1891,868],{"class":730},[725,1893,1157],{"class":730},[725,1895,1896],{"class":727,"line":968},[725,1897,1162],{"class":755},[725,1899,1900,1903,1905,1907,1909,1912,1914,1917],{"class":727,"line":973},[725,1901,1902],{"class":755},"        $result ",[725,1904,762],{"class":730},[725,1906,1429],{"class":734},[725,1908,1185],{"class":730},[725,1910,1911],{"class":755},"validator",[725,1913,1185],{"class":730},[725,1915,1916],{"class":843},"validate",[725,1918,1198],{"class":755},[725,1920,1921,1924,1926,1928,1931],{"class":727,"line":978},[725,1922,1923],{"class":755},"            [",[725,1925,1581],{"class":800},[725,1927,1584],{"class":730},[725,1929,1930],{"class":800}," ''",[725,1932,1933],{"class":755},"],\n",[725,1935,1936,1938,1940,1942,1945],{"class":727,"line":997},[725,1937,1923],{"class":755},[725,1939,1581],{"class":800},[725,1941,1584],{"class":730},[725,1943,1944],{"class":800}," 'required'",[725,1946,1600],{"class":755},[725,1948,1949],{"class":727,"line":1014},[725,1950,1238],{"class":755},[725,1952,1953],{"class":727,"line":1229},[725,1954,747],{"emptyLinePlaceholder":746},[725,1956,1957,1959,1961,1964,1967,1969,1972],{"class":727,"line":1235},[725,1958,1182],{"class":734},[725,1960,1185],{"class":730},[725,1962,1963],{"class":843},"assertTrue",[725,1965,1966],{"class":755},"($result",[725,1968,1185],{"class":730},[725,1970,1971],{"class":843},"fails",[725,1973,1974],{"class":755},"());\n",[725,1976,1977,1979,1981,1984,1986,1988,1991,1993,1996],{"class":727,"line":1241},[725,1978,1182],{"class":734},[725,1980,1185],{"class":730},[725,1982,1983],{"class":843},"assertArrayHasKey",[725,1985,756],{"class":755},[725,1987,1581],{"class":800},[725,1989,1990],{"class":755},", $result",[725,1992,1185],{"class":730},[725,1994,1995],{"class":843},"errors",[725,1997,1974],{"class":755},[725,1999,2000],{"class":727,"line":1246},[725,2001,889],{"class":755},[725,2003,2004],{"class":727,"line":1264},[725,2005,747],{"emptyLinePlaceholder":746},[725,2007,2008,2010,2012,2015,2017,2019],{"class":727,"line":1269},[725,2009,1489],{"class":730},[725,2011,1146],{"class":730},[725,2013,2014],{"class":843}," testEmailRuleValidatesFormat",[725,2016,1152],{"class":755},[725,2018,868],{"class":730},[725,2020,1157],{"class":730},[725,2022,2023],{"class":727,"line":1603},[725,2024,1162],{"class":755},[725,2026,2027,2029,2031,2033,2035,2037,2039,2041],{"class":727,"line":1609},[725,2028,1902],{"class":755},[725,2030,762],{"class":730},[725,2032,1429],{"class":734},[725,2034,1185],{"class":730},[725,2036,1911],{"class":755},[725,2038,1185],{"class":730},[725,2040,1916],{"class":843},[725,2042,1198],{"class":755},[725,2044,2045,2047,2049,2051,2054],{"class":727,"line":1624},[725,2046,1923],{"class":755},[725,2048,1592],{"class":800},[725,2050,1584],{"class":730},[725,2052,2053],{"class":800}," 'invalid'",[725,2055,1933],{"class":755},[725,2057,2058,2060,2062,2064,2067],{"class":727,"line":1629},[725,2059,1923],{"class":755},[725,2061,1592],{"class":800},[725,2063,1584],{"class":730},[725,2065,2066],{"class":800}," 'email'",[725,2068,1600],{"class":755},[725,2070,2071],{"class":727,"line":1652},[725,2072,1238],{"class":755},[725,2074,2075],{"class":727,"line":1664},[725,2076,747],{"emptyLinePlaceholder":746},[725,2078,2079,2081,2083,2085,2087,2089,2091],{"class":727,"line":1676},[725,2080,1182],{"class":734},[725,2082,1185],{"class":730},[725,2084,1963],{"class":843},[725,2086,1966],{"class":755},[725,2088,1185],{"class":730},[725,2090,1971],{"class":843},[725,2092,1974],{"class":755},[725,2094,2095],{"class":727,"line":1682},[725,2096,747],{"emptyLinePlaceholder":746},[725,2098,2099,2101,2103,2105,2107,2109,2111,2113],{"class":727,"line":1687},[725,2100,1902],{"class":755},[725,2102,762],{"class":730},[725,2104,1429],{"class":734},[725,2106,1185],{"class":730},[725,2108,1911],{"class":755},[725,2110,1185],{"class":730},[725,2112,1916],{"class":843},[725,2114,1198],{"class":755},[725,2116,2117,2119,2121,2123,2126],{"class":727,"line":1704},[725,2118,1923],{"class":755},[725,2120,1592],{"class":800},[725,2122,1584],{"class":730},[725,2124,2125],{"class":800}," 'valid@example.com'",[725,2127,1933],{"class":755},[725,2129,2130,2132,2134,2136,2138],{"class":727,"line":1709},[725,2131,1923],{"class":755},[725,2133,1592],{"class":800},[725,2135,1584],{"class":730},[725,2137,2066],{"class":800},[725,2139,1600],{"class":755},[725,2141,2142],{"class":727,"line":1714},[725,2143,1238],{"class":755},[725,2145,2146],{"class":727,"line":1730},[725,2147,747],{"emptyLinePlaceholder":746},[725,2149,2150,2152,2154,2156,2158,2160,2163],{"class":727,"line":1735},[725,2151,1182],{"class":734},[725,2153,1185],{"class":730},[725,2155,1963],{"class":843},[725,2157,1966],{"class":755},[725,2159,1185],{"class":730},[725,2161,2162],{"class":843},"passes",[725,2164,1974],{"class":755},[725,2166,2167],{"class":727,"line":1741},[725,2168,889],{"class":755},[725,2170,2171],{"class":727,"line":1746},[725,2172,747],{"emptyLinePlaceholder":746},[725,2174,2176],{"class":727,"line":2175},46,[725,2177,2178],{"class":740},"    \u002F**\n",[725,2180,2182],{"class":727,"line":2181},47,[725,2183,2184],{"class":740},"     * @dataProvider validationRulesProvider\n",[725,2186,2188],{"class":727,"line":2187},48,[725,2189,2190],{"class":740},"     *\u002F\n",[725,2192,2194,2196,2198,2201,2203,2206,2209,2211,2214,2217,2220,2222],{"class":727,"line":2193},49,[725,2195,1489],{"class":730},[725,2197,1146],{"class":730},[725,2199,2200],{"class":843}," testValidationRules",[725,2202,756],{"class":755},[725,2204,2205],{"class":730},"array",[725,2207,2208],{"class":755}," $data, ",[725,2210,2205],{"class":730},[725,2212,2213],{"class":755}," $rules, ",[725,2215,2216],{"class":730},"bool",[725,2218,2219],{"class":755}," $shouldPass)",[725,2221,868],{"class":730},[725,2223,1157],{"class":730},[725,2225,2226],{"class":727,"line":22},[725,2227,1162],{"class":755},[725,2229,2231,2233,2235,2237,2239,2241,2243,2245],{"class":727,"line":2230},51,[725,2232,1902],{"class":755},[725,2234,762],{"class":730},[725,2236,1429],{"class":734},[725,2238,1185],{"class":730},[725,2240,1911],{"class":755},[725,2242,1185],{"class":730},[725,2244,1916],{"class":843},[725,2246,2247],{"class":755},"($data, $rules);\n",[725,2249,2251],{"class":727,"line":2250},52,[725,2252,747],{"emptyLinePlaceholder":746},[725,2254,2256,2258,2260,2262,2265,2267,2269],{"class":727,"line":2255},53,[725,2257,1182],{"class":734},[725,2259,1185],{"class":730},[725,2261,1694],{"class":843},[725,2263,2264],{"class":755},"($shouldPass, $result",[725,2266,1185],{"class":730},[725,2268,2162],{"class":843},[725,2270,1974],{"class":755},[725,2272,2274],{"class":727,"line":2273},54,[725,2275,889],{"class":755},[725,2277,2279],{"class":727,"line":2278},55,[725,2280,747],{"emptyLinePlaceholder":746},[725,2282,2284,2286,2289,2291,2294,2296,2298],{"class":727,"line":2283},56,[725,2285,1489],{"class":730},[725,2287,2288],{"class":730}," static",[725,2290,1146],{"class":730},[725,2292,2293],{"class":843}," validationRulesProvider",[725,2295,1152],{"class":755},[725,2297,868],{"class":730},[725,2299,2300],{"class":730}," array\n",[725,2302,2304],{"class":727,"line":2303},57,[725,2305,1162],{"class":755},[725,2307,2309,2311],{"class":727,"line":2308},58,[725,2310,880],{"class":730},[725,2312,2313],{"class":755}," [\n",[725,2315,2317,2320,2322,2325,2327,2329,2331,2334,2336,2338,2340,2343,2346],{"class":727,"line":2316},59,[725,2318,2319],{"class":800},"            'required passes'",[725,2321,1584],{"class":730},[725,2323,2324],{"class":755}," [[",[725,2326,1581],{"class":800},[725,2328,1584],{"class":730},[725,2330,1587],{"class":800},[725,2332,2333],{"class":755},"], [",[725,2335,1581],{"class":800},[725,2337,1584],{"class":730},[725,2339,1944],{"class":800},[725,2341,2342],{"class":755},"], ",[725,2344,2345],{"class":734},"true",[725,2347,1933],{"class":755},[725,2349,2351,2354,2356,2358,2360,2362,2364,2366,2368,2370,2372,2374,2377],{"class":727,"line":2350},60,[725,2352,2353],{"class":800},"            'required fails'",[725,2355,1584],{"class":730},[725,2357,2324],{"class":755},[725,2359,1581],{"class":800},[725,2361,1584],{"class":730},[725,2363,1930],{"class":800},[725,2365,2333],{"class":755},[725,2367,1581],{"class":800},[725,2369,1584],{"class":730},[725,2371,1944],{"class":800},[725,2373,2342],{"class":755},[725,2375,2376],{"class":734},"false",[725,2378,1933],{"class":755},[725,2380,2382,2385,2387,2389,2391,2393,2395,2397,2399,2401,2404,2406,2408],{"class":727,"line":2381},61,[725,2383,2384],{"class":800},"            'max passes'",[725,2386,1584],{"class":730},[725,2388,2324],{"class":755},[725,2390,1581],{"class":800},[725,2392,1584],{"class":730},[725,2394,1587],{"class":800},[725,2396,2333],{"class":755},[725,2398,1581],{"class":800},[725,2400,1584],{"class":730},[725,2402,2403],{"class":800}," 'max:10'",[725,2405,2342],{"class":755},[725,2407,2345],{"class":734},[725,2409,1933],{"class":755},[725,2411,2413,2416,2418,2420,2422,2424,2427,2429,2431,2433,2435,2437,2439],{"class":727,"line":2412},62,[725,2414,2415],{"class":800},"            'max fails'",[725,2417,1584],{"class":730},[725,2419,2324],{"class":755},[725,2421,1581],{"class":800},[725,2423,1584],{"class":730},[725,2425,2426],{"class":800}," 'John Doe Long Name'",[725,2428,2333],{"class":755},[725,2430,1581],{"class":800},[725,2432,1584],{"class":730},[725,2434,2403],{"class":800},[725,2436,2342],{"class":755},[725,2438,2376],{"class":734},[725,2440,1933],{"class":755},[725,2442,2444],{"class":727,"line":2443},63,[725,2445,2446],{"class":755},"        ];\n",[725,2448,2450],{"class":727,"line":2449},64,[725,2451,889],{"class":755},[725,2453,2455],{"class":727,"line":2454},65,[725,2456,895],{"class":755},[710,2458,2460],{"id":2459},"container-test","Container Test",[715,2462,2464],{"className":717,"code":2463,"language":719,"meta":720,"style":720},"\u003C?php\n\u002F\u002F tests\u002FUnit\u002FContainer\u002FContainerTest.php\n\nnamespace Vendor\\MyPlugin\\Tests\\Unit\\Container;\n\nuse PHPUnit\\Framework\\TestCase;\nuse WPZylos\\Framework\\Container\\Container;\n\nclass ContainerTest extends TestCase\n{\n    public function testBindAndResolve(): void\n    {\n        $container = new Container();\n\n        $container->bind('key', fn() => 'value');\n\n        $this->assertSame('value', $container->get('key'));\n    }\n\n    public function testSingletonReturnsSameInstance(): void\n    {\n        $container = new Container();\n\n        $container->singleton('service', fn() => new \\stdClass());\n\n        $a = $container->get('service');\n        $b = $container->get('service');\n\n        $this->assertSame($a, $b);\n    }\n\n    public function testAutoWiresConstructorDependencies(): void\n    {\n        $container = new Container();\n        $container->bind(DependencyInterface::class, ConcreteDependency::class);\n\n        $service = $container->get(ServiceWithDependency::class);\n\n        $this->assertInstanceOf(ServiceWithDependency::class, $service);\n    }\n}\n",[722,2465,2466,2472,2477,2481,2490,2494,2502,2510,2514,2525,2529,2544,2548,2561,2565,2593,2597,2624,2628,2632,2647,2651,2663,2667,2695,2699,2719,2738,2742,2753,2757,2761,2776,2780,2792,2816,2820,2842,2846,2864,2868],{"__ignoreMap":720},[725,2467,2468,2470],{"class":727,"line":6},[725,2469,731],{"class":730},[725,2471,735],{"class":734},[725,2473,2474],{"class":727,"line":29},[725,2475,2476],{"class":740},"\u002F\u002F tests\u002FUnit\u002FContainer\u002FContainerTest.php\n",[725,2478,2479],{"class":727,"line":14},[725,2480,747],{"emptyLinePlaceholder":746},[725,2482,2483,2485,2488],{"class":727,"line":18},[725,2484,1045],{"class":730},[725,2486,2487],{"class":843}," Vendor\\MyPlugin\\Tests\\Unit\\Container",[725,2489,804],{"class":755},[725,2491,2492],{"class":727,"line":70},[725,2493,747],{"emptyLinePlaceholder":746},[725,2495,2496,2498,2500],{"class":727,"line":74},[725,2497,1059],{"class":730},[725,2499,1062],{"class":734},[725,2501,804],{"class":755},[725,2503,2504,2506,2508],{"class":727,"line":78},[725,2505,1059],{"class":730},[725,2507,1086],{"class":734},[725,2509,804],{"class":755},[725,2511,2512],{"class":727,"line":82},[725,2513,747],{"emptyLinePlaceholder":746},[725,2515,2516,2518,2521,2523],{"class":727,"line":86},[725,2517,1348],{"class":730},[725,2519,2520],{"class":843}," ContainerTest",[725,2522,1106],{"class":730},[725,2524,1356],{"class":843},[725,2526,2527],{"class":727,"line":90},[725,2528,1114],{"class":755},[725,2530,2531,2533,2535,2538,2540,2542],{"class":727,"line":877},[725,2532,1489],{"class":730},[725,2534,1146],{"class":730},[725,2536,2537],{"class":843}," testBindAndResolve",[725,2539,1152],{"class":755},[725,2541,868],{"class":730},[725,2543,1157],{"class":730},[725,2545,2546],{"class":727,"line":886},[725,2547,1162],{"class":755},[725,2549,2550,2553,2555,2557,2559],{"class":727,"line":892},[725,2551,2552],{"class":755},"        $container ",[725,2554,762],{"class":730},[725,2556,1193],{"class":730},[725,2558,1132],{"class":734},[725,2560,1173],{"class":755},[725,2562,2563],{"class":727,"line":898},[725,2564,747],{"emptyLinePlaceholder":746},[725,2566,2567,2570,2572,2575,2577,2580,2582,2585,2588,2591],{"class":727,"line":903},[725,2568,2569],{"class":755},"        $container",[725,2571,1185],{"class":730},[725,2573,2574],{"class":843},"bind",[725,2576,756],{"class":755},[725,2578,2579],{"class":800},"'key'",[725,2581,788],{"class":755},[725,2583,2584],{"class":730},"fn",[725,2586,2587],{"class":755},"() => ",[725,2589,2590],{"class":800},"'value'",[725,2592,768],{"class":755},[725,2594,2595],{"class":727,"line":921},[725,2596,747],{"emptyLinePlaceholder":746},[725,2598,2599,2601,2603,2605,2607,2609,2612,2614,2617,2619,2621],{"class":727,"line":942},[725,2600,1182],{"class":734},[725,2602,1185],{"class":730},[725,2604,1694],{"class":843},[725,2606,756],{"class":755},[725,2608,2590],{"class":800},[725,2610,2611],{"class":755},", $container",[725,2613,1185],{"class":730},[725,2615,2616],{"class":843},"get",[725,2618,756],{"class":755},[725,2620,2579],{"class":800},[725,2622,2623],{"class":755},"));\n",[725,2625,2626],{"class":727,"line":963},[725,2627,889],{"class":755},[725,2629,2630],{"class":727,"line":968},[725,2631,747],{"emptyLinePlaceholder":746},[725,2633,2634,2636,2638,2641,2643,2645],{"class":727,"line":973},[725,2635,1489],{"class":730},[725,2637,1146],{"class":730},[725,2639,2640],{"class":843}," testSingletonReturnsSameInstance",[725,2642,1152],{"class":755},[725,2644,868],{"class":730},[725,2646,1157],{"class":730},[725,2648,2649],{"class":727,"line":978},[725,2650,1162],{"class":755},[725,2652,2653,2655,2657,2659,2661],{"class":727,"line":997},[725,2654,2552],{"class":755},[725,2656,762],{"class":730},[725,2658,1193],{"class":730},[725,2660,1132],{"class":734},[725,2662,1173],{"class":755},[725,2664,2665],{"class":727,"line":1014},[725,2666,747],{"emptyLinePlaceholder":746},[725,2668,2669,2671,2673,2676,2678,2681,2683,2685,2687,2690,2693],{"class":727,"line":1229},[725,2670,2569],{"class":755},[725,2672,1185],{"class":730},[725,2674,2675],{"class":843},"singleton",[725,2677,756],{"class":755},[725,2679,2680],{"class":800},"'service'",[725,2682,788],{"class":755},[725,2684,2584],{"class":730},[725,2686,2587],{"class":755},[725,2688,2689],{"class":730},"new",[725,2691,2692],{"class":734}," \\stdClass",[725,2694,1974],{"class":755},[725,2696,2697],{"class":727,"line":1235},[725,2698,747],{"emptyLinePlaceholder":746},[725,2700,2701,2704,2706,2709,2711,2713,2715,2717],{"class":727,"line":1241},[725,2702,2703],{"class":755},"        $a ",[725,2705,762],{"class":730},[725,2707,2708],{"class":755}," $container",[725,2710,1185],{"class":730},[725,2712,2616],{"class":843},[725,2714,756],{"class":755},[725,2716,2680],{"class":800},[725,2718,768],{"class":755},[725,2720,2721,2724,2726,2728,2730,2732,2734,2736],{"class":727,"line":1246},[725,2722,2723],{"class":755},"        $b ",[725,2725,762],{"class":730},[725,2727,2708],{"class":755},[725,2729,1185],{"class":730},[725,2731,2616],{"class":843},[725,2733,756],{"class":755},[725,2735,2680],{"class":800},[725,2737,768],{"class":755},[725,2739,2740],{"class":727,"line":1264},[725,2741,747],{"emptyLinePlaceholder":746},[725,2743,2744,2746,2748,2750],{"class":727,"line":1269},[725,2745,1182],{"class":734},[725,2747,1185],{"class":730},[725,2749,1694],{"class":843},[725,2751,2752],{"class":755},"($a, $b);\n",[725,2754,2755],{"class":727,"line":1603},[725,2756,889],{"class":755},[725,2758,2759],{"class":727,"line":1609},[725,2760,747],{"emptyLinePlaceholder":746},[725,2762,2763,2765,2767,2770,2772,2774],{"class":727,"line":1624},[725,2764,1489],{"class":730},[725,2766,1146],{"class":730},[725,2768,2769],{"class":843}," testAutoWiresConstructorDependencies",[725,2771,1152],{"class":755},[725,2773,868],{"class":730},[725,2775,1157],{"class":730},[725,2777,2778],{"class":727,"line":1629},[725,2779,1162],{"class":755},[725,2781,2782,2784,2786,2788,2790],{"class":727,"line":1652},[725,2783,2552],{"class":755},[725,2785,762],{"class":730},[725,2787,1193],{"class":730},[725,2789,1132],{"class":734},[725,2791,1173],{"class":755},[725,2793,2794,2796,2798,2800,2802,2805,2807,2809,2812,2814],{"class":727,"line":1664},[725,2795,2569],{"class":755},[725,2797,1185],{"class":730},[725,2799,2574],{"class":843},[725,2801,756],{"class":755},[725,2803,2804],{"class":734},"DependencyInterface",[725,2806,1442],{"class":730},[725,2808,788],{"class":755},[725,2810,2811],{"class":734},"ConcreteDependency",[725,2813,1442],{"class":730},[725,2815,768],{"class":755},[725,2817,2818],{"class":727,"line":1676},[725,2819,747],{"emptyLinePlaceholder":746},[725,2821,2822,2825,2827,2829,2831,2833,2835,2838,2840],{"class":727,"line":1682},[725,2823,2824],{"class":755},"        $service ",[725,2826,762],{"class":730},[725,2828,2708],{"class":755},[725,2830,1185],{"class":730},[725,2832,2616],{"class":843},[725,2834,756],{"class":755},[725,2836,2837],{"class":734},"ServiceWithDependency",[725,2839,1442],{"class":730},[725,2841,768],{"class":755},[725,2843,2844],{"class":727,"line":1687},[725,2845,747],{"emptyLinePlaceholder":746},[725,2847,2848,2850,2852,2855,2857,2859,2861],{"class":727,"line":1704},[725,2849,1182],{"class":734},[725,2851,1185],{"class":730},[725,2853,2854],{"class":843},"assertInstanceOf",[725,2856,756],{"class":755},[725,2858,2837],{"class":734},[725,2860,1442],{"class":730},[725,2862,2863],{"class":755},", $service);\n",[725,2865,2866],{"class":727,"line":1709},[725,2867,889],{"class":755},[725,2869,2870],{"class":727,"line":1714},[725,2871,895],{"class":755},[705,2873,2875],{"id":2874},"mocking-wordpress-functions","Mocking WordPress Functions",[710,2877,2879],{"id":2878},"function-stubs","Function Stubs",[715,2881,2883],{"className":717,"code":2882,"language":719,"meta":720,"style":720},"\u002F\u002F tests\u002FUnit\u002Fbootstrap.php\n\nif (!function_exists('sanitize_text_field')) {\n    function sanitize_text_field(string $str): string {\n        return trim(strip_tags($str));\n    }\n}\n\nif (!function_exists('wp_create_nonce')) {\n    function wp_create_nonce(string $action): string {\n        return md5($action . 'salt');\n    }\n}\n\nif (!function_exists('current_user_can')) {\n    function current_user_can(string $capability): bool {\n        return true; \u002F\u002F Or use a global flag to control this\n    }\n}\n",[722,2884,2885,2889,2893,2910,2930,2945,2949,2953,2957,2974,2994,3011,3015,3019,3023,3040,3061,3074,3078],{"__ignoreMap":720},[725,2886,2887],{"class":727,"line":6},[725,2888,741],{"class":740},[725,2890,2891],{"class":727,"line":29},[725,2892,747],{"emptyLinePlaceholder":746},[725,2894,2895,2897,2899,2901,2903,2905,2908],{"class":727,"line":14},[725,2896,818],{"class":730},[725,2898,821],{"class":755},[725,2900,824],{"class":730},[725,2902,827],{"class":734},[725,2904,756],{"class":755},[725,2906,2907],{"class":800},"'sanitize_text_field'",[725,2909,835],{"class":755},[725,2911,2912,2914,2917,2919,2921,2924,2926,2928],{"class":727,"line":18},[725,2913,840],{"class":730},[725,2915,2916],{"class":843}," sanitize_text_field",[725,2918,756],{"class":755},[725,2920,849],{"class":730},[725,2922,2923],{"class":755}," $str)",[725,2925,868],{"class":730},[725,2927,871],{"class":730},[725,2929,874],{"class":755},[725,2931,2932,2934,2937,2939,2942],{"class":727,"line":70},[725,2933,880],{"class":730},[725,2935,2936],{"class":734}," trim",[725,2938,756],{"class":755},[725,2940,2941],{"class":734},"strip_tags",[725,2943,2944],{"class":755},"($str));\n",[725,2946,2947],{"class":727,"line":74},[725,2948,889],{"class":755},[725,2950,2951],{"class":727,"line":78},[725,2952,895],{"class":755},[725,2954,2955],{"class":727,"line":82},[725,2956,747],{"emptyLinePlaceholder":746},[725,2958,2959,2961,2963,2965,2967,2969,2972],{"class":727,"line":86},[725,2960,818],{"class":730},[725,2962,821],{"class":755},[725,2964,824],{"class":730},[725,2966,827],{"class":734},[725,2968,756],{"class":755},[725,2970,2971],{"class":800},"'wp_create_nonce'",[725,2973,835],{"class":755},[725,2975,2976,2978,2981,2983,2985,2988,2990,2992],{"class":727,"line":90},[725,2977,840],{"class":730},[725,2979,2980],{"class":843}," wp_create_nonce",[725,2982,756],{"class":755},[725,2984,849],{"class":730},[725,2986,2987],{"class":755}," $action)",[725,2989,868],{"class":730},[725,2991,871],{"class":730},[725,2993,874],{"class":755},[725,2995,2996,2998,3001,3004,3006,3009],{"class":727,"line":877},[725,2997,880],{"class":730},[725,2999,3000],{"class":734}," md5",[725,3002,3003],{"class":755},"($action ",[725,3005,797],{"class":730},[725,3007,3008],{"class":800}," 'salt'",[725,3010,768],{"class":755},[725,3012,3013],{"class":727,"line":886},[725,3014,889],{"class":755},[725,3016,3017],{"class":727,"line":892},[725,3018,895],{"class":755},[725,3020,3021],{"class":727,"line":898},[725,3022,747],{"emptyLinePlaceholder":746},[725,3024,3025,3027,3029,3031,3033,3035,3038],{"class":727,"line":903},[725,3026,818],{"class":730},[725,3028,821],{"class":755},[725,3030,824],{"class":730},[725,3032,827],{"class":734},[725,3034,756],{"class":755},[725,3036,3037],{"class":800},"'current_user_can'",[725,3039,835],{"class":755},[725,3041,3042,3044,3047,3049,3051,3054,3056,3059],{"class":727,"line":921},[725,3043,840],{"class":730},[725,3045,3046],{"class":843}," current_user_can",[725,3048,756],{"class":755},[725,3050,849],{"class":730},[725,3052,3053],{"class":755}," $capability)",[725,3055,868],{"class":730},[725,3057,3058],{"class":730}," bool",[725,3060,874],{"class":755},[725,3062,3063,3065,3068,3071],{"class":727,"line":942},[725,3064,880],{"class":730},[725,3066,3067],{"class":734}," true",[725,3069,3070],{"class":755},"; ",[725,3072,3073],{"class":740},"\u002F\u002F Or use a global flag to control this\n",[725,3075,3076],{"class":727,"line":963},[725,3077,889],{"class":755},[725,3079,3080],{"class":727,"line":968},[725,3081,895],{"class":755},[710,3083,3085],{"id":3084},"using-brainmonkey","Using Brain\\Monkey",[701,3087,3088],{},"For more robust WordPress mocking:",[715,3090,3094],{"className":3091,"code":3092,"language":3093,"meta":720,"style":720},"language-bash shiki shiki-themes github-light github-dark","composer require --dev brain\u002Fmonkey\n","bash",[722,3095,3096],{"__ignoreMap":720},[725,3097,3098,3101,3104,3107],{"class":727,"line":6},[725,3099,3100],{"class":843},"composer",[725,3102,3103],{"class":800}," require",[725,3105,3106],{"class":734}," --dev",[725,3108,3109],{"class":800}," brain\u002Fmonkey\n",[715,3111,3113],{"className":717,"code":3112,"language":719,"meta":720,"style":720},"\u003C?php\n\nuse Brain\\Monkey;\nuse Brain\\Monkey\\Functions;\n\nclass MyTest extends TestCase\n{\n    protected function setUp(): void\n    {\n        parent::setUp();\n        Monkey\\setUp();\n    }\n\n    protected function tearDown(): void\n    {\n        Monkey\\tearDown();\n        parent::tearDown();\n    }\n\n    public function testUsesWordPressFunction(): void\n    {\n        Functions\\when('get_option')->justReturn('value');\n\n        $service = new MyService();\n        $result = $service->getSetting('key');\n\n        $this->assertSame('value', $result);\n    }\n}\n",[722,3114,3115,3121,3125,3134,3143,3147,3158,3162,3176,3180,3188,3197,3201,3205,3220,3224,3233,3241,3245,3249,3264,3268,3294,3298,3311,3331,3335,3350,3354],{"__ignoreMap":720},[725,3116,3117,3119],{"class":727,"line":6},[725,3118,731],{"class":730},[725,3120,735],{"class":734},[725,3122,3123],{"class":727,"line":29},[725,3124,747],{"emptyLinePlaceholder":746},[725,3126,3127,3129,3132],{"class":727,"line":14},[725,3128,1059],{"class":730},[725,3130,3131],{"class":734}," Brain\\Monkey",[725,3133,804],{"class":755},[725,3135,3136,3138,3141],{"class":727,"line":18},[725,3137,1059],{"class":730},[725,3139,3140],{"class":734}," Brain\\Monkey\\Functions",[725,3142,804],{"class":755},[725,3144,3145],{"class":727,"line":70},[725,3146,747],{"emptyLinePlaceholder":746},[725,3148,3149,3151,3154,3156],{"class":727,"line":74},[725,3150,1348],{"class":730},[725,3152,3153],{"class":843}," MyTest",[725,3155,1106],{"class":730},[725,3157,1356],{"class":843},[725,3159,3160],{"class":727,"line":78},[725,3161,1114],{"class":755},[725,3163,3164,3166,3168,3170,3172,3174],{"class":727,"line":82},[725,3165,1119],{"class":730},[725,3167,1146],{"class":730},[725,3169,1149],{"class":843},[725,3171,1152],{"class":755},[725,3173,868],{"class":730},[725,3175,1157],{"class":730},[725,3177,3178],{"class":727,"line":86},[725,3179,1162],{"class":755},[725,3181,3182,3184,3186],{"class":727,"line":90},[725,3183,1167],{"class":730},[725,3185,1170],{"class":843},[725,3187,1173],{"class":755},[725,3189,3190,3193,3195],{"class":727,"line":877},[725,3191,3192],{"class":734},"        Monkey\\",[725,3194,1170],{"class":843},[725,3196,1173],{"class":755},[725,3198,3199],{"class":727,"line":886},[725,3200,889],{"class":755},[725,3202,3203],{"class":727,"line":892},[725,3204,747],{"emptyLinePlaceholder":746},[725,3206,3207,3209,3211,3214,3216,3218],{"class":727,"line":898},[725,3208,1119],{"class":730},[725,3210,1146],{"class":730},[725,3212,3213],{"class":843}," tearDown",[725,3215,1152],{"class":755},[725,3217,868],{"class":730},[725,3219,1157],{"class":730},[725,3221,3222],{"class":727,"line":903},[725,3223,1162],{"class":755},[725,3225,3226,3228,3231],{"class":727,"line":921},[725,3227,3192],{"class":734},[725,3229,3230],{"class":843},"tearDown",[725,3232,1173],{"class":755},[725,3234,3235,3237,3239],{"class":727,"line":942},[725,3236,1167],{"class":730},[725,3238,3230],{"class":843},[725,3240,1173],{"class":755},[725,3242,3243],{"class":727,"line":963},[725,3244,889],{"class":755},[725,3246,3247],{"class":727,"line":968},[725,3248,747],{"emptyLinePlaceholder":746},[725,3250,3251,3253,3255,3258,3260,3262],{"class":727,"line":973},[725,3252,1489],{"class":730},[725,3254,1146],{"class":730},[725,3256,3257],{"class":843}," testUsesWordPressFunction",[725,3259,1152],{"class":755},[725,3261,868],{"class":730},[725,3263,1157],{"class":730},[725,3265,3266],{"class":727,"line":978},[725,3267,1162],{"class":755},[725,3269,3270,3273,3276,3278,3281,3283,3285,3288,3290,3292],{"class":727,"line":997},[725,3271,3272],{"class":734},"        Functions\\",[725,3274,3275],{"class":843},"when",[725,3277,756],{"class":755},[725,3279,3280],{"class":800},"'get_option'",[725,3282,865],{"class":755},[725,3284,1185],{"class":730},[725,3286,3287],{"class":843},"justReturn",[725,3289,756],{"class":755},[725,3291,2590],{"class":800},[725,3293,768],{"class":755},[725,3295,3296],{"class":727,"line":1014},[725,3297,747],{"emptyLinePlaceholder":746},[725,3299,3300,3302,3304,3306,3309],{"class":727,"line":1229},[725,3301,2824],{"class":755},[725,3303,762],{"class":730},[725,3305,1193],{"class":730},[725,3307,3308],{"class":734}," MyService",[725,3310,1173],{"class":755},[725,3312,3313,3315,3317,3320,3322,3325,3327,3329],{"class":727,"line":1235},[725,3314,1902],{"class":755},[725,3316,762],{"class":730},[725,3318,3319],{"class":755}," $service",[725,3321,1185],{"class":730},[725,3323,3324],{"class":843},"getSetting",[725,3326,756],{"class":755},[725,3328,2579],{"class":800},[725,3330,768],{"class":755},[725,3332,3333],{"class":727,"line":1241},[725,3334,747],{"emptyLinePlaceholder":746},[725,3336,3337,3339,3341,3343,3345,3347],{"class":727,"line":1246},[725,3338,1182],{"class":734},[725,3340,1185],{"class":730},[725,3342,1694],{"class":843},[725,3344,756],{"class":755},[725,3346,2590],{"class":800},[725,3348,3349],{"class":755},", $result);\n",[725,3351,3352],{"class":727,"line":1264},[725,3353,889],{"class":755},[725,3355,3356],{"class":727,"line":1269},[725,3357,895],{"class":755},[705,3359,3361],{"id":3360},"running-unit-tests","Running Unit Tests",[715,3363,3365],{"className":3091,"code":3364,"language":3093,"meta":720,"style":720},"# Run all unit tests\nvendor\u002Fbin\u002Fphpunit --testsuite=Unit\n\n# Run specific test file\nvendor\u002Fbin\u002Fphpunit tests\u002FUnit\u002FServices\u002FContactServiceTest.php\n\n# Run specific test method\nvendor\u002Fbin\u002Fphpunit --filter testCreateReturnsInsertId\n",[722,3366,3367,3372,3380,3384,3389,3396,3400,3405],{"__ignoreMap":720},[725,3368,3369],{"class":727,"line":6},[725,3370,3371],{"class":740},"# Run all unit tests\n",[725,3373,3374,3377],{"class":727,"line":29},[725,3375,3376],{"class":843},"vendor\u002Fbin\u002Fphpunit",[725,3378,3379],{"class":734}," --testsuite=Unit\n",[725,3381,3382],{"class":727,"line":14},[725,3383,747],{"emptyLinePlaceholder":746},[725,3385,3386],{"class":727,"line":18},[725,3387,3388],{"class":740},"# Run specific test file\n",[725,3390,3391,3393],{"class":727,"line":70},[725,3392,3376],{"class":843},[725,3394,3395],{"class":800}," tests\u002FUnit\u002FServices\u002FContactServiceTest.php\n",[725,3397,3398],{"class":727,"line":74},[725,3399,747],{"emptyLinePlaceholder":746},[725,3401,3402],{"class":727,"line":78},[725,3403,3404],{"class":740},"# Run specific test method\n",[725,3406,3407,3409,3412],{"class":727,"line":82},[725,3408,3376],{"class":843},[725,3410,3411],{"class":734}," --filter",[725,3413,3414],{"class":800}," testCreateReturnsInsertId\n",[705,3416,3418],{"id":3417},"related","Related",[3420,3421,3422,3429],"ul",{},[3423,3424,3425],"li",{},[3426,3427,675],"a",{"href":3428},"\u002Fdocs\u002Flatest\u002Fpackages\u002Ftesting\u002Foverview",[3423,3430,3431],{},[3426,3432,678],{"href":3433},"integration-tests",[3435,3436,3437],"style",{},"html pre.shiki code .szBVR, html code.shiki .szBVR{--shiki-default:#D73A49;--shiki-dark:#F97583}html pre.shiki code .sj4cs, html code.shiki .sj4cs{--shiki-default:#005CC5;--shiki-dark:#79B8FF}html pre.shiki code .sJ8bj, html code.shiki .sJ8bj{--shiki-default:#6A737D;--shiki-dark:#6A737D}html pre.shiki code .sVt8B, html code.shiki .sVt8B{--shiki-default:#24292E;--shiki-dark:#E1E4E8}html pre.shiki code .sZZnC, html code.shiki .sZZnC{--shiki-default:#032F62;--shiki-dark:#9ECBFF}html pre.shiki code .sScJk, html code.shiki .sScJk{--shiki-default:#6F42C1;--shiki-dark:#B392F0}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}",{"title":720,"searchDepth":29,"depth":29,"links":3439},[3440,3444,3449,3453,3454],{"id":707,"depth":29,"text":708,"children":3441},[3442,3443],{"id":712,"depth":14,"text":713},{"id":1019,"depth":14,"text":1020},{"id":1274,"depth":29,"text":1275,"children":3445},[3446,3447,3448],{"id":1278,"depth":14,"text":1279},{"id":1751,"depth":14,"text":1752},{"id":2459,"depth":14,"text":2460},{"id":2874,"depth":29,"text":2875,"children":3450},[3451,3452],{"id":2878,"depth":14,"text":2879},{"id":3084,"depth":14,"text":3085},{"id":3360,"depth":29,"text":3361},{"id":3417,"depth":29,"text":3418},"md",{},{"title":681,"description":703},"docs\u002Flatest\u002Ftesting\u002Funit-tests","AYkZGBgvlhNRc-Lhr1CDe72eK4PjRY_CtFUP5oH5u10",[3461,3462,3463,3464,3465,3466,3467,3468,3469,3470,3471,3472,3474,3475,3476,3477,3478,3479,3480,3481,3482,3483,3485,3486,3487,3488,3489,3490,3491,3492,3493,3494,3496,3497,3498,3499,3500,3501,3502,3503,3504,3505,3507,3508,3509,3510,3511,3512,3513,3514,3515,3516,3518,3519,3520,3521,3522,3523,3524,3525,3526,3527,3529,3530,3531,3532,3533,3534,3535,3536,3537,3538,3540,3541,3542,3543,3544,3545,3546,3547,3548,3549,3551,3552,3553,3554,3555,3556,3557,3558,3559,3560,3562,3563,3564,3565,3566,3567,3568,3569,3570,3571,3573,3574,3575,3576,3577,3578,3579,3580,3581,3582,3584,3585,3586,3587,3588,3589,3590,3591,3592,3593,3595,3596,3597,3598,3599,3600,3601,3602,3603,3604,3606,3607,3608,3609,3610,3611,3612,3613,3614,3615,3617,3618,3619,3620,3621,3622,3623,3624,3626,3627,3628,3629,3630,3631,3632,3633,3634,3635,3637,3638,3639,3640,3641,3642,3643,3644,3645,3646,3648,3649,3650,3651,3652,3653,3654,3655,3656,3657,3659,3660,3661,3662,3663,3664,3665,3666,3667,3668,3670,3671,3672,3673,3674,3675,3676,3677,3678,3679,3681,3682,3683,3684,3685,3686,3687,3688,3689,3690,3691,3692,3694,3695,3696,3697,3698,3699,3700,3701,3702,3703,3704,3705,3706,3708,3709,3710,3711,3712,3713,3714,3715,3716,3717,3719,3720,3721,3722,3723,3724,3725,3726,3727,3729,3730,3731,3732,3733,3734,3735,3736,3737,3738,3740,3741,3742,3743,3744,3745,3746,3747,3748,3749,3751,3752,3753,3754,3755,3756,3757,3758,3759,3760,3761,3762,3763,3764,3765,3766,3767,3772,3776],{"path":10,"title":5,"sectionKey":7,"sectionOrder":6,"itemOrder":6,"packageName":720,"depth":6},{"path":12,"title":13,"sectionKey":7,"sectionOrder":6,"itemOrder":14,"packageName":720,"depth":29},{"path":16,"title":17,"sectionKey":7,"sectionOrder":6,"itemOrder":18,"packageName":720,"depth":29},{"path":20,"title":21,"sectionKey":7,"sectionOrder":6,"itemOrder":22,"packageName":720,"depth":29},{"path":24,"title":25,"sectionKey":7,"sectionOrder":6,"itemOrder":22,"packageName":720,"depth":29},{"path":33,"title":34,"sectionKey":30,"sectionOrder":29,"itemOrder":22,"packageName":720,"depth":29},{"path":36,"title":37,"sectionKey":30,"sectionOrder":29,"itemOrder":22,"packageName":720,"depth":29},{"path":39,"title":40,"sectionKey":30,"sectionOrder":29,"itemOrder":22,"packageName":720,"depth":29},{"path":42,"title":43,"sectionKey":30,"sectionOrder":29,"itemOrder":22,"packageName":720,"depth":29},{"path":45,"title":46,"sectionKey":30,"sectionOrder":29,"itemOrder":22,"packageName":720,"depth":29},{"path":48,"title":49,"sectionKey":30,"sectionOrder":29,"itemOrder":22,"packageName":720,"depth":29},{"path":58,"title":59,"sectionKey":53,"sectionOrder":14,"itemOrder":6,"packageName":3473,"depth":29},"wpzylos-assets",{"path":61,"title":62,"sectionKey":53,"sectionOrder":14,"itemOrder":29,"packageName":3473,"depth":14},{"path":64,"title":13,"sectionKey":53,"sectionOrder":14,"itemOrder":14,"packageName":3473,"depth":14},{"path":66,"title":17,"sectionKey":53,"sectionOrder":14,"itemOrder":18,"packageName":3473,"depth":14},{"path":68,"title":69,"sectionKey":53,"sectionOrder":14,"itemOrder":70,"packageName":3473,"depth":14},{"path":72,"title":73,"sectionKey":53,"sectionOrder":14,"itemOrder":74,"packageName":3473,"depth":14},{"path":76,"title":77,"sectionKey":53,"sectionOrder":14,"itemOrder":78,"packageName":3473,"depth":14},{"path":80,"title":81,"sectionKey":53,"sectionOrder":14,"itemOrder":82,"packageName":3473,"depth":14},{"path":84,"title":85,"sectionKey":53,"sectionOrder":14,"itemOrder":86,"packageName":3473,"depth":14},{"path":88,"title":89,"sectionKey":53,"sectionOrder":14,"itemOrder":90,"packageName":3473,"depth":14},{"path":93,"title":94,"sectionKey":53,"sectionOrder":14,"itemOrder":6,"packageName":3484,"depth":29},"wpzylos-cli-core",{"path":96,"title":62,"sectionKey":53,"sectionOrder":14,"itemOrder":29,"packageName":3484,"depth":14},{"path":98,"title":13,"sectionKey":53,"sectionOrder":14,"itemOrder":14,"packageName":3484,"depth":14},{"path":100,"title":17,"sectionKey":53,"sectionOrder":14,"itemOrder":18,"packageName":3484,"depth":14},{"path":102,"title":69,"sectionKey":53,"sectionOrder":14,"itemOrder":70,"packageName":3484,"depth":14},{"path":104,"title":73,"sectionKey":53,"sectionOrder":14,"itemOrder":74,"packageName":3484,"depth":14},{"path":106,"title":77,"sectionKey":53,"sectionOrder":14,"itemOrder":78,"packageName":3484,"depth":14},{"path":108,"title":81,"sectionKey":53,"sectionOrder":14,"itemOrder":82,"packageName":3484,"depth":14},{"path":110,"title":111,"sectionKey":53,"sectionOrder":14,"itemOrder":86,"packageName":3484,"depth":14},{"path":113,"title":89,"sectionKey":53,"sectionOrder":14,"itemOrder":90,"packageName":3484,"depth":14},{"path":116,"title":117,"sectionKey":53,"sectionOrder":14,"itemOrder":6,"packageName":3495,"depth":29},"wpzylos-cli-devtool",{"path":119,"title":62,"sectionKey":53,"sectionOrder":14,"itemOrder":29,"packageName":3495,"depth":14},{"path":121,"title":13,"sectionKey":53,"sectionOrder":14,"itemOrder":14,"packageName":3495,"depth":14},{"path":123,"title":17,"sectionKey":53,"sectionOrder":14,"itemOrder":18,"packageName":3495,"depth":14},{"path":125,"title":69,"sectionKey":53,"sectionOrder":14,"itemOrder":70,"packageName":3495,"depth":14},{"path":127,"title":73,"sectionKey":53,"sectionOrder":14,"itemOrder":74,"packageName":3495,"depth":14},{"path":129,"title":77,"sectionKey":53,"sectionOrder":14,"itemOrder":78,"packageName":3495,"depth":14},{"path":131,"title":81,"sectionKey":53,"sectionOrder":14,"itemOrder":82,"packageName":3495,"depth":14},{"path":133,"title":111,"sectionKey":53,"sectionOrder":14,"itemOrder":86,"packageName":3495,"depth":14},{"path":135,"title":89,"sectionKey":53,"sectionOrder":14,"itemOrder":90,"packageName":3495,"depth":14},{"path":138,"title":139,"sectionKey":53,"sectionOrder":14,"itemOrder":6,"packageName":3506,"depth":29},"wpzylos-config",{"path":141,"title":62,"sectionKey":53,"sectionOrder":14,"itemOrder":29,"packageName":3506,"depth":14},{"path":143,"title":13,"sectionKey":53,"sectionOrder":14,"itemOrder":14,"packageName":3506,"depth":14},{"path":145,"title":17,"sectionKey":53,"sectionOrder":14,"itemOrder":18,"packageName":3506,"depth":14},{"path":147,"title":69,"sectionKey":53,"sectionOrder":14,"itemOrder":70,"packageName":3506,"depth":14},{"path":149,"title":73,"sectionKey":53,"sectionOrder":14,"itemOrder":74,"packageName":3506,"depth":14},{"path":151,"title":77,"sectionKey":53,"sectionOrder":14,"itemOrder":78,"packageName":3506,"depth":14},{"path":153,"title":81,"sectionKey":53,"sectionOrder":14,"itemOrder":82,"packageName":3506,"depth":14},{"path":155,"title":111,"sectionKey":53,"sectionOrder":14,"itemOrder":86,"packageName":3506,"depth":14},{"path":157,"title":89,"sectionKey":53,"sectionOrder":14,"itemOrder":90,"packageName":3506,"depth":14},{"path":160,"title":161,"sectionKey":53,"sectionOrder":14,"itemOrder":6,"packageName":3517,"depth":29},"wpzylos-container",{"path":163,"title":62,"sectionKey":53,"sectionOrder":14,"itemOrder":29,"packageName":3517,"depth":14},{"path":165,"title":13,"sectionKey":53,"sectionOrder":14,"itemOrder":14,"packageName":3517,"depth":14},{"path":167,"title":17,"sectionKey":53,"sectionOrder":14,"itemOrder":18,"packageName":3517,"depth":14},{"path":169,"title":69,"sectionKey":53,"sectionOrder":14,"itemOrder":70,"packageName":3517,"depth":14},{"path":171,"title":73,"sectionKey":53,"sectionOrder":14,"itemOrder":74,"packageName":3517,"depth":14},{"path":173,"title":77,"sectionKey":53,"sectionOrder":14,"itemOrder":78,"packageName":3517,"depth":14},{"path":175,"title":81,"sectionKey":53,"sectionOrder":14,"itemOrder":82,"packageName":3517,"depth":14},{"path":177,"title":111,"sectionKey":53,"sectionOrder":14,"itemOrder":86,"packageName":3517,"depth":14},{"path":179,"title":89,"sectionKey":53,"sectionOrder":14,"itemOrder":90,"packageName":3517,"depth":14},{"path":182,"title":183,"sectionKey":53,"sectionOrder":14,"itemOrder":6,"packageName":3528,"depth":29},"wpzylos-core",{"path":185,"title":62,"sectionKey":53,"sectionOrder":14,"itemOrder":29,"packageName":3528,"depth":14},{"path":187,"title":13,"sectionKey":53,"sectionOrder":14,"itemOrder":14,"packageName":3528,"depth":14},{"path":189,"title":17,"sectionKey":53,"sectionOrder":14,"itemOrder":18,"packageName":3528,"depth":14},{"path":191,"title":69,"sectionKey":53,"sectionOrder":14,"itemOrder":70,"packageName":3528,"depth":14},{"path":193,"title":73,"sectionKey":53,"sectionOrder":14,"itemOrder":74,"packageName":3528,"depth":14},{"path":195,"title":77,"sectionKey":53,"sectionOrder":14,"itemOrder":78,"packageName":3528,"depth":14},{"path":197,"title":81,"sectionKey":53,"sectionOrder":14,"itemOrder":82,"packageName":3528,"depth":14},{"path":199,"title":111,"sectionKey":53,"sectionOrder":14,"itemOrder":86,"packageName":3528,"depth":14},{"path":201,"title":89,"sectionKey":53,"sectionOrder":14,"itemOrder":90,"packageName":3528,"depth":14},{"path":204,"title":205,"sectionKey":53,"sectionOrder":14,"itemOrder":6,"packageName":3539,"depth":29},"wpzylos-database",{"path":207,"title":62,"sectionKey":53,"sectionOrder":14,"itemOrder":29,"packageName":3539,"depth":14},{"path":209,"title":13,"sectionKey":53,"sectionOrder":14,"itemOrder":14,"packageName":3539,"depth":14},{"path":211,"title":17,"sectionKey":53,"sectionOrder":14,"itemOrder":18,"packageName":3539,"depth":14},{"path":213,"title":69,"sectionKey":53,"sectionOrder":14,"itemOrder":70,"packageName":3539,"depth":14},{"path":215,"title":73,"sectionKey":53,"sectionOrder":14,"itemOrder":74,"packageName":3539,"depth":14},{"path":217,"title":77,"sectionKey":53,"sectionOrder":14,"itemOrder":78,"packageName":3539,"depth":14},{"path":219,"title":81,"sectionKey":53,"sectionOrder":14,"itemOrder":82,"packageName":3539,"depth":14},{"path":221,"title":111,"sectionKey":53,"sectionOrder":14,"itemOrder":86,"packageName":3539,"depth":14},{"path":223,"title":89,"sectionKey":53,"sectionOrder":14,"itemOrder":90,"packageName":3539,"depth":14},{"path":226,"title":227,"sectionKey":53,"sectionOrder":14,"itemOrder":6,"packageName":3550,"depth":29},"wpzylos-events",{"path":229,"title":62,"sectionKey":53,"sectionOrder":14,"itemOrder":29,"packageName":3550,"depth":14},{"path":231,"title":13,"sectionKey":53,"sectionOrder":14,"itemOrder":14,"packageName":3550,"depth":14},{"path":233,"title":17,"sectionKey":53,"sectionOrder":14,"itemOrder":18,"packageName":3550,"depth":14},{"path":235,"title":69,"sectionKey":53,"sectionOrder":14,"itemOrder":70,"packageName":3550,"depth":14},{"path":237,"title":73,"sectionKey":53,"sectionOrder":14,"itemOrder":74,"packageName":3550,"depth":14},{"path":239,"title":77,"sectionKey":53,"sectionOrder":14,"itemOrder":78,"packageName":3550,"depth":14},{"path":241,"title":81,"sectionKey":53,"sectionOrder":14,"itemOrder":82,"packageName":3550,"depth":14},{"path":243,"title":85,"sectionKey":53,"sectionOrder":14,"itemOrder":86,"packageName":3550,"depth":14},{"path":245,"title":89,"sectionKey":53,"sectionOrder":14,"itemOrder":90,"packageName":3550,"depth":14},{"path":248,"title":249,"sectionKey":53,"sectionOrder":14,"itemOrder":6,"packageName":3561,"depth":29},"wpzylos-hooks",{"path":251,"title":62,"sectionKey":53,"sectionOrder":14,"itemOrder":29,"packageName":3561,"depth":14},{"path":253,"title":13,"sectionKey":53,"sectionOrder":14,"itemOrder":14,"packageName":3561,"depth":14},{"path":255,"title":17,"sectionKey":53,"sectionOrder":14,"itemOrder":18,"packageName":3561,"depth":14},{"path":257,"title":258,"sectionKey":53,"sectionOrder":14,"itemOrder":70,"packageName":3561,"depth":14},{"path":260,"title":73,"sectionKey":53,"sectionOrder":14,"itemOrder":74,"packageName":3561,"depth":14},{"path":262,"title":77,"sectionKey":53,"sectionOrder":14,"itemOrder":78,"packageName":3561,"depth":14},{"path":264,"title":81,"sectionKey":53,"sectionOrder":14,"itemOrder":82,"packageName":3561,"depth":14},{"path":266,"title":111,"sectionKey":53,"sectionOrder":14,"itemOrder":86,"packageName":3561,"depth":14},{"path":268,"title":89,"sectionKey":53,"sectionOrder":14,"itemOrder":90,"packageName":3561,"depth":14},{"path":271,"title":272,"sectionKey":53,"sectionOrder":14,"itemOrder":6,"packageName":3572,"depth":29},"wpzylos-http",{"path":274,"title":62,"sectionKey":53,"sectionOrder":14,"itemOrder":29,"packageName":3572,"depth":14},{"path":276,"title":13,"sectionKey":53,"sectionOrder":14,"itemOrder":14,"packageName":3572,"depth":14},{"path":278,"title":17,"sectionKey":53,"sectionOrder":14,"itemOrder":18,"packageName":3572,"depth":14},{"path":280,"title":258,"sectionKey":53,"sectionOrder":14,"itemOrder":70,"packageName":3572,"depth":14},{"path":282,"title":73,"sectionKey":53,"sectionOrder":14,"itemOrder":74,"packageName":3572,"depth":14},{"path":284,"title":77,"sectionKey":53,"sectionOrder":14,"itemOrder":78,"packageName":3572,"depth":14},{"path":286,"title":81,"sectionKey":53,"sectionOrder":14,"itemOrder":82,"packageName":3572,"depth":14},{"path":288,"title":111,"sectionKey":53,"sectionOrder":14,"itemOrder":86,"packageName":3572,"depth":14},{"path":290,"title":89,"sectionKey":53,"sectionOrder":14,"itemOrder":90,"packageName":3572,"depth":14},{"path":293,"title":294,"sectionKey":53,"sectionOrder":14,"itemOrder":6,"packageName":3583,"depth":29},"wpzylos-i18n",{"path":296,"title":62,"sectionKey":53,"sectionOrder":14,"itemOrder":29,"packageName":3583,"depth":14},{"path":298,"title":13,"sectionKey":53,"sectionOrder":14,"itemOrder":14,"packageName":3583,"depth":14},{"path":300,"title":17,"sectionKey":53,"sectionOrder":14,"itemOrder":18,"packageName":3583,"depth":14},{"path":302,"title":69,"sectionKey":53,"sectionOrder":14,"itemOrder":70,"packageName":3583,"depth":14},{"path":304,"title":73,"sectionKey":53,"sectionOrder":14,"itemOrder":74,"packageName":3583,"depth":14},{"path":306,"title":77,"sectionKey":53,"sectionOrder":14,"itemOrder":78,"packageName":3583,"depth":14},{"path":308,"title":81,"sectionKey":53,"sectionOrder":14,"itemOrder":82,"packageName":3583,"depth":14},{"path":310,"title":111,"sectionKey":53,"sectionOrder":14,"itemOrder":86,"packageName":3583,"depth":14},{"path":312,"title":89,"sectionKey":53,"sectionOrder":14,"itemOrder":90,"packageName":3583,"depth":14},{"path":315,"title":316,"sectionKey":53,"sectionOrder":14,"itemOrder":6,"packageName":3594,"depth":29},"wpzylos-logger",{"path":318,"title":62,"sectionKey":53,"sectionOrder":14,"itemOrder":29,"packageName":3594,"depth":14},{"path":320,"title":13,"sectionKey":53,"sectionOrder":14,"itemOrder":14,"packageName":3594,"depth":14},{"path":322,"title":17,"sectionKey":53,"sectionOrder":14,"itemOrder":18,"packageName":3594,"depth":14},{"path":324,"title":69,"sectionKey":53,"sectionOrder":14,"itemOrder":70,"packageName":3594,"depth":14},{"path":326,"title":73,"sectionKey":53,"sectionOrder":14,"itemOrder":74,"packageName":3594,"depth":14},{"path":328,"title":77,"sectionKey":53,"sectionOrder":14,"itemOrder":78,"packageName":3594,"depth":14},{"path":330,"title":81,"sectionKey":53,"sectionOrder":14,"itemOrder":82,"packageName":3594,"depth":14},{"path":332,"title":111,"sectionKey":53,"sectionOrder":14,"itemOrder":86,"packageName":3594,"depth":14},{"path":334,"title":89,"sectionKey":53,"sectionOrder":14,"itemOrder":90,"packageName":3594,"depth":14},{"path":337,"title":338,"sectionKey":53,"sectionOrder":14,"itemOrder":6,"packageName":3605,"depth":29},"wpzylos-mail",{"path":340,"title":62,"sectionKey":53,"sectionOrder":14,"itemOrder":29,"packageName":3605,"depth":14},{"path":342,"title":13,"sectionKey":53,"sectionOrder":14,"itemOrder":14,"packageName":3605,"depth":14},{"path":344,"title":17,"sectionKey":53,"sectionOrder":14,"itemOrder":18,"packageName":3605,"depth":14},{"path":346,"title":258,"sectionKey":53,"sectionOrder":14,"itemOrder":70,"packageName":3605,"depth":14},{"path":348,"title":73,"sectionKey":53,"sectionOrder":14,"itemOrder":74,"packageName":3605,"depth":14},{"path":350,"title":77,"sectionKey":53,"sectionOrder":14,"itemOrder":78,"packageName":3605,"depth":14},{"path":352,"title":81,"sectionKey":53,"sectionOrder":14,"itemOrder":82,"packageName":3605,"depth":14},{"path":354,"title":85,"sectionKey":53,"sectionOrder":14,"itemOrder":86,"packageName":3605,"depth":14},{"path":356,"title":89,"sectionKey":53,"sectionOrder":14,"itemOrder":90,"packageName":3605,"depth":14},{"path":359,"title":360,"sectionKey":53,"sectionOrder":14,"itemOrder":6,"packageName":3616,"depth":29},"wpzylos-mcp",{"path":362,"title":62,"sectionKey":53,"sectionOrder":14,"itemOrder":29,"packageName":3616,"depth":14},{"path":364,"title":13,"sectionKey":53,"sectionOrder":14,"itemOrder":14,"packageName":3616,"depth":14},{"path":366,"title":258,"sectionKey":53,"sectionOrder":14,"itemOrder":70,"packageName":3616,"depth":14},{"path":368,"title":73,"sectionKey":53,"sectionOrder":14,"itemOrder":74,"packageName":3616,"depth":14},{"path":370,"title":77,"sectionKey":53,"sectionOrder":14,"itemOrder":78,"packageName":3616,"depth":14},{"path":372,"title":89,"sectionKey":53,"sectionOrder":14,"itemOrder":90,"packageName":3616,"depth":14},{"path":374,"title":375,"sectionKey":53,"sectionOrder":14,"itemOrder":22,"packageName":3616,"depth":14},{"path":378,"title":379,"sectionKey":53,"sectionOrder":14,"itemOrder":6,"packageName":3625,"depth":29},"wpzylos-migrations",{"path":381,"title":62,"sectionKey":53,"sectionOrder":14,"itemOrder":29,"packageName":3625,"depth":14},{"path":383,"title":13,"sectionKey":53,"sectionOrder":14,"itemOrder":14,"packageName":3625,"depth":14},{"path":385,"title":17,"sectionKey":53,"sectionOrder":14,"itemOrder":18,"packageName":3625,"depth":14},{"path":387,"title":69,"sectionKey":53,"sectionOrder":14,"itemOrder":70,"packageName":3625,"depth":14},{"path":389,"title":73,"sectionKey":53,"sectionOrder":14,"itemOrder":74,"packageName":3625,"depth":14},{"path":391,"title":77,"sectionKey":53,"sectionOrder":14,"itemOrder":78,"packageName":3625,"depth":14},{"path":393,"title":81,"sectionKey":53,"sectionOrder":14,"itemOrder":82,"packageName":3625,"depth":14},{"path":395,"title":111,"sectionKey":53,"sectionOrder":14,"itemOrder":86,"packageName":3625,"depth":14},{"path":397,"title":89,"sectionKey":53,"sectionOrder":14,"itemOrder":90,"packageName":3625,"depth":14},{"path":400,"title":401,"sectionKey":53,"sectionOrder":14,"itemOrder":6,"packageName":3636,"depth":29},"wpzylos-model",{"path":403,"title":62,"sectionKey":53,"sectionOrder":14,"itemOrder":29,"packageName":3636,"depth":14},{"path":405,"title":13,"sectionKey":53,"sectionOrder":14,"itemOrder":14,"packageName":3636,"depth":14},{"path":407,"title":17,"sectionKey":53,"sectionOrder":14,"itemOrder":18,"packageName":3636,"depth":14},{"path":409,"title":69,"sectionKey":53,"sectionOrder":14,"itemOrder":70,"packageName":3636,"depth":14},{"path":411,"title":73,"sectionKey":53,"sectionOrder":14,"itemOrder":74,"packageName":3636,"depth":14},{"path":413,"title":77,"sectionKey":53,"sectionOrder":14,"itemOrder":78,"packageName":3636,"depth":14},{"path":415,"title":81,"sectionKey":53,"sectionOrder":14,"itemOrder":82,"packageName":3636,"depth":14},{"path":417,"title":85,"sectionKey":53,"sectionOrder":14,"itemOrder":86,"packageName":3636,"depth":14},{"path":419,"title":89,"sectionKey":53,"sectionOrder":14,"itemOrder":90,"packageName":3636,"depth":14},{"path":422,"title":423,"sectionKey":53,"sectionOrder":14,"itemOrder":6,"packageName":3647,"depth":29},"wpzylos-notification",{"path":425,"title":62,"sectionKey":53,"sectionOrder":14,"itemOrder":29,"packageName":3647,"depth":14},{"path":427,"title":13,"sectionKey":53,"sectionOrder":14,"itemOrder":14,"packageName":3647,"depth":14},{"path":429,"title":17,"sectionKey":53,"sectionOrder":14,"itemOrder":18,"packageName":3647,"depth":14},{"path":431,"title":69,"sectionKey":53,"sectionOrder":14,"itemOrder":70,"packageName":3647,"depth":14},{"path":433,"title":73,"sectionKey":53,"sectionOrder":14,"itemOrder":74,"packageName":3647,"depth":14},{"path":435,"title":77,"sectionKey":53,"sectionOrder":14,"itemOrder":78,"packageName":3647,"depth":14},{"path":437,"title":81,"sectionKey":53,"sectionOrder":14,"itemOrder":82,"packageName":3647,"depth":14},{"path":439,"title":85,"sectionKey":53,"sectionOrder":14,"itemOrder":86,"packageName":3647,"depth":14},{"path":441,"title":89,"sectionKey":53,"sectionOrder":14,"itemOrder":90,"packageName":3647,"depth":14},{"path":444,"title":445,"sectionKey":53,"sectionOrder":14,"itemOrder":6,"packageName":3658,"depth":29},"wpzylos-queue",{"path":447,"title":62,"sectionKey":53,"sectionOrder":14,"itemOrder":29,"packageName":3658,"depth":14},{"path":449,"title":13,"sectionKey":53,"sectionOrder":14,"itemOrder":14,"packageName":3658,"depth":14},{"path":451,"title":17,"sectionKey":53,"sectionOrder":14,"itemOrder":18,"packageName":3658,"depth":14},{"path":453,"title":69,"sectionKey":53,"sectionOrder":14,"itemOrder":70,"packageName":3658,"depth":14},{"path":455,"title":73,"sectionKey":53,"sectionOrder":14,"itemOrder":74,"packageName":3658,"depth":14},{"path":457,"title":77,"sectionKey":53,"sectionOrder":14,"itemOrder":78,"packageName":3658,"depth":14},{"path":459,"title":81,"sectionKey":53,"sectionOrder":14,"itemOrder":82,"packageName":3658,"depth":14},{"path":461,"title":85,"sectionKey":53,"sectionOrder":14,"itemOrder":86,"packageName":3658,"depth":14},{"path":463,"title":89,"sectionKey":53,"sectionOrder":14,"itemOrder":90,"packageName":3658,"depth":14},{"path":466,"title":467,"sectionKey":53,"sectionOrder":14,"itemOrder":6,"packageName":3669,"depth":29},"wpzylos-requirements",{"path":469,"title":62,"sectionKey":53,"sectionOrder":14,"itemOrder":29,"packageName":3669,"depth":14},{"path":471,"title":13,"sectionKey":53,"sectionOrder":14,"itemOrder":14,"packageName":3669,"depth":14},{"path":473,"title":17,"sectionKey":53,"sectionOrder":14,"itemOrder":18,"packageName":3669,"depth":14},{"path":475,"title":69,"sectionKey":53,"sectionOrder":14,"itemOrder":70,"packageName":3669,"depth":14},{"path":477,"title":73,"sectionKey":53,"sectionOrder":14,"itemOrder":74,"packageName":3669,"depth":14},{"path":479,"title":77,"sectionKey":53,"sectionOrder":14,"itemOrder":78,"packageName":3669,"depth":14},{"path":481,"title":81,"sectionKey":53,"sectionOrder":14,"itemOrder":82,"packageName":3669,"depth":14},{"path":483,"title":85,"sectionKey":53,"sectionOrder":14,"itemOrder":86,"packageName":3669,"depth":14},{"path":485,"title":89,"sectionKey":53,"sectionOrder":14,"itemOrder":90,"packageName":3669,"depth":14},{"path":488,"title":489,"sectionKey":53,"sectionOrder":14,"itemOrder":6,"packageName":3680,"depth":29},"wpzylos-routing",{"path":491,"title":62,"sectionKey":53,"sectionOrder":14,"itemOrder":29,"packageName":3680,"depth":14},{"path":493,"title":13,"sectionKey":53,"sectionOrder":14,"itemOrder":14,"packageName":3680,"depth":14},{"path":495,"title":17,"sectionKey":53,"sectionOrder":14,"itemOrder":18,"packageName":3680,"depth":14},{"path":497,"title":69,"sectionKey":53,"sectionOrder":14,"itemOrder":70,"packageName":3680,"depth":14},{"path":499,"title":73,"sectionKey":53,"sectionOrder":14,"itemOrder":74,"packageName":3680,"depth":14},{"path":501,"title":77,"sectionKey":53,"sectionOrder":14,"itemOrder":78,"packageName":3680,"depth":14},{"path":503,"title":81,"sectionKey":53,"sectionOrder":14,"itemOrder":82,"packageName":3680,"depth":14},{"path":505,"title":85,"sectionKey":53,"sectionOrder":14,"itemOrder":86,"packageName":3680,"depth":14},{"path":507,"title":89,"sectionKey":53,"sectionOrder":14,"itemOrder":90,"packageName":3680,"depth":14},{"path":509,"title":510,"sectionKey":53,"sectionOrder":14,"itemOrder":22,"packageName":3680,"depth":14},{"path":512,"title":513,"sectionKey":53,"sectionOrder":14,"itemOrder":22,"packageName":3680,"depth":14},{"path":516,"title":517,"sectionKey":53,"sectionOrder":14,"itemOrder":6,"packageName":3693,"depth":29},"wpzylos-scaffold",{"path":519,"title":62,"sectionKey":53,"sectionOrder":14,"itemOrder":29,"packageName":3693,"depth":14},{"path":521,"title":13,"sectionKey":53,"sectionOrder":14,"itemOrder":14,"packageName":3693,"depth":14},{"path":523,"title":17,"sectionKey":53,"sectionOrder":14,"itemOrder":18,"packageName":3693,"depth":14},{"path":525,"title":69,"sectionKey":53,"sectionOrder":14,"itemOrder":70,"packageName":3693,"depth":14},{"path":527,"title":73,"sectionKey":53,"sectionOrder":14,"itemOrder":74,"packageName":3693,"depth":14},{"path":529,"title":77,"sectionKey":53,"sectionOrder":14,"itemOrder":78,"packageName":3693,"depth":14},{"path":531,"title":81,"sectionKey":53,"sectionOrder":14,"itemOrder":82,"packageName":3693,"depth":14},{"path":533,"title":534,"sectionKey":53,"sectionOrder":14,"itemOrder":82,"packageName":3693,"depth":14},{"path":536,"title":111,"sectionKey":53,"sectionOrder":14,"itemOrder":86,"packageName":3693,"depth":14},{"path":538,"title":89,"sectionKey":53,"sectionOrder":14,"itemOrder":90,"packageName":3693,"depth":14},{"path":540,"title":541,"sectionKey":53,"sectionOrder":14,"itemOrder":22,"packageName":3693,"depth":14},{"path":543,"title":544,"sectionKey":53,"sectionOrder":14,"itemOrder":22,"packageName":3693,"depth":14},{"path":547,"title":548,"sectionKey":53,"sectionOrder":14,"itemOrder":6,"packageName":3707,"depth":29},"wpzylos-scheduler",{"path":550,"title":62,"sectionKey":53,"sectionOrder":14,"itemOrder":29,"packageName":3707,"depth":14},{"path":552,"title":13,"sectionKey":53,"sectionOrder":14,"itemOrder":14,"packageName":3707,"depth":14},{"path":554,"title":17,"sectionKey":53,"sectionOrder":14,"itemOrder":18,"packageName":3707,"depth":14},{"path":556,"title":69,"sectionKey":53,"sectionOrder":14,"itemOrder":70,"packageName":3707,"depth":14},{"path":558,"title":73,"sectionKey":53,"sectionOrder":14,"itemOrder":74,"packageName":3707,"depth":14},{"path":560,"title":77,"sectionKey":53,"sectionOrder":14,"itemOrder":78,"packageName":3707,"depth":14},{"path":562,"title":81,"sectionKey":53,"sectionOrder":14,"itemOrder":82,"packageName":3707,"depth":14},{"path":564,"title":85,"sectionKey":53,"sectionOrder":14,"itemOrder":86,"packageName":3707,"depth":14},{"path":566,"title":89,"sectionKey":53,"sectionOrder":14,"itemOrder":90,"packageName":3707,"depth":14},{"path":569,"title":570,"sectionKey":53,"sectionOrder":14,"itemOrder":6,"packageName":3718,"depth":29},"wpzylos-security",{"path":572,"title":62,"sectionKey":53,"sectionOrder":14,"itemOrder":29,"packageName":3718,"depth":14},{"path":574,"title":13,"sectionKey":53,"sectionOrder":14,"itemOrder":14,"packageName":3718,"depth":14},{"path":576,"title":17,"sectionKey":53,"sectionOrder":14,"itemOrder":18,"packageName":3718,"depth":14},{"path":578,"title":258,"sectionKey":53,"sectionOrder":14,"itemOrder":70,"packageName":3718,"depth":14},{"path":580,"title":73,"sectionKey":53,"sectionOrder":14,"itemOrder":74,"packageName":3718,"depth":14},{"path":582,"title":77,"sectionKey":53,"sectionOrder":14,"itemOrder":78,"packageName":3718,"depth":14},{"path":584,"title":81,"sectionKey":53,"sectionOrder":14,"itemOrder":82,"packageName":3718,"depth":14},{"path":586,"title":89,"sectionKey":53,"sectionOrder":14,"itemOrder":90,"packageName":3718,"depth":14},{"path":589,"title":590,"sectionKey":53,"sectionOrder":14,"itemOrder":6,"packageName":3728,"depth":29},"wpzylos-validation",{"path":592,"title":62,"sectionKey":53,"sectionOrder":14,"itemOrder":29,"packageName":3728,"depth":14},{"path":594,"title":13,"sectionKey":53,"sectionOrder":14,"itemOrder":14,"packageName":3728,"depth":14},{"path":596,"title":17,"sectionKey":53,"sectionOrder":14,"itemOrder":18,"packageName":3728,"depth":14},{"path":598,"title":258,"sectionKey":53,"sectionOrder":14,"itemOrder":70,"packageName":3728,"depth":14},{"path":600,"title":73,"sectionKey":53,"sectionOrder":14,"itemOrder":74,"packageName":3728,"depth":14},{"path":602,"title":77,"sectionKey":53,"sectionOrder":14,"itemOrder":78,"packageName":3728,"depth":14},{"path":604,"title":81,"sectionKey":53,"sectionOrder":14,"itemOrder":82,"packageName":3728,"depth":14},{"path":606,"title":111,"sectionKey":53,"sectionOrder":14,"itemOrder":86,"packageName":3728,"depth":14},{"path":608,"title":89,"sectionKey":53,"sectionOrder":14,"itemOrder":90,"packageName":3728,"depth":14},{"path":611,"title":612,"sectionKey":53,"sectionOrder":14,"itemOrder":6,"packageName":3739,"depth":29},"wpzylos-views",{"path":614,"title":62,"sectionKey":53,"sectionOrder":14,"itemOrder":29,"packageName":3739,"depth":14},{"path":616,"title":13,"sectionKey":53,"sectionOrder":14,"itemOrder":14,"packageName":3739,"depth":14},{"path":618,"title":17,"sectionKey":53,"sectionOrder":14,"itemOrder":18,"packageName":3739,"depth":14},{"path":620,"title":258,"sectionKey":53,"sectionOrder":14,"itemOrder":70,"packageName":3739,"depth":14},{"path":622,"title":73,"sectionKey":53,"sectionOrder":14,"itemOrder":74,"packageName":3739,"depth":14},{"path":624,"title":77,"sectionKey":53,"sectionOrder":14,"itemOrder":78,"packageName":3739,"depth":14},{"path":626,"title":81,"sectionKey":53,"sectionOrder":14,"itemOrder":82,"packageName":3739,"depth":14},{"path":628,"title":111,"sectionKey":53,"sectionOrder":14,"itemOrder":86,"packageName":3739,"depth":14},{"path":630,"title":89,"sectionKey":53,"sectionOrder":14,"itemOrder":90,"packageName":3739,"depth":14},{"path":633,"title":634,"sectionKey":53,"sectionOrder":14,"itemOrder":6,"packageName":3750,"depth":29},"wpzylos-wp-cli",{"path":636,"title":62,"sectionKey":53,"sectionOrder":14,"itemOrder":29,"packageName":3750,"depth":14},{"path":638,"title":13,"sectionKey":53,"sectionOrder":14,"itemOrder":14,"packageName":3750,"depth":14},{"path":640,"title":17,"sectionKey":53,"sectionOrder":14,"itemOrder":18,"packageName":3750,"depth":14},{"path":642,"title":69,"sectionKey":53,"sectionOrder":14,"itemOrder":70,"packageName":3750,"depth":14},{"path":644,"title":73,"sectionKey":53,"sectionOrder":14,"itemOrder":74,"packageName":3750,"depth":14},{"path":646,"title":77,"sectionKey":53,"sectionOrder":14,"itemOrder":78,"packageName":3750,"depth":14},{"path":648,"title":81,"sectionKey":53,"sectionOrder":14,"itemOrder":82,"packageName":3750,"depth":14},{"path":650,"title":111,"sectionKey":53,"sectionOrder":14,"itemOrder":86,"packageName":3750,"depth":14},{"path":652,"title":89,"sectionKey":53,"sectionOrder":14,"itemOrder":90,"packageName":3750,"depth":14},{"path":658,"title":659,"sectionKey":655,"sectionOrder":18,"itemOrder":6,"packageName":720,"depth":6},{"path":661,"title":544,"sectionKey":655,"sectionOrder":18,"itemOrder":22,"packageName":720,"depth":29},{"path":667,"title":668,"sectionKey":664,"sectionOrder":70,"itemOrder":29,"packageName":720,"depth":29},{"path":674,"title":675,"sectionKey":671,"sectionOrder":74,"itemOrder":29,"packageName":720,"depth":29},{"path":677,"title":678,"sectionKey":671,"sectionOrder":74,"itemOrder":22,"packageName":720,"depth":29},{"path":680,"title":681,"sectionKey":671,"sectionOrder":74,"itemOrder":22,"packageName":720,"depth":29},{"path":688,"title":689,"sectionKey":685,"sectionOrder":78,"itemOrder":29,"packageName":720,"depth":29},{"path":3768,"title":3769,"sectionKey":3770,"sectionOrder":3771,"itemOrder":90,"packageName":720,"depth":6},"\u002Fdocs\u002Flatest\u002Ftroubleshooting","System Troubleshooting","troubleshooting",99,{"path":3773,"title":3774,"sectionKey":3775,"sectionOrder":3771,"itemOrder":22,"packageName":720,"depth":6},"\u002Fdocs\u002Flatest\u002Frelease-checklist","Release Checklist","release-checklist",{"path":3777,"title":3778,"sectionKey":3779,"sectionOrder":3771,"itemOrder":22,"packageName":720,"depth":6},"\u002Fdocs\u002Flatest\u002Frules","WPZylos Framework Rules","rules",1784547677172]