gitextract_yxgq_dm2/ ├── .github/ │ ├── FUNDING.yml │ └── workflows/ │ ├── ci.yml │ ├── docker-image.yml │ └── release.yml ├── .gitignore ├── .npmrc ├── .nuxtrc ├── .nvmrc ├── .stackblitzrc ├── .vscode/ │ ├── extensions.json │ └── settings.json ├── Dockerfile ├── LICENSE ├── README.md ├── android/ │ ├── .gitignore │ ├── app/ │ │ ├── .gitignore │ │ ├── build.gradle │ │ ├── capacitor.build.gradle │ │ ├── proguard-rules.pro │ │ └── src/ │ │ ├── androidTest/ │ │ │ └── java/ │ │ │ └── com/ │ │ │ └── getcapacitor/ │ │ │ └── myapp/ │ │ │ └── ExampleInstrumentedTest.java │ │ ├── main/ │ │ │ ├── AndroidManifest.xml │ │ │ ├── java/ │ │ │ │ └── cn/ │ │ │ │ └── yunyoujun/ │ │ │ │ └── cook/ │ │ │ │ └── MainActivity.java │ │ │ └── res/ │ │ │ ├── drawable/ │ │ │ │ └── ic_launcher_background.xml │ │ │ ├── drawable-v24/ │ │ │ │ └── ic_launcher_foreground.xml │ │ │ ├── layout/ │ │ │ │ └── activity_main.xml │ │ │ ├── mipmap-anydpi-v26/ │ │ │ │ ├── ic_launcher.xml │ │ │ │ └── ic_launcher_round.xml │ │ │ ├── values/ │ │ │ │ ├── ic_launcher_background.xml │ │ │ │ ├── strings.xml │ │ │ │ └── styles.xml │ │ │ └── xml/ │ │ │ └── file_paths.xml │ │ └── test/ │ │ └── java/ │ │ └── com/ │ │ └── getcapacitor/ │ │ └── myapp/ │ │ └── ExampleUnitTest.java │ ├── build.gradle │ ├── capacitor.settings.gradle │ ├── gradle/ │ │ └── wrapper/ │ │ ├── gradle-wrapper.jar │ │ └── gradle-wrapper.properties │ ├── gradle.properties │ ├── gradlew │ ├── gradlew.bat │ ├── settings.gradle │ └── variables.gradle ├── app/ │ ├── app.vue │ ├── components/ │ │ ├── BaseFooter.vue │ │ ├── BasketButton.vue │ │ ├── ChooseFood.vue │ │ ├── CommonHeader.vue │ │ ├── Counter.vue │ │ ├── FAQItem.vue │ │ ├── FeedbackActions.vue │ │ ├── README.md │ │ ├── RandomRecipe.vue │ │ ├── RecipePanel.vue │ │ ├── RecipePanelTitle.vue │ │ ├── SearchFoodInput.vue │ │ ├── Switch.vue │ │ ├── TheAboutList.vue │ │ ├── TheBottomMenu.vue │ │ ├── ToggleMode.vue │ │ ├── common/ │ │ │ ├── BackBtn.vue │ │ │ ├── DarkToggle.vue │ │ │ └── SearchRecipe.vue │ │ ├── content/ │ │ │ ├── AboutMe.vue │ │ │ └── AboutMenu.vue │ │ ├── cookbook/ │ │ │ ├── CookbookCard.vue │ │ │ ├── CookbookDetail.vue │ │ │ └── NewCookbookCard.vue │ │ ├── features/ │ │ │ └── InstallPwa.vue │ │ ├── footer/ │ │ │ └── CdnSupport.vue │ │ ├── help/ │ │ │ └── HelpAbout.vue │ │ ├── layout/ │ │ │ ├── CurrentVersion.vue │ │ │ └── SimpleCopyright.vue │ │ ├── layouts/ │ │ │ ├── README.md │ │ │ ├── child.vue │ │ │ └── default.vue │ │ ├── recipe/ │ │ │ ├── RecipeTable.vue │ │ │ └── RecipeTableItem.vue │ │ ├── tags/ │ │ │ ├── DateTag.vue │ │ │ ├── DishLabel.vue │ │ │ ├── DishTag.vue │ │ │ ├── MeatTag.vue │ │ │ ├── StapleTag.vue │ │ │ ├── ToolTag.vue │ │ │ └── VegetableTag.vue │ │ └── ylf/ │ │ ├── YlfForm.vue │ │ ├── YlfFormItem.vue │ │ ├── YlfIconButton.vue │ │ ├── YlfIconItem.vue │ │ └── YlfSwitch.vue │ ├── composables/ │ │ ├── animation.ts │ │ ├── count.ts │ │ ├── dark.ts │ │ ├── db.ts │ │ ├── global.ts │ │ ├── helper.ts │ │ ├── incompatible-foods.ts │ │ ├── index.ts │ │ ├── recipe.ts │ │ └── store/ │ │ ├── app.ts │ │ ├── favorite.ts │ │ ├── history.ts │ │ ├── index.ts │ │ ├── recipe.ts │ │ └── user.ts │ ├── config/ │ │ ├── index.ts │ │ └── pwa.ts │ ├── constants/ │ │ ├── acknowledgements.ts │ │ ├── index.ts │ │ └── links.ts │ ├── data/ │ │ ├── README.md │ │ ├── food.ts │ │ ├── incompatible-foods.csv │ │ └── recipe.csv │ ├── pages/ │ │ ├── 404.vue │ │ ├── about/ │ │ │ ├── acknowledgements.vue │ │ │ ├── index.vue │ │ │ └── me.vue │ │ ├── apps/ │ │ │ └── random/ │ │ │ └── index.vue │ │ ├── changelog.vue │ │ ├── cookbooks/ │ │ │ ├── index.vue │ │ │ └── new.vue │ │ ├── help.vue │ │ ├── recipes/ │ │ │ ├── favorites.vue │ │ │ ├── history.vue │ │ │ ├── index.vue │ │ │ └── new.vue │ │ ├── settings.vue │ │ ├── tabs/ │ │ │ ├── apps/ │ │ │ │ └── index.vue │ │ │ ├── home/ │ │ │ │ └── index.vue │ │ │ ├── library/ │ │ │ │ └── index.vue │ │ │ └── my/ │ │ │ └── index.vue │ │ └── tabs.vue │ ├── styles/ │ │ ├── animation.scss │ │ ├── css-vars.scss │ │ ├── index.scss │ │ ├── index.ts │ │ ├── ionic.css │ │ └── markdown.scss │ ├── types/ │ │ ├── cookbook.ts │ │ ├── incompatible-foods.ts │ │ ├── index.ts │ │ └── recipe.ts │ └── utils/ │ ├── cookbook.ts │ ├── db.ts │ ├── index.ts │ ├── pwa.ts │ ├── random.ts │ └── settings.ts ├── app.config.ts ├── bump.config.ts ├── capacitor.config.ts ├── docs/ │ ├── .gitignore │ ├── .vitepress/ │ │ ├── components.d.ts │ │ └── config/ │ │ └── index.ts │ ├── dev/ │ │ └── app.md │ ├── guide/ │ │ └── getting-started.md │ ├── index.md │ ├── package.json │ ├── public/ │ │ └── CNAME │ └── vite.config.ts ├── edgeone.json ├── eslint.config.js ├── ionic.config.json ├── ios/ │ ├── .gitignore │ └── App/ │ ├── App/ │ │ ├── AppDelegate.swift │ │ ├── Assets.xcassets/ │ │ │ ├── AppIcon.appiconset/ │ │ │ │ └── Contents.json │ │ │ ├── Contents.json │ │ │ └── Splash.imageset/ │ │ │ └── Contents.json │ │ ├── Base.lproj/ │ │ │ ├── LaunchScreen.storyboard │ │ │ └── Main.storyboard │ │ └── Info.plist │ ├── App.xcodeproj/ │ │ └── project.pbxproj │ ├── App.xcworkspace/ │ │ ├── contents.xcworkspacedata │ │ └── xcshareddata/ │ │ └── IDEWorkspaceChecks.plist │ └── Podfile ├── netlify.toml ├── nuxt.config.ts ├── package.json ├── pnpm-workspace.yaml ├── public/ │ ├── _headers │ └── robots.txt ├── scripts/ │ ├── android/ │ │ ├── build.sh │ │ └── dev.sh │ ├── config.ts │ ├── convert.ts │ ├── git.ts │ ├── ios.sh │ └── package.json ├── shims.d.ts ├── test/ │ ├── component.test.ts │ ├── recipe.test.ts │ └── setup.ts ├── tsconfig.json ├── uno.config.ts ├── vitest.config.ts └── vitest.nuxt.config.ts