cooking-temperature 1.0.2 → 1.0.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +296 -35
- package/dist/icons.d.mts +15 -0
- package/dist/icons.d.ts +15 -0
- package/dist/icons.js +137 -0
- package/dist/icons.js.map +1 -0
- package/dist/icons.mjs +104 -0
- package/dist/icons.mjs.map +1 -0
- package/dist/index.d.mts +4 -4
- package/dist/index.d.ts +4 -4
- package/dist/index.js +11 -11
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +11 -11
- package/dist/index.mjs.map +1 -1
- package/package.json +6 -1
package/dist/icons.mjs
ADDED
|
@@ -0,0 +1,104 @@
|
|
|
1
|
+
// icons.ts
|
|
2
|
+
var CATEGORY_ICONS = {
|
|
3
|
+
// Poultry - Chicken drumstick
|
|
4
|
+
poultry: `data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSI+PHBhdGggZD0iTTE1LjUgM0MxMy4wMSAzIDExIDUuMDEgMTEgNy41QzExIDguMjcgMTEuMTkgOS4wMSAxMS41MyA5LjY1TDMuNSAxNy42OEMzLjE4IDE4IDMgMTguNDMgMyAxOC44OEMzIDE5LjgxIDMuNzQgMjAuNjQgNC42NyAyMC45MUM1LjA4IDIxLjAzIDUuNTMgMjEgNS45IDIwLjgyTDYuNSAyMC41TDcuNDQgMjEuMzFDNy43OCAyMS42IDguMjMgMjEuNzUgOC42OSAyMS43NUM5LjQgMjEuNzUgMTAuMDUgMjEuNDIgMTAuNDUgMjAuODhMMTEgMjAuMTNMMTEuNTUgMjAuODhDMTEuOTUgMjEuNDIgMTIuNiAyMS43NSAxMy4zMSAyMS43NUMxMy43NyAyMS43NSAxNC4yMiAyMS42IDE0LjU2IDIxLjMxTDE1LjUgMjAuNUwxNi4xIDIwLjgyQzE2LjQ3IDIxIDE2LjkyIDIxLjAzIDE3LjMzIDIwLjkxQzE4LjI2IDIwLjY0IDE5IDE5LjgxIDE5IDE4Ljg4QzE5IDE4LjQzIDE4LjgyIDE4IDE4LjUgMTcuNjhMMTQuMzUgMTMuNTNDMTQuOTkgMTMuMTkgMTUuNzMgMTMgMTYuNSAxM0MxOC45OSAxMyAyMSAxMC45OSAyMSA4LjVDMjEgNi4wMSAxOC45OSA0IDE2LjUgNEMxNi4xNyA0IDE1LjgzIDQuMDMgMTUuNSA0LjFWM1oiIGZpbGw9IiNGNTlFMEIiLz48cGF0aCBkPSJNMTYuNSA1QzE4LjQzIDUgMjAgNi41NyAyMCA4LjVDMjAgMTAuNDMgMTguNDMgMTIgMTYuNSAxMkMxNS4zNiAxMiAxNC4zMyAxMS40OCAxMy42MiAxMC42N0wxMy4yOCAxMC4yOEwxMi45MyA5Ljg0QzEyLjM0IDkuMDMgMTIgOC4wMyAxMiA3QzEyIDUuMDcgMTMuNTcgMy41IDE1LjUgMy41VjUuNUMxNC42OCA1LjUgMTQgNi4xOCAxNCA3QzE0IDcuNTYgMTQuMTkgOC4wOCAxNC41MSA4LjQ5TDE0Ljg2IDguOTNMMTUuMjEgOS4zMkMxNS42NSA5Ljc1IDE2LjA1IDEwIDE2LjUgMTBDMTcuMzMgMTAgMTggOS4zMyAxOCA4LjVDMTggNy42NyAxNy4zMyA3IDE2LjUgN1Y1WiIgZmlsbD0iI0Q5NzcwNiIvPjwvc3ZnPg==`,
|
|
5
|
+
// Beef - Steak cut
|
|
6
|
+
beef: `data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSI+PHBhdGggZD0iTTIwLjUgNkMxOS4xIDMuOCAxNi4xIDIuNSAxMi41IDIuNUM3LjUgMi41IDMuNSA1LjUgMy41IDlDMy41IDEwLjggNC4zIDEyLjQgNS43IDE0TDQgMTguNUM0IDE5LjUgNS41IDIxIDcuNSAyMUM4LjIgMjEgOC44IDIwLjggOS41IDIwLjNMMTIgMThMMTQuNSAyMC4zQzE1LjIgMjAuOCAxNS44IDIxIDE2LjUgMjFDMTguNSAyMSAyMCAxOS41IDIwIDE4LjVMMTguMyAxNEMxOS43IDEyLjQgMjAuNSAxMC44IDIwLjUgOVY2WiIgZmlsbD0iI0VGNDQ0NCIvPjxwYXRoIGQ9Ik0xNy41IDlDMTcuNSAxMC45IDE1LjQgMTIuNSAxMi41IDEyLjVDOS42IDEyLjUgNy41IDEwLjkgNy41IDlDNy41IDcuMSA5LjYgNS41IDEyLjUgNS41QzE1LjQgNS41IDE3LjUgNy4xIDE3LjUgOVoiIGZpbGw9IiNGQ0EwQTAiLz48cGF0aCBkPSJNMTQgOEMxNCA4LjggMTMuMyA5LjUgMTIuNSA5LjVDMTEuNyA5LjUgMTEgOC44IDExIDhDMTEgNy4yIDExLjcgNi41IDEyLjUgNi41QzEzLjMgNi41IDE0IDcuMiAxNCA4WiIgZmlsbD0iI0ZFRTJFMiIvPjwvc3ZnPg==`,
|
|
7
|
+
// Pork - Pork chop/meat on bone
|
|
8
|
+
pork: `data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSI+PHBhdGggZD0iTTQgMTBDNCAxNC40IDcuNiAxOCAxMiAxOEMxNi40IDE4IDIwIDE0LjQgMjAgMTBDMjAgNy45IDE5LjIgNiAxNy44IDQuNkMxNi44IDMuNiAxNS41IDMgMTQgM0gxMEM4LjUgMyA3LjIgMy42IDYuMiA0LjZDNC44IDYgNCAxLjkgNCAxMFoiIGZpbGw9IiNGQkI0QjQiLz48cGF0aCBkPSJNMTIgMThWMjFNMTIgMjFIOE0xMiAyMUgxNiIgc3Ryb2tlPSIjRkVFMkUyIiBzdHJva2Utd2lkdGg9IjIiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIvPjxwYXRoIGQ9Ik04IDlDOCAxMC43IDkuMyAxMiAxMSAxMiIgc3Ryb2tlPSIjRkRFNjhBIiBzdHJva2Utd2lkdGg9IjIiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIvPjxwYXRoIGQ9Ik03IDVDNi41IDYgNi41IDcgNyA4IiBzdHJva2U9IiNFRjQ0NDQiIHN0cm9rZS13aWR0aD0iMS41IiBzdHJva2UtbGluZWNhcD0icm91bmQiLz48cGF0aCBkPSJNMTcgNUMxNy41IDYgMTcuNSA3IDE3IDgiIHN0cm9rZT0iI0VGNDQ0NCIgc3Ryb2tlLXdpZHRoPSIxLjUiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIvPjwvc3ZnPg==`,
|
|
9
|
+
// Seafood Fish - Fish
|
|
10
|
+
seafood_fish: `data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSI+PHBhdGggZD0iTTIyIDEyQzIyIDEyIDE5IDE3IDE0IDE3QzEyIDE3IDEwLjUgMTYuNSA5LjUgMTZMNiAyMFY0TDkuNSA4QzEwLjUgNy41IDEyIDcgMTQgN0MxOSA3IDIyIDEyIDIyIDEyWiIgZmlsbD0iIzYwQTVGQSIvPjxjaXJjbGUgY3g9IjE2IiBjeT0iMTEiIHI9IjEuNSIgZmlsbD0iIzFGMjkzNyIvPjxjaXJjbGUgY3g9IjE2LjMiIGN5PSIxMC43IiByPSIwLjUiIGZpbGw9IiNGRkZGRkYiLz48cGF0aCBkPSJNMTQgMTJDMTQgMTIgMTIgMTMgMTAuNSAxM0M5IDEzIDguNSAxMi41IDguNSAxMkM4LjUgMTEuNSA5IDExIDEwLjUgMTFDMTIgMTEgMTQgMTIgMTQgMTJaIiBmaWxsPSIjOTNDNUZEIi8+PHBhdGggZD0iTTYgNEwzIDFNNiAyMEwzIDIzIiBzdHJva2U9IiMzQjgyRjYiIHN0cm9rZS13aWR0aD0iMiIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIi8+PC9zdmc+`,
|
|
11
|
+
// Seafood Shellfish - Shrimp
|
|
12
|
+
seafood_shellfish: `data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSI+PHBhdGggZD0iTTE5IDdDMTkgNyAxOCA0IDE0IDRDMTAgNCAxMCA3IDEwIDdDMTAgNyA4IDggNyAxMEM2IDEyIDYgMTQgNyAxNkM4IDE4IDEwIDE5IDEyIDE5QzE0IDE5IDE1IDE4IDE2IDE3TDE4IDE5TDIwIDE3TDE4IDE1QzE5IDE0IDIwIDEyIDIwIDEwQzIwIDggMTkgNyAxOSA3WiIgZmlsbD0iI0ZCQjRCNCIvPjxwYXRoIGQ9Ik0xMyA4QzE0LjEgOCAxNSA4LjkgMTUgMTBDMTUgMTEuMSAxNC4xIDEyIDEzIDEyQzExLjkgMTIgMTEgMTEuMSAxMSAxMEMxMSA4LjkgMTEuOSA4IDEzIDhaIiBmaWxsPSIjRkVFMkUyIi8+PHBhdGggZD0iTTE1IDRDMTUgNCAxNiAyIDE4IDJNMTMgNEMxMyA0IDEzIDIgMTEgMiIgc3Ryb2tlPSIjRjg3MTcxIiBzdHJva2Utd2lkdGg9IjEuNSIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIi8+PGNpcmNsZSBjeD0iMTUiIGN5PSIxMCIgcj0iMSIgZmlsbD0iIzFGMjkzNyIvPjwvc3ZnPg==`,
|
|
13
|
+
// Egg
|
|
14
|
+
egg: `data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSI+PHBhdGggZD0iTTEyIDNDOCAzIDUgOC41IDUgMTNDNSAxNy41IDguMSAyMSAxMiAyMUMxNS45IDIxIDE5IDE3LjUgMTkgMTNDMTkgOC41IDE2IDMgMTIgM1oiIGZpbGw9IiNGRUY5QzMiIHN0cm9rZT0iI0ZERTY4QSIgc3Ryb2tlLXdpZHRoPSIxLjUiLz48ZWxsaXBzZSBjeD0iMTIiIGN5PSIxMyIgcng9IjUiIHJ5PSI0IiBmaWxsPSIjRkJCRjI0Ii8+PGVsbGlwc2UgY3g9IjEyIiBjeT0iMTMiIHJ4PSIzIiByeT0iMi41IiBmaWxsPSIjRjU5RTBCIi8+PHBhdGggZD0iTTEwIDEyQzEwLjUgMTEuNSAxMS41IDExLjUgMTIgMTIiIHN0cm9rZT0iI0ZFRjlDMyIgc3Ryb2tlLXdpZHRoPSIxIiBzdHJva2UtbGluZWNhcD0icm91bmQiLz48L3N2Zz4=`,
|
|
15
|
+
// Vegetable - Broccoli
|
|
16
|
+
vegetable: `data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSI+PHBhdGggZD0iTTEyIDIxVjE0IiBzdHJva2U9IiM2NUExNDUiIHN0cm9rZS13aWR0aD0iMyIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIi8+PHBhdGggZD0iTTkgMjFWMTYiIHN0cm9rZT0iIzY1QTE0NSIgc3Ryb2tlLXdpZHRoPSIyIiBzdHJva2UtbGluZWNhcD0icm91bmQiLz48cGF0aCBkPSJNMTUgMjFWMTYiIHN0cm9rZT0iIzY1QTE0NSIgc3Ryb2tlLXdpZHRoPSIyIiBzdHJva2UtbGluZWNhcD0icm91bmQiLz48Y2lyY2xlIGN4PSI4IiBjeT0iOCIgcj0iNCIgZmlsbD0iIzIyQzU1RSIvPjxjaXJjbGUgY3g9IjE2IiBjeT0iOCIgcj0iNCIgZmlsbD0iIzIyQzU1RSIvPjxjaXJjbGUgY3g9IjEyIiBjeT0iNSIgcj0iNCIgZmlsbD0iIzIyQzU1RSIvPjxjaXJjbGUgY3g9IjEyIiBjeT0iMTAiIHI9IjQiIGZpbGw9IiMyMkM1NUUiLz48Y2lyY2xlIGN4PSI2IiBjeT0iMTEiIHI9IjIuNSIgZmlsbD0iIzE2QTM0QSIvPjxjaXJjbGUgY3g9IjE4IiBjeT0iMTEiIHI9IjIuNSIgZmlsbD0iIzE2QTM0QSIvPjxjaXJjbGUgY3g9IjkiIGN5PSI2IiByPSIyIiBmaWxsPSIjNEFERTgwIi8+PGNpcmNsZSBjeD0iMTQiIGN5PSI4IiByPSIxLjUiIGZpbGw9IiM0QURFODAiLz48L3N2Zz4=`,
|
|
17
|
+
// Grain - Rice bowl
|
|
18
|
+
grain: `data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSI+PHBhdGggZD0iTTQgMTFDNCAxMSA0IDE4IDEyIDE4QzIwIDE4IDIwIDExIDIwIDExSDRaIiBmaWxsPSIjRkZGRkZGIiBzdHJva2U9IiNFNUU3RUIiIHN0cm9rZS13aWR0aD0iMS41Ii8+PHBhdGggZD0iTTUgMThDNSAxOCA2IDIxIDEyIDIxQzE4IDIxIDE5IDE4IDE5IDE4IiBzdHJva2U9IiNFNUU3RUIiIHN0cm9rZS13aWR0aD0iMS41IiBzdHJva2UtbGluZWNhcD0icm91bmQiLz48ZWxsaXBzZSBjeD0iOCIgY3k9IjkiIHJ4PSIxLjUiIHJ5PSIxIiBmaWxsPSIjRkVGM0M3Ii8+PGVsbGlwc2UgY3g9IjEyIiBjeT0iOCIgcng9IjEuNSIgcnk9IjEiIGZpbGw9IiNGRUYzQzciLz48ZWxsaXBzZSBjeD0iMTYiIGN5PSI5IiByeD0iMS41IiByeT0iMSIgZmlsbD0iI0ZFRjNDNyIvPjxlbGxpcHNlIGN4PSIxMCIgY3k9IjExIiByeD0iMS41IiByeT0iMSIgZmlsbD0iI0ZFRjNDNyIvPjxlbGxpcHNlIGN4PSIxNCIgY3k9IjExIiByeD0iMS41IiByeT0iMSIgZmlsbD0iI0ZFRjNDNyIvPjxlbGxpcHNlIGN4PSI3IiBjeT0iMTIiIHJ4PSIxIiByeT0iMC43NSIgZmlsbD0iI0ZFRjNDNyIvPjxlbGxpcHNlIGN4PSIxNyIgY3k9IjEyIiByeD0iMSIgcnk9IjAuNzUiIGZpbGw9IiNGRUYzQzciLz48L3N2Zz4=`
|
|
19
|
+
};
|
|
20
|
+
var POULTRY_ICONS = {
|
|
21
|
+
// Chicken breast
|
|
22
|
+
chicken_breast: `data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSI+PHBhdGggZD0iTTUgOEM1IDUgOCAzIDEyIDNDMTYgMyAxOSA1IDE5IDhDMTkgMTEgMTggMTUgMTcgMTdDMTYgMTkgMTQgMjAgMTIgMjBDMTAgMjAgOCAxOSA3IDE3QzYgMTUgNSAxMSA1IDhaIiBmaWxsPSIjRkRFNjhBIiBzdHJva2U9IiNGNTlFMEIiIHN0cm9rZS13aWR0aD0iMS41Ii8+PHBhdGggZD0iTTggOEMxMCA3IDE0IDcgMTYgOCIgc3Ryb2tlPSIjRjU5RTBCIiBzdHJva2Utd2lkdGg9IjEiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIvPjxwYXRoIGQ9Ik05IDEyQzEwIDExIDE0IDExIDE1IDEyIiBzdHJva2U9IiNGNTlFMEIiIHN0cm9rZS13aWR0aD0iMSIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIi8+PC9zdmc+`,
|
|
23
|
+
// Chicken thigh
|
|
24
|
+
chicken_thigh: `data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSI+PHBhdGggZD0iTTE2IDRDMTQgMyAxMCAzIDggNEM2IDUgNCAxMCA1IDE0QzYgMTggOCAyMCAxMSAyMEwxMiAxOEwxNCAxNUMxNiAxMiAxOCA4IDE4IDZDMTggNSAxNyA0IDE2IDRaIiBmaWxsPSIjRkRFNjhBIiBzdHJva2U9IiNGNTlFMEIiIHN0cm9rZS13aWR0aD0iMS41Ii8+PHBhdGggZD0iTTExIDIwTDEwIDIySDgiIHN0cm9rZT0iI0Q5NzcwNiIgc3Ryb2tlLXdpZHRoPSIyIiBzdHJva2UtbGluZWNhcD0icm91bmQiLz48cGF0aCBkPSJNNyA5QzkgOCAxMiA4IDE0IDkiIHN0cm9rZT0iI0Y1OUUwQiIgc3Ryb2tlLXdpZHRoPSIxIiBzdHJva2UtbGluZWNhcD0icm91bmQiLz48L3N2Zz4=`,
|
|
25
|
+
// Whole chicken
|
|
26
|
+
whole_chicken: `data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSI+PHBhdGggZD0iTTEyIDJDOCAyIDQgNiA0IDExQzQgMTQgNSAxNyA3IDE5TDYgMjFIOEwxMCAxOUgxNEwxNiAyMUgxOEwxNyAxOUMxOSAxNyAyMCAxNCAyMCAxMUMyMCA2IDE2IDIgMTIgMloiIGZpbGw9IiNGREU2OEEiIHN0cm9rZT0iI0Y1OUUwQiIgc3Ryb2tlLXdpZHRoPSIxLjUiLz48cGF0aCBkPSJNOCA5QzEwIDggMTQgOCAxNiA5IiBzdHJva2U9IiNGNTlFMEIiIHN0cm9rZS13aWR0aD0iMSIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIi8+PHBhdGggZD0iTTkgMTNDMTEgMTIgMTMgMTIgMTUgMTMiIHN0cm9rZT0iI0Y1OUUwQiIgc3Ryb2tlLXdpZHRoPSIxIiBzdHJva2UtbGluZWNhcD0icm91bmQiLz48Y2lyY2xlIGN4PSI5IiBjeT0iNyIgcj0iMSIgZmlsbD0iI0Q5NzcwNiIvPjxjaXJjbGUgY3g9IjE1IiBjeT0iNyIgcj0iMSIgZmlsbD0iI0Q5NzcwNiIvPjwvc3ZnPg==`,
|
|
27
|
+
// Turkey breast
|
|
28
|
+
turkey_breast: `data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSI+PHBhdGggZD0iTTQgOUM0IDUgNyAyIDEyIDJDMTcgMiAyMCA1IDIwIDlDMjAgMTMgMTggMTggMTYgMjBMMTQgMjFIMTBMOCAyMEM2IDE4IDQgMTMgNCA5WiIgZmlsbD0iI0ZCQjRCNCIgc3Ryb2tlPSIjRjg3MTcxIiBzdHJva2Utd2lkdGg9IjEuNSIvPjxwYXRoIGQ9Ik03IDlDMTAgNyAxNCA3IDE3IDkiIHN0cm9rZT0iI0Y4NzE3MSIgc3Ryb2tlLXdpZHRoPSIxIiBzdHJva2UtbGluZWNhcD0icm91bmQiLz48cGF0aCBkPSJNOCAxM0MxMCAxMiAxNCAxMiAxNiAxMyIgc3Ryb2tlPSIjRjg3MTcxIiBzdHJva2Utd2lkdGg9IjEiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIvPjwvc3ZnPg==`
|
|
29
|
+
};
|
|
30
|
+
var BEEF_ICONS = {
|
|
31
|
+
// Ribeye steak
|
|
32
|
+
beef_steak_ribeye: `data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSI+PHBhdGggZD0iTTQgOEM0IDUgNyAzIDEyIDNDMTcgMyAyMCA1IDIwIDhDMjAgMTEgMTkgMTUgMTcgMThDMTUgMjAgMTQgMjEgMTIgMjFDMTAgMjEgOSAyMCA3IDE4QzUgMTUgNCAxMSA0IDhaIiBmaWxsPSIjRUY0NDQ0IiBzdHJva2U9IiNCOTFDMUMiIHN0cm9rZS13aWR0aD0iMS41Ii8+PHBhdGggZD0iTTcgOEMxMCA3IDE0IDcgMTcgOCIgc3Ryb2tlPSIjRkVFMkUyIiBzdHJva2Utd2lkdGg9IjIiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIvPjxwYXRoIGQ9Ik04IDEyQzEwIDExIDE0IDExIDE2IDEyIiBzdHJva2U9IiNGQ0EwQTAiIHN0cm9rZS13aWR0aD0iMS41IiBzdHJva2UtbGluZWNhcD0icm91bmQiLz48Y2lyY2xlIGN4PSIxMCIgY3k9IjE1IiByPSIxLjUiIGZpbGw9IiNGRUUyRTIiLz48L3N2Zz4=`,
|
|
33
|
+
// Ground beef
|
|
34
|
+
beef_ground: `data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSI+PHBhdGggZD0iTTQgMTBDNCA3IDcgNSAxMiA1QzE3IDUgMjAgNyAyMCAxMEMyMCAxMyAxNyAxNSAxMiAxNUM3IDE1IDQgMTMgNCAxMFoiIGZpbGw9IiM5OTFFQjgiLz48cGF0aCBkPSJNNiAxMEMxMCA4IDE0IDggMTggMTAiIHN0cm9rZT0iI0M4NEM2OCIgc3Ryb2tlLXdpZHRoPSIxIiBzdHJva2UtbGluZWNhcD0icm91bmQiLz48cGF0aCBkPSJNOCAxMkMxMCAxMSAxNCAxMSAxNiAxMiIgc3Ryb2tlPSIjQzg0QzY4IiBzdHJva2Utd2lkdGg9IjEiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIvPjxwYXRoIGQ9Ik01IDE1QzUgMTggOCAxOSAxMiAxOUMxNiAxOSAxOSAxOCAxOSAxNSIgc3Ryb2tlPSIjN0YxRDFEIiBzdHJva2Utd2lkdGg9IjEuNSIvPjxjaXJjbGUgY3g9IjgiIGN5PSI5IiByPSIwLjUiIGZpbGw9IiNGRUUyRTIiLz48Y2lyY2xlIGN4PSIxNCIgY3k9IjgiIHI9IjAuNSIgZmlsbD0iI0ZFRTJFMiIvPjxjaXJjbGUgY3g9IjExIiBjeT0iMTEiIHI9IjAuNSIgZmlsbD0iI0ZFRTJFMiIvPjwvc3ZnPg==`,
|
|
35
|
+
// Beef roast
|
|
36
|
+
beef_roast: `data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSI+PHJlY3QgeD0iNCIgeT0iNiIgd2lkdGg9IjE2IiBoZWlnaHQ9IjEyIiByeD0iMiIgZmlsbD0iI0VGNDQ0NCIgc3Ryb2tlPSIjQjkxQzFDIiBzdHJva2Utd2lkdGg9IjEuNSIvPjxwYXRoIGQ9Ik00IDEwSDE4IiBzdHJva2U9IiNGQ0EwQTAiIHN0cm9rZS13aWR0aD0iMiIvPjxwYXRoIGQ9Ik00IDE0SDE4IiBzdHJva2U9IiNGQ0EwQTAiIHN0cm9rZS13aWR0aD0iMiIvPjxwYXRoIGQ9Ik0yMCAxMkgyMiIgc3Ryb2tlPSIjRDk3NzA2IiBzdHJva2Utd2lkdGg9IjIiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIvPjxwYXRoIGQ9Ik0yIDEySDQiIHN0cm9rZT0iI0Q5NzcwNiIgc3Ryb2tlLXdpZHRoPSIyIiBzdHJva2UtbGluZWNhcD0icm91bmQiLz48L3N2Zz4=`
|
|
37
|
+
};
|
|
38
|
+
var SEAFOOD_ICONS = {
|
|
39
|
+
// Salmon fillet
|
|
40
|
+
salmon_fillet: `data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSI+PHBhdGggZD0iTTMgMTBDMyA4IDYgNiAxMiA2QzE4IDYgMjEgOCAyMSAxMEMyMSAxMiAxOSAxNyAxNiAxOEM2IDE4IDMgMTIgMyAxMFoiIGZpbGw9IiNGQjkyM0MiIHN0cm9rZT0iI0VBNTgwQyIgc3Ryb2tlLXdpZHRoPSIxLjUiLz48cGF0aCBkPSJNNiAxMEMxMCA5IDE0IDkgMTggMTAiIHN0cm9rZT0iI0ZFRDdBQSIgc3Ryb2tlLXdpZHRoPSIxLjUiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIvPjxwYXRoIGQ9Ik03IDEzQzEwIDEyIDE0IDEyIDE3IDEzIiBzdHJva2U9IiNGRUQ3QUEiIHN0cm9rZS13aWR0aD0iMS41IiBzdHJva2UtbGluZWNhcD0icm91bmQiLz48cGF0aCBkPSJNMTkgOEMyMCA3IDIxIDcgMjIgOCIgc3Ryb2tlPSIjOTk5IiBzdHJva2Utd2lkdGg9IjEiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIvPjwvc3ZnPg==`,
|
|
41
|
+
// Shrimp
|
|
42
|
+
shrimp: `data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSI+PHBhdGggZD0iTTE4IDZDMTggNiAxNyAzIDEzIDNDOSAzIDkgNiA5IDZDOSA2IDcgNyA2IDlDNSAxMSA1IDEzIDYgMTVDNyAxNyA5IDE4IDExIDE4QzEzIDE4IDE0IDE3IDE1IDE2TDE3IDE4TDE5IDE2TDE3IDE0QzE4IDEzIDE5IDExIDE5IDlDMTkgNyAxOCA2IDE4IDZaIiBmaWxsPSIjRkJCNEI0IiBzdHJva2U9IiNGODcxNzEiIHN0cm9rZS13aWR0aD0iMS41Ii8+PHBhdGggZD0iTTEyIDdDMTMuMSA3IDE0IDcuOSAxNCA5QzE0IDEwLjEgMTMuMSAxMSAxMiAxMUMxMC45IDExIDEwIDEwLjEgMTAgOUMxMCA3LjkgMTAuOSA3IDEyIDdaIiBmaWxsPSIjRkVFMkUyIi8+PHBhdGggZD0iTTE0IDNDMTQGNCAXNSIYTCE3IDJNMTIgM0MxMiAzIDEyIDEgMTAgMSIgc3Ryb2tlPSIjRjg3MTcxIiBzdHJva2Utd2lkdGg9IjEuNSIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIi8+PGNpcmNsZSBjeD0iMTQiIGN5PSI5IiByPSIxIiBmaWxsPSIjMUYyOTM3Ii8+PC9zdmc+`,
|
|
43
|
+
// Cod fillet
|
|
44
|
+
cod_fillet: `data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSI+PHBhdGggZD0iTTMgMTFDMyA5IDYgNyAxMiA3QzE4IDcgMjEgOSAyMSAxMUMyMSAxMyAxOSAxNyAxNiAxN0M2IDE3IDMgMTMgMyAxMVoiIGZpbGw9IiNGRUYzQzciIHN0cm9rZT0iI0ZERTY4QSIgc3Ryb2tlLXdpZHRoPSIxLjUiLz48cGF0aCBkPSJNNiAxMUMxMCAxMCAxNCAxMCAxOCAxMSIgc3Ryb2tlPSIjRkRFNjhBIiBzdHJva2Utd2lkdGg9IjEuNSIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIi8+PHBhdGggZD0iTTggMTNDMTAgMTIgMTQgMTIgMTYgMTMiIHN0cm9rZT0iI0ZERTY4QSIgc3Ryb2tlLXdpZHRoPSIxLjUiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIvPjwvc3ZnPg==`,
|
|
45
|
+
// Tuna steak
|
|
46
|
+
tuna_steak: `data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSI+PHBhdGggZD0iTTQgOEM0IDUgNyAzIDEyIDNDMTcgMyAyMCA1IDIwIDhDMjAgMTEgMTggMTYgMTYgMThDMTQgMjAgMTAgMjAgOCAxOEM2IDE2IDQgMTEgNCA4WiIgZmlsbD0iI0VGNDQ0NCIgc3Ryb2tlPSIjQjkxQzFDIiBzdHJva2Utd2lkdGg9IjEuNSIvPjxwYXRoIGQ9Ik03IDhDMTAgNyAxNCA3IDE3IDgiIHN0cm9rZT0iI0ZDQTBBMCIgc3Ryb2tlLXdpZHRoPSIyIiBzdHJva2UtbGluZWNhcD0icm91bmQiLz48cGF0aCBkPSJNOCAxMkMxMCAxMSAxNCAxMSAxNiAxMiIgc3Ryb2tlPSIjRkNBMEEwIiBzdHJva2Utd2lkdGg9IjEuNSIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIi8+PC9zdmc+`
|
|
47
|
+
};
|
|
48
|
+
var EGG_ICONS = {
|
|
49
|
+
// Fried egg
|
|
50
|
+
egg_fried: `data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSI+PHBhdGggZD0iTTQgMTJDMyA4IDUgNSA4IDRDMTEgMyAxMyA0IDE1IDVDMTcgNiAxOSA1IDIwIDdDMjEgOSAyMSAxMiAyMCAxNEMxOSAxNiAxNyAxOCAxNCAxOUMxMSAyMCA3IDE5IDUgMTdDMyAxNSA0IDE0IDQgMTJaIiBmaWxsPSIjRkZGRkZGIiBzdHJva2U9IiNFNUU3RUIiIHN0cm9rZS13aWR0aD0iMS41Ii8+PGVsbGlwc2UgY3g9IjEyIiBjeT0iMTEiIHJ4PSI1IiByeT0iNCIgZmlsbD0iI0ZCQkYyNCIvPjxlbGxpcHNlIGN4PSIxMiIgY3k9IjExIiByeD0iMyIgcnk9IjIuNSIgZmlsbD0iI0Y1OUUwQiIvPjxwYXRoIGQ9Ik0xMCAxMEMxMC41IDkuNSAxMS41IDkuNSAxMiAxMCIgc3Ryb2tlPSIjRkVGOUMzIiBzdHJva2Utd2lkdGg9IjEiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIvPjwvc3ZnPg==`,
|
|
51
|
+
// Boiled egg
|
|
52
|
+
egg_boiled: `data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSI+PHBhdGggZD0iTTEyIDNDOCAzIDUgOC41IDUgMTNDNSAxNy41IDguMSAyMSAxMiAyMUMxNS45IDIxIDE5IDE3LjUgMTkgMTNDMTkgOC41IDE2IDMgMTIgM1oiIGZpbGw9IiNGRUY5QzMiIHN0cm9rZT0iI0ZERTY4QSIgc3Ryb2tlLXdpZHRoPSIxLjUiLz48cGF0aCBkPSJNNSAxMkgxOSIgc3Ryb2tlPSIjRkRFNjhBIiBzdHJva2Utd2lkdGg9IjEuNSIgc3Ryb2tlLWRhc2hhcnJheT0iMiAyIi8+PGVsbGlwc2UgY3g9IjEyIiBjeT0iMTUiIHJ4PSI0IiByeT0iMyIgZmlsbD0iI0ZCQkYyNCIvPjxlbGxpcHNlIGN4PSIxMiIgY3k9IjE1IiByeD0iMiIgcnk9IjEuNSIgZmlsbD0iI0Y1OUUwQiIvPjwvc3ZnPg==`,
|
|
53
|
+
// Scrambled eggs
|
|
54
|
+
egg_scrambled: `data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSI+PHBhdGggZD0iTTQgMTBDNCAxMyA3IDE2IDEyIDE2QzE3IDE2IDIwIDEzIDIwIDEwQzIwIDcgMTcgNSAxMiA1QzcgNSA0IDcgNCAxMFoiIGZpbGw9IiNGQkJGMjQiIHN0cm9rZT0iI0Y1OUUwQiIgc3Ryb2tlLXdpZHRoPSIxLjUiLz48cGF0aCBkPSJNNiAxMEM4IDkgMTAgOSAxMiAxMEMxNCAxMSAxNiAxMSAxOCAxMCIgc3Ryb2tlPSIjRkVGOUMzIiBzdHJva2Utd2lkdGg9IjEuNSIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIi8+PHBhdGggZD0iTTggMTNDMTAgMTIgMTQgMTIgMTYgMTMiIHN0cm9rZT0iI0ZFRjlDMyIgc3Ryb2tlLXdpZHRoPSIxLjUiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIvPjxwYXRoIGQ9Ik00IDE2QzQgMTggNyAxOSAxMiAxOUMxNyAxOSAyMCAxOCAyMCAxNiIgc3Ryb2tlPSIjRjU5RTBCIiBzdHJva2Utd2lkdGg9IjEuNSIvPjwvc3ZnPg==`,
|
|
55
|
+
// Poached egg
|
|
56
|
+
egg_poached: `data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSI+PHBhdGggZD0iTTUgMTFDNCA4IDYgNSAxMiA1QzE4IDUgMjAgOCAxOSAxMUMxOCAxNCAxNiAxNyAxMiAxN0M4IDE3IDYgMTQgNSAxMVoiIGZpbGw9IiNGRkZGRkYiIHN0cm9rZT0iI0U1RTdFQiIgc3Ryb2tlLXdpZHRoPSIxLjUiLz48ZWxsaXBzZSBjeD0iMTIiIGN5PSIxMSIgcng9IjQiIHJ5PSIzIiBmaWxsPSIjRkJCRjI0Ii8+PGVsbGlwc2UgY3g9IjEyIiBjeT0iMTEiIHJ4PSIyIiByeT0iMS41IiBmaWxsPSIjRjU5RTBCIi8+PC9zdmc+`
|
|
57
|
+
};
|
|
58
|
+
var VEGETABLE_ICONS = {
|
|
59
|
+
// Broccoli
|
|
60
|
+
broccoli: `data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSI+PHBhdGggZD0iTTEyIDIxVjE0IiBzdHJva2U9IiM2NUExNDUiIHN0cm9rZS13aWR0aD0iMyIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIi8+PGNpcmNsZSBjeD0iOCIgY3k9IjgiIHI9IjQiIGZpbGw9IiMyMkM1NUUiLz48Y2lyY2xlIGN4PSIxNiIgY3k9IjgiIHI9IjQiIGZpbGw9IiMyMkM1NUUiLz48Y2lyY2xlIGN4PSIxMiIgY3k9IjUiIHI9IjQiIGZpbGw9IiMyMkM1NUUiLz48Y2lyY2xlIGN4PSIxMiIgY3k9IjEwIiByPSI0IiBmaWxsPSIjMjJDNTVFIi8+PGNpcmNsZSBjeD0iOSIgY3k9IjYiIHI9IjIiIGZpbGw9IiM0QURFODAiLz48Y2lyY2xlIGN4PSIxNCIgY3k9IjgiIHI9IjEuNSIgZmlsbD0iIzRBREU4MCIvPjwvc3ZnPg==`,
|
|
61
|
+
// Asparagus
|
|
62
|
+
asparagus: `data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSI+PHBhdGggZD0iTTggMjFWOEw5IDRMMTAgOFYyMSIgc3Ryb2tlPSIjNjVBMTQ1IiBzdHJva2Utd2lkdGg9IjIiIGZpbGw9IiM2NUExNDUiLz48cGF0aCBkPSJNMTEgMjFWOUwxMiA1TDEzIDlWMjEiIHN0cm9rZT0iIzIyQzU1RSIgc3Ryb2tlLXdpZHRoPSIyIiBmaWxsPSIjMjJDNTVFIi8+PHBhdGggZD0iTTE0IDIxVjEwTDE1IDZMMTYgMTBWMjEiIHN0cm9rZT0iIzY1QTE0NSIgc3Ryb2tlLXdpZHRoPSIyIiBmaWxsPSIjNjVBMTQ1Ii8+PGNpcmNsZSBjeD0iOSIgY3k9IjQiIHI9IjEuNSIgZmlsbD0iIzE2QTM0QSIvPjxjaXJjbGUgY3g9IjEyIiBjeT0iNSIgcj0iMS41IiBmaWxsPSIjMTZBMzRBIi8+PGNpcmNsZSBjeD0iMTUiIGN5PSI2IiByPSIxLjUiIGZpbGw9IiMxNkEzNEEiLz48L3N2Zz4=`,
|
|
63
|
+
// Potato
|
|
64
|
+
potato: `data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSI+PHBhdGggZD0iTTUgMTJDNSA4IDggNSAxMiA1QzE2IDUgMTkgOCAxOSAxMkMxOSAxNiAxNiAxOSAxMiAxOUM4IDE5IDUgMTYgNSAxMloiIGZpbGw9IiNEOTc3MDYiIHN0cm9rZT0iI0I0NTMwOSIgc3Ryb2tlLXdpZHRoPSIxLjUiLz48Y2lyY2xlIGN4PSI5IiBjeT0iMTAiIHI9IjEiIGZpbGw9IiNCNDUzMDkiLz48Y2lyY2xlIGN4PSIxNCIgY3k9IjkiIHI9IjAuNzUiIGZpbGw9IiNCNDUzMDkiLz48Y2lyY2xlIGN4PSIxMSIgY3k9IjE0IiByPSIwLjc1IiBmaWxsPSIjQjQ1MzA5Ii8+PGNpcmNsZSBjeD0iMTYiIGN5PSIxMyIgcj0iMC41IiBmaWxsPSIjQjQ1MzA5Ii8+PHBhdGggZD0iTTggMTJDMTAgMTEgMTQgMTEgMTYgMTIiIHN0cm9rZT0iI0Y1OUUwQiIgc3Ryb2tlLXdpZHRoPSIxIiBzdHJva2UtbGluZWNhcD0icm91bmQiLz48L3N2Zz4=`,
|
|
65
|
+
// Carrot
|
|
66
|
+
carrot: `data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSI+PHBhdGggZD0iTTEyIDZDMTAgNiA4IDggNyAxMUM2IDE0IDYgMTggOCAyMEwxMiAyMUwxNiAyMEMxOCAxOCAxOCAxNCAxNyAxMUMxNiA4IDE0IDYgMTIgNloiIGZpbGw9IiNGQjkyM0MiIHN0cm9rZT0iI0VBNTgwQyIgc3Ryb2tlLXdpZHRoPSIxLjUiLz48cGF0aCBkPSJNMTAgM0MxMCAzIDkgNSAxMCA2TTEyIDJDMTIgMiAxMSA1IDEyIDZNMTQgM0MxNCAzIDE1IDUgMTQgNiIgc3Ryb2tlPSIjMjJDNTVFIiBzdHJva2Utd2lkdGg9IjIiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIvPjxwYXRoIGQ9Ik05IDEyQzExIDExIDEzIDExIDE1IDEyIiBzdHJva2U9IiNGRUQ3QUEiIHN0cm9rZS13aWR0aD0iMSIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIi8+PHBhdGggZD0iTTEwIDE2QzExIDE1IDEzIDE1IDE0IDE2IiBzdHJva2U9IiNGRUQ3QUEiIHN0cm9rZS13aWR0aD0iMSIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIi8+PC9zdmc+`
|
|
67
|
+
};
|
|
68
|
+
var GRAIN_ICONS = {
|
|
69
|
+
// White rice
|
|
70
|
+
rice_white: `data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSI+PHBhdGggZD0iTTQgMTFDNCAxMSA0IDE4IDEyIDE4QzIwIDE4IDIwIDExIDIwIDExSDRaIiBmaWxsPSIjRkZGRkZGIiBzdHJva2U9IiNFNUU3RUIiIHN0cm9rZS13aWR0aD0iMS41Ii8+PHBhdGggZD0iTTUgMThDNSAxOCA2IDIxIDEyIDIxQzE4IDIxIDE5IDE4IDE5IDE4IiBzdHJva2U9IiNFNUU3RUIiIHN0cm9rZS13aWR0aD0iMS41IiBzdHJva2UtbGluZWNhcD0icm91bmQiLz48ZWxsaXBzZSBjeD0iOCIgY3k9IjkiIHJ4PSIxLjUiIHJ5PSIxIiBmaWxsPSIjRkVGM0M3Ii8+PGVsbGlwc2UgY3g9IjEyIiBjeT0iOCIgcng9IjEuNSIgcnk9IjEiIGZpbGw9IiNGRUYzQzciLz48ZWxsaXBzZSBjeD0iMTYiIGN5PSI5IiByeD0iMS41IiByeT0iMSIgZmlsbD0iI0ZFRjNDNyIvPjxlbGxpcHNlIGN4PSIxMCIgY3k9IjExIiByeD0iMS41IiByeT0iMSIgZmlsbD0iI0ZFRjNDNyIvPjxlbGxpcHNlIGN4PSIxNCIgY3k9IjExIiByeD0iMS41IiByeT0iMSIgZmlsbD0iI0ZFRjNDNyIvPjwvc3ZnPg==`,
|
|
71
|
+
// Pasta
|
|
72
|
+
pasta: `data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSI+PHBhdGggZD0iTTQgMTRDNSAxMSA4IDkgMTIgOUMxNiA5IDE5IDExIDIwIDE0IiBzdHJva2U9IiNGREU2OEEiIHN0cm9rZS13aWR0aD0iMyIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIi8+PHBhdGggZD0iTTYgMTdDNyAxNCA5IDEyIDEyIDEyQzE1IDEyIDE3IDE0IDE4IDE3IiBzdHJva2U9IiNGREU2OEEiIHN0cm9rZS13aWR0aD0iMyIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIi8+PHBhdGggZD0iTTggMjBDOSAxOCAxMCAxNiAxMiAxNkMxNCAxNiAxNSAxOCAxNiAyMCIgc3Ryb2tlPSIjRkRFNjhBIiBzdHJva2Utd2lkdGg9IjMiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIvPjxwYXRoIGQ9Ik0zIDhDNCAxMCA2IDEyIDggMTJNMjEgOEMyMCAxMCAxOCAxMiAxNiAxMk0xMiA0VjkiIHN0cm9rZT0iI0Y1OUUwQiIgc3Ryb2tlLXdpZHRoPSIyIiBzdHJva2UtbGluZWNhcD0icm91bmQiLz48L3N2Zz4=`,
|
|
73
|
+
// Quinoa
|
|
74
|
+
quinoa: `data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSI+PHBhdGggZD0iTTQgMTFDNCAxMSA0IDE4IDEyIDE4QzIwIDE4IDIwIDExIDIwIDExSDRaIiBmaWxsPSIjRkZGRkZGIiBzdHJva2U9IiNFNUU3RUIiIHN0cm9rZS13aWR0aD0iMS41Ii8+PHBhdGggZD0iTTUgMThDNSAxOCA2IDIxIDEyIDIxQzE4IDIxIDE5IDE4IDE5IDE4IiBzdHJva2U9IiNFNUU3RUIiIHN0cm9rZS13aWR0aD0iMS41IiBzdHJva2UtbGluZWNhcD0icm91bmQiLz48Y2lyY2xlIGN4PSI3IiBjeT0iMTAiIHI9IjEiIGZpbGw9IiNGREU2OEEiLz48Y2lyY2xlIGN4PSIxMCIgY3k9IjkiIHI9IjEiIGZpbGw9IiNGRUY5QzMiLz48Y2lyY2xlIGN4PSIxMyIgY3k9IjgiIHI9IjEiIGZpbGw9IiNGREU2OEEiLz48Y2lyY2xlIGN4PSIxNiIgY3k9IjkiIHI9IjEiIGZpbGw9IiNGRUY5QzMiLz48Y2lyY2xlIGN4PSI4IiBjeT0iMTMiIHI9IjEiIGZpbGw9IiNGRUY5QzMiLz48Y2lyY2xlIGN4PSIxMiIgY3k9IjExIiByPSIxIiBmaWxsPSIjRkRFNjhBIi8+PGNpcmNsZSBjeD0iMTUiIGN5PSIxMiIgcj0iMSIgZmlsbD0iI0ZFRjlDMyIvPjwvc3ZnPg==`
|
|
75
|
+
};
|
|
76
|
+
var INGREDIENT_ICONS = {
|
|
77
|
+
...POULTRY_ICONS,
|
|
78
|
+
...BEEF_ICONS,
|
|
79
|
+
...SEAFOOD_ICONS,
|
|
80
|
+
...EGG_ICONS,
|
|
81
|
+
...VEGETABLE_ICONS,
|
|
82
|
+
...GRAIN_ICONS
|
|
83
|
+
};
|
|
84
|
+
var getIcon = (id, category) => {
|
|
85
|
+
if (INGREDIENT_ICONS[id]) {
|
|
86
|
+
return INGREDIENT_ICONS[id];
|
|
87
|
+
}
|
|
88
|
+
if (category && CATEGORY_ICONS[category]) {
|
|
89
|
+
return CATEGORY_ICONS[category];
|
|
90
|
+
}
|
|
91
|
+
return void 0;
|
|
92
|
+
};
|
|
93
|
+
export {
|
|
94
|
+
BEEF_ICONS,
|
|
95
|
+
CATEGORY_ICONS,
|
|
96
|
+
EGG_ICONS,
|
|
97
|
+
GRAIN_ICONS,
|
|
98
|
+
INGREDIENT_ICONS,
|
|
99
|
+
POULTRY_ICONS,
|
|
100
|
+
SEAFOOD_ICONS,
|
|
101
|
+
VEGETABLE_ICONS,
|
|
102
|
+
getIcon
|
|
103
|
+
};
|
|
104
|
+
//# sourceMappingURL=icons.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../icons.ts"],"sourcesContent":["// SVG icons as data URLs for the cooking-temperature library\n\n// =============================================================================\n// CATEGORY ICONS\n// =============================================================================\n\nexport const CATEGORY_ICONS: Record<string, string> = {\n // Poultry - Chicken drumstick\n poultry: `data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSI+PHBhdGggZD0iTTE1LjUgM0MxMy4wMSAzIDExIDUuMDEgMTEgNy41QzExIDguMjcgMTEuMTkgOS4wMSAxMS41MyA5LjY1TDMuNSAxNy42OEMzLjE4IDE4IDMgMTguNDMgMyAxOC44OEMzIDE5LjgxIDMuNzQgMjAuNjQgNC42NyAyMC45MUM1LjA4IDIxLjAzIDUuNTMgMjEgNS45IDIwLjgyTDYuNSAyMC41TDcuNDQgMjEuMzFDNy43OCAyMS42IDguMjMgMjEuNzUgOC42OSAyMS43NUM5LjQgMjEuNzUgMTAuMDUgMjEuNDIgMTAuNDUgMjAuODhMMTEgMjAuMTNMMTEuNTUgMjAuODhDMTEuOTUgMjEuNDIgMTIuNiAyMS43NSAxMy4zMSAyMS43NUMxMy43NyAyMS43NSAxNC4yMiAyMS42IDE0LjU2IDIxLjMxTDE1LjUgMjAuNUwxNi4xIDIwLjgyQzE2LjQ3IDIxIDE2LjkyIDIxLjAzIDE3LjMzIDIwLjkxQzE4LjI2IDIwLjY0IDE5IDE5LjgxIDE5IDE4Ljg4QzE5IDE4LjQzIDE4LjgyIDE4IDE4LjUgMTcuNjhMMTQuMzUgMTMuNTNDMTQuOTkgMTMuMTkgMTUuNzMgMTMgMTYuNSAxM0MxOC45OSAxMyAyMSAxMC45OSAyMSA4LjVDMjEgNi4wMSAxOC45OSA0IDE2LjUgNEMxNi4xNyA0IDE1LjgzIDQuMDMgMTUuNSA0LjFWM1oiIGZpbGw9IiNGNTlFMEIiLz48cGF0aCBkPSJNMTYuNSA1QzE4LjQzIDUgMjAgNi41NyAyMCA4LjVDMjAgMTAuNDMgMTguNDMgMTIgMTYuNSAxMkMxNS4zNiAxMiAxNC4zMyAxMS40OCAxMy42MiAxMC42N0wxMy4yOCAxMC4yOEwxMi45MyA5Ljg0QzEyLjM0IDkuMDMgMTIgOC4wMyAxMiA3QzEyIDUuMDcgMTMuNTcgMy41IDE1LjUgMy41VjUuNUMxNC42OCA1LjUgMTQgNi4xOCAxNCA3QzE0IDcuNTYgMTQuMTkgOC4wOCAxNC41MSA4LjQ5TDE0Ljg2IDguOTNMMTUuMjEgOS4zMkMxNS42NSA5Ljc1IDE2LjA1IDEwIDE2LjUgMTBDMTcuMzMgMTAgMTggOS4zMyAxOCA4LjVDMTggNy42NyAxNy4zMyA3IDE2LjUgN1Y1WiIgZmlsbD0iI0Q5NzcwNiIvPjwvc3ZnPg==`,\n\n // Beef - Steak cut\n beef: `data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSI+PHBhdGggZD0iTTIwLjUgNkMxOS4xIDMuOCAxNi4xIDIuNSAxMi41IDIuNUM3LjUgMi41IDMuNSA1LjUgMy41IDlDMy41IDEwLjggNC4zIDEyLjQgNS43IDE0TDQgMTguNUM0IDE5LjUgNS41IDIxIDcuNSAyMUM4LjIgMjEgOC44IDIwLjggOS41IDIwLjNMMTIgMThMMTQuNSAyMC4zQzE1LjIgMjAuOCAxNS44IDIxIDE2LjUgMjFDMTguNSAyMSAyMCAxOS41IDIwIDE4LjVMMTguMyAxNEMxOS43IDEyLjQgMjAuNSAxMC44IDIwLjUgOVY2WiIgZmlsbD0iI0VGNDQ0NCIvPjxwYXRoIGQ9Ik0xNy41IDlDMTcuNSAxMC45IDE1LjQgMTIuNSAxMi41IDEyLjVDOS42IDEyLjUgNy41IDEwLjkgNy41IDlDNy41IDcuMSA5LjYgNS41IDEyLjUgNS41QzE1LjQgNS41IDE3LjUgNy4xIDE3LjUgOVoiIGZpbGw9IiNGQ0EwQTAiLz48cGF0aCBkPSJNMTQgOEMxNCA4LjggMTMuMyA5LjUgMTIuNSA5LjVDMTEuNyA5LjUgMTEgOC44IDExIDhDMTEgNy4yIDExLjcgNi41IDEyLjUgNi41QzEzLjMgNi41IDE0IDcuMiAxNCA4WiIgZmlsbD0iI0ZFRTJFMiIvPjwvc3ZnPg==`,\n\n // Pork - Pork chop/meat on bone\n pork: `data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSI+PHBhdGggZD0iTTQgMTBDNCAxNC40IDcuNiAxOCAxMiAxOEMxNi40IDE4IDIwIDE0LjQgMjAgMTBDMjAgNy45IDE5LjIgNiAxNy44IDQuNkMxNi44IDMuNiAxNS41IDMgMTQgM0gxMEM4LjUgMyA3LjIgMy42IDYuMiA0LjZDNC44IDYgNCAxLjkgNCAxMFoiIGZpbGw9IiNGQkI0QjQiLz48cGF0aCBkPSJNMTIgMThWMjFNMTIgMjFIOE0xMiAyMUgxNiIgc3Ryb2tlPSIjRkVFMkUyIiBzdHJva2Utd2lkdGg9IjIiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIvPjxwYXRoIGQ9Ik04IDlDOCAxMC43IDkuMyAxMiAxMSAxMiIgc3Ryb2tlPSIjRkRFNjhBIiBzdHJva2Utd2lkdGg9IjIiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIvPjxwYXRoIGQ9Ik03IDVDNi41IDYgNi41IDcgNyA4IiBzdHJva2U9IiNFRjQ0NDQiIHN0cm9rZS13aWR0aD0iMS41IiBzdHJva2UtbGluZWNhcD0icm91bmQiLz48cGF0aCBkPSJNMTcgNUMxNy41IDYgMTcuNSA3IDE3IDgiIHN0cm9rZT0iI0VGNDQ0NCIgc3Ryb2tlLXdpZHRoPSIxLjUiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIvPjwvc3ZnPg==`,\n\n // Seafood Fish - Fish\n seafood_fish: `data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSI+PHBhdGggZD0iTTIyIDEyQzIyIDEyIDE5IDE3IDE0IDE3QzEyIDE3IDEwLjUgMTYuNSA5LjUgMTZMNiAyMFY0TDkuNSA4QzEwLjUgNy41IDEyIDcgMTQgN0MxOSA3IDIyIDEyIDIyIDEyWiIgZmlsbD0iIzYwQTVGQSIvPjxjaXJjbGUgY3g9IjE2IiBjeT0iMTEiIHI9IjEuNSIgZmlsbD0iIzFGMjkzNyIvPjxjaXJjbGUgY3g9IjE2LjMiIGN5PSIxMC43IiByPSIwLjUiIGZpbGw9IiNGRkZGRkYiLz48cGF0aCBkPSJNMTQgMTJDMTQgMTIgMTIgMTMgMTAuNSAxM0M5IDEzIDguNSAxMi41IDguNSAxMkM4LjUgMTEuNSA5IDExIDEwLjUgMTFDMTIgMTEgMTQgMTIgMTQgMTJaIiBmaWxsPSIjOTNDNUZEIi8+PHBhdGggZD0iTTYgNEwzIDFNNiAyMEwzIDIzIiBzdHJva2U9IiMzQjgyRjYiIHN0cm9rZS13aWR0aD0iMiIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIi8+PC9zdmc+`,\n\n // Seafood Shellfish - Shrimp\n seafood_shellfish: `data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSI+PHBhdGggZD0iTTE5IDdDMTkgNyAxOCA0IDE0IDRDMTAgNCAxMCA3IDEwIDdDMTAgNyA4IDggNyAxMEM2IDEyIDYgMTQgNyAxNkM4IDE4IDEwIDE5IDEyIDE5QzE0IDE5IDE1IDE4IDE2IDE3TDE4IDE5TDIwIDE3TDE4IDE1QzE5IDE0IDIwIDEyIDIwIDEwQzIwIDggMTkgNyAxOSA3WiIgZmlsbD0iI0ZCQjRCNCIvPjxwYXRoIGQ9Ik0xMyA4QzE0LjEgOCAxNSA4LjkgMTUgMTBDMTUgMTEuMSAxNC4xIDEyIDEzIDEyQzExLjkgMTIgMTEgMTEuMSAxMSAxMEMxMSA4LjkgMTEuOSA4IDEzIDhaIiBmaWxsPSIjRkVFMkUyIi8+PHBhdGggZD0iTTE1IDRDMTUgNCAxNiAyIDE4IDJNMTMgNEMxMyA0IDEzIDIgMTEgMiIgc3Ryb2tlPSIjRjg3MTcxIiBzdHJva2Utd2lkdGg9IjEuNSIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIi8+PGNpcmNsZSBjeD0iMTUiIGN5PSIxMCIgcj0iMSIgZmlsbD0iIzFGMjkzNyIvPjwvc3ZnPg==`,\n\n // Egg\n egg: `data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSI+PHBhdGggZD0iTTEyIDNDOCAzIDUgOC41IDUgMTNDNSAxNy41IDguMSAyMSAxMiAyMUMxNS45IDIxIDE5IDE3LjUgMTkgMTNDMTkgOC41IDE2IDMgMTIgM1oiIGZpbGw9IiNGRUY5QzMiIHN0cm9rZT0iI0ZERTY4QSIgc3Ryb2tlLXdpZHRoPSIxLjUiLz48ZWxsaXBzZSBjeD0iMTIiIGN5PSIxMyIgcng9IjUiIHJ5PSI0IiBmaWxsPSIjRkJCRjI0Ii8+PGVsbGlwc2UgY3g9IjEyIiBjeT0iMTMiIHJ4PSIzIiByeT0iMi41IiBmaWxsPSIjRjU5RTBCIi8+PHBhdGggZD0iTTEwIDEyQzEwLjUgMTEuNSAxMS41IDExLjUgMTIgMTIiIHN0cm9rZT0iI0ZFRjlDMyIgc3Ryb2tlLXdpZHRoPSIxIiBzdHJva2UtbGluZWNhcD0icm91bmQiLz48L3N2Zz4=`,\n\n // Vegetable - Broccoli\n vegetable: `data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSI+PHBhdGggZD0iTTEyIDIxVjE0IiBzdHJva2U9IiM2NUExNDUiIHN0cm9rZS13aWR0aD0iMyIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIi8+PHBhdGggZD0iTTkgMjFWMTYiIHN0cm9rZT0iIzY1QTE0NSIgc3Ryb2tlLXdpZHRoPSIyIiBzdHJva2UtbGluZWNhcD0icm91bmQiLz48cGF0aCBkPSJNMTUgMjFWMTYiIHN0cm9rZT0iIzY1QTE0NSIgc3Ryb2tlLXdpZHRoPSIyIiBzdHJva2UtbGluZWNhcD0icm91bmQiLz48Y2lyY2xlIGN4PSI4IiBjeT0iOCIgcj0iNCIgZmlsbD0iIzIyQzU1RSIvPjxjaXJjbGUgY3g9IjE2IiBjeT0iOCIgcj0iNCIgZmlsbD0iIzIyQzU1RSIvPjxjaXJjbGUgY3g9IjEyIiBjeT0iNSIgcj0iNCIgZmlsbD0iIzIyQzU1RSIvPjxjaXJjbGUgY3g9IjEyIiBjeT0iMTAiIHI9IjQiIGZpbGw9IiMyMkM1NUUiLz48Y2lyY2xlIGN4PSI2IiBjeT0iMTEiIHI9IjIuNSIgZmlsbD0iIzE2QTM0QSIvPjxjaXJjbGUgY3g9IjE4IiBjeT0iMTEiIHI9IjIuNSIgZmlsbD0iIzE2QTM0QSIvPjxjaXJjbGUgY3g9IjkiIGN5PSI2IiByPSIyIiBmaWxsPSIjNEFERTgwIi8+PGNpcmNsZSBjeD0iMTQiIGN5PSI4IiByPSIxLjUiIGZpbGw9IiM0QURFODAiLz48L3N2Zz4=`,\n\n // Grain - Rice bowl\n grain: `data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSI+PHBhdGggZD0iTTQgMTFDNCAxMSA0IDE4IDEyIDE4QzIwIDE4IDIwIDExIDIwIDExSDRaIiBmaWxsPSIjRkZGRkZGIiBzdHJva2U9IiNFNUU3RUIiIHN0cm9rZS13aWR0aD0iMS41Ii8+PHBhdGggZD0iTTUgMThDNSAxOCA2IDIxIDEyIDIxQzE4IDIxIDE5IDE4IDE5IDE4IiBzdHJva2U9IiNFNUU3RUIiIHN0cm9rZS13aWR0aD0iMS41IiBzdHJva2UtbGluZWNhcD0icm91bmQiLz48ZWxsaXBzZSBjeD0iOCIgY3k9IjkiIHJ4PSIxLjUiIHJ5PSIxIiBmaWxsPSIjRkVGM0M3Ii8+PGVsbGlwc2UgY3g9IjEyIiBjeT0iOCIgcng9IjEuNSIgcnk9IjEiIGZpbGw9IiNGRUYzQzciLz48ZWxsaXBzZSBjeD0iMTYiIGN5PSI5IiByeD0iMS41IiByeT0iMSIgZmlsbD0iI0ZFRjNDNyIvPjxlbGxpcHNlIGN4PSIxMCIgY3k9IjExIiByeD0iMS41IiByeT0iMSIgZmlsbD0iI0ZFRjNDNyIvPjxlbGxpcHNlIGN4PSIxNCIgY3k9IjExIiByeD0iMS41IiByeT0iMSIgZmlsbD0iI0ZFRjNDNyIvPjxlbGxpcHNlIGN4PSI3IiBjeT0iMTIiIHJ4PSIxIiByeT0iMC43NSIgZmlsbD0iI0ZFRjNDNyIvPjxlbGxpcHNlIGN4PSIxNyIgY3k9IjEyIiByeD0iMSIgcnk9IjAuNzUiIGZpbGw9IiNGRUYzQzciLz48L3N2Zz4=`,\n};\n\n// =============================================================================\n// INGREDIENT ICONS - Poultry\n// =============================================================================\n\nexport const POULTRY_ICONS: Record<string, string> = {\n // Chicken breast\n chicken_breast: `data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSI+PHBhdGggZD0iTTUgOEM1IDUgOCAzIDEyIDNDMTYgMyAxOSA1IDE5IDhDMTkgMTEgMTggMTUgMTcgMTdDMTYgMTkgMTQgMjAgMTIgMjBDMTAgMjAgOCAxOSA3IDE3QzYgMTUgNSAxMSA1IDhaIiBmaWxsPSIjRkRFNjhBIiBzdHJva2U9IiNGNTlFMEIiIHN0cm9rZS13aWR0aD0iMS41Ii8+PHBhdGggZD0iTTggOEMxMCA3IDE0IDcgMTYgOCIgc3Ryb2tlPSIjRjU5RTBCIiBzdHJva2Utd2lkdGg9IjEiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIvPjxwYXRoIGQ9Ik05IDEyQzEwIDExIDE0IDExIDE1IDEyIiBzdHJva2U9IiNGNTlFMEIiIHN0cm9rZS13aWR0aD0iMSIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIi8+PC9zdmc+`,\n\n // Chicken thigh\n chicken_thigh: `data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSI+PHBhdGggZD0iTTE2IDRDMTQgMyAxMCAzIDggNEM2IDUgNCAxMCA1IDE0QzYgMTggOCAyMCAxMSAyMEwxMiAxOEwxNCAxNUMxNiAxMiAxOCA4IDE4IDZDMTggNSAxNyA0IDE2IDRaIiBmaWxsPSIjRkRFNjhBIiBzdHJva2U9IiNGNTlFMEIiIHN0cm9rZS13aWR0aD0iMS41Ii8+PHBhdGggZD0iTTExIDIwTDEwIDIySDgiIHN0cm9rZT0iI0Q5NzcwNiIgc3Ryb2tlLXdpZHRoPSIyIiBzdHJva2UtbGluZWNhcD0icm91bmQiLz48cGF0aCBkPSJNNyA5QzkgOCAxMiA4IDE0IDkiIHN0cm9rZT0iI0Y1OUUwQiIgc3Ryb2tlLXdpZHRoPSIxIiBzdHJva2UtbGluZWNhcD0icm91bmQiLz48L3N2Zz4=`,\n\n // Whole chicken\n whole_chicken: `data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSI+PHBhdGggZD0iTTEyIDJDOCAyIDQgNiA0IDExQzQgMTQgNSAxNyA3IDE5TDYgMjFIOEwxMCAxOUgxNEwxNiAyMUgxOEwxNyAxOUMxOSAxNyAyMCAxNCAyMCAxMUMyMCA2IDE2IDIgMTIgMloiIGZpbGw9IiNGREU2OEEiIHN0cm9rZT0iI0Y1OUUwQiIgc3Ryb2tlLXdpZHRoPSIxLjUiLz48cGF0aCBkPSJNOCA5QzEwIDggMTQgOCAxNiA5IiBzdHJva2U9IiNGNTlFMEIiIHN0cm9rZS13aWR0aD0iMSIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIi8+PHBhdGggZD0iTTkgMTNDMTEgMTIgMTMgMTIgMTUgMTMiIHN0cm9rZT0iI0Y1OUUwQiIgc3Ryb2tlLXdpZHRoPSIxIiBzdHJva2UtbGluZWNhcD0icm91bmQiLz48Y2lyY2xlIGN4PSI5IiBjeT0iNyIgcj0iMSIgZmlsbD0iI0Q5NzcwNiIvPjxjaXJjbGUgY3g9IjE1IiBjeT0iNyIgcj0iMSIgZmlsbD0iI0Q5NzcwNiIvPjwvc3ZnPg==`,\n\n // Turkey breast\n turkey_breast: `data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSI+PHBhdGggZD0iTTQgOUM0IDUgNyAyIDEyIDJDMTcgMiAyMCA1IDIwIDlDMjAgMTMgMTggMTggMTYgMjBMMTQgMjFIMTBMOCAyMEM2IDE4IDQgMTMgNCA5WiIgZmlsbD0iI0ZCQjRCNCIgc3Ryb2tlPSIjRjg3MTcxIiBzdHJva2Utd2lkdGg9IjEuNSIvPjxwYXRoIGQ9Ik03IDlDMTAgNyAxNCA3IDE3IDkiIHN0cm9rZT0iI0Y4NzE3MSIgc3Ryb2tlLXdpZHRoPSIxIiBzdHJva2UtbGluZWNhcD0icm91bmQiLz48cGF0aCBkPSJNOCAxM0MxMCAxMiAxNCAxMiAxNiAxMyIgc3Ryb2tlPSIjRjg3MTcxIiBzdHJva2Utd2lkdGg9IjEiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIvPjwvc3ZnPg==`,\n};\n\n// =============================================================================\n// INGREDIENT ICONS - Beef\n// =============================================================================\n\nexport const BEEF_ICONS: Record<string, string> = {\n // Ribeye steak\n beef_steak_ribeye: `data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSI+PHBhdGggZD0iTTQgOEM0IDUgNyAzIDEyIDNDMTcgMyAyMCA1IDIwIDhDMjAgMTEgMTkgMTUgMTcgMThDMTUgMjAgMTQgMjEgMTIgMjFDMTAgMjEgOSAyMCA3IDE4QzUgMTUgNCAxMSA0IDhaIiBmaWxsPSIjRUY0NDQ0IiBzdHJva2U9IiNCOTFDMUMiIHN0cm9rZS13aWR0aD0iMS41Ii8+PHBhdGggZD0iTTcgOEMxMCA3IDE0IDcgMTcgOCIgc3Ryb2tlPSIjRkVFMkUyIiBzdHJva2Utd2lkdGg9IjIiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIvPjxwYXRoIGQ9Ik04IDEyQzEwIDExIDE0IDExIDE2IDEyIiBzdHJva2U9IiNGQ0EwQTAiIHN0cm9rZS13aWR0aD0iMS41IiBzdHJva2UtbGluZWNhcD0icm91bmQiLz48Y2lyY2xlIGN4PSIxMCIgY3k9IjE1IiByPSIxLjUiIGZpbGw9IiNGRUUyRTIiLz48L3N2Zz4=`,\n\n // Ground beef\n beef_ground: `data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSI+PHBhdGggZD0iTTQgMTBDNCA3IDcgNSAxMiA1QzE3IDUgMjAgNyAyMCAxMEMyMCAxMyAxNyAxNSAxMiAxNUM3IDE1IDQgMTMgNCAxMFoiIGZpbGw9IiM5OTFFQjgiLz48cGF0aCBkPSJNNiAxMEMxMCA4IDE0IDggMTggMTAiIHN0cm9rZT0iI0M4NEM2OCIgc3Ryb2tlLXdpZHRoPSIxIiBzdHJva2UtbGluZWNhcD0icm91bmQiLz48cGF0aCBkPSJNOCAxMkMxMCAxMSAxNCAxMSAxNiAxMiIgc3Ryb2tlPSIjQzg0QzY4IiBzdHJva2Utd2lkdGg9IjEiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIvPjxwYXRoIGQ9Ik01IDE1QzUgMTggOCAxOSAxMiAxOUMxNiAxOSAxOSAxOCAxOSAxNSIgc3Ryb2tlPSIjN0YxRDFEIiBzdHJva2Utd2lkdGg9IjEuNSIvPjxjaXJjbGUgY3g9IjgiIGN5PSI5IiByPSIwLjUiIGZpbGw9IiNGRUUyRTIiLz48Y2lyY2xlIGN4PSIxNCIgY3k9IjgiIHI9IjAuNSIgZmlsbD0iI0ZFRTJFMiIvPjxjaXJjbGUgY3g9IjExIiBjeT0iMTEiIHI9IjAuNSIgZmlsbD0iI0ZFRTJFMiIvPjwvc3ZnPg==`,\n\n // Beef roast\n beef_roast: `data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSI+PHJlY3QgeD0iNCIgeT0iNiIgd2lkdGg9IjE2IiBoZWlnaHQ9IjEyIiByeD0iMiIgZmlsbD0iI0VGNDQ0NCIgc3Ryb2tlPSIjQjkxQzFDIiBzdHJva2Utd2lkdGg9IjEuNSIvPjxwYXRoIGQ9Ik00IDEwSDE4IiBzdHJva2U9IiNGQ0EwQTAiIHN0cm9rZS13aWR0aD0iMiIvPjxwYXRoIGQ9Ik00IDE0SDE4IiBzdHJva2U9IiNGQ0EwQTAiIHN0cm9rZS13aWR0aD0iMiIvPjxwYXRoIGQ9Ik0yMCAxMkgyMiIgc3Ryb2tlPSIjRDk3NzA2IiBzdHJva2Utd2lkdGg9IjIiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIvPjxwYXRoIGQ9Ik0yIDEySDQiIHN0cm9rZT0iI0Q5NzcwNiIgc3Ryb2tlLXdpZHRoPSIyIiBzdHJva2UtbGluZWNhcD0icm91bmQiLz48L3N2Zz4=`,\n};\n\n// =============================================================================\n// INGREDIENT ICONS - Seafood\n// =============================================================================\n\nexport const SEAFOOD_ICONS: Record<string, string> = {\n // Salmon fillet\n salmon_fillet: `data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSI+PHBhdGggZD0iTTMgMTBDMyA4IDYgNiAxMiA2QzE4IDYgMjEgOCAyMSAxMEMyMSAxMiAxOSAxNyAxNiAxOEM2IDE4IDMgMTIgMyAxMFoiIGZpbGw9IiNGQjkyM0MiIHN0cm9rZT0iI0VBNTgwQyIgc3Ryb2tlLXdpZHRoPSIxLjUiLz48cGF0aCBkPSJNNiAxMEMxMCA5IDE0IDkgMTggMTAiIHN0cm9rZT0iI0ZFRDdBQSIgc3Ryb2tlLXdpZHRoPSIxLjUiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIvPjxwYXRoIGQ9Ik03IDEzQzEwIDEyIDE0IDEyIDE3IDEzIiBzdHJva2U9IiNGRUQ3QUEiIHN0cm9rZS13aWR0aD0iMS41IiBzdHJva2UtbGluZWNhcD0icm91bmQiLz48cGF0aCBkPSJNMTkgOEMyMCA3IDIxIDcgMjIgOCIgc3Ryb2tlPSIjOTk5IiBzdHJva2Utd2lkdGg9IjEiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIvPjwvc3ZnPg==`,\n\n // Shrimp\n shrimp: `data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSI+PHBhdGggZD0iTTE4IDZDMTggNiAxNyAzIDEzIDNDOSAzIDkgNiA5IDZDOSA2IDcgNyA2IDlDNSAxMSA1IDEzIDYgMTVDNyAxNyA5IDE4IDExIDE4QzEzIDE4IDE0IDE3IDE1IDE2TDE3IDE4TDE5IDE2TDE3IDE0QzE4IDEzIDE5IDExIDE5IDlDMTkgNyAxOCA2IDE4IDZaIiBmaWxsPSIjRkJCNEI0IiBzdHJva2U9IiNGODcxNzEiIHN0cm9rZS13aWR0aD0iMS41Ii8+PHBhdGggZD0iTTEyIDdDMTMuMSA3IDE0IDcuOSAxNCA5QzE0IDEwLjEgMTMuMSAxMSAxMiAxMUMxMC45IDExIDEwIDEwLjEgMTAgOUMxMCA3LjkgMTAuOSA3IDEyIDdaIiBmaWxsPSIjRkVFMkUyIi8+PHBhdGggZD0iTTE0IDNDMTQGNCAXNSIYTCE3IDJNMTIgM0MxMiAzIDEyIDEgMTAgMSIgc3Ryb2tlPSIjRjg3MTcxIiBzdHJva2Utd2lkdGg9IjEuNSIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIi8+PGNpcmNsZSBjeD0iMTQiIGN5PSI5IiByPSIxIiBmaWxsPSIjMUYyOTM3Ii8+PC9zdmc+`,\n\n // Cod fillet\n cod_fillet: `data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSI+PHBhdGggZD0iTTMgMTFDMyA5IDYgNyAxMiA3QzE4IDcgMjEgOSAyMSAxMUMyMSAxMyAxOSAxNyAxNiAxN0M2IDE3IDMgMTMgMyAxMVoiIGZpbGw9IiNGRUYzQzciIHN0cm9rZT0iI0ZERTY4QSIgc3Ryb2tlLXdpZHRoPSIxLjUiLz48cGF0aCBkPSJNNiAxMUMxMCAxMCAxNCAxMCAxOCAxMSIgc3Ryb2tlPSIjRkRFNjhBIiBzdHJva2Utd2lkdGg9IjEuNSIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIi8+PHBhdGggZD0iTTggMTNDMTAgMTIgMTQgMTIgMTYgMTMiIHN0cm9rZT0iI0ZERTY4QSIgc3Ryb2tlLXdpZHRoPSIxLjUiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIvPjwvc3ZnPg==`,\n\n // Tuna steak\n tuna_steak: `data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSI+PHBhdGggZD0iTTQgOEM0IDUgNyAzIDEyIDNDMTcgMyAyMCA1IDIwIDhDMjAgMTEgMTggMTYgMTYgMThDMTQgMjAgMTAgMjAgOCAxOEM2IDE2IDQgMTEgNCA4WiIgZmlsbD0iI0VGNDQ0NCIgc3Ryb2tlPSIjQjkxQzFDIiBzdHJva2Utd2lkdGg9IjEuNSIvPjxwYXRoIGQ9Ik03IDhDMTAgNyAxNCA3IDE3IDgiIHN0cm9rZT0iI0ZDQTBBMCIgc3Ryb2tlLXdpZHRoPSIyIiBzdHJva2UtbGluZWNhcD0icm91bmQiLz48cGF0aCBkPSJNOCAxMkMxMCAxMSAxNCAxMSAxNiAxMiIgc3Ryb2tlPSIjRkNBMEEwIiBzdHJva2Utd2lkdGg9IjEuNSIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIi8+PC9zdmc+`,\n};\n\n// =============================================================================\n// INGREDIENT ICONS - Eggs\n// =============================================================================\n\nexport const EGG_ICONS: Record<string, string> = {\n // Fried egg\n egg_fried: `data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSI+PHBhdGggZD0iTTQgMTJDMyA4IDUgNSA4IDRDMTEgMyAxMyA0IDE1IDVDMTcgNiAxOSA1IDIwIDdDMjEgOSAyMSAxMiAyMCAxNEMxOSAxNiAxNyAxOCAxNCAxOUMxMSAyMCA3IDE5IDUgMTdDMyAxNSA0IDE0IDQgMTJaIiBmaWxsPSIjRkZGRkZGIiBzdHJva2U9IiNFNUU3RUIiIHN0cm9rZS13aWR0aD0iMS41Ii8+PGVsbGlwc2UgY3g9IjEyIiBjeT0iMTEiIHJ4PSI1IiByeT0iNCIgZmlsbD0iI0ZCQkYyNCIvPjxlbGxpcHNlIGN4PSIxMiIgY3k9IjExIiByeD0iMyIgcnk9IjIuNSIgZmlsbD0iI0Y1OUUwQiIvPjxwYXRoIGQ9Ik0xMCAxMEMxMC41IDkuNSAxMS41IDkuNSAxMiAxMCIgc3Ryb2tlPSIjRkVGOUMzIiBzdHJva2Utd2lkdGg9IjEiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIvPjwvc3ZnPg==`,\n\n // Boiled egg\n egg_boiled: `data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSI+PHBhdGggZD0iTTEyIDNDOCAzIDUgOC41IDUgMTNDNSAxNy41IDguMSAyMSAxMiAyMUMxNS45IDIxIDE5IDE3LjUgMTkgMTNDMTkgOC41IDE2IDMgMTIgM1oiIGZpbGw9IiNGRUY5QzMiIHN0cm9rZT0iI0ZERTY4QSIgc3Ryb2tlLXdpZHRoPSIxLjUiLz48cGF0aCBkPSJNNSAxMkgxOSIgc3Ryb2tlPSIjRkRFNjhBIiBzdHJva2Utd2lkdGg9IjEuNSIgc3Ryb2tlLWRhc2hhcnJheT0iMiAyIi8+PGVsbGlwc2UgY3g9IjEyIiBjeT0iMTUiIHJ4PSI0IiByeT0iMyIgZmlsbD0iI0ZCQkYyNCIvPjxlbGxpcHNlIGN4PSIxMiIgY3k9IjE1IiByeD0iMiIgcnk9IjEuNSIgZmlsbD0iI0Y1OUUwQiIvPjwvc3ZnPg==`,\n\n // Scrambled eggs\n egg_scrambled: `data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSI+PHBhdGggZD0iTTQgMTBDNCAxMyA3IDE2IDEyIDE2QzE3IDE2IDIwIDEzIDIwIDEwQzIwIDcgMTcgNSAxMiA1QzcgNSA0IDcgNCAxMFoiIGZpbGw9IiNGQkJGMjQiIHN0cm9rZT0iI0Y1OUUwQiIgc3Ryb2tlLXdpZHRoPSIxLjUiLz48cGF0aCBkPSJNNiAxMEM4IDkgMTAgOSAxMiAxMEMxNCAxMSAxNiAxMSAxOCAxMCIgc3Ryb2tlPSIjRkVGOUMzIiBzdHJva2Utd2lkdGg9IjEuNSIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIi8+PHBhdGggZD0iTTggMTNDMTAgMTIgMTQgMTIgMTYgMTMiIHN0cm9rZT0iI0ZFRjlDMyIgc3Ryb2tlLXdpZHRoPSIxLjUiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIvPjxwYXRoIGQ9Ik00IDE2QzQgMTggNyAxOSAxMiAxOUMxNyAxOSAyMCAxOCAyMCAxNiIgc3Ryb2tlPSIjRjU5RTBCIiBzdHJva2Utd2lkdGg9IjEuNSIvPjwvc3ZnPg==`,\n\n // Poached egg\n egg_poached: `data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSI+PHBhdGggZD0iTTUgMTFDNCA4IDYgNSAxMiA1QzE4IDUgMjAgOCAxOSAxMUMxOCAxNCAxNiAxNyAxMiAxN0M4IDE3IDYgMTQgNSAxMVoiIGZpbGw9IiNGRkZGRkYiIHN0cm9rZT0iI0U1RTdFQiIgc3Ryb2tlLXdpZHRoPSIxLjUiLz48ZWxsaXBzZSBjeD0iMTIiIGN5PSIxMSIgcng9IjQiIHJ5PSIzIiBmaWxsPSIjRkJCRjI0Ii8+PGVsbGlwc2UgY3g9IjEyIiBjeT0iMTEiIHJ4PSIyIiByeT0iMS41IiBmaWxsPSIjRjU5RTBCIi8+PC9zdmc+`,\n};\n\n// =============================================================================\n// INGREDIENT ICONS - Vegetables\n// =============================================================================\n\nexport const VEGETABLE_ICONS: Record<string, string> = {\n // Broccoli\n broccoli: `data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSI+PHBhdGggZD0iTTEyIDIxVjE0IiBzdHJva2U9IiM2NUExNDUiIHN0cm9rZS13aWR0aD0iMyIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIi8+PGNpcmNsZSBjeD0iOCIgY3k9IjgiIHI9IjQiIGZpbGw9IiMyMkM1NUUiLz48Y2lyY2xlIGN4PSIxNiIgY3k9IjgiIHI9IjQiIGZpbGw9IiMyMkM1NUUiLz48Y2lyY2xlIGN4PSIxMiIgY3k9IjUiIHI9IjQiIGZpbGw9IiMyMkM1NUUiLz48Y2lyY2xlIGN4PSIxMiIgY3k9IjEwIiByPSI0IiBmaWxsPSIjMjJDNTVFIi8+PGNpcmNsZSBjeD0iOSIgY3k9IjYiIHI9IjIiIGZpbGw9IiM0QURFODAiLz48Y2lyY2xlIGN4PSIxNCIgY3k9IjgiIHI9IjEuNSIgZmlsbD0iIzRBREU4MCIvPjwvc3ZnPg==`,\n\n // Asparagus\n asparagus: `data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSI+PHBhdGggZD0iTTggMjFWOEw5IDRMMTAgOFYyMSIgc3Ryb2tlPSIjNjVBMTQ1IiBzdHJva2Utd2lkdGg9IjIiIGZpbGw9IiM2NUExNDUiLz48cGF0aCBkPSJNMTEgMjFWOUwxMiA1TDEzIDlWMjEiIHN0cm9rZT0iIzIyQzU1RSIgc3Ryb2tlLXdpZHRoPSIyIiBmaWxsPSIjMjJDNTVFIi8+PHBhdGggZD0iTTE0IDIxVjEwTDE1IDZMMTYgMTBWMjEiIHN0cm9rZT0iIzY1QTE0NSIgc3Ryb2tlLXdpZHRoPSIyIiBmaWxsPSIjNjVBMTQ1Ii8+PGNpcmNsZSBjeD0iOSIgY3k9IjQiIHI9IjEuNSIgZmlsbD0iIzE2QTM0QSIvPjxjaXJjbGUgY3g9IjEyIiBjeT0iNSIgcj0iMS41IiBmaWxsPSIjMTZBMzRBIi8+PGNpcmNsZSBjeD0iMTUiIGN5PSI2IiByPSIxLjUiIGZpbGw9IiMxNkEzNEEiLz48L3N2Zz4=`,\n\n // Potato\n potato: `data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSI+PHBhdGggZD0iTTUgMTJDNSA4IDggNSAxMiA1QzE2IDUgMTkgOCAxOSAxMkMxOSAxNiAxNiAxOSAxMiAxOUM4IDE5IDUgMTYgNSAxMloiIGZpbGw9IiNEOTc3MDYiIHN0cm9rZT0iI0I0NTMwOSIgc3Ryb2tlLXdpZHRoPSIxLjUiLz48Y2lyY2xlIGN4PSI5IiBjeT0iMTAiIHI9IjEiIGZpbGw9IiNCNDUzMDkiLz48Y2lyY2xlIGN4PSIxNCIgY3k9IjkiIHI9IjAuNzUiIGZpbGw9IiNCNDUzMDkiLz48Y2lyY2xlIGN4PSIxMSIgY3k9IjE0IiByPSIwLjc1IiBmaWxsPSIjQjQ1MzA5Ii8+PGNpcmNsZSBjeD0iMTYiIGN5PSIxMyIgcj0iMC41IiBmaWxsPSIjQjQ1MzA5Ii8+PHBhdGggZD0iTTggMTJDMTAgMTEgMTQgMTEgMTYgMTIiIHN0cm9rZT0iI0Y1OUUwQiIgc3Ryb2tlLXdpZHRoPSIxIiBzdHJva2UtbGluZWNhcD0icm91bmQiLz48L3N2Zz4=`,\n\n // Carrot\n carrot: `data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSI+PHBhdGggZD0iTTEyIDZDMTAgNiA4IDggNyAxMUM2IDE0IDYgMTggOCAyMEwxMiAyMUwxNiAyMEMxOCAxOCAxOCAxNCAxNyAxMUMxNiA4IDE0IDYgMTIgNloiIGZpbGw9IiNGQjkyM0MiIHN0cm9rZT0iI0VBNTgwQyIgc3Ryb2tlLXdpZHRoPSIxLjUiLz48cGF0aCBkPSJNMTAgM0MxMCAzIDkgNSAxMCA2TTEyIDJDMTIgMiAxMSA1IDEyIDZNMTQgM0MxNCAzIDE1IDUgMTQgNiIgc3Ryb2tlPSIjMjJDNTVFIiBzdHJva2Utd2lkdGg9IjIiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIvPjxwYXRoIGQ9Ik05IDEyQzExIDExIDEzIDExIDE1IDEyIiBzdHJva2U9IiNGRUQ3QUEiIHN0cm9rZS13aWR0aD0iMSIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIi8+PHBhdGggZD0iTTEwIDE2QzExIDE1IDEzIDE1IDE0IDE2IiBzdHJva2U9IiNGRUQ3QUEiIHN0cm9rZS13aWR0aD0iMSIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIi8+PC9zdmc+`,\n};\n\n// =============================================================================\n// INGREDIENT ICONS - Grains\n// =============================================================================\n\nexport const GRAIN_ICONS: Record<string, string> = {\n // White rice\n rice_white: `data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSI+PHBhdGggZD0iTTQgMTFDNCAxMSA0IDE4IDEyIDE4QzIwIDE4IDIwIDExIDIwIDExSDRaIiBmaWxsPSIjRkZGRkZGIiBzdHJva2U9IiNFNUU3RUIiIHN0cm9rZS13aWR0aD0iMS41Ii8+PHBhdGggZD0iTTUgMThDNSAxOCA2IDIxIDEyIDIxQzE4IDIxIDE5IDE4IDE5IDE4IiBzdHJva2U9IiNFNUU3RUIiIHN0cm9rZS13aWR0aD0iMS41IiBzdHJva2UtbGluZWNhcD0icm91bmQiLz48ZWxsaXBzZSBjeD0iOCIgY3k9IjkiIHJ4PSIxLjUiIHJ5PSIxIiBmaWxsPSIjRkVGM0M3Ii8+PGVsbGlwc2UgY3g9IjEyIiBjeT0iOCIgcng9IjEuNSIgcnk9IjEiIGZpbGw9IiNGRUYzQzciLz48ZWxsaXBzZSBjeD0iMTYiIGN5PSI5IiByeD0iMS41IiByeT0iMSIgZmlsbD0iI0ZFRjNDNyIvPjxlbGxpcHNlIGN4PSIxMCIgY3k9IjExIiByeD0iMS41IiByeT0iMSIgZmlsbD0iI0ZFRjNDNyIvPjxlbGxpcHNlIGN4PSIxNCIgY3k9IjExIiByeD0iMS41IiByeT0iMSIgZmlsbD0iI0ZFRjNDNyIvPjwvc3ZnPg==`,\n\n // Pasta\n pasta: `data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSI+PHBhdGggZD0iTTQgMTRDNSAxMSA4IDkgMTIgOUMxNiA5IDE5IDExIDIwIDE0IiBzdHJva2U9IiNGREU2OEEiIHN0cm9rZS13aWR0aD0iMyIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIi8+PHBhdGggZD0iTTYgMTdDNyAxNCA5IDEyIDEyIDEyQzE1IDEyIDE3IDE0IDE4IDE3IiBzdHJva2U9IiNGREU2OEEiIHN0cm9rZS13aWR0aD0iMyIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIi8+PHBhdGggZD0iTTggMjBDOSAxOCAxMCAxNiAxMiAxNkMxNCAxNiAxNSAxOCAxNiAyMCIgc3Ryb2tlPSIjRkRFNjhBIiBzdHJva2Utd2lkdGg9IjMiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIvPjxwYXRoIGQ9Ik0zIDhDNCAxMCA2IDEyIDggMTJNMjEgOEMyMCAxMCAxOCAxMiAxNiAxMk0xMiA0VjkiIHN0cm9rZT0iI0Y1OUUwQiIgc3Ryb2tlLXdpZHRoPSIyIiBzdHJva2UtbGluZWNhcD0icm91bmQiLz48L3N2Zz4=`,\n\n // Quinoa\n quinoa: `data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSI+PHBhdGggZD0iTTQgMTFDNCAxMSA0IDE4IDEyIDE4QzIwIDE4IDIwIDExIDIwIDExSDRaIiBmaWxsPSIjRkZGRkZGIiBzdHJva2U9IiNFNUU3RUIiIHN0cm9rZS13aWR0aD0iMS41Ii8+PHBhdGggZD0iTTUgMThDNSAxOCA2IDIxIDEyIDIxQzE4IDIxIDE5IDE4IDE5IDE4IiBzdHJva2U9IiNFNUU3RUIiIHN0cm9rZS13aWR0aD0iMS41IiBzdHJva2UtbGluZWNhcD0icm91bmQiLz48Y2lyY2xlIGN4PSI3IiBjeT0iMTAiIHI9IjEiIGZpbGw9IiNGREU2OEEiLz48Y2lyY2xlIGN4PSIxMCIgY3k9IjkiIHI9IjEiIGZpbGw9IiNGRUY5QzMiLz48Y2lyY2xlIGN4PSIxMyIgY3k9IjgiIHI9IjEiIGZpbGw9IiNGREU2OEEiLz48Y2lyY2xlIGN4PSIxNiIgY3k9IjkiIHI9IjEiIGZpbGw9IiNGRUY5QzMiLz48Y2lyY2xlIGN4PSI4IiBjeT0iMTMiIHI9IjEiIGZpbGw9IiNGRUY5QzMiLz48Y2lyY2xlIGN4PSIxMiIgY3k9IjExIiByPSIxIiBmaWxsPSIjRkRFNjhBIi8+PGNpcmNsZSBjeD0iMTUiIGN5PSIxMiIgcj0iMSIgZmlsbD0iI0ZFRjlDMyIvPjwvc3ZnPg==`,\n};\n\n// =============================================================================\n// COMBINED INGREDIENT ICONS (for convenience)\n// =============================================================================\n\nexport const INGREDIENT_ICONS: Record<string, string> = {\n ...POULTRY_ICONS,\n ...BEEF_ICONS,\n ...SEAFOOD_ICONS,\n ...EGG_ICONS,\n ...VEGETABLE_ICONS,\n ...GRAIN_ICONS,\n};\n\n// =============================================================================\n// HELPER FUNCTION\n// =============================================================================\n\n/**\n * Get icon for a category or ingredient by ID\n * Falls back to category icon if no specific ingredient icon exists\n */\nexport const getIcon = (id: string, category?: string): string | undefined => {\n // Check for specific ingredient icon first\n if (INGREDIENT_ICONS[id]) {\n return INGREDIENT_ICONS[id];\n }\n\n // Fall back to category icon\n if (category && CATEGORY_ICONS[category]) {\n return CATEGORY_ICONS[category];\n }\n\n return undefined;\n};\n"],"mappings":";AAMO,IAAM,iBAAyC;AAAA;AAAA,EAEpD,SAAS;AAAA;AAAA,EAGT,MAAM;AAAA;AAAA,EAGN,MAAM;AAAA;AAAA,EAGN,cAAc;AAAA;AAAA,EAGd,mBAAmB;AAAA;AAAA,EAGnB,KAAK;AAAA;AAAA,EAGL,WAAW;AAAA;AAAA,EAGX,OAAO;AACT;AAMO,IAAM,gBAAwC;AAAA;AAAA,EAEnD,gBAAgB;AAAA;AAAA,EAGhB,eAAe;AAAA;AAAA,EAGf,eAAe;AAAA;AAAA,EAGf,eAAe;AACjB;AAMO,IAAM,aAAqC;AAAA;AAAA,EAEhD,mBAAmB;AAAA;AAAA,EAGnB,aAAa;AAAA;AAAA,EAGb,YAAY;AACd;AAMO,IAAM,gBAAwC;AAAA;AAAA,EAEnD,eAAe;AAAA;AAAA,EAGf,QAAQ;AAAA;AAAA,EAGR,YAAY;AAAA;AAAA,EAGZ,YAAY;AACd;AAMO,IAAM,YAAoC;AAAA;AAAA,EAE/C,WAAW;AAAA;AAAA,EAGX,YAAY;AAAA;AAAA,EAGZ,eAAe;AAAA;AAAA,EAGf,aAAa;AACf;AAMO,IAAM,kBAA0C;AAAA;AAAA,EAErD,UAAU;AAAA;AAAA,EAGV,WAAW;AAAA;AAAA,EAGX,QAAQ;AAAA;AAAA,EAGR,QAAQ;AACV;AAMO,IAAM,cAAsC;AAAA;AAAA,EAEjD,YAAY;AAAA;AAAA,EAGZ,OAAO;AAAA;AAAA,EAGP,QAAQ;AACV;AAMO,IAAM,mBAA2C;AAAA,EACtD,GAAG;AAAA,EACH,GAAG;AAAA,EACH,GAAG;AAAA,EACH,GAAG;AAAA,EACH,GAAG;AAAA,EACH,GAAG;AACL;AAUO,IAAM,UAAU,CAAC,IAAY,aAA0C;AAE5E,MAAI,iBAAiB,EAAE,GAAG;AACxB,WAAO,iBAAiB,EAAE;AAAA,EAC5B;AAGA,MAAI,YAAY,eAAe,QAAQ,GAAG;AACxC,WAAO,eAAe,QAAQ;AAAA,EAChC;AAEA,SAAO;AACT;","names":[]}
|
package/dist/index.d.mts
CHANGED
|
@@ -41,14 +41,14 @@ declare const findByCategory: (category: IngredientCategory) => CookingTemperatu
|
|
|
41
41
|
declare const getAllEntries: () => CookingTemperatureEntry[];
|
|
42
42
|
declare const getAllCategories: () => IngredientCategory[];
|
|
43
43
|
declare const getCategoryName: (category: IngredientCategory) => string;
|
|
44
|
-
declare const convertTemperature: (temp: number,
|
|
44
|
+
declare const convertTemperature: (temp: number, from_unit: TemperatureUnit, to_unit: TemperatureUnit) => number;
|
|
45
45
|
declare const getSafeMinimumTemp: (ingredientId: string, unit?: TemperatureUnit) => {
|
|
46
46
|
temp: number;
|
|
47
47
|
restMinutes: number;
|
|
48
48
|
} | undefined;
|
|
49
|
-
declare const getDonenessTemp: (ingredientId: string,
|
|
49
|
+
declare const getDonenessTemp: (ingredientId: string, doneness_level: DonenessLevel, unit?: TemperatureUnit) => number | undefined;
|
|
50
50
|
declare const getCookingMethods: (ingredientId: string) => CookingMethod[];
|
|
51
|
-
declare const getCookingInstruction: (ingredientId: string,
|
|
51
|
+
declare const getCookingInstruction: (ingredientId: string, cooking_method: CookingMethod, portionHint?: string) => {
|
|
52
52
|
applianceTemp: number;
|
|
53
53
|
applianceTempUnit: TemperatureUnit;
|
|
54
54
|
timeMinutes: {
|
|
@@ -58,7 +58,7 @@ declare const getCookingInstruction: (ingredientId: string, method: CookingMetho
|
|
|
58
58
|
notes?: string;
|
|
59
59
|
portionDescription: string;
|
|
60
60
|
} | undefined;
|
|
61
|
-
declare const getQuickReference: (query: string,
|
|
61
|
+
declare const getQuickReference: (query: string, cooking_method?: CookingMethod, unit?: TemperatureUnit) => {
|
|
62
62
|
name: string;
|
|
63
63
|
safeMinimumTemp: number;
|
|
64
64
|
tempUnit: TemperatureUnit;
|
package/dist/index.d.ts
CHANGED
|
@@ -41,14 +41,14 @@ declare const findByCategory: (category: IngredientCategory) => CookingTemperatu
|
|
|
41
41
|
declare const getAllEntries: () => CookingTemperatureEntry[];
|
|
42
42
|
declare const getAllCategories: () => IngredientCategory[];
|
|
43
43
|
declare const getCategoryName: (category: IngredientCategory) => string;
|
|
44
|
-
declare const convertTemperature: (temp: number,
|
|
44
|
+
declare const convertTemperature: (temp: number, from_unit: TemperatureUnit, to_unit: TemperatureUnit) => number;
|
|
45
45
|
declare const getSafeMinimumTemp: (ingredientId: string, unit?: TemperatureUnit) => {
|
|
46
46
|
temp: number;
|
|
47
47
|
restMinutes: number;
|
|
48
48
|
} | undefined;
|
|
49
|
-
declare const getDonenessTemp: (ingredientId: string,
|
|
49
|
+
declare const getDonenessTemp: (ingredientId: string, doneness_level: DonenessLevel, unit?: TemperatureUnit) => number | undefined;
|
|
50
50
|
declare const getCookingMethods: (ingredientId: string) => CookingMethod[];
|
|
51
|
-
declare const getCookingInstruction: (ingredientId: string,
|
|
51
|
+
declare const getCookingInstruction: (ingredientId: string, cooking_method: CookingMethod, portionHint?: string) => {
|
|
52
52
|
applianceTemp: number;
|
|
53
53
|
applianceTempUnit: TemperatureUnit;
|
|
54
54
|
timeMinutes: {
|
|
@@ -58,7 +58,7 @@ declare const getCookingInstruction: (ingredientId: string, method: CookingMetho
|
|
|
58
58
|
notes?: string;
|
|
59
59
|
portionDescription: string;
|
|
60
60
|
} | undefined;
|
|
61
|
-
declare const getQuickReference: (query: string,
|
|
61
|
+
declare const getQuickReference: (query: string, cooking_method?: CookingMethod, unit?: TemperatureUnit) => {
|
|
62
62
|
name: string;
|
|
63
63
|
safeMinimumTemp: number;
|
|
64
64
|
tempUnit: TemperatureUnit;
|
package/dist/index.js
CHANGED
|
@@ -1872,9 +1872,9 @@ var CATEGORY_NAMES = {
|
|
|
1872
1872
|
var getCategoryName = (category) => {
|
|
1873
1873
|
return CATEGORY_NAMES[category];
|
|
1874
1874
|
};
|
|
1875
|
-
var convertTemperature = (temp,
|
|
1876
|
-
if (
|
|
1877
|
-
return
|
|
1875
|
+
var convertTemperature = (temp, from_unit, to_unit) => {
|
|
1876
|
+
if (from_unit === to_unit) return temp;
|
|
1877
|
+
return from_unit === "F" ? Math.round((temp - 32) * (5 / 9)) : Math.round(temp * (9 / 5) + 32);
|
|
1878
1878
|
};
|
|
1879
1879
|
var getSafeMinimumTemp = (ingredientId, unit = "F") => {
|
|
1880
1880
|
const entry = ALL_ENTRIES.find((e) => e.id === ingredientId);
|
|
@@ -1889,10 +1889,10 @@ var getSafeMinimumTemp = (ingredientId, unit = "F") => {
|
|
|
1889
1889
|
restMinutes: entry.restTimeMinutes ?? 0
|
|
1890
1890
|
};
|
|
1891
1891
|
};
|
|
1892
|
-
var getDonenessTemp = (ingredientId,
|
|
1892
|
+
var getDonenessTemp = (ingredientId, doneness_level, unit = "F") => {
|
|
1893
1893
|
const entry = ALL_ENTRIES.find((e) => e.id === ingredientId);
|
|
1894
1894
|
if (!entry || !entry.donenessLevels) return void 0;
|
|
1895
|
-
const level = entry.donenessLevels.find((d) => d.level ===
|
|
1895
|
+
const level = entry.donenessLevels.find((d) => d.level === doneness_level);
|
|
1896
1896
|
if (!level) return void 0;
|
|
1897
1897
|
return unit === level.internalTempUnit ? level.internalTemp : convertTemperature(level.internalTemp, level.internalTempUnit, unit);
|
|
1898
1898
|
};
|
|
@@ -1905,14 +1905,14 @@ var getCookingMethods = (ingredientId) => {
|
|
|
1905
1905
|
});
|
|
1906
1906
|
return [...methods];
|
|
1907
1907
|
};
|
|
1908
|
-
var getCookingInstruction = (ingredientId,
|
|
1908
|
+
var getCookingInstruction = (ingredientId, cooking_method, portionHint) => {
|
|
1909
1909
|
const entry = ALL_ENTRIES.find((e) => e.id === ingredientId);
|
|
1910
1910
|
if (!entry) return void 0;
|
|
1911
1911
|
const portion = portionHint ? entry.cookingInstructions.find(
|
|
1912
1912
|
(p) => p.portionDescription.toLowerCase().includes(portionHint.toLowerCase())
|
|
1913
1913
|
) ?? entry.cookingInstructions[0] : entry.cookingInstructions[0];
|
|
1914
1914
|
if (!portion) return void 0;
|
|
1915
|
-
const instruction = portion.methods.find((m) => m.method ===
|
|
1915
|
+
const instruction = portion.methods.find((m) => m.method === cooking_method);
|
|
1916
1916
|
if (!instruction) return void 0;
|
|
1917
1917
|
return {
|
|
1918
1918
|
applianceTemp: instruction.applianceTemp,
|
|
@@ -1922,7 +1922,7 @@ var getCookingInstruction = (ingredientId, method, portionHint) => {
|
|
|
1922
1922
|
portionDescription: portion.portionDescription
|
|
1923
1923
|
};
|
|
1924
1924
|
};
|
|
1925
|
-
var getQuickReference = (query,
|
|
1925
|
+
var getQuickReference = (query, cooking_method, unit = "F") => {
|
|
1926
1926
|
const entry = findByName(query);
|
|
1927
1927
|
if (!entry) return void 0;
|
|
1928
1928
|
const safeTemp = unit === entry.safeMinimumTempUnit ? entry.safeMinimumTemp : convertTemperature(
|
|
@@ -1931,11 +1931,11 @@ var getQuickReference = (query, method, unit = "F") => {
|
|
|
1931
1931
|
unit
|
|
1932
1932
|
);
|
|
1933
1933
|
let suggestedMethod;
|
|
1934
|
-
if (
|
|
1935
|
-
const instruction = getCookingInstruction(entry.id,
|
|
1934
|
+
if (cooking_method) {
|
|
1935
|
+
const instruction = getCookingInstruction(entry.id, cooking_method);
|
|
1936
1936
|
if (instruction) {
|
|
1937
1937
|
suggestedMethod = {
|
|
1938
|
-
method,
|
|
1938
|
+
method: cooking_method,
|
|
1939
1939
|
applianceTemp: unit === instruction.applianceTempUnit ? instruction.applianceTemp : convertTemperature(
|
|
1940
1940
|
instruction.applianceTemp,
|
|
1941
1941
|
instruction.applianceTempUnit,
|