@gurpinderjitsingh/recipe-ui 0.1.4 → 0.2.0
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/dist/cjs/app-modal_7.cjs.entry.js +12 -14
- package/dist/cjs/app-toast.cjs.entry.js +2 -2
- package/dist/cjs/{index-0Jp0srDV.js → index-CRcwY0Fb.js} +6 -416
- package/dist/cjs/index.cjs.js +1 -1
- package/dist/cjs/loader.cjs.js +2 -2
- package/dist/cjs/recipe-ui.cjs.js +2 -2
- package/dist/collection/components/app-modal/app-modal.css +8 -41
- package/dist/collection/components/app-modal/app-modal.js +2 -5
- package/dist/collection/components/app-toast/app-toast.js +1 -1
- package/dist/collection/components/meal-plan-day/meal-plan-day.css +149 -13
- package/dist/collection/components/meal-plan-day/meal-plan-day.js +23 -8
- package/dist/collection/components/recipe-card/recipe-card.js +1 -1
- package/dist/collection/components/recipe-filter-bar/recipe-filter-bar.js +1 -1
- package/dist/collection/components/recipe-form/recipe-form.js +1 -1
- package/dist/collection/components/recipe-rating/recipe-rating.js +1 -1
- package/dist/collection/components/recipe-search-bar/recipe-search-bar.js +1 -1
- package/dist/components/app-modal.js +1 -1
- package/dist/components/app-toast.js +1 -1
- package/dist/components/index.js +1 -1
- package/dist/components/meal-plan-day.js +1 -1
- package/dist/components/p-BJU3HdRm.js +1 -0
- package/dist/components/{p-iruuKwXb.js → p-BUu-OE2n.js} +1 -1
- package/dist/components/{p-DzNqfLiF.js → p-Bi4G3e9f.js} +1 -1
- package/dist/components/{p-CwBR8qrC.js → p-Bj2iIXUo.js} +1 -1
- package/dist/components/p-BqnbT3UL.js +1 -0
- package/dist/components/{p-Cn-9hkL0.js → p-DXdnWxeM.js} +1 -1
- package/dist/components/p-Dp1sKtrN.js +1 -0
- package/dist/components/p-S4266va_.js +1 -0
- package/dist/components/{p-C300pX48.js → p-Xf30T5IO.js} +1 -1
- package/dist/components/recipe-card.js +1 -1
- package/dist/components/recipe-filter-bar.js +1 -1
- package/dist/components/recipe-form.js +1 -1
- package/dist/components/recipe-rating.js +1 -1
- package/dist/components/recipe-search-bar.js +1 -1
- package/dist/esm/app-modal_7.entry.js +12 -14
- package/dist/esm/app-toast.entry.js +2 -2
- package/dist/esm/{index-Cq6PCsWh.js → index-CrZUP9M-.js} +6 -416
- package/dist/esm/index.js +1 -1
- package/dist/esm/loader.js +3 -3
- package/dist/esm/recipe-ui.js +3 -3
- package/dist/recipe-ui/index.esm.js +1 -1
- package/dist/recipe-ui/{p-47428346.entry.js → p-531fb6c4.entry.js} +1 -1
- package/dist/recipe-ui/p-CrZUP9M-.js +3 -0
- package/dist/recipe-ui/p-a8cd146e.entry.js +1 -0
- package/dist/recipe-ui/recipe-ui.esm.js +1 -1
- package/dist/types/components/meal-plan-day/meal-plan-day.d.ts +2 -7
- package/dist/types/components.d.ts +11 -28
- package/package.json +1 -1
- package/dist/components/p-BioNY75Q.js +0 -1
- package/dist/components/p-BjeRE-Yp.js +0 -1
- package/dist/components/p-D4_zWccP.js +0 -1
- package/dist/components/p-q8BcbM65.js +0 -1
- package/dist/recipe-ui/p-6add6efb.entry.js +0 -1
- package/dist/recipe-ui/p-Cq6PCsWh.js +0 -3
|
@@ -1,45 +1,12 @@
|
|
|
1
|
-
:host {
|
|
2
|
-
font-family: system-ui, sans-serif;
|
|
3
|
-
}
|
|
4
|
-
|
|
1
|
+
:host { font-family: system-ui, sans-serif; }
|
|
5
2
|
.overlay {
|
|
6
|
-
position: fixed;
|
|
7
|
-
|
|
8
|
-
background: rgba(0, 0, 0, 0.45);
|
|
9
|
-
display: flex;
|
|
10
|
-
align-items: center;
|
|
11
|
-
justify-content: center;
|
|
12
|
-
z-index: 1000;
|
|
3
|
+
position: fixed; inset: 0; background: rgba(0, 0, 0, 0.45);
|
|
4
|
+
display: flex; align-items: center; justify-content: center; z-index: 1000;
|
|
13
5
|
}
|
|
14
|
-
|
|
15
6
|
.dialog {
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
border-radius: 12px;
|
|
19
|
-
min-width: 320px;
|
|
20
|
-
max-width: 90vw;
|
|
21
|
-
max-height: 85vh;
|
|
22
|
-
overflow-y: auto;
|
|
23
|
-
padding: 20px;
|
|
24
|
-
box-shadow: 0 10px 40px rgba(0, 0, 0, 0.2);
|
|
25
|
-
}
|
|
26
|
-
|
|
27
|
-
.header {
|
|
28
|
-
display: flex;
|
|
29
|
-
justify-content: space-between;
|
|
30
|
-
align-items: center;
|
|
31
|
-
margin-bottom: 12px;
|
|
32
|
-
}
|
|
33
|
-
|
|
34
|
-
.header h2 {
|
|
35
|
-
margin: 0;
|
|
36
|
-
font-size: 18px;
|
|
7
|
+
background: #fff; border-radius: 12px; min-width: 320px; max-width: 90vw;
|
|
8
|
+
max-height: 85vh; overflow-y: auto; padding: 20px; box-shadow: 0 10px 40px rgba(0,0,0,0.2);
|
|
37
9
|
}
|
|
38
|
-
|
|
39
|
-
.
|
|
40
|
-
|
|
41
|
-
background: none;
|
|
42
|
-
font-size: 16px;
|
|
43
|
-
cursor: pointer;
|
|
44
|
-
color: #666;
|
|
45
|
-
}
|
|
10
|
+
.header { display: flex; justify-content: space-between; align-items: center; margin-bottom: 12px; }
|
|
11
|
+
.header h2 { margin: 0; font-size: 18px; }
|
|
12
|
+
.close-btn { border: none; background: none; font-size: 16px; cursor: pointer; color: #666; }
|
|
@@ -8,13 +8,10 @@ export class AppModal {
|
|
|
8
8
|
render() {
|
|
9
9
|
if (!this.open)
|
|
10
10
|
return null;
|
|
11
|
-
return (h("div", { class: "overlay", onClick: (e) => {
|
|
12
|
-
if (e.target === e.currentTarget) {
|
|
13
|
-
this.close.emit();
|
|
14
|
-
}
|
|
15
|
-
} }, h("div", { class: "dialog", onClick: (e) => e.stopPropagation() }, h("div", { class: "header" }, h("h2", null, this.modalTitle), h("button", { class: "close-btn", onClick: () => this.close.emit(), "aria-label": "Close" }, "\u2715")), h("div", { class: "body" }, h("slot", null)))));
|
|
11
|
+
return (h("div", { class: "overlay", onClick: () => this.close.emit() }, h("div", { class: "dialog", onClick: (e) => e.stopPropagation() }, h("div", { class: "header" }, h("h2", null, this.modalTitle), h("button", { class: "close-btn", onClick: () => this.close.emit(), "aria-label": "Close" }, "\u2715")), h("div", { class: "body" }, h("slot", null)))));
|
|
16
12
|
}
|
|
17
13
|
static get is() { return "app-modal"; }
|
|
14
|
+
static get encapsulation() { return "shadow"; }
|
|
18
15
|
static get originalStyleUrls() {
|
|
19
16
|
return {
|
|
20
17
|
"$": ["app-modal.css"]
|
|
@@ -12,7 +12,7 @@ export class AppToast {
|
|
|
12
12
|
}
|
|
13
13
|
}
|
|
14
14
|
render() {
|
|
15
|
-
return (h("div", { key: '
|
|
15
|
+
return (h("div", { key: '73ab8ea44ad155052616ffbc424e1d8f13b8116f', class: `toast ${this.type}` }, h("span", { key: '301487550c2f4f50cdcc6d0a138b9e968cde385f' }, this.message), h("button", { key: '4e9de348002a397a25450142d9fa1fa07ca84d54', onClick: () => this.dismiss.emit(), "aria-label": "Dismiss" }, "\u2715")));
|
|
16
16
|
}
|
|
17
17
|
static get is() { return "app-toast"; }
|
|
18
18
|
static get encapsulation() { return "shadow"; }
|
|
@@ -1,19 +1,155 @@
|
|
|
1
|
-
:host {
|
|
1
|
+
:host {
|
|
2
|
+
display: block;
|
|
3
|
+
font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', system-ui, sans-serif;
|
|
4
|
+
}
|
|
5
|
+
|
|
2
6
|
.day-col {
|
|
3
|
-
|
|
4
|
-
|
|
7
|
+
background: #ffffff;
|
|
8
|
+
border: 1px solid #e8eaed;
|
|
9
|
+
border-radius: 12px;
|
|
10
|
+
padding: 14px;
|
|
11
|
+
min-width: 160px;
|
|
12
|
+
display: flex;
|
|
13
|
+
flex-direction: column;
|
|
14
|
+
gap: 10px;
|
|
15
|
+
box-shadow: 0 1px 2px rgba(16, 24, 40, 0.04);
|
|
16
|
+
transition: box-shadow 0.15s ease, border-color 0.15s ease;
|
|
17
|
+
}
|
|
18
|
+
|
|
19
|
+
.day-col:hover {
|
|
20
|
+
box-shadow: 0 4px 12px rgba(16, 24, 40, 0.08);
|
|
21
|
+
border-color: #d8dce1;
|
|
22
|
+
}
|
|
23
|
+
|
|
24
|
+
.col-header {
|
|
25
|
+
display: flex;
|
|
26
|
+
align-items: center;
|
|
27
|
+
gap: 6px;
|
|
28
|
+
padding-bottom: 8px;
|
|
29
|
+
border-bottom: 1px solid #f0f1f3;
|
|
30
|
+
}
|
|
31
|
+
|
|
32
|
+
.col-header .icon {
|
|
33
|
+
font-size: 15px;
|
|
34
|
+
line-height: 1;
|
|
5
35
|
}
|
|
6
|
-
|
|
7
|
-
.
|
|
36
|
+
|
|
37
|
+
.col-header h3 {
|
|
38
|
+
margin: 0;
|
|
39
|
+
font-size: 12.5px;
|
|
40
|
+
font-weight: 700;
|
|
41
|
+
text-transform: uppercase;
|
|
42
|
+
letter-spacing: 0.05em;
|
|
43
|
+
color: #4b5563;
|
|
44
|
+
flex: 1;
|
|
45
|
+
}
|
|
46
|
+
|
|
47
|
+
.count-badge {
|
|
48
|
+
background: #eef2ff;
|
|
49
|
+
color: #4338ca;
|
|
50
|
+
font-size: 10.5px;
|
|
51
|
+
font-weight: 700;
|
|
52
|
+
padding: 1px 7px;
|
|
53
|
+
border-radius: 999px;
|
|
54
|
+
line-height: 1.5;
|
|
55
|
+
}
|
|
56
|
+
|
|
57
|
+
.meals {
|
|
58
|
+
display: flex;
|
|
59
|
+
flex-direction: column;
|
|
60
|
+
gap: 6px;
|
|
61
|
+
min-height: 44px;
|
|
62
|
+
}
|
|
63
|
+
|
|
8
64
|
.meal-chip {
|
|
9
|
-
display: flex;
|
|
10
|
-
|
|
65
|
+
display: flex;
|
|
66
|
+
align-items: center;
|
|
67
|
+
gap: 8px;
|
|
68
|
+
background: #f9fafb;
|
|
69
|
+
border: 1px solid #eef0f2;
|
|
70
|
+
border-radius: 9px;
|
|
71
|
+
padding: 6px 8px;
|
|
72
|
+
font-size: 12.5px;
|
|
73
|
+
transition: background 0.12s ease;
|
|
74
|
+
}
|
|
75
|
+
|
|
76
|
+
.meal-chip:hover {
|
|
77
|
+
background: #f3f4f6;
|
|
11
78
|
}
|
|
12
|
-
|
|
13
|
-
.
|
|
14
|
-
|
|
15
|
-
|
|
79
|
+
|
|
80
|
+
.thumb {
|
|
81
|
+
width: 28px;
|
|
82
|
+
height: 28px;
|
|
83
|
+
border-radius: 6px;
|
|
84
|
+
overflow: hidden;
|
|
85
|
+
flex-shrink: 0;
|
|
86
|
+
background: #e5e7eb;
|
|
87
|
+
}
|
|
88
|
+
|
|
89
|
+
.thumb img {
|
|
90
|
+
width: 100%;
|
|
91
|
+
height: 100%;
|
|
92
|
+
object-fit: cover;
|
|
93
|
+
display: block;
|
|
94
|
+
}
|
|
95
|
+
|
|
96
|
+
.meal-chip .title {
|
|
97
|
+
flex: 1;
|
|
98
|
+
color: #1f2937;
|
|
99
|
+
font-weight: 500;
|
|
100
|
+
white-space: nowrap;
|
|
101
|
+
overflow: hidden;
|
|
102
|
+
text-overflow: ellipsis;
|
|
103
|
+
}
|
|
104
|
+
|
|
105
|
+
.remove-btn {
|
|
106
|
+
border: none;
|
|
107
|
+
background: none;
|
|
108
|
+
cursor: pointer;
|
|
109
|
+
color: #9ca3af;
|
|
110
|
+
font-size: 11px;
|
|
111
|
+
line-height: 1;
|
|
112
|
+
padding: 3px;
|
|
113
|
+
border-radius: 5px;
|
|
114
|
+
transition: color 0.12s ease, background 0.12s ease;
|
|
115
|
+
}
|
|
116
|
+
|
|
117
|
+
.remove-btn:hover {
|
|
118
|
+
color: #dc2626;
|
|
119
|
+
background: #fef2f2;
|
|
120
|
+
}
|
|
121
|
+
|
|
122
|
+
.empty {
|
|
123
|
+
font-size: 12px;
|
|
124
|
+
color: #9ca3af;
|
|
125
|
+
margin: 6px 0;
|
|
126
|
+
text-align: center;
|
|
127
|
+
font-style: italic;
|
|
128
|
+
}
|
|
129
|
+
|
|
16
130
|
.add-btn {
|
|
17
|
-
|
|
18
|
-
|
|
131
|
+
display: flex;
|
|
132
|
+
align-items: center;
|
|
133
|
+
justify-content: center;
|
|
134
|
+
gap: 4px;
|
|
135
|
+
border: 1.5px dashed #d1d5db;
|
|
136
|
+
background: none;
|
|
137
|
+
border-radius: 9px;
|
|
138
|
+
padding: 7px;
|
|
139
|
+
font-size: 12px;
|
|
140
|
+
font-weight: 600;
|
|
141
|
+
cursor: pointer;
|
|
142
|
+
color: #6b7280;
|
|
143
|
+
transition: border-color 0.12s ease, color 0.12s ease, background 0.12s ease;
|
|
144
|
+
}
|
|
145
|
+
|
|
146
|
+
.add-btn:hover {
|
|
147
|
+
border-color: #6366f1;
|
|
148
|
+
color: #4f46e5;
|
|
149
|
+
background: #f5f5ff;
|
|
19
150
|
}
|
|
151
|
+
|
|
152
|
+
.plus {
|
|
153
|
+
font-size: 14px;
|
|
154
|
+
line-height: 1;
|
|
155
|
+
}
|
|
@@ -1,19 +1,14 @@
|
|
|
1
1
|
import { h } from "@stencil/core";
|
|
2
|
-
/**
|
|
3
|
-
* One column of the weekly meal planner, representing a single day.
|
|
4
|
-
* `meals` is the list of recipes currently assigned to this day.
|
|
5
|
-
* Emits `removeMeal` when a meal's remove button is clicked, and
|
|
6
|
-
* `assignMeal` when the "+ Add meal" button is clicked (the parent app
|
|
7
|
-
* is expected to open its own picker/modal and then update `meals`).
|
|
8
|
-
*/
|
|
9
2
|
export class MealPlanDay {
|
|
10
3
|
constructor() {
|
|
11
4
|
this.day = '';
|
|
12
5
|
this.meals = [];
|
|
6
|
+
/** Optional emoji/icon shown next to the label, e.g. "🌅" */
|
|
7
|
+
this.icon = '';
|
|
13
8
|
}
|
|
14
9
|
render() {
|
|
15
10
|
const meals = Array.isArray(this.meals) ? this.meals : [];
|
|
16
|
-
return (h("div", { key: '
|
|
11
|
+
return (h("div", { key: 'cd4f194f1eeb5f53a029f380c40aa0b4ec2f32f4', class: "day-col" }, h("div", { key: 'd88966142d5101fc522d5de89b6d4cab72cbbbf3', class: "col-header" }, this.icon && h("span", { key: '5a9a27a3a1909bcf7295ec7eeccf309e5e2d1ae0', class: "icon" }, this.icon), h("h3", { key: 'fd1fa2f1274cc1f6bd8917959015722cb69002ba' }, this.day), meals.length > 0 && h("span", { key: 'feff3bc91b52203dba19f7a87c56d3813fc95cdd', class: "count-badge" }, meals.length)), h("div", { key: '4afee9ce77bf1447bf9e32efc7e2f9b9571873e7', class: "meals" }, meals.map((m) => (h("div", { class: "meal-chip" }, h("div", { class: "thumb" }, m.image && h("img", { src: m.image, alt: m.title })), h("span", { class: "title" }, m.title), h("button", { class: "remove-btn", onClick: () => this.removeMeal.emit({ day: this.day, mealId: m.id }), "aria-label": `Remove ${m.title}` }, "\u2715")))), meals.length === 0 && h("p", { key: '9a4002b1b4516fc5ff6ef8f9a2e0a7f5e8465cbd', class: "empty" }, "No meal planned")), h("button", { key: '2cef3c5f7d0e89303cb8989f78eefb95c426683f', class: "add-btn", onClick: () => this.assignMeal.emit({ day: this.day }) }, h("span", { key: 'ae54b56f8f0b01f45029e36919764ae31f3a38b9', class: "plus" }, "+"), " Add meal")));
|
|
17
12
|
}
|
|
18
13
|
static get is() { return "meal-plan-day"; }
|
|
19
14
|
static get encapsulation() { return "shadow"; }
|
|
@@ -72,6 +67,26 @@ export class MealPlanDay {
|
|
|
72
67
|
"getter": false,
|
|
73
68
|
"setter": false,
|
|
74
69
|
"defaultValue": "[]"
|
|
70
|
+
},
|
|
71
|
+
"icon": {
|
|
72
|
+
"type": "string",
|
|
73
|
+
"mutable": false,
|
|
74
|
+
"complexType": {
|
|
75
|
+
"original": "string",
|
|
76
|
+
"resolved": "string",
|
|
77
|
+
"references": {}
|
|
78
|
+
},
|
|
79
|
+
"required": false,
|
|
80
|
+
"optional": false,
|
|
81
|
+
"docs": {
|
|
82
|
+
"tags": [],
|
|
83
|
+
"text": "Optional emoji/icon shown next to the label, e.g. \"\uD83C\uDF05\""
|
|
84
|
+
},
|
|
85
|
+
"getter": false,
|
|
86
|
+
"setter": false,
|
|
87
|
+
"reflect": false,
|
|
88
|
+
"attribute": "icon",
|
|
89
|
+
"defaultValue": "''"
|
|
75
90
|
}
|
|
76
91
|
};
|
|
77
92
|
}
|
|
@@ -17,7 +17,7 @@ export class RecipeCard {
|
|
|
17
17
|
};
|
|
18
18
|
}
|
|
19
19
|
render() {
|
|
20
|
-
return (h("div", { key: '
|
|
20
|
+
return (h("div", { key: 'ab4f6e822f8b961d15c49d488af4e9b617ae71d2', class: "card", onClick: () => this.cardClick.emit() }, h("div", { key: 'f57fc00e484283bd223f7e8557af7e76de33217e', class: "image-wrap" }, this.image ? h("img", { src: this.image, alt: this.recipeTitle }) : h("div", { class: "placeholder" }), h("button", { key: '2f05b10aa6de8f6d51e0a216567a65900011a198', class: { 'fav-btn': true, active: this.favorite }, onClick: this.onFavoriteClick, "aria-label": "Toggle favorite" }, this.favorite ? '★' : '☆')), h("div", { key: 'bb120c622bef2e7ae8abfedf31ba988a66d393c3', class: "body" }, h("h3", { key: '2b0115c0ae28b302e35a00e0ed1a70d0b20712ab' }, this.recipeTitle), this.category && h("span", { key: '388a88c469547f04e7af2b1da0d303a28f499481', class: "category" }, this.category), h("div", { key: 'ff8e56f5a2ce08736ec9cef2a17bbcc2aad4b946', class: "actions" }, h("slot", { key: '8952391cb6163493dc5ab27b690c4375ef535ac4', name: "actions" })))));
|
|
21
21
|
}
|
|
22
22
|
static get is() { return "recipe-card"; }
|
|
23
23
|
static get encapsulation() { return "shadow"; }
|
|
@@ -15,7 +15,7 @@ export class RecipeFilterBar {
|
|
|
15
15
|
}
|
|
16
16
|
render() {
|
|
17
17
|
const cats = Array.isArray(this.categories) ? this.categories : [];
|
|
18
|
-
return (h("div", { key: '
|
|
18
|
+
return (h("div", { key: '084a1e0d79a1916d07277e1c080ff779aba1aa79', class: "wrap" }, h("button", { key: 'f0b9b529d1dca7f98621404b174837b5b21163e7', class: { chip: true, active: this.active === '' }, onClick: () => this.select('') }, "All"), cats.map((c) => (h("button", { class: { chip: true, active: this.active === c }, onClick: () => this.select(c) }, c)))));
|
|
19
19
|
}
|
|
20
20
|
static get is() { return "recipe-filter-bar"; }
|
|
21
21
|
static get encapsulation() { return "shadow"; }
|
|
@@ -78,7 +78,7 @@ export class RecipeForm {
|
|
|
78
78
|
this.ingredients = next;
|
|
79
79
|
}
|
|
80
80
|
render() {
|
|
81
|
-
return (h("form", { key: '
|
|
81
|
+
return (h("form", { key: '6699f62ff8027114e5a0e3d154f8743048cf4d96', onSubmit: this.onSubmit }, h("slot", { key: '8de0f7e758feb4fc6f1ea877c4acd7c41cbe13ed', name: "header" }), h("label", { key: '881275928734c4eabfee6d22b35cddad1af03853' }, "Title", h("input", { key: 'a55ae352c35cec0b2391061d48153151a7dc5e6b', type: "text", value: this.title, onInput: (e) => (this.title = e.target.value) }), this.errors.title && h("span", { key: 'dbace66ddaab5ab5096acb39822c7cd3a18923be', class: "error" }, this.errors.title)), h("label", { key: 'ae1bcdb323ccaa03307b6a283fcc395ef49954c5' }, "Image URL", h("input", { key: '6ee9483689e0304c0ae28ab755dc93e117d4952e', type: "text", value: this.image, onInput: (e) => (this.image = e.target.value) })), h("label", { key: '751b54959a8e2c85e98f2b192a4d8aa83d8ebafe' }, "Category", h("input", { key: '83f852c74727b86a1a8a6c9a0d93e9ffdb3f33f3', type: "text", value: this.category, onInput: (e) => (this.category = e.target.value) })), h("div", { key: '6a7c99a86d601ed51ece26c85b4b45766a2dafdf', class: "field" }, h("span", { key: 'ee082917bb3b90ec45ce1feea234c374f7fc35a0' }, "Ingredients"), this.ingredients.map((ing, i) => (h("div", { class: "ingredient-row" }, h("input", { type: "text", value: ing, onInput: (e) => this.updateIngredient(i, e.target.value) }), h("button", { type: "button", onClick: () => this.removeIngredient(i), "aria-label": "Remove" }, "\u2715")))), h("button", { key: '4f81107c94bf8810dfc14aa58d5afcf55d8e126d', type: "button", class: "add-btn", onClick: this.addIngredient }, "+ Add ingredient"), this.errors.ingredients && h("span", { key: 'd87cc375b194c187b64def1ef9840797dab1d456', class: "error" }, this.errors.ingredients)), h("label", { key: 'dc6c04a5a2b5cc7d1912f535b8904125ce74af56' }, "Instructions", h("textarea", { key: '0c9c4b09da5b3f24addb66c18fccad7c900bebcb', rows: 5, onInput: (e) => (this.instructions = e.target.value) }, this.instructions), this.errors.instructions && h("span", { key: 'f430772f46e5298b2a2522aaef2822a59df61a08', class: "error" }, this.errors.instructions)), h("div", { key: '337abce7c4f93a9fbb90917e6b407dfb5b95039d', class: "footer" }, h("slot", { key: 'b8b610485f592592afb6cef682faeb13d52da6ea', name: "footer" }), h("button", { key: 'faf249c9be390b5d574300d0ff24bcd0c5603a3c', type: "button", class: "cancel-btn", onClick: () => this.cancel.emit() }, "Cancel"), h("button", { key: '527146d147778940c28e5357c100d1809cbcd6df', type: "submit", class: "save-btn" }, "Save Recipe"))));
|
|
82
82
|
}
|
|
83
83
|
static get is() { return "recipe-form"; }
|
|
84
84
|
static get encapsulation() { return "shadow"; }
|
|
@@ -8,7 +8,7 @@ export class RecipeRating {
|
|
|
8
8
|
}
|
|
9
9
|
render() {
|
|
10
10
|
const stars = Array.from({ length: this.max }, (_, i) => i + 1);
|
|
11
|
-
return (h("div", { key: '
|
|
11
|
+
return (h("div", { key: '19cb1bd17a6dc207c7e556ae026a4f343a784f50', class: "wrap", role: this.readonly ? undefined : 'radiogroup' }, stars.map((s) => (h("span", { class: { star: true, filled: s <= this.value, clickable: !this.readonly }, onClick: () => !this.readonly && this.ratingChange.emit({ value: s }) }, "\u2605")))));
|
|
12
12
|
}
|
|
13
13
|
static get is() { return "recipe-rating"; }
|
|
14
14
|
static get encapsulation() { return "shadow"; }
|
|
@@ -30,7 +30,7 @@ export class RecipeSearchBar {
|
|
|
30
30
|
this.internalValue = newVal;
|
|
31
31
|
}
|
|
32
32
|
render() {
|
|
33
|
-
return (h("div", { key: '
|
|
33
|
+
return (h("div", { key: 'eb622258d322ed13168a4e4da4f6fecc67c5e3ea', class: "wrap" }, h("input", { key: '5594cf8585234e21e4529a069ad9621631c9e103', type: "search", placeholder: this.placeholder, value: this.internalValue, onInput: this.onInput, onKeyDown: this.onKeyDown }), h("button", { key: '7540e7232d5071a65360c8196deda3461bfa8308', onClick: () => this.search.emit({ value: this.internalValue }), "aria-label": "Search" }, "\uD83D\uDD0D")));
|
|
34
34
|
}
|
|
35
35
|
static get is() { return "recipe-search-bar"; }
|
|
36
36
|
static get encapsulation() { return "shadow"; }
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{A as
|
|
1
|
+
import{A as s,d as o}from"./p-Dp1sKtrN.js";const p=s,r=o;export{p as AppModal,r as defineCustomElement}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{A as o,d as
|
|
1
|
+
import{A as o,d as s}from"./p-Bj2iIXUo.js";const p=o,r=s;export{p as AppToast,r as defineCustomElement}
|
package/dist/components/index.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
export{g as getAssetPath,r as render,s as setAssetPath,a as setNonce,b as setPlatformOptions}from"./p-
|
|
1
|
+
export{g as getAssetPath,r as render,s as setAssetPath,a as setNonce,b as setPlatformOptions}from"./p-BJU3HdRm.js";export{R as RecipeCard}from"./p-Bi4G3e9f.js";export{R as RecipeSearchBar}from"./p-Xf30T5IO.js";export{R as RecipeFilterBar}from"./p-BqnbT3UL.js";export{R as RecipeRating}from"./p-BUu-OE2n.js";export{R as RecipeForm}from"./p-DXdnWxeM.js";export{M as MealPlanDay}from"./p-S4266va_.js";export{A as AppModal}from"./p-Dp1sKtrN.js";export{A as AppToast}from"./p-Bj2iIXUo.js";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{M as o,d as
|
|
1
|
+
import{M as o,d as s}from"./p-S4266va_.js";const a=o,p=s;export{a as MealPlanDay,p as defineCustomElement}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
function t(t,e,n){const o="undefined"!=typeof HTMLElement?HTMLElement.prototype:null;for(;t&&t!==o;){const o=Object.getOwnPropertyDescriptor(t,e);if(o&&(!n||o.get))return o;t=Object.getPrototypeOf(t)}}var e,n=(e,n)=>{var o;Object.entries(null!=(o=n.o.t)?o:{}).map((([o,[l]])=>{if(31&l||32&l){const l=e[o],s=t(Object.getPrototypeOf(e),o,!0)||Object.getOwnPropertyDescriptor(e,o);s&&Object.defineProperty(e,o,{get(){return s.get.call(this)},set(t){s.set.call(this,t)},configurable:!0,enumerable:!0}),n.l.has(o)?e[o]=n.l.get(o):void 0!==l&&(e[o]=l)}}))},o=t=>{if(t.__stencil__getHostRef)return t.__stencil__getHostRef()},l=(t,e)=>e in t,s=(t,e)=>(0,console.error)(t,e),i=new Map,r="undefined"!=typeof window?window:{},c=r.HTMLElement||class{},u={i:0,u:"",jmp:t=>t(),raf:t=>requestAnimationFrame(t),ael:(t,e,n,o)=>t.addEventListener(e,n,o),rel:(t,e,n,o)=>t.removeEventListener(e,n,o),ce:(t,e)=>new CustomEvent(t,e)},f=(()=>{try{return!!r.document.adoptedStyleSheets&&(new CSSStyleSheet,"function"==typeof(new CSSStyleSheet).replaceSync)}catch(t){}return!1})(),a=!!f&&(()=>!!r.document&&Object.getOwnPropertyDescriptor(r.document.adoptedStyleSheets,"length").writable)(),d=!1,p=[],h=[],m=()=>{var t;return(null==(t=r.document)?void 0:t.hidden)?v($):u.raf($)},b=(t,e)=>n=>{t.push(n),d||(d=!0,e&&4&u.i?v($):m())},y=t=>{for(let e=0;e<t.length;e++)try{t[e](performance.now())}catch(t){s(t)}t.length=0},$=()=>{y(p),y(h),(d=p.length>0)&&m()},v=t=>Promise.resolve(undefined).then(t),w=b(h,!0),g=t=>{const e=new URL(t,u.u);return e.origin!==r.location.origin?e.href:e.pathname},j=t=>u.u=t;function O(){const t=this.attachShadow({mode:"open"});void 0===e&&(e=null),e&&(a?t.adoptedStyleSheets.push(e):t.adoptedStyleSheets=[...t.adoptedStyleSheets,e])}var S,k=new WeakMap,M=t=>"sc-"+t.p,E=t=>"object"==(t=typeof t)||"function"===t,A=(t,e,...n)=>{let o=null,l=null,i=!1,r=!1;const c=[],u=e=>{for(let n=0;n<e.length;n++)if(o=e[n],Array.isArray(o))u(o);else if(null!=o&&"boolean"!=typeof o){if(i="function"!=typeof t&&!E(o))o=String(o);else if("function"!=typeof t&&void 0===o.i){s("Invalid vNode child");continue}i&&r?c[c.length-1].h+=o:c.push(i?C(null,o):o),r=i}};if(u(n),e){e.key&&(l=e.key);{const t=e.className||e.class;t&&(e.class="object"!=typeof t?t:Object.keys(t).filter((e=>t[e])).join(" "))}}const f=C(t,null);return f.m=e,c.length>0&&(f.$=c),f.v=l,f},C=(t,e)=>({i:0,j:t,h:null!=e?e:null,O:null,$:null,m:null,v:null}),N={},x=t=>{if(!t)return;const e=Object.keys(t);if(0===e.length)return;let n=!1;for(const o of e){if(n)break;for(const e of t[o])if("string"==typeof e){n=!0;break}}if(!n)return t;const o={};for(const n of e)o[n]=t[n].map((t=>"string"==typeof t?{[t]:0}:t));return o},L=(t,e)=>null==t||E(t)?t:4&e?"false"!==t&&(""===t||!!t):2&e?"string"==typeof t?parseFloat(t):"number"==typeof t?t:NaN:1&e?String(t):t,_=(t,e)=>{const n=t;return{emit:t=>D(n,e,{bubbles:!0,composed:!0,cancelable:!0,detail:t})}},D=(t,e,n)=>{const o=u.ce(e,n);return t.dispatchEvent(o),o},H=(t,e,n,s,i,c)=>{if(n===s)return;let f=l(t,e),a=e.toLowerCase();if("class"===e){const e=t.classList,o=R(n);let l=R(s);e.remove(...o.filter((t=>t&&!l.includes(t)))),e.add(...l.filter((t=>t&&!o.includes(t))))}else if("key"===e);else if(t.__lookupSetter__(e)||"o"!==e[0]||"n"!==e[1]){if("a"===e[0]&&e.startsWith("attr:")){const n=e.slice(5);let l;{const e=o(t);if(e&&e.o&&e.o.t){const t=e.o.t[n];t&&t[1]&&(l=t[1])}}return l||(l=n.replace(/([a-z0-9])([A-Z])/g,"$1-$2").toLowerCase()),void(null==s||!1===s?!1===s&&""!==t.getAttribute(l)||t.removeAttribute(l):t.setAttribute(l,!0===s?"":s))}if("p"===e[0]&&e.startsWith("prop:")){const n=e.slice(5);try{t[n]=s}catch(t){}return}{const o=E(s);if((f||o&&null!==s)&&!i)try{if(t.tagName.includes("-"))t[e]!==s&&(t[e]=s);else{const o=null==s?"":s;"list"===e?f=!1:null!=n&&t[e]===o||("function"==typeof t.__lookupSetter__(e)?t[e]=o:t.setAttribute(e,o))}}catch(t){}null==s||!1===s?!1===s&&""!==t.getAttribute(e)||t.removeAttribute(e):(!f||4&c||i)&&!o&&1===t.nodeType&&t.setAttribute(e,s=!0===s?"":s)}}else if(e="-"===e[2]?e.slice(3):l(r,a)?a.slice(2):a[2]+e.slice(3),n||s){const o=e.endsWith(U);e=e.replace(W,""),n&&u.rel(t,e,n,o),s&&u.ael(t,e,s,o)}},P=/\s/,R=t=>("object"==typeof t&&t&&"baseVal"in t&&(t=t.baseVal),t&&"string"==typeof t?t.split(P):[]),U="Capture",W=new RegExp(U+"$"),F=(t,e,n)=>{const o=11===e.O.nodeType&&e.O.host?e.O.host:e.O,l=t&&t.m||{},s=e.m||{};for(const t of T(Object.keys(l)))t in s||H(o,t,l[t],void 0,n,e.i);for(const t of T(Object.keys(s)))H(o,t,l[t],s[t],n,e.i)};function T(t){return t.includes("ref")?[...t.filter((t=>"ref"!==t)),"ref"]:t}var V=!1,q=!1,z=(t,e,n)=>{const o=e.$[n];let l,s,i=0;if(null!=o.h)l=o.O=r.document.createTextNode(o.h);else{if(!r.document)throw new Error("You are trying to render a Stencil component in an environment that doesn't support the DOM.");if(l=o.O=r.document.createElement(o.j),F(null,o,q),o.$){const e="template"===o.j?l.content:l;for(i=0;i<o.$.length;++i)s=z(t,o,i),s&&e.appendChild(s)}}return l["s-hn"]=S,l},I=(t,e,n,o,l,s)=>{let i,r=t;for(r.shadowRoot&&r.tagName===S&&(r=r.shadowRoot),"template"===n.j&&(r=r.content);l<=s;++l)o[l]&&(i=z(null,n,l),i&&(o[l].O=i,G(r,i,e)))},Y=(t,e,n)=>{for(let o=e;o<=n;++o){const e=t[o];if(e){const t=e.O;t&&t.remove()}}},Z=(t,e,n=!1)=>t.j===e.j&&(n?(n&&!t.v&&e.v&&(t.v=e.v),!0):t.v===e.v),B=(t,e,n=!1)=>{const o=e.O=t.O,l=t.$,s=e.$,i=e.h;null==i?("slot"!==e.j||V||t.S!==e.S&&(e.O["s-sn"]=e.S||"",(t=>{u.i|=1;const e=t.closest(S.toLowerCase());if(null!=e){const n=Array.from(e.__childNodes||e.childNodes).find((t=>t["s-cr"])),o=Array.from(t.__childNodes||t.childNodes);for(const t of n?o.reverse():o)null!=t["s-sh"]&&(G(e,t,null!=n?n:null),t["s-sh"]=void 0)}u.i&=-2})(e.O.parentElement)),F(t,e,q),null!==l&&null!==s?((t,e,n,o,l=!1)=>{let s,i,r=0,c=0,u=0,f=0,a=e.length-1,d=e[0],p=e[a],h=o.length-1,m=o[0],b=o[h];const y="template"===n.j?t.content:t;for(;r<=a&&c<=h;)if(null==d)d=e[++r];else if(null==p)p=e[--a];else if(null==m)m=o[++c];else if(null==b)b=o[--h];else if(Z(d,m,l))B(d,m,l),d=e[++r],m=o[++c];else if(Z(p,b,l))B(p,b,l),p=e[--a],b=o[--h];else if(Z(d,b,l))B(d,b,l),G(y,d.O,p.O.nextSibling),d=e[++r],b=o[--h];else if(Z(p,m,l))B(p,m,l),G(y,p.O,d.O),p=e[--a],m=o[++c];else{for(u=-1,f=r;f<=a;++f)if(e[f]&&null!==e[f].v&&e[f].v===m.v){u=f;break}u>=0?(i=e[u],i.j!==m.j?s=z(e&&e[c],n,u):(B(i,m,l),e[u]=void 0,s=i.O),m=o[++c]):(s=z(e&&e[c],n,c),m=o[++c]),s&&G(d.O.parentNode,s,d.O)}r>a?I(t,null==o[h+1]?null:o[h+1].O,n,o,c,h):c>h&&Y(e,r,a)})(o,l,e,s,n):null!==s?(null!==t.h&&(o.textContent=""),I(o,null,e,s,0,s.length-1)):!n&&null!==l&&Y(l,0,l.length-1)):t.h!==i&&(o.data=i)},G=(t,e,n)=>t.__insertBefore?t.__insertBefore(e,n):null==t?void 0:t.insertBefore(e,n),J=(t,e,n=!1)=>{const o=t.$hostElement$,l=t.o,s=t.k||C(null,null);var i;const r=(i=e)&&i.j===N?e:A(null,null,e);if(S=o.tagName,n&&r.m)for(const t of Object.keys(r.m))o.hasAttribute(t)&&!["key","ref","style","class"].includes(t)&&(r.m[t]=o[t]);r.j=null,r.i|=4,t.k=r,r.O=s.O=o.shadowRoot||o,V=!(!(1&l.i)||128&l.i),B(s,r,n)},K=(t,e)=>{if(e&&!t.M&&e["s-p"]){const n=e["s-p"].push(new Promise((o=>t.M=()=>{e["s-p"].splice(n-1,1),o()})))}},Q=(t,e)=>{if(t.i|=16,4&t.i)return void(t.i|=512);K(t,t.A);const n=()=>X(t,e);if(!e)return w(n);queueMicrotask((()=>{n()}))},X=(t,e)=>{const n=t.$hostElement$,o=n;if(!o)throw new Error(`Can't render component <${n.tagName.toLowerCase()} /> with invalid Stencil runtime! Make sure this imported component is compiled with a \`externalRuntime: true\` flag. For more information, please refer to https://stenciljs.com/docs/custom-elements#externalruntime`);let l;return l=it(o,e?"componentWillLoad":"componentWillUpdate",void 0,n),l=tt(l,(()=>it(o,"componentWillRender",void 0,n))),tt(l,(()=>nt(t,o,e)))},tt=(t,e)=>et(t)?t.then(e).catch((t=>{console.error(t),e()})):e(),et=t=>t instanceof Promise||t&&t.then&&"function"==typeof t.then,nt=async(t,e,n)=>{var o;const l=t.$hostElement$,s=l["s-rc"];n&&(t=>{const e=t.o,n=t.$hostElement$,o=e.i,l=((t,e)=>{var n,o,l;const s=M(e),c=i.get(s);if(!r.document)return s;if(t=11===t.nodeType?t:r.document,c)if("string"==typeof c){let l,i=k.get(t=t.head||t);if(i||k.set(t,i=new Set),!i.has(s)){l=r.document.createElement("style"),l.textContent=c;const d=null!=(n=u.C)?n:function(){var t,e,n;return null!=(n=null==(e=null==(t=r.document.head)?void 0:t.querySelector('meta[name="csp-nonce"]'))?void 0:e.getAttribute("content"))?n:void 0}();if(null!=d&&l.setAttribute("nonce",d),!(1&e.i))if("HEAD"===t.nodeName){const e=t.querySelectorAll("link[rel=preconnect]"),n=e.length>0?e[e.length-1].nextSibling:t.querySelector("style");t.insertBefore(l,(null==n?void 0:n.parentNode)===t?n:null)}else if("host"in t)if(f){const e=new(null!=(o=t.defaultView)?o:t.ownerDocument.defaultView).CSSStyleSheet;e.replaceSync(c),a?t.adoptedStyleSheets.unshift(e):t.adoptedStyleSheets=[e,...t.adoptedStyleSheets]}else{const e=t.querySelector("style");e?e.textContent=c+e.textContent:t.prepend(l)}else t.append(l);1&e.i&&t.insertBefore(l,null),4&e.i&&(l.textContent+="slot-fb{display:contents}slot-fb[hidden]{display:none}"),i&&i.add(s)}}else{let e=k.get(t);if(e||k.set(t,e=new Set),!e.has(s)){const n=null!=(l=t.defaultView)?l:t.ownerDocument.defaultView;let o;if(c.constructor===n.CSSStyleSheet)o=c;else{o=new n.CSSStyleSheet;for(let t=0;t<c.cssRules.length;t++)o.insertRule(c.cssRules[t].cssText,t)}a?t.adoptedStyleSheets.push(o):t.adoptedStyleSheets=[...t.adoptedStyleSheets,o],e.add(s)}}return s})(n.shadowRoot?n.shadowRoot:n.getRootNode(),e);10&o&&(n["s-sc"]=l,n.classList.add(l+"-h"))})(t);ot(t,e,l,n),s&&(s.map((t=>t())),l["s-rc"]=void 0);{const e=null!=(o=l["s-p"])?o:[],n=()=>lt(t);0===e.length?n():(Promise.all(e).then(n).catch(n),t.i|=4,e.length=0)}},ot=(t,e,n,o)=>{try{e=e.render(),t.i&=-17,t.i|=2,J(t,e,o)}catch(e){s(e,t.$hostElement$)}return null},lt=t=>{const e=t.$hostElement$,n=e,o=t.A;it(n,"componentDidRender",void 0,e),64&t.i?it(n,"componentDidUpdate",void 0,e):(t.i|=64,rt(e),it(n,"componentDidLoad",void 0,e),t.N(e),o||st()),t.M&&(t.M(),t.M=void 0),512&t.i&&v((()=>Q(t,!1))),t.i&=-517},st=()=>{v((()=>D(r,"appload",{detail:{namespace:"recipe-ui"}})))},it=(t,e,n,o)=>{if(t&&t[e])try{return t[e](n)}catch(t){s(t,o)}},rt=t=>t.classList.add("hydrated"),ct=(t,e,n,l)=>{const i=o(t);if(!i)return;const r=t,c=i.l.get(e),u=i.i,f=r;n=L(n,l.t[e][0]);const a=Number.isNaN(c)&&Number.isNaN(n);if(n!==c&&!a){if(i.l.set(e,n),l.L){const t=l.L[e];t&&t.map((t=>{try{const[[o,l]]=Object.entries(t);(128&u||1&l)&&(f?f[o](n,c,e):i._.push((()=>{i.D[o](n,c,e)})))}catch(t){s(t,r)}}))}if(2&u){if(f.componentShouldUpdate&&!1===f.componentShouldUpdate(n,c,e)&&!(16&u))return;16&u||Q(i,!1)}}},ut=(e,n)=>{var l,s;const i=e.prototype;{e.watchers&&!n.L&&(n.L=x(e.watchers)),e.deserializers&&!n.H&&(n.H=e.deserializers),e.serializers&&!n.P&&(n.P=e.serializers);const r=Object.entries(null!=(l=n.t)?l:{});r.map((([e,[l]])=>{if(31&l||32&l){const{get:s,set:r}=t(i,e)||{};s&&(n.t[e][0]|=2048),r&&(n.t[e][0]|=4096),Object.defineProperty(i,e,{get(){return s?s.apply(this):(t=e,o(this).l.get(t));var t},configurable:!0,enumerable:!0}),Object.defineProperty(i,e,{set(t){const s=o(this);if(s){if(r)return void 0===(32&l?this[e]:s.$hostElement$[e])&&s.l.get(e)&&(t=s.l.get(e)),r.apply(this,[L(t,l)]),void ct(this,e,t=32&l?this[e]:s.$hostElement$[e],n);ct(this,e,t,n)}}})}}));{const t=new Map;i.attributeChangedCallback=function(e,l,s){u.jmp((()=>{var c;const u=t.get(e),f=o(this);if(this.hasOwnProperty(u),i.hasOwnProperty(u)&&"number"==typeof this[u]&&this[u]==s)return;if(null==u){const t=null==f?void 0:f.i;if(f&&t&&!(8&t)&&s!==l){const o=this,i=null==(c=n.L)?void 0:c[e];null==i||i.forEach((n=>{const[[i,r]]=Object.entries(n);null!=o[i]&&(128&t||1&r)&&o[i].call(o,s,l,e)}))}return}const a=r.find((([t])=>t===u)),d=a&&4&a[1][0],p=d&&null===s&&void 0===this[u];d&&(s=null!==s&&"false"!==s);const h=Object.getOwnPropertyDescriptor(i,u);p||s==this[u]||h.get&&!h.set||(this[u]=s)}))},e.observedAttributes=Array.from(new Set([...Object.keys(null!=(s=n.L)?s:{}),...r.filter((([t,e])=>31&e[0])).map((([e,n])=>{const o=n[1]||e;return t.set(o,e),o}))]))}}return e},ft=async(t,e,n)=>{let o;try{if(!(32&e.i)&&(e.i|=32,e.i&=-1025,o=t.constructor,customElements.whenDefined(t.localName).then((()=>e.i|=128)),o&&o.style)){let t;"string"==typeof o.style&&(t=o.style);const e=M(n);if(!i.has(e)){const o=()=>{};((t,e,n)=>{let o=i.get(t);f&&n?(o=o||new CSSStyleSheet,"string"==typeof o?o=e:o.replaceSync(e)):o=e,i.set(t,o)})(e,t,!!(1&n.i)),o()}}const l=e.A,s=()=>Q(e,!0);l&&l["s-rc"]?l["s-rc"].push(s):s()}catch(n){s(n,t),e.M&&(e.M(),e.M=void 0),!e.N||1024&e.i||e.N(t)}},at=(t,e)=>{const l={i:e[0],p:e[1]};try{l.t=e[2],l.L=x(t.L),l.H=t.H,l.P=t.P;const s=t.prototype.connectedCallback,i=t.prototype.disconnectedCallback;return Object.assign(t.prototype,{__hasHostListenerAttached:!1,__registerHost(){((t,e)=>{const o={i:0,$hostElement$:t,o:e,l:new Map,R:new Map};o.U=new Promise((t=>o.N=t)),t["s-p"]=[],t["s-rc"]=[];const l=o;t.__stencil__getHostRef=()=>l,512&e.i&&n(t,o)})(this,l)},connectedCallback(){if(!this.__hasHostListenerAttached){if(!o(this))return;this.__hasHostListenerAttached=!0}(t=>{if(!(1&u.i)){const e=o(t);if(!e)return;const n=e.o,l=()=>{};if(1&e.i)(null==e?void 0:e.D)||(1024&e.i?setTimeout((()=>ft(t,e,n)),1e3):(null==e?void 0:e.U)&&e.U.then((()=>{})));else{e.i|=1;{let n=t;for(;n=n.parentNode||n.host;)if(n["s-p"]){K(e,e.A=n);break}}n.t&&Object.entries(n.t).map((([e,[n]])=>{if(31&n&&Object.prototype.hasOwnProperty.call(t,e)){const n=t[e];delete t[e],t[e]=n}})),ft(t,e,n)}l()}})(this),s&&s.call(this)},disconnectedCallback(){(async t=>{1&u.i||o(t),k.has(t)&&k.delete(t),t.shadowRoot&&k.has(t.shadowRoot)&&k.delete(t.shadowRoot)})(this),i&&i.call(this)},__attachShadow(){if(this.shadowRoot){if("open"!==this.shadowRoot.mode)throw new Error(`Unable to re-use existing shadow root for ${l.p}! Mode is set to ${this.shadowRoot.mode} but Stencil only supports open shadow roots.`)}else O.call(this,l)}}),Object.defineProperty(t,"is",{value:l.p,configurable:!0}),ut(t,l)}catch(e){return s(e),t}},dt=t=>u.C=t,pt=t=>Object.assign(u,t),ht=new WeakMap;function mt(t,e){let n=ht.get(e);n||(n={i:0,o:{i:0,p:e.tagName},$hostElement$:e},ht.set(e,n)),J(n,t)}function bt(t){return t}export{c as H,dt as a,pt as b,_ as c,g,A as h,at as p,mt as r,j as s,bt as t}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{t as s,p as t,H as e,c as i,h as a}from"./p-
|
|
1
|
+
import{t as s,p as t,H as e,c as i,h as a}from"./p-BJU3HdRm.js";const r=t(class extends e{constructor(s){super(),!1!==s&&this.__registerHost(),this.__attachShadow(),this.ratingChange=i(this,"ratingChange"),this.value=0,this.readonly=!1,this.max=5}render(){const s=Array.from({length:this.max},((s,t)=>t+1));return a("div",{key:"19cb1bd17a6dc207c7e556ae026a4f343a784f50",class:"wrap",role:this.readonly?void 0:"radiogroup"},s.map((s=>a("span",{class:{star:!0,filled:s<=this.value,clickable:!this.readonly},onClick:()=>!this.readonly&&this.ratingChange.emit({value:s})},"★"))))}static get style(){return":host{display:inline-block;font-family:system-ui, sans-serif}.wrap{display:flex;gap:2px}.star{font-size:18px;color:#ddd}.star.filled{color:#f5a623}.star.clickable{cursor:pointer}"}},[1,"recipe-rating",{value:[2],readonly:[4],max:[2]}]);function l(){"undefined"!=typeof customElements&&["recipe-rating"].forEach((t=>{"recipe-rating"===t&&(customElements.get(s(t))||customElements.define(s(t),r))}))}l();export{r as R,l as d}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{t as e,p as
|
|
1
|
+
import{t as e,p as a,H as t,c as i,h as s}from"./p-BJU3HdRm.js";const r=a(class extends t{constructor(e){super(),!1!==e&&this.__registerHost(),this.__attachShadow(),this.favoriteToggle=i(this,"favoriteToggle"),this.cardClick=i(this,"cardClick"),this.category="",this.favorite=!1,this.onFavoriteClick=e=>{e.stopPropagation(),this.favoriteToggle.emit({favorite:!this.favorite})}}render(){return s("div",{key:"ab4f6e822f8b961d15c49d488af4e9b617ae71d2",class:"card",onClick:()=>this.cardClick.emit()},s("div",{key:"f57fc00e484283bd223f7e8557af7e76de33217e",class:"image-wrap"},this.image?s("img",{src:this.image,alt:this.recipeTitle}):s("div",{class:"placeholder"}),s("button",{key:"2f05b10aa6de8f6d51e0a216567a65900011a198",class:{"fav-btn":!0,active:this.favorite},onClick:this.onFavoriteClick,"aria-label":"Toggle favorite"},this.favorite?"★":"☆")),s("div",{key:"bb120c622bef2e7ae8abfedf31ba988a66d393c3",class:"body"},s("h3",{key:"2b0115c0ae28b302e35a00e0ed1a70d0b20712ab"},this.recipeTitle),this.category&&s("span",{key:"388a88c469547f04e7af2b1da0d303a28f499481",class:"category"},this.category),s("div",{key:"ff8e56f5a2ce08736ec9cef2a17bbcc2aad4b946",class:"actions"},s("slot",{key:"8952391cb6163493dc5ab27b690c4375ef535ac4",name:"actions"}))))}static get style(){return":host{display:block;font-family:system-ui, sans-serif}.card{border:1px solid #e5e5e5;border-radius:12px;overflow:hidden;cursor:pointer;background:#fff;transition:box-shadow 0.15s ease, transform 0.15s ease}.card:hover{box-shadow:0 4px 16px rgba(0, 0, 0, 0.08);transform:translateY(-2px)}.image-wrap{position:relative;aspect-ratio:4 / 3;background:#f2f2f2}.image-wrap img{width:100%;height:100%;object-fit:cover;display:block}.placeholder{width:100%;height:100%;background:linear-gradient(135deg, #eee, #ddd)}.fav-btn{position:absolute;top:8px;right:8px;border:none;background:rgba(255, 255, 255, 0.9);border-radius:50%;width:32px;height:32px;font-size:16px;cursor:pointer;color:#f5a623}.fav-btn.active{color:#ff6b35}.body{padding:12px 14px}h3{margin:0 0 4px;font-size:15px;line-height:1.3}.category{font-size:12px;color:#777;text-transform:uppercase;letter-spacing:0.03em}.actions{margin-top:8px}"}},[257,"recipe-card",{recipeTitle:[1,"recipe-title"],image:[1],category:[1],favorite:[4]}]);function o(){"undefined"!=typeof customElements&&["recipe-card"].forEach((a=>{"recipe-card"===a&&(customElements.get(e(a))||customElements.define(e(a),r))}))}o();export{r as R,o as d}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{t as s,p as t,H as e,c as
|
|
1
|
+
import{t as s,p as t,H as e,c as a,h as o}from"./p-BJU3HdRm.js";const i=t(class extends e{constructor(s){super(),!1!==s&&this.__registerHost(),this.__attachShadow(),this.dismiss=a(this,"dismiss"),this.message="",this.type="info",this.duration=3e3}componentDidLoad(){this.duration>0&&setTimeout((()=>this.dismiss.emit()),this.duration)}render(){return o("div",{key:"73ab8ea44ad155052616ffbc424e1d8f13b8116f",class:`toast ${this.type}`},o("span",{key:"301487550c2f4f50cdcc6d0a138b9e968cde385f"},this.message),o("button",{key:"4e9de348002a397a25450142d9fa1fa07ca84d54",onClick:()=>this.dismiss.emit(),"aria-label":"Dismiss"},"✕"))}static get style(){return":host{font-family:system-ui, sans-serif;display:block}.toast{display:flex;align-items:center;gap:10px;padding:10px 16px;border-radius:8px;color:#fff;font-size:14px;box-shadow:0 4px 12px rgba(0,0,0,0.15)}.toast.success{background:#2ecc71}.toast.error{background:#e74c3c}.toast.info{background:#3498db}button{border:none;background:none;color:inherit;cursor:pointer;margin-left:auto}"}},[1,"app-toast",{message:[1],type:[1],duration:[2]}]);function n(){"undefined"!=typeof customElements&&["app-toast"].forEach((t=>{"app-toast"===t&&(customElements.get(s(t))||customElements.define(s(t),i))}))}n();export{i as A,n as d}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{t as s,p as t,H as e,c as i,h as r}from"./p-BJU3HdRm.js";const a=t(class extends e{constructor(s){super(),!1!==s&&this.__registerHost(),this.__attachShadow(),this.filterChange=i(this,"filterChange"),this.categories=[],this.active=""}select(s){this.filterChange.emit({value:s})}render(){const s=Array.isArray(this.categories)?this.categories:[];return r("div",{key:"084a1e0d79a1916d07277e1c080ff779aba1aa79",class:"wrap"},r("button",{key:"f0b9b529d1dca7f98621404b174837b5b21163e7",class:{chip:!0,active:""===this.active},onClick:()=>this.select("")},"All"),s.map((s=>r("button",{class:{chip:!0,active:this.active===s},onClick:()=>this.select(s)},s))))}static get style(){return":host{display:block;font-family:system-ui, sans-serif}.wrap{display:flex;flex-wrap:wrap;gap:8px}.chip{border:1px solid #ddd;background:#fff;border-radius:999px;padding:6px 14px;font-size:13px;cursor:pointer;color:#444}.chip.active{background:#ff6b35;border-color:#ff6b35;color:#fff}"}},[1,"recipe-filter-bar",{categories:[16],active:[1]}]);function c(){"undefined"!=typeof customElements&&["recipe-filter-bar"].forEach((t=>{"recipe-filter-bar"===t&&(customElements.get(s(t))||customElements.define(s(t),a))}))}c();export{a as R,c as d}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{t as e,p as t,H as i,c as a,h as s}from"./p-
|
|
1
|
+
import{t as e,p as t,H as i,c as a,h as s}from"./p-BJU3HdRm.js";const n=t(class extends i{constructor(e){super(),!1!==e&&this.__registerHost(),this.__attachShadow(),this.save=a(this,"save"),this.cancel=a(this,"cancel"),this.title="",this.image="",this.category="",this.ingredients=[""],this.instructions="",this.errors={},this.onSubmit=e=>{if(e.preventDefault(),!this.validate())return;const t={id:this.initialData?.id,title:this.title.trim(),image:this.image.trim(),category:this.category.trim(),ingredients:this.ingredients.map((e=>e.trim())).filter(Boolean),instructions:this.instructions.trim()};this.save.emit(t)},this.addIngredient=()=>{this.ingredients=[...this.ingredients,""]},this.removeIngredient=e=>{this.ingredients=this.ingredients.filter(((t,i)=>i!==e))}}componentWillLoad(){this.loadInitialData()}onInitialDataChange(){this.loadInitialData()}loadInitialData(){let e;if("string"==typeof this.initialData&&this.initialData)try{e=JSON.parse(this.initialData)}catch{e=void 0}else this.initialData&&"object"==typeof this.initialData&&(e=this.initialData);e&&(this.title=e.title??"",this.image=e.image??"",this.category=e.category??"",this.ingredients=e.ingredients?.length?[...e.ingredients]:[""],this.instructions=e.instructions??"")}validate(){const e={};return this.title.trim()||(e.title="Title is required."),0===this.ingredients.map((e=>e.trim())).filter(Boolean).length&&(e.ingredients="Add at least one ingredient."),this.instructions.trim()||(e.instructions="Instructions are required."),this.errors=e,0===Object.keys(e).length}updateIngredient(e,t){const i=[...this.ingredients];i[e]=t,this.ingredients=i}render(){return s("form",{key:"6699f62ff8027114e5a0e3d154f8743048cf4d96",onSubmit:this.onSubmit},s("slot",{key:"8de0f7e758feb4fc6f1ea877c4acd7c41cbe13ed",name:"header"}),s("label",{key:"881275928734c4eabfee6d22b35cddad1af03853"},"Title",s("input",{key:"a55ae352c35cec0b2391061d48153151a7dc5e6b",type:"text",value:this.title,onInput:e=>this.title=e.target.value}),this.errors.title&&s("span",{key:"dbace66ddaab5ab5096acb39822c7cd3a18923be",class:"error"},this.errors.title)),s("label",{key:"ae1bcdb323ccaa03307b6a283fcc395ef49954c5"},"Image URL",s("input",{key:"6ee9483689e0304c0ae28ab755dc93e117d4952e",type:"text",value:this.image,onInput:e=>this.image=e.target.value})),s("label",{key:"751b54959a8e2c85e98f2b192a4d8aa83d8ebafe"},"Category",s("input",{key:"83f852c74727b86a1a8a6c9a0d93e9ffdb3f33f3",type:"text",value:this.category,onInput:e=>this.category=e.target.value})),s("div",{key:"6a7c99a86d601ed51ece26c85b4b45766a2dafdf",class:"field"},s("span",{key:"ee082917bb3b90ec45ce1feea234c374f7fc35a0"},"Ingredients"),this.ingredients.map(((e,t)=>s("div",{class:"ingredient-row"},s("input",{type:"text",value:e,onInput:e=>this.updateIngredient(t,e.target.value)}),s("button",{type:"button",onClick:()=>this.removeIngredient(t),"aria-label":"Remove"},"✕")))),s("button",{key:"4f81107c94bf8810dfc14aa58d5afcf55d8e126d",type:"button",class:"add-btn",onClick:this.addIngredient},"+ Add ingredient"),this.errors.ingredients&&s("span",{key:"d87cc375b194c187b64def1ef9840797dab1d456",class:"error"},this.errors.ingredients)),s("label",{key:"dc6c04a5a2b5cc7d1912f535b8904125ce74af56"},"Instructions",s("textarea",{key:"0c9c4b09da5b3f24addb66c18fccad7c900bebcb",rows:5,onInput:e=>this.instructions=e.target.value},this.instructions),this.errors.instructions&&s("span",{key:"f430772f46e5298b2a2522aaef2822a59df61a08",class:"error"},this.errors.instructions)),s("div",{key:"337abce7c4f93a9fbb90917e6b407dfb5b95039d",class:"footer"},s("slot",{key:"b8b610485f592592afb6cef682faeb13d52da6ea",name:"footer"}),s("button",{key:"faf249c9be390b5d574300d0ff24bcd0c5603a3c",type:"button",class:"cancel-btn",onClick:()=>this.cancel.emit()},"Cancel"),s("button",{key:"527146d147778940c28e5357c100d1809cbcd6df",type:"submit",class:"save-btn"},"Save Recipe")))}static get watchers(){return{initialData:[{onInitialDataChange:0}]}}static get style(){return":host{display:block;font-family:system-ui, sans-serif}form{display:flex;flex-direction:column;gap:14px}label{display:flex;flex-direction:column;gap:4px;font-size:13px;color:#333;font-weight:600}input,textarea{font-weight:400;padding:8px 10px;border:1px solid #ddd;border-radius:6px;font-size:14px;font-family:inherit}.field{display:flex;flex-direction:column;gap:6px;font-size:13px;font-weight:600}.ingredient-row{display:flex;gap:6px}.ingredient-row input{flex:1}.ingredient-row button{border:none;background:#f4f4f4;border-radius:6px;cursor:pointer;width:30px}.add-btn{align-self:flex-start;border:1px dashed #bbb;background:none;border-radius:6px;padding:6px 10px;cursor:pointer;font-size:13px;color:#555}.error{color:#e74c3c;font-size:12px;font-weight:400}.footer{display:flex;justify-content:flex-end;gap:10px;margin-top:6px}.cancel-btn{border:1px solid #ddd;background:#fff;border-radius:8px;padding:8px 16px;cursor:pointer}.save-btn{border:none;background:#ff6b35;color:#fff;border-radius:8px;padding:8px 18px;cursor:pointer;font-weight:600}"}},[257,"recipe-form",{initialData:[1,"initial-data"],title:[32],image:[32],category:[32],ingredients:[32],instructions:[32],errors:[32]},void 0,{initialData:[{onInitialDataChange:0}]}]);function d(){"undefined"!=typeof customElements&&["recipe-form"].forEach((t=>{"recipe-form"===t&&(customElements.get(e(t))||customElements.define(e(t),n))}))}d();export{n as R,d}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{t as e,p as s,H as t,c as o,h as i}from"./p-BJU3HdRm.js";const n=s(class extends t{constructor(e){super(),!1!==e&&this.__registerHost(),this.__attachShadow(),this.close=o(this,"close"),this.open=!1,this.modalTitle=""}render(){return this.open?i("div",{class:"overlay",onClick:()=>this.close.emit()},i("div",{class:"dialog",onClick:e=>e.stopPropagation()},i("div",{class:"header"},i("h2",null,this.modalTitle),i("button",{class:"close-btn",onClick:()=>this.close.emit(),"aria-label":"Close"},"✕")),i("div",{class:"body"},i("slot",null)))):null}static get style(){return":host{font-family:system-ui, sans-serif}.overlay{position:fixed;inset:0;background:rgba(0, 0, 0, 0.45);display:flex;align-items:center;justify-content:center;z-index:1000}.dialog{background:#fff;border-radius:12px;min-width:320px;max-width:90vw;max-height:85vh;overflow-y:auto;padding:20px;box-shadow:0 10px 40px rgba(0,0,0,0.2)}.header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.header h2{margin:0;font-size:18px}.close-btn{border:none;background:none;font-size:16px;cursor:pointer;color:#666}"}},[257,"app-modal",{open:[4],modalTitle:[1,"modal-title"]}]);function a(){"undefined"!=typeof customElements&&["app-modal"].forEach((s=>{"app-modal"===s&&(customElements.get(e(s))||customElements.define(e(s),n))}))}a();export{n as A,a as d}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{t as e,p as a,H as o,c as s,h as t}from"./p-BJU3HdRm.js";const i=a(class extends o{constructor(e){super(),!1!==e&&this.__registerHost(),this.__attachShadow(),this.assignMeal=s(this,"assignMeal"),this.removeMeal=s(this,"removeMeal"),this.day="",this.meals=[],this.icon=""}render(){const e=Array.isArray(this.meals)?this.meals:[];return t("div",{key:"cd4f194f1eeb5f53a029f380c40aa0b4ec2f32f4",class:"day-col"},t("div",{key:"d88966142d5101fc522d5de89b6d4cab72cbbbf3",class:"col-header"},this.icon&&t("span",{key:"5a9a27a3a1909bcf7295ec7eeccf309e5e2d1ae0",class:"icon"},this.icon),t("h3",{key:"fd1fa2f1274cc1f6bd8917959015722cb69002ba"},this.day),e.length>0&&t("span",{key:"feff3bc91b52203dba19f7a87c56d3813fc95cdd",class:"count-badge"},e.length)),t("div",{key:"4afee9ce77bf1447bf9e32efc7e2f9b9571873e7",class:"meals"},e.map((e=>t("div",{class:"meal-chip"},t("div",{class:"thumb"},e.image&&t("img",{src:e.image,alt:e.title})),t("span",{class:"title"},e.title),t("button",{class:"remove-btn",onClick:()=>this.removeMeal.emit({day:this.day,mealId:e.id}),"aria-label":`Remove ${e.title}`},"✕")))),0===e.length&&t("p",{key:"9a4002b1b4516fc5ff6ef8f9a2e0a7f5e8465cbd",class:"empty"},"No meal planned")),t("button",{key:"2cef3c5f7d0e89303cb8989f78eefb95c426683f",class:"add-btn",onClick:()=>this.assignMeal.emit({day:this.day})},t("span",{key:"ae54b56f8f0b01f45029e36919764ae31f3a38b9",class:"plus"},"+")," Add meal"))}static get style(){return":host{display:block;font-family:-apple-system, BlinkMacSystemFont, 'Segoe UI', system-ui, sans-serif}.day-col{background:#ffffff;border:1px solid #e8eaed;border-radius:12px;padding:14px;min-width:160px;display:flex;flex-direction:column;gap:10px;box-shadow:0 1px 2px rgba(16, 24, 40, 0.04);transition:box-shadow 0.15s ease, border-color 0.15s ease}.day-col:hover{box-shadow:0 4px 12px rgba(16, 24, 40, 0.08);border-color:#d8dce1}.col-header{display:flex;align-items:center;gap:6px;padding-bottom:8px;border-bottom:1px solid #f0f1f3}.col-header .icon{font-size:15px;line-height:1}.col-header h3{margin:0;font-size:12.5px;font-weight:700;text-transform:uppercase;letter-spacing:0.05em;color:#4b5563;flex:1}.count-badge{background:#eef2ff;color:#4338ca;font-size:10.5px;font-weight:700;padding:1px 7px;border-radius:999px;line-height:1.5}.meals{display:flex;flex-direction:column;gap:6px;min-height:44px}.meal-chip{display:flex;align-items:center;gap:8px;background:#f9fafb;border:1px solid #eef0f2;border-radius:9px;padding:6px 8px;font-size:12.5px;transition:background 0.12s ease}.meal-chip:hover{background:#f3f4f6}.thumb{width:28px;height:28px;border-radius:6px;overflow:hidden;flex-shrink:0;background:#e5e7eb}.thumb img{width:100%;height:100%;object-fit:cover;display:block}.meal-chip .title{flex:1;color:#1f2937;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.remove-btn{border:none;background:none;cursor:pointer;color:#9ca3af;font-size:11px;line-height:1;padding:3px;border-radius:5px;transition:color 0.12s ease, background 0.12s ease}.remove-btn:hover{color:#dc2626;background:#fef2f2}.empty{font-size:12px;color:#9ca3af;margin:6px 0;text-align:center;font-style:italic}.add-btn{display:flex;align-items:center;justify-content:center;gap:4px;border:1.5px dashed #d1d5db;background:none;border-radius:9px;padding:7px;font-size:12px;font-weight:600;cursor:pointer;color:#6b7280;transition:border-color 0.12s ease, color 0.12s ease, background 0.12s ease}.add-btn:hover{border-color:#6366f1;color:#4f46e5;background:#f5f5ff}.plus{font-size:14px;line-height:1}"}},[1,"meal-plan-day",{day:[1],meals:[16],icon:[1]}]);function d(){"undefined"!=typeof customElements&&["meal-plan-day"].forEach((a=>{"meal-plan-day"===a&&(customElements.get(e(a))||customElements.define(e(a),i))}))}d();export{i as M,d}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{t as e,p as t,H as s,c as a,h as i}from"./p-
|
|
1
|
+
import{t as e,p as t,H as s,c as a,h as i}from"./p-BJU3HdRm.js";const r=t(class extends s{constructor(e){super(),!1!==e&&this.__registerHost(),this.__attachShadow(),this.search=a(this,"search"),this.placeholder="Search recipes...",this.value="",this.debounceMs=350,this.internalValue="",this.onInput=e=>{this.internalValue=e.target.value,clearTimeout(this.timer),this.timer=setTimeout((()=>{this.search.emit({value:this.internalValue})}),this.debounceMs)},this.onKeyDown=e=>{"Enter"===e.key&&(clearTimeout(this.timer),this.search.emit({value:this.internalValue}))}}componentWillLoad(){this.internalValue=this.value}onValuePropChange(e){this.internalValue=e}render(){return i("div",{key:"eb622258d322ed13168a4e4da4f6fecc67c5e3ea",class:"wrap"},i("input",{key:"5594cf8585234e21e4529a069ad9621631c9e103",type:"search",placeholder:this.placeholder,value:this.internalValue,onInput:this.onInput,onKeyDown:this.onKeyDown}),i("button",{key:"7540e7232d5071a65360c8196deda3461bfa8308",onClick:()=>this.search.emit({value:this.internalValue}),"aria-label":"Search"},"🔍"))}static get watchers(){return{value:[{onValuePropChange:0}]}}static get style(){return":host{display:block;font-family:system-ui, sans-serif}.wrap{display:flex;gap:6px}input{flex:1;padding:10px 14px;border-radius:8px;border:1px solid #ddd;font-size:14px;outline:none}input:focus{border-color:#ff6b35}button{border:none;background:#ff6b35;color:#fff;border-radius:8px;padding:0 16px;cursor:pointer;font-size:15px}"}},[1,"recipe-search-bar",{placeholder:[1],value:[1],debounceMs:[2,"debounce-ms"],internalValue:[32]},void 0,{value:[{onValuePropChange:0}]}]);function o(){"undefined"!=typeof customElements&&["recipe-search-bar"].forEach((t=>{"recipe-search-bar"===t&&(customElements.get(e(t))||customElements.define(e(t),r))}))}o();export{r as R,o as d}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{R as o,d as s}from"./p-
|
|
1
|
+
import{R as o,d as s}from"./p-Bi4G3e9f.js";const p=o,r=s;export{p as RecipeCard,r as defineCustomElement}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{R as o,d as s}from"./p-
|
|
1
|
+
import{R as o,d as s}from"./p-BqnbT3UL.js";const p=o,r=s;export{p as RecipeFilterBar,r as defineCustomElement}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{R as o,d as s}from"./p-
|
|
1
|
+
import{R as o,d as s}from"./p-DXdnWxeM.js";const p=o,r=s;export{p as RecipeForm,r as defineCustomElement}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{R as o,d as
|
|
1
|
+
import{R as o,d as s}from"./p-BUu-OE2n.js";const p=o,r=s;export{p as RecipeRating,r as defineCustomElement}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{R as o,d as
|
|
1
|
+
import{R as o,d as s}from"./p-Xf30T5IO.js";const p=o,r=s;export{p as RecipeSearchBar,r as defineCustomElement}
|