@ssj4kyuubi/recipe-ui-lib 0.1.4

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.
Files changed (124) hide show
  1. package/README.md +128 -0
  2. package/dist/cjs/index-CJNMpFY7.js +1609 -0
  3. package/dist/cjs/index.cjs.js +2 -0
  4. package/dist/cjs/loader.cjs.js +12 -0
  5. package/dist/cjs/rui-button.cjs.entry.js +31 -0
  6. package/dist/cjs/rui-filter-chips.cjs.entry.js +30 -0
  7. package/dist/cjs/rui-meal-planner.cjs.entry.js +52 -0
  8. package/dist/cjs/rui-modal.cjs.entry.js +52 -0
  9. package/dist/cjs/rui-recipe-card.cjs.entry.js +29 -0
  10. package/dist/cjs/rui-recipe-detail.cjs.entry.js +34 -0
  11. package/dist/cjs/rui-recipe-list.cjs.entry.js +44 -0
  12. package/dist/cjs/rui-search-bar.cjs.entry.js +39 -0
  13. package/dist/cjs/rui.cjs.js +24 -0
  14. package/dist/collection/collection-manifest.json +20 -0
  15. package/dist/collection/components/index.js +8 -0
  16. package/dist/collection/components/rui-button/rui-button.css +72 -0
  17. package/dist/collection/components/rui-button/rui-button.js +140 -0
  18. package/dist/collection/components/rui-filter-chips/rui-filter-chips.css +30 -0
  19. package/dist/collection/components/rui-filter-chips/rui-filter-chips.js +96 -0
  20. package/dist/collection/components/rui-meal-planner/rui-meal-planner.css +130 -0
  21. package/dist/collection/components/rui-meal-planner/rui-meal-planner.js +174 -0
  22. package/dist/collection/components/rui-modal/rui-modal.css +79 -0
  23. package/dist/collection/components/rui-modal/rui-modal.js +137 -0
  24. package/dist/collection/components/rui-recipe-card/rui-recipe-card.css +100 -0
  25. package/dist/collection/components/rui-recipe-card/rui-recipe-card.js +122 -0
  26. package/dist/collection/components/rui-recipe-detail/rui-recipe-detail.css +197 -0
  27. package/dist/collection/components/rui-recipe-detail/rui-recipe-detail.js +127 -0
  28. package/dist/collection/components/rui-recipe-list/rui-recipe-list.css +16 -0
  29. package/dist/collection/components/rui-recipe-list/rui-recipe-list.js +160 -0
  30. package/dist/collection/components/rui-search-bar/rui-search-bar.css +45 -0
  31. package/dist/collection/components/rui-search-bar/rui-search-bar.js +137 -0
  32. package/dist/collection/index.js +1 -0
  33. package/dist/components/index.d.ts +35 -0
  34. package/dist/components/index.js +1 -0
  35. package/dist/components/rui-button.d.ts +11 -0
  36. package/dist/components/rui-button.js +1 -0
  37. package/dist/components/rui-filter-chips.d.ts +11 -0
  38. package/dist/components/rui-filter-chips.js +1 -0
  39. package/dist/components/rui-meal-planner.d.ts +11 -0
  40. package/dist/components/rui-meal-planner.js +1 -0
  41. package/dist/components/rui-modal.d.ts +11 -0
  42. package/dist/components/rui-modal.js +1 -0
  43. package/dist/components/rui-recipe-card.d.ts +11 -0
  44. package/dist/components/rui-recipe-card.js +1 -0
  45. package/dist/components/rui-recipe-card2.js +1 -0
  46. package/dist/components/rui-recipe-detail.d.ts +11 -0
  47. package/dist/components/rui-recipe-detail.js +1 -0
  48. package/dist/components/rui-recipe-list.d.ts +11 -0
  49. package/dist/components/rui-recipe-list.js +1 -0
  50. package/dist/components/rui-search-bar.d.ts +11 -0
  51. package/dist/components/rui-search-bar.js +1 -0
  52. package/dist/esm/index-Cye74XUb.js +1599 -0
  53. package/dist/esm/index.js +1 -0
  54. package/dist/esm/loader.js +10 -0
  55. package/dist/esm/polyfills/core-js.js +11 -0
  56. package/dist/esm/polyfills/dom.js +79 -0
  57. package/dist/esm/polyfills/es5-html-element.js +1 -0
  58. package/dist/esm/polyfills/index.js +34 -0
  59. package/dist/esm/polyfills/system.js +6 -0
  60. package/dist/esm/rui-button.entry.js +29 -0
  61. package/dist/esm/rui-filter-chips.entry.js +28 -0
  62. package/dist/esm/rui-meal-planner.entry.js +50 -0
  63. package/dist/esm/rui-modal.entry.js +50 -0
  64. package/dist/esm/rui-recipe-card.entry.js +27 -0
  65. package/dist/esm/rui-recipe-detail.entry.js +32 -0
  66. package/dist/esm/rui-recipe-list.entry.js +42 -0
  67. package/dist/esm/rui-search-bar.entry.js +37 -0
  68. package/dist/esm/rui.js +20 -0
  69. package/dist/esm-es5/index-Cye74XUb.js +64 -0
  70. package/dist/esm-es5/index.js +0 -0
  71. package/dist/esm-es5/loader.js +1 -0
  72. package/dist/esm-es5/rui-button.entry.js +1 -0
  73. package/dist/esm-es5/rui-filter-chips.entry.js +1 -0
  74. package/dist/esm-es5/rui-meal-planner.entry.js +1 -0
  75. package/dist/esm-es5/rui-modal.entry.js +1 -0
  76. package/dist/esm-es5/rui-recipe-card.entry.js +1 -0
  77. package/dist/esm-es5/rui-recipe-detail.entry.js +1 -0
  78. package/dist/esm-es5/rui-recipe-list.entry.js +1 -0
  79. package/dist/esm-es5/rui-search-bar.entry.js +1 -0
  80. package/dist/esm-es5/rui.js +4 -0
  81. package/dist/index.cjs.js +1 -0
  82. package/dist/index.js +1 -0
  83. package/dist/rui/index.esm.js +0 -0
  84. package/dist/rui/p-044c45e5.entry.js +1 -0
  85. package/dist/rui/p-0eda7928.system.entry.js +1 -0
  86. package/dist/rui/p-1a89ad3e.system.entry.js +1 -0
  87. package/dist/rui/p-1b310317.system.entry.js +1 -0
  88. package/dist/rui/p-2fc25e59.system.entry.js +1 -0
  89. package/dist/rui/p-40bf8db2.entry.js +1 -0
  90. package/dist/rui/p-72d787e7.system.entry.js +1 -0
  91. package/dist/rui/p-89d06840.system.entry.js +1 -0
  92. package/dist/rui/p-9e0ffa92.entry.js +1 -0
  93. package/dist/rui/p-Chuy7yuu.system.js +5 -0
  94. package/dist/rui/p-Cye74XUb.js +3 -0
  95. package/dist/rui/p-DMa34l4T.system.js +64 -0
  96. package/dist/rui/p-YWpyar7R.system.js +1 -0
  97. package/dist/rui/p-a25c8161.entry.js +1 -0
  98. package/dist/rui/p-ad0253ac.entry.js +1 -0
  99. package/dist/rui/p-b5196c19.system.entry.js +1 -0
  100. package/dist/rui/p-b5d6b297.system.entry.js +1 -0
  101. package/dist/rui/p-d04fa46b.entry.js +1 -0
  102. package/dist/rui/p-d34e0888.entry.js +1 -0
  103. package/dist/rui/p-eac80bd7.entry.js +1 -0
  104. package/dist/rui/rui.css +1 -0
  105. package/dist/rui/rui.esm.js +1 -0
  106. package/dist/rui/rui.js +127 -0
  107. package/dist/types/components/index.d.ts +8 -0
  108. package/dist/types/components/rui-button/rui-button.d.ts +11 -0
  109. package/dist/types/components/rui-filter-chips/rui-filter-chips.d.ts +12 -0
  110. package/dist/types/components/rui-meal-planner/rui-meal-planner.d.ts +29 -0
  111. package/dist/types/components/rui-modal/rui-modal.d.ts +13 -0
  112. package/dist/types/components/rui-recipe-card/rui-recipe-card.d.ts +20 -0
  113. package/dist/types/components/rui-recipe-detail/rui-recipe-detail.d.ts +28 -0
  114. package/dist/types/components/rui-recipe-list/rui-recipe-list.d.ts +16 -0
  115. package/dist/types/components/rui-search-bar/rui-search-bar.d.ts +14 -0
  116. package/dist/types/components.d.ts +654 -0
  117. package/dist/types/index.d.ts +1 -0
  118. package/dist/types/stencil-public-runtime.d.ts +1873 -0
  119. package/loader/cdn.js +2 -0
  120. package/loader/index.cjs.js +2 -0
  121. package/loader/index.d.ts +24 -0
  122. package/loader/index.es2017.js +2 -0
  123. package/loader/index.js +3 -0
  124. package/package.json +58 -0
@@ -0,0 +1,50 @@
1
+ import { r as registerInstance, c as createEvent, h, H as Host } from './index-Cye74XUb.js';
2
+
3
+ const ruiModalCss = () => `:host{display:block}.rui-modal__backdrop{position:fixed;inset:0;background:rgba(0, 0, 0, 0.5);display:-ms-flexbox;display:flex;-ms-flex-align:start;align-items:flex-start;-ms-flex-pack:center;justify-content:center;padding:5vh 1rem 1rem;z-index:1000;overflow-y:auto}.rui-modal__dialog{background:var(--rui-color-bg, #ffffff);border:1px solid var(--rui-color-border, #dee2e6);border-radius:var(--rui-radius, 8px);-webkit-box-shadow:var(--rui-shadow-md, 0 4px 12px rgba(0, 0, 0, 0.12));box-shadow:var(--rui-shadow-md, 0 4px 12px rgba(0, 0, 0, 0.12));width:100%;max-width:560px;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;max-height:90vh;position:relative}.rui-modal__header{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:justify;justify-content:space-between;padding:1rem 1.25rem;border-bottom:1px solid var(--rui-color-border, #dee2e6);background:var(--rui-color-bg, #ffffff);border-radius:var(--rui-radius, 8px) var(--rui-radius, 8px) 0 0}.rui-modal__title{margin:0;font-size:1.15rem;font-weight:700;color:var(--rui-color-text, #212529);font-family:var(--rui-font, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif)}.rui-modal__close{background:none;border:none;font-size:1.5rem;line-height:1;cursor:pointer;color:var(--rui-color-muted, #868e96);padding:0 0.25rem}.rui-modal__close:hover{color:var(--rui-color-text, #212529)}.rui-modal__body{padding:1.25rem;overflow-y:auto;background:var(--rui-color-bg, #ffffff);color:var(--rui-color-text, #212529)}.rui-modal__footer{padding:1rem 1.25rem;border-top:1px solid var(--rui-color-border, #dee2e6);display:-ms-flexbox;display:flex;-ms-flex-pack:end;justify-content:flex-end;gap:0.5rem;background:var(--rui-color-bg, #ffffff);border-radius:0 0 var(--rui-radius, 8px) var(--rui-radius, 8px)}.rui-modal__footer:empty{display:none}`;
4
+
5
+ const RuiModal = class {
6
+ constructor(hostRef) {
7
+ registerInstance(this, hostRef);
8
+ this.ruiClose = createEvent(this, "ruiClose");
9
+ this.open = false;
10
+ this.modalTitle = '';
11
+ this.closeOnBackdrop = true;
12
+ this.handleBackdrop = (e) => {
13
+ if (!this.closeOnBackdrop)
14
+ return;
15
+ if (e.target === e.currentTarget) {
16
+ this.requestClose();
17
+ }
18
+ };
19
+ this.handleKey = (e) => {
20
+ if (e.key === 'Escape' && this.open) {
21
+ this.requestClose();
22
+ }
23
+ };
24
+ }
25
+ requestClose() {
26
+ this.ruiClose.emit();
27
+ }
28
+ openChanged(isOpen) {
29
+ if (isOpen) {
30
+ document.addEventListener('keydown', this.handleKey);
31
+ }
32
+ else {
33
+ document.removeEventListener('keydown', this.handleKey);
34
+ }
35
+ }
36
+ disconnectedCallback() {
37
+ document.removeEventListener('keydown', this.handleKey);
38
+ }
39
+ render() {
40
+ return (h(Host, { key: '9bbdb18b18e8c09ec5e8edfd886a44cb4d86cb0b' }, this.open && (h("div", { key: 'b772df0ce6a04949c1ac0d44449545a35d877adc', class: "rui-modal__backdrop", onClick: this.handleBackdrop }, h("div", { key: '4c22489ccd86da08b1a007757b1c42da4023067e', class: "rui-modal__dialog", role: "dialog", "aria-modal": "true", "aria-label": this.modalTitle }, h("header", { key: '5dd1ceca76410c18acbc8b12fc7cb9ca8c6dff27', class: "rui-modal__header" }, h("h3", { key: 'c131c313193f0ba0fd847426dff141f3c1adc143', class: "rui-modal__title" }, this.modalTitle), h("button", { key: 'c280b26ea160e5c765b80eb9054dd5ff186e7646', class: "rui-modal__close", type: "button", "aria-label": "Close", onClick: () => this.requestClose() }, "\u00D7")), h("div", { key: 'f4c32d83f83e5e452dc10a368f5f620e3557eedf', class: "rui-modal__body" }, h("slot", { key: 'a278a93efe24076204c4fce7b0cf44be22df4dc9' })), h("footer", { key: '31bed0da07b6310cdf4684c24f505ede0a220416', class: "rui-modal__footer" }, h("slot", { key: '7a5806e2edf0d6aaef25b119c1d2ba8f3684a1f7', name: "footer" })))))));
41
+ }
42
+ static get watchers() { return {
43
+ "open": [{
44
+ "openChanged": 0
45
+ }]
46
+ }; }
47
+ };
48
+ RuiModal.style = ruiModalCss();
49
+
50
+ export { RuiModal as rui_modal };
@@ -0,0 +1,27 @@
1
+ import { r as registerInstance, c as createEvent, h, H as Host } from './index-Cye74XUb.js';
2
+
3
+ const ruiRecipeCardCss = () => `:host{display:block}.rui-card{background:var(--rui-color-bg);border:1px solid var(--rui-color-border);border-radius:var(--rui-radius);overflow:hidden;-webkit-box-shadow:var(--rui-shadow-sm);box-shadow:var(--rui-shadow-sm);cursor:pointer;-webkit-transition:-webkit-transform 0.15s ease, -webkit-box-shadow 0.15s ease;transition:-webkit-transform 0.15s ease, -webkit-box-shadow 0.15s ease;transition:transform 0.15s ease, box-shadow 0.15s ease;transition:transform 0.15s ease, box-shadow 0.15s ease, -webkit-transform 0.15s ease, -webkit-box-shadow 0.15s ease;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;height:100%}.rui-card:hover{-webkit-transform:translateY(-2px);transform:translateY(-2px);-webkit-box-shadow:var(--rui-shadow-md);box-shadow:var(--rui-shadow-md)}.rui-card__media{position:relative;aspect-ratio:16 / 10;background:var(--rui-color-bg-alt);overflow:hidden}.rui-card__media img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;display:block}.rui-card__placeholder{width:100%;height:100%;display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;color:var(--rui-color-muted);font-size:0.85rem}.rui-card__fav{position:absolute;top:0.5rem;right:0.5rem;width:2rem;height:2rem;border-radius:50%;border:none;background:rgba(255, 255, 255, 0.9);color:var(--rui-color-danger);font-size:1.1rem;line-height:1;cursor:pointer;display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;-webkit-transition:background-color 0.15s ease, -webkit-transform 0.1s ease;transition:background-color 0.15s ease, -webkit-transform 0.1s ease;transition:background-color 0.15s ease, transform 0.1s ease;transition:background-color 0.15s ease, transform 0.1s ease, -webkit-transform 0.1s ease}.rui-card__fav:hover{background:#fff;-webkit-transform:scale(1.08);transform:scale(1.08)}.rui-card__fav.is-fav{color:var(--rui-color-danger);background:#fff}.rui-card__body{padding:0.85rem 1rem;-ms-flex:1;flex:1}.rui-card__title{margin:0 0 0.25rem;font-size:1rem;font-weight:600;line-height:1.3;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.rui-card__meta{margin:0;font-size:0.8rem;color:var(--rui-color-muted)}.rui-card__footer{padding:0 1rem 0.85rem;display:-ms-flexbox;display:flex;gap:0.5rem;-ms-flex-wrap:wrap;flex-wrap:wrap}.rui-card__footer:empty{display:none}`;
4
+
5
+ const RuiRecipeCard = class {
6
+ constructor(hostRef) {
7
+ registerInstance(this, hostRef);
8
+ this.ruiCardClick = createEvent(this, "ruiCardClick");
9
+ this.ruiFavoriteToggle = createEvent(this, "ruiFavoriteToggle");
10
+ this.isFavorite = false;
11
+ this.onCardClick = () => {
12
+ this.ruiCardClick.emit(this.recipe);
13
+ };
14
+ this.onFavClick = (e) => {
15
+ e.stopPropagation();
16
+ this.isFavorite = !this.isFavorite;
17
+ this.ruiFavoriteToggle.emit({ recipe: this.recipe, isFavorite: this.isFavorite });
18
+ };
19
+ }
20
+ render() {
21
+ const r = this.recipe;
22
+ return (h(Host, { key: '8ba2647d2fed8b0539287633a5591892109596fb' }, h("article", { key: '8a58a35d34d08d0897bc7c68b82773bd361e2dcf', class: "rui-card", onClick: this.onCardClick }, h("div", { key: '04b5aa4b9563847aa116bbf477fabd806092f90a', class: "rui-card__media" }, r.image ? (h("img", { src: r.image, alt: r.name, loading: "lazy" })) : (h("div", { class: "rui-card__placeholder", "aria-hidden": "true" }, h("span", null, "No image"))), h("button", { key: 'ea6b5fe33ab2587f28491b75db84e87e3b1d193f', type: "button", class: `rui-card__fav ${this.isFavorite ? 'is-fav' : ''}`, "aria-pressed": this.isFavorite ? 'true' : 'false', "aria-label": this.isFavorite ? 'Remove from favorites' : 'Add to favorites', onClick: this.onFavClick }, this.isFavorite ? '\u2665' : '\u2661')), h("div", { key: '2bd65d44934ee52a98cc2be459b770a8fe18dd0f', class: "rui-card__body" }, h("h3", { key: '55bd4f5faf4ed06696c6ed22f828d811afa605a5', class: "rui-card__title" }, r.name), (r.category || r.area) && (h("p", { key: '5184ee876bdfb90cdef9bc7f529be504ed18bf45', class: "rui-card__meta" }, [r.category, r.area].filter(Boolean).join(' \u00b7 ')))), h("div", { key: '5e3fc6c1cc4559bd6260ebf99039908f2e9c82e2', class: "rui-card__footer" }, h("slot", { key: '2567811b6ca78e06df4e2c51714dc1210fa65f00' })))));
23
+ }
24
+ };
25
+ RuiRecipeCard.style = ruiRecipeCardCss();
26
+
27
+ export { RuiRecipeCard as rui_recipe_card };
@@ -0,0 +1,32 @@
1
+ import { r as registerInstance, c as createEvent, h, H as Host } from './index-Cye74XUb.js';
2
+
3
+ const ruiRecipeDetailCss = () => `:host{display:block}.rui-detail{background:var(--rui-color-bg);border-radius:var(--rui-radius);-webkit-box-shadow:var(--rui-shadow-sm);box-shadow:var(--rui-shadow-sm);overflow:hidden}.rui-detail__header{display:grid;grid-template-columns:320px 1fr;gap:1.5rem;padding:1.5rem}@media (max-width: 640px){.rui-detail__header{grid-template-columns:1fr}}.rui-detail__media{aspect-ratio:4 / 3;background:var(--rui-color-bg-alt);border-radius:var(--rui-radius);overflow:hidden}.rui-detail__media img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;display:block}.rui-detail__placeholder{width:100%;height:100%;display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;color:var(--rui-color-muted)}.rui-detail__title{margin:0 0 0.35rem;font-size:1.6rem;font-weight:700}.rui-detail__meta{margin:0 0 1rem;color:var(--rui-color-muted);font-size:0.95rem}.rui-detail__actions{display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;gap:0.6rem;-ms-flex-align:center;align-items:center}.rui-detail__fav,.rui-detail__plan{font-family:var(--rui-font);font-size:0.9rem;font-weight:600;padding:0.5rem 0.9rem;border-radius:var(--rui-radius);border:1px solid var(--rui-color-border);background:var(--rui-color-bg);cursor:pointer;-webkit-transition:background-color 0.15s ease, border-color 0.15s ease;transition:background-color 0.15s ease, border-color 0.15s ease}.rui-detail__fav:hover,.rui-detail__plan:hover{border-color:var(--rui-color-primary);background:var(--rui-color-primary-soft)}.rui-detail__fav.is-fav{color:var(--rui-color-danger);border-color:var(--rui-color-danger);background:#fff5f5}.rui-detail__section{padding:0 1.5rem 1.5rem}.rui-detail__section h3{margin:0 0 0.75rem;font-size:1.15rem;font-weight:700;border-bottom:2px solid var(--rui-color-primary-soft);padding-bottom:0.35rem}.rui-detail__tables{display:grid;grid-template-columns:1fr 1fr;gap:1rem;-ms-flex-align:start;align-items:start}@media (max-width: 700px){.rui-detail__tables{grid-template-columns:1fr}}.rui-detail__table{width:100%;border-collapse:collapse;font-size:0.9rem;background:var(--rui-color-bg, #ffffff);border:1px solid var(--rui-color-border, #dee2e6);border-radius:var(--rui-radius, 8px);overflow:hidden}.rui-detail__table thead{background:var(--rui-color-bg-alt, #f8f9fa)}.rui-detail__table th{text-align:left;padding:0.6rem 0.75rem;font-weight:700;font-size:0.82rem;text-transform:uppercase;letter-spacing:0.03em;color:var(--rui-color-muted, #868e96);border-bottom:2px solid var(--rui-color-border, #dee2e6)}.rui-detail__table td{padding:0.55rem 0.75rem;border-bottom:1px solid var(--rui-color-border, #dee2e6);vertical-align:middle}.rui-detail__table tbody tr:last-child td{border-bottom:none}.rui-detail__table tbody tr:hover{background:var(--rui-color-primary-soft, #dcfce7)}.rui-detail__td--index{width:36px;text-align:center;color:var(--rui-color-muted, #868e96);font-weight:600}.rui-detail__ing-measure{color:var(--rui-color-muted, #868e96);white-space:nowrap}.rui-detail__ing-name{font-weight:500;color:var(--rui-color-text, #212529)}.rui-detail__empty{color:var(--rui-color-muted, #868e96);font-size:0.9rem;margin:0.5rem 0 0}.rui-detail__ingredients{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill, minmax(220px, 1fr));gap:0.4rem 1rem}.rui-detail__ingredients li{display:-ms-flexbox;display:flex;gap:0.5rem;font-size:0.9rem;padding:0.3rem 0;border-bottom:1px dashed var(--rui-color-border, #dee2e6)}.rui-detail__instructions{white-space:pre-line;line-height:1.6;font-size:0.95rem;margin:0}.rui-detail__links{display:-ms-flexbox;display:flex;gap:1rem}.rui-detail__links a{color:var(--rui-color-secondary);text-decoration:none;font-weight:500}.rui-detail__links a:hover{text-decoration:underline}`;
4
+
5
+ const RuiRecipeDetail = class {
6
+ constructor(hostRef) {
7
+ registerInstance(this, hostRef);
8
+ this.ruiAddToPlan = createEvent(this, "ruiAddToPlan");
9
+ this.ruiFavoriteToggle = createEvent(this, "ruiFavoriteToggle");
10
+ this.isFavorite = false;
11
+ this.onAddToPlan = () => {
12
+ this.ruiAddToPlan.emit(this.recipe);
13
+ };
14
+ this.onFavToggle = () => {
15
+ this.isFavorite = !this.isFavorite;
16
+ this.ruiFavoriteToggle.emit({ recipe: this.recipe, isFavorite: this.isFavorite });
17
+ };
18
+ }
19
+ render() {
20
+ const r = this.recipe;
21
+ return (h(Host, { key: '3cbe3361e6d88381fbec4fd8d282963933878de4' }, h("article", { key: 'ef3860f9752829fae37d374684f5b6e5045299e5', class: "rui-detail" }, h("header", { key: 'a14c496c15e23458956538926449bcecb742fd4c', class: "rui-detail__header" }, h("div", { key: 'e6766cf5e4d766fcd2b47a946122b0b108de6a73', class: "rui-detail__media" }, r.image ? (h("img", { src: r.image, alt: r.name })) : (h("div", { class: "rui-detail__placeholder" }, "No image"))), h("div", { key: '3c0ccb26f0379d9ddd9cd29a05d237a9d377d516', class: "rui-detail__intro" }, h("h2", { key: '108020c974704efc52907eb1f945ee3a7584436f', class: "rui-detail__title" }, r.name), (r.category || r.area) && (h("p", { key: 'fc381751090c3c067076967347db95907e048898', class: "rui-detail__meta" }, [r.category, r.area].filter(Boolean).join(' \u00b7 '))), h("div", { key: 'a0084338478d82d0e7c4f738ff7650646805efe9', class: "rui-detail__actions" }, h("slot", { key: 'ba5ac7fba83204b9c7512837313238771d68a59c', name: "actions" }), h("button", { key: '1b2a17d3d7571e5d484a9a26bb13b69a9ec8d56a', type: "button", class: `rui-detail__fav ${this.isFavorite ? 'is-fav' : ''}`, "aria-pressed": this.isFavorite ? 'true' : 'false', onClick: this.onFavToggle }, this.isFavorite ? '\u2665 Favorited' : '\u2661 Add to favorites'), h("button", { key: '1f9e6eec95cf99ef6bad7197d488e4623d9c0381', type: "button", class: "rui-detail__plan", onClick: this.onAddToPlan }, "+ Add to meal plan")))), h("section", { key: '8fa48000e6baaf8f22431b413d964c79ce2f9441', class: "rui-detail__section" }, h("h3", { key: '44e655db0ee49e4a1f9f2e31a82a23c3c549060a' }, "Ingredients"), r.ingredients && r.ingredients.length > 0 ? ((() => {
22
+ const mid = Math.ceil(r.ingredients.length / 2);
23
+ const left = r.ingredients.slice(0, mid);
24
+ const right = r.ingredients.slice(mid);
25
+ const renderTable = (rows, offset) => (h("table", { class: "rui-detail__table" }, h("thead", null, h("tr", null, h("th", null, "#"), h("th", null, "Ingredient"), h("th", null, "Measure"))), h("tbody", null, rows.map((ing, idx) => (h("tr", null, h("td", { class: "rui-detail__td--index" }, offset + idx + 1), h("td", { class: "rui-detail__ing-name" }, ing.name), h("td", { class: "rui-detail__ing-measure" }, ing.measure || '—')))))));
26
+ return (h("div", { class: "rui-detail__tables" }, renderTable(left, 0), right.length > 0 && renderTable(right, mid)));
27
+ })()) : (h("p", { class: "rui-detail__empty" }, "No ingredients listed.")), h("slot", { key: '58d20bb01497af2651f492d9e6520a587d3e21ce', name: "ingredients-extra" })), r.instructions && (h("section", { key: '54176a29fab9b1142b30994d0ae74acd2e881e69', class: "rui-detail__section" }, h("h3", { key: '0f0900c1f6abb29cf8601d5d3e6fc44abc344105' }, "Instructions"), h("p", { key: 'e4f4e185a193ac818bc21e3974c957716a1b8fd6', class: "rui-detail__instructions" }, r.instructions))), (r.youtube || r.source) && (h("section", { key: 'f8db0b0a526a6e774e83d700325471dbc032170e', class: "rui-detail__section rui-detail__links" }, r.youtube && (h("a", { key: 'add83e9353e6294219dfb9304c98a49833913200', href: r.youtube, target: "_blank", rel: "noopener noreferrer" }, "Watch on YouTube")), r.source && (h("a", { key: 'b719435a049b54a4b5ec1500ea9a19da9c10f98d', href: r.source, target: "_blank", rel: "noopener noreferrer" }, "Original source")))))));
28
+ }
29
+ };
30
+ RuiRecipeDetail.style = ruiRecipeDetailCss();
31
+
32
+ export { RuiRecipeDetail as rui_recipe_detail };
@@ -0,0 +1,42 @@
1
+ import { r as registerInstance, c as createEvent, h, H as Host } from './index-Cye74XUb.js';
2
+
3
+ const ruiRecipeListCss = () => `:host{display:block}.rui-list{display:grid;grid-template-columns:repeat(auto-fill, minmax(220px, 1fr));gap:1.25rem}.rui-list__empty{margin:2rem 0;text-align:center;color:var(--rui-color-muted);font-size:1rem}`;
4
+
5
+ const RuiRecipeList = class {
6
+ constructor(hostRef) {
7
+ registerInstance(this, hostRef);
8
+ this.ruiSelectRecipe = createEvent(this, "ruiSelectRecipe");
9
+ this.ruiFavoriteToggle = createEvent(this, "ruiFavoriteToggle");
10
+ this.recipes = [];
11
+ this.favorites = [];
12
+ this.emptyMessage = 'No recipes found.';
13
+ }
14
+ recipesChanged() { }
15
+ favoritesChanged() { }
16
+ isFav(id) {
17
+ return this.favorites.includes(id);
18
+ }
19
+ render() {
20
+ if (!this.recipes || this.recipes.length === 0) {
21
+ return (h(Host, null, h("p", { class: "rui-list__empty" }, this.emptyMessage)));
22
+ }
23
+ return (h(Host, null, h("div", { class: "rui-list" }, this.recipes.map((r) => (h("rui-recipe-card", { recipe: r, isFavorite: this.isFav(r.id), onRuiCardClick: (e) => {
24
+ e.stopPropagation();
25
+ this.ruiSelectRecipe.emit(e.detail);
26
+ }, onRuiFavoriteToggle: (e) => {
27
+ e.stopPropagation();
28
+ this.ruiFavoriteToggle.emit(e.detail);
29
+ } }))))));
30
+ }
31
+ static get watchers() { return {
32
+ "recipes": [{
33
+ "recipesChanged": 0
34
+ }],
35
+ "favorites": [{
36
+ "favoritesChanged": 0
37
+ }]
38
+ }; }
39
+ };
40
+ RuiRecipeList.style = ruiRecipeListCss();
41
+
42
+ export { RuiRecipeList as rui_recipe_list };
@@ -0,0 +1,37 @@
1
+ import { r as registerInstance, c as createEvent, h, H as Host, a as getElement } from './index-Cye74XUb.js';
2
+
3
+ const ruiSearchBarCss = () => `:host{display:block}.rui-search{display:-ms-flexbox;display:flex;-ms-flex-align:stretch;align-items:stretch;gap:0.5rem;width:100%;max-width:640px}.rui-search__input{-ms-flex:1;flex:1;min-width:0;padding:0.6rem 0.85rem;font-size:1rem;font-family:var(--rui-font);border:1px solid var(--rui-color-border);border-radius:var(--rui-radius);outline:none;-webkit-transition:border-color 0.15s ease, -webkit-box-shadow 0.15s ease;transition:border-color 0.15s ease, -webkit-box-shadow 0.15s ease;transition:border-color 0.15s ease, box-shadow 0.15s ease;transition:border-color 0.15s ease, box-shadow 0.15s ease, -webkit-box-shadow 0.15s ease}.rui-search__input:focus{border-color:var(--rui-color-primary);-webkit-box-shadow:0 0 0 3px var(--rui-color-primary-soft);box-shadow:0 0 0 3px var(--rui-color-primary-soft)}.rui-search__btn{padding:0.6rem 1.1rem;font-size:0.95rem;font-weight:600;font-family:var(--rui-font);background:var(--rui-color-primary);color:#fff;border:none;border-radius:var(--rui-radius);cursor:pointer;-webkit-transition:background-color 0.15s ease;transition:background-color 0.15s ease}.rui-search__btn:hover{background:var(--rui-color-primary-hover)}`;
4
+
5
+ const RuiSearchBar = class {
6
+ constructor(hostRef) {
7
+ registerInstance(this, hostRef);
8
+ this.ruiSearchInput = createEvent(this, "ruiSearchInput");
9
+ this.ruiSearchSubmit = createEvent(this, "ruiSearchSubmit");
10
+ this.value = '';
11
+ this.placeholder = 'Search recipes...';
12
+ this.debounceMs = 300;
13
+ this.onInput = (e) => {
14
+ const target = e.target;
15
+ this.value = target.value;
16
+ clearTimeout(this.timer);
17
+ this.timer = setTimeout(() => {
18
+ this.ruiSearchInput.emit(this.value);
19
+ }, this.debounceMs);
20
+ };
21
+ this.onSubmit = (e) => {
22
+ e.preventDefault();
23
+ clearTimeout(this.timer);
24
+ this.ruiSearchSubmit.emit(this.value);
25
+ };
26
+ }
27
+ disconnectedCallback() {
28
+ clearTimeout(this.timer);
29
+ }
30
+ render() {
31
+ return (h(Host, { key: '42c4c7437175136a28e810f73417147e4e609870' }, h("form", { key: '7b450f3e9fa9a3c63cda1169b3cecc5e2577ba96', class: "rui-search", onSubmit: this.onSubmit, role: "search" }, h("input", { key: '861e092e1c537cedcbe3bf6b1cd580d00fd8d24d', class: "rui-search__input", type: "search", value: this.value, placeholder: this.placeholder, onInput: this.onInput, "aria-label": this.placeholder }), h("button", { key: 'b6676deed915b99ecb22ca2c5d30851f51f04c74', class: "rui-search__btn", type: "submit", "aria-label": "Search" }, "Search"))));
32
+ }
33
+ get el() { return getElement(this); }
34
+ };
35
+ RuiSearchBar.style = ruiSearchBarCss();
36
+
37
+ export { RuiSearchBar as rui_search_bar };
@@ -0,0 +1,20 @@
1
+ import { p as promiseResolve, g as globalScripts, b as bootstrapLazy } from './index-Cye74XUb.js';
2
+ export { s as setNonce } from './index-Cye74XUb.js';
3
+
4
+ /*
5
+ Stencil Client Patch Browser v4.44.2 | MIT Licensed | https://stenciljs.com
6
+ */
7
+
8
+ var patchBrowser = () => {
9
+ const importMeta = import.meta.url;
10
+ const opts = {};
11
+ if (importMeta !== "") {
12
+ opts.resourcesUrl = new URL(".", importMeta).href;
13
+ }
14
+ return promiseResolve(opts);
15
+ };
16
+
17
+ patchBrowser().then(async (options) => {
18
+ await globalScripts();
19
+ return bootstrapLazy([["rui-recipe-list",[[1,"rui-recipe-list",{"recipes":[16],"favorites":[16],"emptyMessage":[1,"empty-message"]},null,{"recipes":[{"recipesChanged":0}],"favorites":[{"favoritesChanged":0}]}]]],["rui-button",[[257,"rui-button",{"variant":[1],"disabled":[516],"loading":[4],"type":[1]}]]],["rui-filter-chips",[[1,"rui-filter-chips",{"categories":[16],"selected":[16]}]]],["rui-meal-planner",[[1,"rui-meal-planner",{"plan":[16],"days":[16]}]]],["rui-modal",[[257,"rui-modal",{"open":[1540],"modalTitle":[1,"modal-title"],"closeOnBackdrop":[4,"close-on-backdrop"]},null,{"open":[{"openChanged":0}]}]]],["rui-recipe-detail",[[257,"rui-recipe-detail",{"recipe":[16],"isFavorite":[516,"is-favorite"]}]]],["rui-search-bar",[[1,"rui-search-bar",{"value":[1025],"placeholder":[1],"debounceMs":[2,"debounce-ms"]}]]],["rui-recipe-card",[[257,"rui-recipe-card",{"recipe":[16],"isFavorite":[516,"is-favorite"]}]]]], options);
20
+ });
@@ -0,0 +1,64 @@
1
+ var __extends=this&&this.__extends||function(){var e=function(r,t){e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,r){e.__proto__=r}||function(e,r){for(var t in r)if(Object.prototype.hasOwnProperty.call(r,t))e[t]=r[t]};return e(r,t)};return function(r,t){if(typeof t!=="function"&&t!==null)throw new TypeError("Class extends value "+String(t)+" is not a constructor or null");e(r,t);function n(){this.constructor=r}r.prototype=t===null?Object.create(t):(n.prototype=t.prototype,new n)}}();var __awaiter=this&&this.__awaiter||function(e,r,t,n){function i(e){return e instanceof t?e:new t((function(r){r(e)}))}return new(t||(t=Promise))((function(t,a){function o(e){try{u(n.next(e))}catch(e){a(e)}}function l(e){try{u(n["throw"](e))}catch(e){a(e)}}function u(e){e.done?t(e.value):i(e.value).then(o,l)}u((n=n.apply(e,r||[])).next())}))};var __generator=this&&this.__generator||function(e,r){var t={label:0,sent:function(){if(a[0]&1)throw a[1];return a[1]},trys:[],ops:[]},n,i,a,o=Object.create((typeof Iterator==="function"?Iterator:Object).prototype);return o.next=l(0),o["throw"]=l(1),o["return"]=l(2),typeof Symbol==="function"&&(o[Symbol.iterator]=function(){return this}),o;function l(e){return function(r){return u([e,r])}}function u(l){if(n)throw new TypeError("Generator is already executing.");while(o&&(o=0,l[0]&&(t=0)),t)try{if(n=1,i&&(a=l[0]&2?i["return"]:l[0]?i["throw"]||((a=i["return"])&&a.call(i),0):i.next)&&!(a=a.call(i,l[1])).done)return a;if(i=0,a)l=[l[0]&2,a.value];switch(l[0]){case 0:case 1:a=l;break;case 4:t.label++;return{value:l[1],done:false};case 5:t.label++;i=l[1];l=[0];continue;case 7:l=t.ops.pop();t.trys.pop();continue;default:if(!(a=t.trys,a=a.length>0&&a[a.length-1])&&(l[0]===6||l[0]===2)){t=0;continue}if(l[0]===3&&(!a||l[1]>a[0]&&l[1]<a[3])){t.label=l[1];break}if(l[0]===6&&t.label<a[1]){t.label=a[1];a=l;break}if(a&&t.label<a[2]){t.label=a[2];t.ops.push(l);break}if(a[2])t.ops.pop();t.trys.pop();continue}l=r.call(e,t)}catch(e){l=[6,e];i=0}finally{n=a=0}if(l[0]&5)throw l[1];return{value:l[0]?l[1]:void 0,done:true}}};var __spreadArray=this&&this.__spreadArray||function(e,r,t){if(t||arguments.length===2)for(var n=0,i=r.length,a;n<i;n++){if(a||!(n in r)){if(!a)a=Array.prototype.slice.call(r,0,n);a[n]=r[n]}}return e.concat(a||Array.prototype.slice.call(r))};var NAMESPACE="rui";var BUILD=/* rui */{hotModuleReplacement:false,hydratedSelectorName:"hydrated",lazyLoad:true,prop:true,propChangeCallback:true,updatable:true};var globalScripts=function(){};var globalStyles=":root{--rui-color-primary:#16a34a;--rui-color-primary-hover:#15803d;--rui-color-primary-soft:#dcfce7;--rui-color-secondary:#1864ab;--rui-color-danger:#c92a2a;--rui-color-success:#2b8a3e;--rui-color-text:#212529;--rui-color-muted:#868e96;--rui-color-border:#dee2e6;--rui-color-bg:#ffffff;--rui-color-bg-alt:#f8f9fa;--rui-radius:8px;--rui-radius-sm:4px;--rui-shadow-sm:0 1px 3px rgba(0, 0, 0, 0.08);--rui-shadow-md:0 4px 12px rgba(0, 0, 0, 0.12);--rui-font:-apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif}:host{display:block;font-family:var(--rui-font);color:var(--rui-color-text);-webkit-box-sizing:border-box;box-sizing:border-box}*,*::before,*::after{-webkit-box-sizing:border-box;box-sizing:border-box}";
2
+ /*
3
+ Stencil Client Platform v4.44.2 | MIT Licensed | https://stenciljs.com
4
+ */
5
+ // src/utils/get-prop-descriptor.ts
6
+ function getPropertyDescriptor(e,r,t){var n=typeof HTMLElement!=="undefined"?HTMLElement.prototype:null;while(e&&e!==n){var i=Object.getOwnPropertyDescriptor(e,r);if(i&&(!t||i.get))return i;e=Object.getPrototypeOf(e)}return void 0}
7
+ // src/utils/es2022-rewire-class-members.ts
8
+ var reWireGetterSetter=function(e,r){var t;var n=r.t;var i=Object.entries((t=n.i)!=null?t:{});i.map((function(t){var n=t[0],i=t[1][0];if(i&31/* Prop */||i&32/* State */){var a=e[n];var o=getPropertyDescriptor(Object.getPrototypeOf(e),n,true)||Object.getOwnPropertyDescriptor(e,n);if(o){Object.defineProperty(e,n,{get:function(){return o.get.call(this)},set:function(e){o.set.call(this,e)},configurable:true,enumerable:true})}if(r.o.has(n)){e[n]=r.o.get(n)}else if(a!==void 0){e[n]=a}}}))};
9
+ // src/client/client-host-ref.ts
10
+ var getHostRef=function(e){if(e.__stencil__getHostRef){return e.__stencil__getHostRef()}return void 0};var registerInstance=function(e,r){if(!r)return;e.__stencil__getHostRef=function(){return r};r.l=e;if(r.t.u&512/* hasModernPropertyDecls */&&BUILD.prop){reWireGetterSetter(e,r)}};var registerHost=function(e,r){var t={u:0,$hostElement$:e,t:r,o:new Map,v:new Map};{t.p=new Promise((function(e){return t.m=e}));e["s-p"]=[];e["s-rc"]=[]}{t.h=[]}var n=t;e.__stencil__getHostRef=function(){return n};return n};var isMemberInElement=function(e,r){return r in e};var consoleError=function(e,r){return(0,console.error)(e,r)};
11
+ // src/client/client-load-module.ts
12
+ var cmpModules=new Map;var failedLoadAttempts=new Map;var loadModule=function(e,r,t){var n;var i=e.S.replace(/-/g,"_");var a=e.A;if(!a){return void 0}var o=cmpModules.get(a);if(o){return o[i]}var l=(n=failedLoadAttempts.get(a))!=null?n:0;var u=[l>0?"s-retry=".concat(l):"",""].filter(Boolean).join("&");
13
+ /*!__STENCIL_STATIC_IMPORT_SWITCH__*/return import(
14
+ /* @vite-ignore */
15
+ /* webpackInclude: /\.entry\.js$/ */
16
+ /* webpackExclude: /\.system\.entry\.js$/ */
17
+ /* webpackMode: "lazy" */
18
+ "./".concat(a,".entry.js").concat(u?"?"+u:"")).then((function(e){{failedLoadAttempts.delete(a);cmpModules.set(a,e)}return e[i]}),(function(e){failedLoadAttempts.set(a,l+1);consoleError(e,r.$hostElement$)}))};
19
+ // src/client/client-style.ts
20
+ var styles=new Map;var HYDRATED_CSS="{visibility:hidden}.hydrated{visibility:inherit}";var SLOT_FB_CSS="slot-fb{display:contents}slot-fb[hidden]{display:none}";var MAX_LAZY_LOAD_RETRIES=3;var LAZY_LOAD_RETRY_INTERVAL_MS=1e3;var win=typeof window!=="undefined"?window:{};var plt={u:0,T:"",jmp:function(e){return e()},raf:function(e){return requestAnimationFrame(e)},ael:function(e,r,t,n){return e.addEventListener(r,t,n)},rel:function(e,r,t,n){return e.removeEventListener(r,t,n)},ce:function(e,r){return new CustomEvent(e,r)}};var promiseResolve=function(e){return Promise.resolve(e)};var supportsConstructableStylesheets=function(){try{if(!win.document.adoptedStyleSheets){return false}new CSSStyleSheet;return typeof(new CSSStyleSheet).replaceSync==="function"}catch(e){}return false}();var supportsMutableAdoptedStyleSheets=supportsConstructableStylesheets?function(){return!!win.document&&Object.getOwnPropertyDescriptor(win.document.adoptedStyleSheets,"length").writable}():false;var queuePending=false;var queueDomReads=[];var queueDomWrites=[];var scheduleFlush=function(){var e;return((e=win.document)==null?void 0:e.hidden)?nextTick(flush):plt.raf(flush)};var queueTask=function(e,r){return function(t){e.push(t);if(!queuePending){queuePending=true;if(r&&plt.u&4/* queueSync */){nextTick(flush)}else{scheduleFlush()}}}};var consume=function(e){for(var r=0;r<e.length;r++){try{e[r](performance.now())}catch(e){consoleError(e)}}e.length=0};var flush=function(){consume(queueDomReads);{consume(queueDomWrites);if(queuePending=queueDomReads.length>0){scheduleFlush()}}};var nextTick=function(e){return promiseResolve().then(e)};var writeTask=queueTask(queueDomWrites,true);
21
+ // src/utils/style.ts
22
+ function createStyleSheetIfNeededAndSupported(e){if(!supportsConstructableStylesheets)return void 0;var r=new CSSStyleSheet;r.replaceSync(e);return r}
23
+ // src/utils/shadow-root.ts
24
+ var globalStyleSheet;function createShadowRoot(e){var r;var t={mode:"open"};var n=this.attachShadow(t);if(globalStyleSheet===void 0)globalStyleSheet=(r=createStyleSheetIfNeededAndSupported(globalStyles))!=null?r:null;if(globalStyleSheet){if(supportsMutableAdoptedStyleSheets){n.adoptedStyleSheets.push(globalStyleSheet)}else{n.adoptedStyleSheets=__spreadArray(__spreadArray([],n.adoptedStyleSheets,true),[globalStyleSheet],false)}}else if(!supportsConstructableStylesheets){var i=document.createElement("style");i.innerHTML=globalStyles;n.prepend(i)}}var createTime=function(e,r){if(r===void 0){r=""}{return function(){return}}};var uniqueTime=function(e,r){{return function(){return}}};
25
+ // src/utils/query-nonce-meta-tag-content.ts
26
+ function queryNonceMetaTagContent(e){var r,t,n;return(n=(t=(r=e.head)==null?void 0:r.querySelector('meta[name="csp-nonce"]'))==null?void 0:t.getAttribute("content"))!=null?n:void 0}
27
+ // src/runtime/styles.ts
28
+ var rootAppliedStyles=new WeakMap;var registerStyle=function(e,r,t){var n=styles.get(e);if(supportsConstructableStylesheets&&t){n=n||new CSSStyleSheet;if(typeof n==="string"){n=r}else{n.replaceSync(r)}}else{n=r}styles.set(e,n)};var addStyle=function(e,r,t){var n,i,a;var o=getScopeId(r);var l=styles.get(o);if(!win.document){return o}e=e.nodeType===11/* DocumentFragment */?e:win.document;if(l){if(typeof l==="string"){e=e.head||e;var u=rootAppliedStyles.get(e);var s=void 0;if(!u){rootAppliedStyles.set(e,u=new Set)}if(!u.has(o)){s=win.document.createElement("style");s.textContent=l;var f=(n=plt.C)!=null?n:queryNonceMetaTagContent(win.document);if(f!=null){s.setAttribute("nonce",f)}if(!(r.u&1/* shadowDomEncapsulation */)){if(e.nodeName==="HEAD"){var c=e.querySelectorAll("link[rel=preconnect]");var v=c.length>0?c[c.length-1].nextSibling:e.querySelector("style");e.insertBefore(s,(v==null?void 0:v.parentNode)===e?v:null)}else if("host"in e){if(supportsConstructableStylesheets){var d=(i=e.defaultView)!=null?i:e.ownerDocument.defaultView;var p=new d.CSSStyleSheet;p.replaceSync(l);if(supportsMutableAdoptedStyleSheets){e.adoptedStyleSheets.unshift(p)}else{e.adoptedStyleSheets=__spreadArray([p],e.adoptedStyleSheets,true)}}else{var m=e.querySelector("style");if(m&&true){m.textContent=l+m.textContent}else{e.prepend(s)}}}else{e.append(s)}}if(r.u&1/* shadowDomEncapsulation */){e.insertBefore(s,null)}if(r.u&4/* hasSlotRelocation */){s.textContent+=SLOT_FB_CSS}if(u){u.add(o)}}}else{var u=rootAppliedStyles.get(e);if(!u){rootAppliedStyles.set(e,u=new Set)}if(!u.has(o)){var d=(a=e.defaultView)!=null?a:e.ownerDocument.defaultView;var p=void 0;if(l.constructor===d.CSSStyleSheet){p=l}else{p=new d.CSSStyleSheet;for(var h=0;h<l.cssRules.length;h++){p.insertRule(l.cssRules[h].cssText,h)}}if(supportsMutableAdoptedStyleSheets){e.adoptedStyleSheets.push(p)}else{e.adoptedStyleSheets=__spreadArray(__spreadArray([],e.adoptedStyleSheets,true),[p],false)}u.add(o)}}}return o};var attachStyles=function(e){var r=e.t;var t=e.$hostElement$;var n=r.u;var i=createTime("attachStyles",r.S);var a=addStyle(t.shadowRoot?t.shadowRoot:t.getRootNode(),r);if(n&10/* needsScopedEncapsulation */){t["s-sc"]=a;t.classList.add(a+"-h")}i()};var getScopeId=function(e,r){return"sc-"+e.S};var isComplexType=function(e){e=typeof e;return e==="object"||e==="function"};
29
+ // src/runtime/vdom/h.ts
30
+ var h=function(e,r){var t=[];for(var n=2;n<arguments.length;n++){t[n-2]=arguments[n]}if(typeof e==="string"){e=transformTag(e)}var i=null;var a=null;var o=false;var l=false;var u=[];var s=function(r){for(var t=0;t<r.length;t++){i=r[t];if(Array.isArray(i)){s(i)}else if(i!=null&&typeof i!=="boolean"){if(o=typeof e!=="function"&&!isComplexType(i)){i=String(i)}else if(typeof e!=="function"&&i.u===void 0){{consoleError("Invalid vNode child")}continue}if(o&&l){u[u.length-1]._+=i}else{u.push(o?newVNode(null,i):i)}l=o}}};s(t);if(r){if(r.key){a=r.key}{var f=r.className||r.class;if(f){r.class=typeof f!=="object"?f:Object.keys(f).filter((function(e){return f[e]})).join(" ")}}}var c=newVNode(e,null);c.R=r;if(u.length>0){c.k=u}{c.M=a}return c};var newVNode=function(e,r){var t={u:0,N:e,
31
+ // Normalize undefined to null to prevent rendering "undefined" as text
32
+ _:r!=null?r:null,L:null,k:null};{t.R=null}{t.M=null}return t};var Host={};var isHost=function(e){return e&&e.N===Host};
33
+ // src/runtime/normalize-watchers.ts
34
+ var normalizeWatchers=function(e){if(!e)return void 0;var r=Object.keys(e);if(r.length===0)return void 0;var t=false;for(var n=0,i=r;n<i.length;n++){var a=i[n];if(t)break;for(var o=0,l=e[a];o<l.length;o++){var u=l[o];if(typeof u==="string"){t=true;break}}}if(!t)return e;var s={};for(var f=0,c=r;f<c.length;f++){var a=c[f];s[a]=e[a].map((function(e){var r;return typeof e==="string"?(r={},r[e]=0,r):e}))}return s};
35
+ // src/runtime/parse-property-value.ts
36
+ var parsePropertyValue=function(e,r,t){if(e!=null&&!isComplexType(e)){if(r&4/* Boolean */){{return e==="false"?false:e===""||!!e}}if(r&2/* Number */){return typeof e==="string"?parseFloat(e):typeof e==="number"?e:NaN}if(r&1/* String */){return String(e)}return e}return e};var getElement=function(e){var r;return(r=getHostRef(e))==null?void 0:r.$hostElement$};
37
+ // src/runtime/event-emitter.ts
38
+ var createEvent=function(e,r,t){var n=getElement(e);return{emit:function(e){return emitEvent(n,r,{bubbles:true,composed:true,cancelable:true,detail:e})}}};var emitEvent=function(e,r,t){var n=plt.ce(r,t);e.dispatchEvent(n);return n};var setAccessor=function(e,r,t,n,i,a,o){if(t===n){return}var l=isMemberInElement(e,r);var u=r.toLowerCase();if(r==="class"){var s=e.classList;var f=parseClassList(t);var c=parseClassList(n);{s.remove.apply(s,f.filter((function(e){return e&&!c.includes(e)})));s.add.apply(s,c.filter((function(e){return e&&!f.includes(e)})))}}else if(r==="key");else if(!l&&r[0]==="o"&&r[1]==="n"){if(r[2]==="-"){r=r.slice(3)}else if(isMemberInElement(win,u)){r=u.slice(2)}else{r=u[2]+r.slice(3)}if(t||n){var v=r.endsWith(CAPTURE_EVENT_SUFFIX);r=r.replace(CAPTURE_EVENT_REGEX,"");if(t){plt.rel(e,r,t,v)}if(n){plt.ael(e,r,n,v)}}}else if(r[0]==="a"&&r.startsWith("attr:")){var d=r.slice(5);var p=void 0;{var m=getHostRef(e);if(m&&m.t&&m.t.i){var h=m.t.i[d];if(h&&h[1]){p=h[1]}}}if(!p){p=d.replace(/([a-z0-9])([A-Z])/g,"$1-$2").toLowerCase()}if(n==null||n===false){if(n!==false||e.getAttribute(p)===""){e.removeAttribute(p)}}else{e.setAttribute(p,n===true?"":n)}return}else if(r[0]==="p"&&r.startsWith("prop:")){var d=r.slice(5);try{e[d]=n}catch(e){}return}else{var y=isComplexType(n);if((l||y&&n!==null)&&!i){try{if(!e.tagName.includes("-")){var b=n==null?"":n;if(r==="list"){l=false}else if(t==null||e[r]!==b){if(typeof e.__lookupSetter__(r)==="function"){e[r]=b}else{e.setAttribute(r,b)}}}else if(e[r]!==n){e[r]=n}}catch(e){}}if(n==null||n===false){if(n!==false||e.getAttribute(r)===""||a&4/* isHost */&&!isEnumeratedAttribute(r)){{e.removeAttribute(r)}}}else if((!l||a&4/* isHost */||i)&&!y&&e.nodeType===1/* ElementNode */){n=n===true?"":n;{e.setAttribute(r,n)}}}};var ENUMERATED_ATTRIBUTES=new Set(["draggable","contenteditable","spellcheck"]);var isEnumeratedAttribute=function(e){return ENUMERATED_ATTRIBUTES.has(e)||e.startsWith("aria-")};var parseClassListRegex=/\s/;var parseClassList=function(e){if(typeof e==="object"&&e&&"baseVal"in e){e=e.baseVal}if(!e||typeof e!=="string"){return[]}return e.split(parseClassListRegex)};var CAPTURE_EVENT_SUFFIX="Capture";var CAPTURE_EVENT_REGEX=new RegExp(CAPTURE_EVENT_SUFFIX+"$");
39
+ // src/runtime/vdom/update-element.ts
40
+ var updateElement=function(e,r,t,n){var i=r.L.nodeType===11/* DocumentFragment */&&r.L.host?r.L.host:r.L;var a=e&&e.R||{};var o=r.R||{};{for(var l=0,u=sortedAttrNames(Object.keys(a));l<u.length;l++){var s=u[l];if(!(s in o)){setAccessor(i,s,a[s],void 0,t,r.u)}}}for(var f=0,c=sortedAttrNames(Object.keys(o));f<c.length;f++){var s=c[f];setAccessor(i,s,a[s],o[s],t,r.u)}};function sortedAttrNames(e){return e.includes("ref")?__spreadArray(__spreadArray([],e.filter((function(e){return e!=="ref"})),true),["ref"],false):
41
+ // no need to sort, return the original array
42
+ e}var hostTagName;var useNativeShadowDom=false;var isSvgMode=false;var createElm=function(e,r,t){var n=r.k[t];var i=0;var a;var o;if(n._!=null){a=n.L=win.document.createTextNode(n._)}else{if(!win.document){throw new Error("You are trying to render a Stencil component in an environment that doesn't support the DOM.")}a=n.L=win.document.createElement(n.N);{updateElement(null,n,isSvgMode)}if(n.k){var l=n.N==="template"?a.content:a;for(i=0;i<n.k.length;++i){o=createElm(e,n,i);if(o){l.appendChild(o)}}}}a["s-hn"]=hostTagName;return a};var relocateToHostRoot=function(e){plt.u|=1/* isTmpDisconnected */;var r=e.closest(hostTagName.toLowerCase());if(r!=null){var t=Array.from(r.__childNodes||r.childNodes).find((function(e){return e["s-cr"]}));var n=Array.from(e.__childNodes||e.childNodes);for(var i=0,a=t?n.reverse():n;i<a.length;i++){var o=a[i];if(o["s-sh"]!=null){insertBefore(r,o,t!=null?t:null);o["s-sh"]=void 0}}}plt.u&=-2/* isTmpDisconnected */};var addVnodes=function(e,r,t,n,i,a){var o=e;var l;if(o.shadowRoot&&o.tagName===hostTagName){o=o.shadowRoot}if(t.N==="template"){o=o.content}for(;i<=a;++i){if(n[i]){l=createElm(null,t,i);if(l){n[i].L=l;insertBefore(o,l,r)}}}};var removeVnodes=function(e,r,t){for(var n=r;n<=t;++n){var i=e[n];if(i){var a=i.L;if(a){a.remove()}}}};var updateChildren=function(e,r,t,n,i){if(i===void 0){i=false}var a=0;var o=0;var l=0;var u=0;var s=r.length-1;var f=r[0];var c=r[s];var v=n.length-1;var d=n[0];var p=n[v];var m;var h;var y=t.N==="template"?e.content:e;while(a<=s&&o<=v){if(f==null){f=r[++a]}else if(c==null){c=r[--s]}else if(d==null){d=n[++o]}else if(p==null){p=n[--v]}else if(isSameVnode(f,d,i)){patch(f,d,i);f=r[++a];d=n[++o]}else if(isSameVnode(c,p,i)){patch(c,p,i);c=r[--s];p=n[--v]}else if(isSameVnode(f,p,i)){patch(f,p,i);insertBefore(y,f.L,c.L.nextSibling);f=r[++a];p=n[--v]}else if(isSameVnode(c,d,i)){patch(c,d,i);insertBefore(y,c.L,f.L);c=r[--s];d=n[++o]}else{l=-1;{for(u=a;u<=s;++u){if(r[u]&&r[u].M!==null&&r[u].M===d.M){l=u;break}}}if(l>=0){h=r[l];if(h.N!==d.N){m=createElm(r&&r[o],t,l)}else{patch(h,d,i);r[l]=void 0;m=h.L}d=n[++o]}else{m=createElm(r&&r[o],t,o);d=n[++o]}if(m){{insertBefore(f.L.parentNode,m,f.L)}}}}if(a>s){addVnodes(e,n[v+1]==null?null:n[v+1].L,t,n,o,v)}else if(o>v){removeVnodes(r,a,s)}};var isSameVnode=function(e,r,t){if(t===void 0){t=false}if(e.N===r.N){if(!t){return e.M===r.M}if(t&&!e.M&&r.M){e.M=r.M}return true}return false};var patch=function(e,r,t){if(t===void 0){t=false}var n=r.L=e.L;var i=e.k;var a=r.k;var o=r.N;var l=r._;if(l==null){{if(o==="slot"&&!useNativeShadowDom){if(e.V!==r.V){r.L["s-sn"]=r.V||"";relocateToHostRoot(r.L.parentElement)}}updateElement(e,r,isSvgMode)}if(i!==null&&a!==null){updateChildren(n,i,r,a,t)}else if(a!==null){if(e._!==null){n.textContent=""}addVnodes(n,null,r,a,0,a.length-1)}else if(
43
+ // don't do this on initial render as it can cause non-hydrated content to be removed
44
+ !t&&BUILD.updatable&&i!==null){removeVnodes(i,0,i.length-1)}else;}else if(e._!==l){n.data=l}};var insertBefore=function(e,r,t,n){{return e==null?void 0:e.insertBefore(r,t)}};var renderVdom=function(e,r,t){if(t===void 0){t=false}var n=e.$hostElement$;var i=e.t;var a=e.D||newVNode(null,null);var o=isHost(r);var l=o?r:h(null,null,r);hostTagName=n.tagName;if(i.j){l.R=l.R||{};i.j.forEach((function(e){var r=e[0],t=e[1];{l.R[t]=n[r]}}))}if(t&&l.R){for(var u=0,s=Object.keys(l.R);u<s.length;u++){var f=s[u];if(n.hasAttribute(f)&&!["key","ref","style","class"].includes(f)){l.R[f]=n[f]}}}l.N=null;l.u|=4/* isHost */;e.D=l;l.L=a.L=n.shadowRoot||n;useNativeShadowDom=!!(i.u&1/* shadowDomEncapsulation */)&&!(i.u&128/* shadowNeedsScopedCss */);patch(a,l,t)};
45
+ // src/runtime/update-component.ts
46
+ var attachToAncestor=function(e,r){if(r&&!e.H&&r["s-p"]){var t=r["s-p"].push(new Promise((function(n){return e.H=function(){r["s-p"].splice(t-1,1);n()}})))}};var scheduleUpdate=function(e,r){{e.u|=16/* isQueuedForUpdate */}if(e.u&4/* isWaitingForChildren */){e.u|=512/* needsRerender */;return}attachToAncestor(e,e.$);var t=function(){return dispatchHooks(e,r)};if(r){queueMicrotask((function(){t()}));return}return writeTask(t)};var dispatchHooks=function(e,r){var t=e.$hostElement$;var n=createTime("scheduleUpdate",e.t.S);var i=e.l;if(!i){throw new Error("Can't render component <".concat(t.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"))}var a;if(r){{if(e.h.length){e.h.forEach((function(e){return e(t)}))}}a=safeCall(i,"componentWillLoad",void 0,t)}else{a=safeCall(i,"componentWillUpdate",void 0,t)}a=enqueue(a,(function(){return safeCall(i,"componentWillRender",void 0,t)}));n();return enqueue(a,(function(){return updateComponent(e,i,r)}))};var enqueue=function(e,r){return isPromisey(e)?e.then(r).catch((function(e){console.error(e);r()})):r()};var isPromisey=function(e){return e instanceof Promise||e&&e.then&&typeof e.then==="function"};var updateComponent=function(e,r,t){return __awaiter(void 0,void 0,void 0,(function(){var n,i,a,o,l,u,s;return __generator(this,(function(f){i=e.$hostElement$;a=createTime("update",e.t.S);o=i["s-rc"];if(t){attachStyles(e)}l=createTime("render",e.t.S);{callRender(e,r,i,t)}if(o){o.map((function(e){return e()}));i["s-rc"]=void 0}l();a();{u=(n=i["s-p"])!=null?n:[];s=function(){return postUpdateComponent(e)};if(u.length===0){s()}else{Promise.all(u).then(s).catch(s);e.u|=4/* isWaitingForChildren */;u.length=0}}return[2/*return*/]}))}))};var callRender=function(e,r,t,n){try{r=r.render();{e.u&=-17/* isQueuedForUpdate */}{e.u|=2/* hasRendered */}{{{renderVdom(e,r,n)}}}}catch(r){consoleError(r,e.$hostElement$)}return null};var postUpdateComponent=function(e){var r=e.t.S;var t=e.$hostElement$;var n=createTime("postUpdate",r);var i=e.l;var a=e.$;safeCall(i,"componentDidRender",void 0,t);if(!(e.u&64/* hasLoadedComponent */)){e.u|=64/* hasLoadedComponent */;{addHydratedFlag(t)}safeCall(i,"componentDidLoad",void 0,t);n();{e.m(t);if(!a){appDidLoad()}}}else{safeCall(i,"componentDidUpdate",void 0,t);n()}{if(e.H){e.H();e.H=void 0}if(e.u&512/* needsRerender */){nextTick((function(){return scheduleUpdate(e,false)}))}e.u&=-517}};var appDidLoad=function(e){nextTick((function(){return emitEvent(win,"appload",{detail:{namespace:NAMESPACE}})}))};var safeCall=function(e,r,t,n){if(e&&e[r]){try{return e[r](t)}catch(e){consoleError(e,n)}}return void 0};var addHydratedFlag=function(e){var r;return e.classList.add((r=BUILD.hydratedSelectorName)!=null?r:"hydrated")};
47
+ // src/runtime/set-value.ts
48
+ var getValue=function(e,r){return getHostRef(e).o.get(r)};var setValue=function(e,r,t,n){var i=getHostRef(e);if(!i){return}if(!i){throw new Error("Couldn't find host element for \"".concat(n.S,'" as it is unknown to this Stencil runtime. This usually happens when integrating a 3rd party Stencil component with another Stencil component or application. Please reach out to the maintainers of the 3rd party Stencil component or report this on the Stencil Discord server (https://chat.stenciljs.com) or comment on this similar [GitHub issue](https://github.com/stenciljs/core/issues/5457).'))}var a=i.$hostElement$;var o=i.o.get(r);var l=i.u;var u=i.l;t=parsePropertyValue(t,n.i[r][0]);var s=Number.isNaN(o)&&Number.isNaN(t);var f=t!==o&&!s;if((!(l&8/* isConstructingInstance */)||o===void 0)&&f){i.o.set(r,t);if(n.I){var c=n.I[r];if(c){c.map((function(e){try{var n=Object.entries(e)[0],s=n[0],f=n[1];if(l&128/* isWatchReady */||f&1/* Immediate */){if(!u){i.h.push((function(){i.l[s](t,o,r)}))}else{u[s](t,o,r)}}}catch(e){consoleError(e,a)}}))}}if(l&2/* hasRendered */){if(u.componentShouldUpdate){var v=u.componentShouldUpdate(t,o,r);if(v===false&&!(l&16/* isQueuedForUpdate */)){return}}if(!(l&16/* isQueuedForUpdate */)){scheduleUpdate(i,false)}}}};
49
+ // src/runtime/proxy-component.ts
50
+ var reflectedAttrValue=function(e){return e==null||e===false?null:e===true?"":String(e)};var proxyComponent=function(e,r,t){var n,i;var a=e.prototype;if(r.i||BUILD.propChangeCallback){{if(e.watchers&&!r.I){r.I=normalizeWatchers(e.watchers)}if(e.deserializers&&!r.O){r.O=e.deserializers}if(e.serializers&&!r.U){r.U=e.serializers}}var o=Object.entries((n=r.i)!=null?n:{});o.map((function(e){var n=e[0],i=e[1][0];if(i&31/* Prop */||t&2/* proxyState */&&i&32/* State */){var o=getPropertyDescriptor(a,n)||{},l=o.get,u=o.set;if(l)r.i[n][0]|=2048/* Getter */;if(u)r.i[n][0]|=4096/* Setter */;if(t&1/* isElementConstructor */||!l){Object.defineProperty(a,n,{get:function(){{if((r.i[n][0]&2048/* Getter */)===0){return getValue(this,n)}var e=getHostRef(this);var t=e?e.l:a;if(!t)return;return t[n]}},configurable:true,enumerable:true})}Object.defineProperty(a,n,{set:function(e){var a=this;var o=getHostRef(this);if(!o){return}if(u){var l=i&32/* State */?this[n]:o.$hostElement$[n];if(typeof l==="undefined"&&o.o.get(n)){e=o.o.get(n)}u.apply(this,[parsePropertyValue(e,i)]);e=i&32/* State */?this[n]:o.$hostElement$[n];setValue(this,n,e,r);return}{if((t&1/* isElementConstructor */)===0||(r.i[n][0]&4096/* Setter */)===0){setValue(this,n,e,r);if(t&1/* isElementConstructor */&&!o.l){o.h.push((function(){if(r.i[n][0]&4096/* Setter */&&o.l[n]!==o.o.get(n)){o.l[n]=e}}))}return}var s=function(){var t=o.l[n];if(!o.o.get(n)&&t){o.o.set(n,t)}o.l[n]=parsePropertyValue(e,i);setValue(a,n,o.l[n],r)};if(o.l){s()}else{o.h.push((function(){s()}))}}}})}}));if(t&1/* isElementConstructor */){var l=new Map;a.attributeChangedCallback=function(e,t,n){var i=this;plt.jmp((function(){var u;var s=l.get(e);var f=getHostRef(i);if(i.hasOwnProperty(s)&&BUILD.lazyLoad){n=i[s];delete i[s]}if(a.hasOwnProperty(s)&&typeof i[s]==="number"&&// cast type to number to avoid TS compiler issues
51
+ i[s]==n){return}else if(s==null){var c=f==null?void 0:f.u;if(f&&c&&!(c&8/* isConstructingInstance */)&&n!==t){var v=f.l;var d=(u=r.I)==null?void 0:u[e];d==null?void 0:d.forEach((function(r){var i=Object.entries(r)[0],a=i[0],o=i[1];if(v[a]!=null&&(c&128/* isWatchReady */||o&1/* Immediate */)){v[a].call(v,n,t,e)}}))}return}var p=o.find((function(e){var r=e[0];return r===s}));var m=p?p[1][0]:0;var h=m&4/* Boolean */;if(m&512/* ReflectAttr */&&m&8/* Any */&&// a complex value is never written to an attribute, so a change while the prop holds
52
+ // one is always external
53
+ !isComplexType(i[s])&&reflectedAttrValue(i[s])===n){return}var y=h&&n===null&&i[s]===void 0;if(h){n=n===null||n==="false"?false:true}var b=Object.getOwnPropertyDescriptor(a,s);if(!y&&n!=i[s]&&(!b.get||!!b.set)){i[s]=n}}))};e.observedAttributes=Array.from(
54
+ new Set(__spreadArray(__spreadArray([],Object.keys((i=r.I)!=null?i:{}),true),o.filter((function(e){var r=e[0],t=e[1];return t[0]&31}/* HasAttribute */)).map((function(e){var t=e[0],n=e[1];var i;var a=n[1]||t;l.set(a,t);if(n[0]&512/* ReflectAttr */){(i=r.j)==null?void 0:i.push([t,a])}return a})),true)))}}return e};
55
+ // src/runtime/initialize-component.ts
56
+ var initializeComponent=function(e,r,t,n){return __awaiter(void 0,void 0,void 0,(function(){var n,i,a,o,l,u,s,f,c,v,d,p,m;return __generator(this,(function(h){switch(h.label){case 0:h.trys.push([0,7,,8]);if(!((r.u&32/* hasInitializedComponent */)===0))return[3/*break*/,6];r.u|=32/* hasInitializedComponent */;r.u&=-1025/* hasFailedLoad */;a=t.A;if(!a)return[3/*break*/,4];o=loadModule(t,r);if(!(o&&"then"in o))return[3/*break*/,2];l=uniqueTime();return[4/*yield*/,o];case 1:i=h.sent();l();return[3/*break*/,3];case 2:i=o;h.label=3;case 3:if(!i){r.u&=-33/* hasInitializedComponent */;r.P=((n=r.P)!=null?n:0)+1;if(r.P<MAX_LAZY_LOAD_RETRIES){r.u|=1024/* hasFailedLoad */}throw new Error('Constructor for "'.concat(t.S,"#").concat(r.q,'" was not found'))}if(!i.isProxied){{t.I=normalizeWatchers(i.watchers);t.U=i.serializers;t.O=i.deserializers}proxyComponent(i,t,2/* proxyState */);i.isProxied=true}u=createTime("createInstance",t.S);{r.u|=8/* isConstructingInstance */}try{new i(r)}catch(r){consoleError(r,e)}{r.u&=-9/* isConstructingInstance */}{r.u|=128/* isWatchReady */}u();{fireConnectedCallback(r.l,e)}return[3/*break*/,5];case 4:i=e.constructor;s=e.localName;customElements.whenDefined(s).then((function(){return r.u|=128}/* isWatchReady */));h.label=5;case 5:if(i&&i.style){f=void 0;if(typeof i.style==="string"){f=i.style}c=getScopeId(t);if(!styles.has(c)||BUILD.hotModuleReplacement){v=createTime("registerStyles",t.S);registerStyle(c,f,!!(t.u&1/* shadowDomEncapsulation */));v()}}h.label=6;case 6:d=r.$;p=function(){return scheduleUpdate(r,true)};if(d&&d["s-rc"]){d["s-rc"].push(p)}else{p()}return[3/*break*/,8];case 7:m=h.sent();consoleError(m,e);if(r.H){r.H();r.H=void 0}if(r.m&&!(r.u&1024/* hasFailedLoad */)){r.m(e)}return[3/*break*/,8];case 8:return[2/*return*/]}}))}))};var fireConnectedCallback=function(e,r){{safeCall(e,"connectedCallback",void 0,r)}};
57
+ // src/runtime/connected-callback.ts
58
+ var connectedCallback=function(e){if((plt.u&1/* isTmpDisconnected */)===0){var r=getHostRef(e);if(!r){return}var t=r.t;var n=createTime("connectedCallback",t.S);if(!(r.u&1/* hasConnected */)){r.u|=1/* hasConnected */;{var i=e;while(i=i.parentNode||i.host){if(i["s-p"]){attachToAncestor(r,r.$=i);break}}}if(t.i){Object.entries(t.i).map((function(r){var t=r[0],n=r[1][0];if(n&31/* Prop */&&Object.prototype.hasOwnProperty.call(e,t)){var i=e[t];delete e[t];e[t]=i}}))}{initializeComponent(e,r,t)}}else{if(r==null?void 0:r.l){fireConnectedCallback(r.l,e)}else if(r.u&1024/* hasFailedLoad */){setTimeout((function(){return initializeComponent(e,r,t)}),LAZY_LOAD_RETRY_INTERVAL_MS)}else if(r==null?void 0:r.p){r.p.then((function(){return fireConnectedCallback(r.l,e)}))}}n()}};var disconnectInstance=function(e,r){{safeCall(e,"disconnectedCallback",void 0,r||e)}};var disconnectedCallback=function(e){return __awaiter(void 0,void 0,void 0,(function(){var r;return __generator(this,(function(t){if((plt.u&1/* isTmpDisconnected */)===0){r=getHostRef(e);if(r==null?void 0:r.l){disconnectInstance(r.l,e)}else if(r==null?void 0:r.p){r.p.then((function(){return disconnectInstance(r.l,e)}))}}if(rootAppliedStyles.has(e)){rootAppliedStyles.delete(e)}if(e.shadowRoot&&rootAppliedStyles.has(e.shadowRoot)){rootAppliedStyles.delete(e.shadowRoot)}return[2/*return*/]}))}))};
59
+ // src/runtime/bootstrap-lazy.ts
60
+ var bootstrapLazy=function(e,r){if(r===void 0){r={}}var t;if(!win.document){console.warn("Stencil: No document found. Skipping bootstrapping lazy components.");return}var n=createTime();var i=[];var a=r.exclude||[];var o=win.customElements;var l=win.document.head;var u=l.querySelector("meta[charset]");var s=win.document.createElement("style");var f=[];var c;var v=true;Object.assign(plt,r);plt.T=new URL(r.resourcesUrl||"./",win.document.baseURI).href;e.map((function(e){e[1].map((function(r){var t,n;var l={u:r[0],S:r[1],i:r[2],B:r[3]};{l.i=r[2]}{l.j=[]}{l.I=normalizeWatchers(r[4]);l.U=(t=r[5])!=null?t:{};l.O=(n=r[6])!=null?n:{}}var u=transformTag(l.S);var s=/** @class */function(e){__extends(r,e);
61
+ // StencilLazyHost
62
+ function r(r){var t=e.call(this,r)||this;t.hasRegisteredEventListeners=false;r=t;registerHost(r,l);if(l.u&1/* shadowDomEncapsulation */){{if(!r.shadowRoot){createShadowRoot.call(r,l)}else{if(r.shadowRoot.mode!=="open"){throw new Error("Unable to re-use existing shadow root for ".concat(l.S,"! Mode is set to ").concat(r.shadowRoot.mode," but Stencil only supports open shadow roots."))}}}}return t}r.prototype.connectedCallback=function(){var e=this;var r=getHostRef(this);if(!r){return}if(!this.hasRegisteredEventListeners){this.hasRegisteredEventListeners=true}if(c){clearTimeout(c);c=null}if(v){f.push(this)}else{plt.jmp((function(){return connectedCallback(e)}))}};r.prototype.disconnectedCallback=function(){var e=this;plt.jmp((function(){return disconnectedCallback(e)}));nextTick((function(){var r;var t=getHostRef(e);if(!t){return}var n=f.findIndex((function(r){return r===e}));if(n>-1){f.splice(n,1)}if(((r=t==null?void 0:t.D)==null?void 0:r.L)instanceof Node&&!t.D.L.isConnected){delete t.D.L}}))};r.prototype.componentOnReady=function(){var e;return(e=getHostRef(this))==null?void 0:e.p};return r}(HTMLElement);l.A=e[0];if(!a.includes(u)&&!o.get(u)){i.push(u);o.define(u,proxyComponent(s,l,1/* isElementConstructor */))}}))}));if(i.length>0){{s.textContent+=i.sort()+HYDRATED_CSS}if(s.innerHTML.length){s.setAttribute("data-styles","");var d=(t=plt.C)!=null?t:queryNonceMetaTagContent(win.document);if(d!=null){s.setAttribute("nonce",d)}l.insertBefore(s,u?u.nextSibling:l.firstChild)}}v=false;if(f.length){f.map((function(e){return e.connectedCallback()}))}else{{plt.jmp((function(){return c=setTimeout(appDidLoad,30)}))}}n()};
63
+ // src/runtime/nonce.ts
64
+ var setNonce=function(e){return plt.C=e};function transformTag(e){return e}export{Host as H,getElement as a,bootstrapLazy as b,createEvent as c,globalScripts as g,h,promiseResolve as p,registerInstance as r,setNonce as s};
File without changes
@@ -0,0 +1 @@
1
+ var __awaiter=this&&this.__awaiter||function(e,r,i,t){function n(e){return e instanceof i?e:new i((function(r){r(e)}))}return new(i||(i=Promise))((function(i,o){function a(e){try{u(t.next(e))}catch(e){o(e)}}function c(e){try{u(t["throw"](e))}catch(e){o(e)}}function u(e){e.done?i(e.value):n(e.value).then(a,c)}u((t=t.apply(e,r||[])).next())}))};var __generator=this&&this.__generator||function(e,r){var i={label:0,sent:function(){if(o[0]&1)throw o[1];return o[1]},trys:[],ops:[]},t,n,o,a=Object.create((typeof Iterator==="function"?Iterator:Object).prototype);return a.next=c(0),a["throw"]=c(1),a["return"]=c(2),typeof Symbol==="function"&&(a[Symbol.iterator]=function(){return this}),a;function c(e){return function(r){return u([e,r])}}function u(c){if(t)throw new TypeError("Generator is already executing.");while(a&&(a=0,c[0]&&(i=0)),i)try{if(t=1,n&&(o=c[0]&2?n["return"]:c[0]?n["throw"]||((o=n["return"])&&o.call(n),0):n.next)&&!(o=o.call(n,c[1])).done)return o;if(n=0,o)c=[c[0]&2,o.value];switch(c[0]){case 0:case 1:o=c;break;case 4:i.label++;return{value:c[1],done:false};case 5:i.label++;n=c[1];c=[0];continue;case 7:c=i.ops.pop();i.trys.pop();continue;default:if(!(o=i.trys,o=o.length>0&&o[o.length-1])&&(c[0]===6||c[0]===2)){i=0;continue}if(c[0]===3&&(!o||c[1]>o[0]&&c[1]<o[3])){i.label=c[1];break}if(c[0]===6&&i.label<o[1]){i.label=o[1];o=c;break}if(o&&i.label<o[2]){i.label=o[2];i.ops.push(c);break}if(o[2])i.ops.pop();i.trys.pop();continue}c=r.call(e,i)}catch(e){c=[6,e];n=0}finally{t=o=0}if(c[0]&5)throw c[1];return{value:c[0]?c[1]:void 0,done:true}}};import{g as globalScripts,b as bootstrapLazy}from"./index-Cye74XUb.js";export{s as setNonce}from"./index-Cye74XUb.js";var defineCustomElements=function(e,r){return __awaiter(void 0,void 0,void 0,(function(){return __generator(this,(function(e){switch(e.label){case 0:if(typeof window==="undefined")return[2/*return*/,undefined];return[4/*yield*/,globalScripts()];case 1:e.sent();return[2/*return*/,bootstrapLazy([["rui-recipe-list",[[1,"rui-recipe-list",{recipes:[16],favorites:[16],emptyMessage:[1,"empty-message"]},null,{recipes:[{recipesChanged:0}],favorites:[{favoritesChanged:0}]}]]],["rui-button",[[257,"rui-button",{variant:[1],disabled:[516],loading:[4],type:[1]}]]],["rui-filter-chips",[[1,"rui-filter-chips",{categories:[16],selected:[16]}]]],["rui-meal-planner",[[1,"rui-meal-planner",{plan:[16],days:[16]}]]],["rui-modal",[[257,"rui-modal",{open:[1540],modalTitle:[1,"modal-title"],closeOnBackdrop:[4,"close-on-backdrop"]},null,{open:[{openChanged:0}]}]]],["rui-recipe-detail",[[257,"rui-recipe-detail",{recipe:[16],isFavorite:[516,"is-favorite"]}]]],["rui-search-bar",[[1,"rui-search-bar",{value:[1025],placeholder:[1],debounceMs:[2,"debounce-ms"]}]]],["rui-recipe-card",[[257,"rui-recipe-card",{recipe:[16],isFavorite:[516,"is-favorite"]}]]]],r)]}}))}))};export{defineCustomElements};
@@ -0,0 +1 @@
1
+ import{r as registerInstance,c as createEvent,h,H as Host,a as getElement}from"./index-Cye74XUb.js";var ruiButtonCss=function(){return":host{display:inline-block}.rui-btn{display:-ms-inline-flexbox;display:inline-flex;-ms-flex-align:center;align-items:center;gap:0.5em;font-family:var(--rui-font);font-size:0.95rem;font-weight:600;padding:0.55rem 1.1rem;border-radius:var(--rui-radius);border:1px solid transparent;cursor:pointer;-webkit-transition:background-color 0.15s ease, border-color 0.15s ease, opacity 0.15s ease;transition:background-color 0.15s ease, border-color 0.15s ease, opacity 0.15s ease;line-height:1.2;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.rui-btn:disabled{opacity:0.6;cursor:not-allowed}.rui-btn--primary{background-color:var(--rui-color-primary);color:#fff}.rui-btn--primary:hover:not(:disabled){background-color:var(--rui-color-primary-hover)}.rui-btn--secondary{background-color:var(--rui-color-secondary);color:#fff}.rui-btn--secondary:hover:not(:disabled){background-color:#14538a}.rui-btn--danger{background-color:var(--rui-color-danger);color:#fff}.rui-btn--danger:hover:not(:disabled){background-color:#a52323}.rui-btn--ghost{background-color:transparent;color:var(--rui-color-text);border-color:var(--rui-color-border)}.rui-btn--ghost:hover:not(:disabled){background-color:var(--rui-color-bg-alt)}.rui-btn__spinner{width:1em;height:1em;border:2px solid currentColor;border-top-color:transparent;border-radius:50%;-webkit-animation:rui-spin 0.7s linear infinite;animation:rui-spin 0.7s linear infinite}@-webkit-keyframes rui-spin{to{-webkit-transform:rotate(360deg);transform:rotate(360deg)}}@keyframes rui-spin{to{-webkit-transform:rotate(360deg);transform:rotate(360deg)}}"};var RuiButton=/** @class */function(){function r(r){var e=this;registerInstance(this,r);this.ruiClick=createEvent(this,"ruiClick");this.variant="primary";this.disabled=false;this.loading=false;this.type="button";this.handleClick=function(r){if(e.disabled||e.loading){r.preventDefault();r.stopPropagation();return}e.ruiClick.emit(r)}}r.prototype.render=function(){return h(Host,{key:"0ab23154d1836dfd9d0a691705a0e5cc6f91dae3"},h("button",{key:"986e600d39ed91200857739179c2e105207c0ebc",class:"rui-btn rui-btn--".concat(this.variant),type:this.type,disabled:this.disabled||this.loading,onClick:this.handleClick,"aria-busy":this.loading?"true":"false"},this.loading&&h("span",{key:"406a34032a25dd05f986e53075e2c7cf45727c85",class:"rui-btn__spinner","aria-hidden":"true"}),h("span",{key:"7f9ae69c7824227e0b56f2abffb10b95c7a8b92d",class:"rui-btn__label"},h("slot",{key:"1498be76d79baf033b9913f5f61a5b64192b341e"}))))};Object.defineProperty(r.prototype,"el",{get:function(){return getElement(this)},enumerable:false,configurable:true});return r}();RuiButton.style=ruiButtonCss();export{RuiButton as rui_button};
@@ -0,0 +1 @@
1
+ var __spreadArray=this&&this.__spreadArray||function(r,i,e){if(e||arguments.length===2)for(var a=0,o=i.length,s;a<o;a++){if(s||!(a in i)){if(!s)s=Array.prototype.slice.call(i,0,a);s[a]=i[a]}}return r.concat(s||Array.prototype.slice.call(i))};import{r as registerInstance,c as createEvent,h,H as Host}from"./index-Cye74XUb.js";var ruiFilterChipsCss=function(){return":host{display:block}.rui-chips{display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;gap:0.5rem}.rui-chip{font-family:var(--rui-font);font-size:0.85rem;font-weight:500;padding:0.35rem 0.85rem;border-radius:999px;border:1px solid var(--rui-color-border);background:var(--rui-color-bg);color:var(--rui-color-text);cursor:pointer;-webkit-transition:background-color 0.15s ease, border-color 0.15s ease, color 0.15s ease;transition:background-color 0.15s ease, border-color 0.15s ease, color 0.15s ease}.rui-chip:hover{border-color:var(--rui-color-primary)}.rui-chip--active{background:var(--rui-color-primary);border-color:var(--rui-color-primary);color:#fff}"};var RuiFilterChips=/** @class */function(){function r(r){var i=this;registerInstance(this,r);this.ruiFilterChange=createEvent(this,"ruiFilterChange");this.categories=[];this.selected=[];this.toggle=function(r){var e=i.selected.includes(r)?i.selected.filter((function(i){return i!==r})):__spreadArray(__spreadArray([],i.selected,true),[r],false);i.selected=__spreadArray([],e,true);i.ruiFilterChange.emit(i.selected)}}r.prototype.render=function(){var r=this;return h(Host,{key:"628063d481c07e5c80312a9a395ba7ad0ab859dc"},h("div",{key:"d3aa0f87f0e6b6bd55960dc91769f56b70e4ef67",class:"rui-chips",role:"group","aria-label":"Filters"},this.categories.map((function(i){var e=r.selected.includes(i.value);return h("button",{type:"button",class:"rui-chip ".concat(e?"rui-chip--active":""),"aria-pressed":e?"true":"false",onClick:function(){return r.toggle(i.value)}},i.label)}))))};return r}();RuiFilterChips.style=ruiFilterChipsCss();export{RuiFilterChips as rui_filter_chips};
@@ -0,0 +1 @@
1
+ import{r as registerInstance,c as createEvent,h,H as Host}from"./index-Cye74XUb.js";var ruiMealPlannerCss=function(){return":host{display:block}.rui-planner{display:grid;grid-template-columns:repeat(auto-fill, minmax(260px, 1fr));gap:1rem}.rui-planner__day{background:var(--rui-color-bg);border:1px solid var(--rui-color-border);border-radius:var(--rui-radius);-webkit-box-shadow:var(--rui-shadow-sm);box-shadow:var(--rui-shadow-sm);overflow:hidden}.rui-planner__day-head{padding:0.6rem 0.85rem;background:var(--rui-color-primary-soft);border-bottom:1px solid var(--rui-color-border)}.rui-planner__day-head h4{margin:0;font-size:0.95rem;font-weight:700;color:var(--rui-color-primary-hover)}.rui-planner__meal{display:-ms-flexbox;display:flex;gap:0.6rem;padding:0.75rem;-ms-flex-align:center;align-items:center}.rui-planner__meal--clickable{cursor:pointer;-webkit-transition:background-color 0.15s ease;transition:background-color 0.15s ease;border-radius:var(--rui-radius)}.rui-planner__meal--clickable:hover{background:var(--rui-color-primary-soft, #dcfce7)}.rui-planner__meal--clickable:focus-visible{outline:2px solid var(--rui-color-primary, #16a34a);outline-offset:-2px}.rui-planner__meal img{width:56px;height:56px;border-radius:var(--rui-radius-sm);-o-object-fit:cover;object-fit:cover;-ms-flex-negative:0;flex-shrink:0}.rui-planner__meal-info{-ms-flex:1;flex:1;min-width:0;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;gap:0.15rem}.rui-planner__meal-name{font-size:0.9rem;font-weight:600;line-height:1.3;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.rui-planner__meal-cat{font-size:0.75rem;color:var(--rui-color-muted)}.rui-planner__meal-actions{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;gap:0.25rem}.rui-planner__meal-actions button{font-family:var(--rui-font);font-size:0.75rem;padding:0.25rem 0.5rem;border-radius:var(--rui-radius-sm);border:1px solid var(--rui-color-border);background:var(--rui-color-bg);cursor:pointer}.rui-planner__meal-actions button:hover{border-color:var(--rui-color-primary)}.rui-planner__view{color:var(--rui-color-primary-hover, #15803d);font-weight:600}.rui-planner__view:hover{background:var(--rui-color-primary, #16a34a) !important;color:#fff !important;border-color:var(--rui-color-primary, #16a34a) !important}.rui-planner__clear:hover{color:var(--rui-color-danger);border-color:var(--rui-color-danger) !important}.rui-planner__empty{padding:1rem 0.75rem;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;-ms-flex-align:center;align-items:center;gap:0.6rem;color:var(--rui-color-muted);font-size:0.85rem}.rui-planner__empty button{font-family:var(--rui-font);font-size:0.8rem;font-weight:600;padding:0.4rem 0.8rem;border-radius:var(--rui-radius);border:1px dashed var(--rui-color-border);background:var(--rui-color-bg-alt);color:var(--rui-color-primary-hover);cursor:pointer}.rui-planner__empty button:hover{border-color:var(--rui-color-primary);background:var(--rui-color-primary-soft)}"};var RuiMealPlanner=/** @class */function(){function r(r){var e=this;registerInstance(this,r);this.ruiAssignMeal=createEvent(this,"ruiAssignMeal");this.ruiRemoveMeal=createEvent(this,"ruiRemoveMeal");this.ruiClearDay=createEvent(this,"ruiClearDay");this.ruiSelectMeal=createEvent(this,"ruiSelectMeal");this.plan={};this.days=["Monday","Tuesday","Wednesday","Thursday","Friday","Saturday","Sunday"];this.assign=function(r){return e.ruiAssignMeal.emit({day:r})};this.remove=function(r,i){return e.ruiRemoveMeal.emit({day:r,recipe:i})};this.clear=function(r){return e.ruiClearDay.emit({day:r})};this.selectMeal=function(r,i){return e.ruiSelectMeal.emit({day:r,recipe:i})}}r.prototype.render=function(){var r=this;return h(Host,{key:"de032b8a71504aa8c7ce9ae269c299974c03e160"},h("div",{key:"178b5fc0a98d94cc2bb9666d7edcd74ca605df98",class:"rui-planner"},this.days.map((function(e){var i=r.plan[e];return h("div",{class:"rui-planner__day"},h("div",{class:"rui-planner__day-head"},h("h4",null,e)),i&&i.recipe?h("div",{class:"rui-planner__meal rui-planner__meal--clickable",onClick:function(){return r.selectMeal(e,i.recipe)},role:"button",tabindex:0,onKeyDown:function(a){if(a.key==="Enter"||a.key===" "){a.preventDefault();r.selectMeal(e,i.recipe)}},title:"View recipe ingredients"},i.recipe.image&&h("img",{src:i.recipe.image,alt:i.recipe.name}),h("div",{class:"rui-planner__meal-info"},h("span",{class:"rui-planner__meal-name"},i.recipe.name),i.recipe.category&&h("span",{class:"rui-planner__meal-cat"},i.recipe.category)),h("div",{class:"rui-planner__meal-actions"},h("button",{type:"button",class:"rui-planner__view",onClick:function(a){a.stopPropagation();r.selectMeal(e,i.recipe)}},"View"),h("button",{type:"button",onClick:function(a){a.stopPropagation();r.remove(e,i.recipe)}},"Remove"),h("button",{type:"button",class:"rui-planner__clear",onClick:function(i){i.stopPropagation();r.clear(e)}},"Clear"))):h("div",{class:"rui-planner__empty"},h("span",null,"No meal planned"),h("button",{type:"button",onClick:function(){return r.assign(e)}},"+ Assign recipe")))}))))};return r}();RuiMealPlanner.style=ruiMealPlannerCss();export{RuiMealPlanner as rui_meal_planner};
@@ -0,0 +1 @@
1
+ import{r as registerInstance,c as createEvent,h,H as Host}from"./index-Cye74XUb.js";var ruiModalCss=function(){return":host{display:block}.rui-modal__backdrop{position:fixed;inset:0;background:rgba(0, 0, 0, 0.5);display:-ms-flexbox;display:flex;-ms-flex-align:start;align-items:flex-start;-ms-flex-pack:center;justify-content:center;padding:5vh 1rem 1rem;z-index:1000;overflow-y:auto}.rui-modal__dialog{background:var(--rui-color-bg, #ffffff);border:1px solid var(--rui-color-border, #dee2e6);border-radius:var(--rui-radius, 8px);-webkit-box-shadow:var(--rui-shadow-md, 0 4px 12px rgba(0, 0, 0, 0.12));box-shadow:var(--rui-shadow-md, 0 4px 12px rgba(0, 0, 0, 0.12));width:100%;max-width:560px;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;max-height:90vh;position:relative}.rui-modal__header{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:justify;justify-content:space-between;padding:1rem 1.25rem;border-bottom:1px solid var(--rui-color-border, #dee2e6);background:var(--rui-color-bg, #ffffff);border-radius:var(--rui-radius, 8px) var(--rui-radius, 8px) 0 0}.rui-modal__title{margin:0;font-size:1.15rem;font-weight:700;color:var(--rui-color-text, #212529);font-family:var(--rui-font, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif)}.rui-modal__close{background:none;border:none;font-size:1.5rem;line-height:1;cursor:pointer;color:var(--rui-color-muted, #868e96);padding:0 0.25rem}.rui-modal__close:hover{color:var(--rui-color-text, #212529)}.rui-modal__body{padding:1.25rem;overflow-y:auto;background:var(--rui-color-bg, #ffffff);color:var(--rui-color-text, #212529)}.rui-modal__footer{padding:1rem 1.25rem;border-top:1px solid var(--rui-color-border, #dee2e6);display:-ms-flexbox;display:flex;-ms-flex-pack:end;justify-content:flex-end;gap:0.5rem;background:var(--rui-color-bg, #ffffff);border-radius:0 0 var(--rui-radius, 8px) var(--rui-radius, 8px)}.rui-modal__footer:empty{display:none}"};var RuiModal=/** @class */function(){function e(e){var r=this;registerInstance(this,e);this.ruiClose=createEvent(this,"ruiClose");this.open=false;this.modalTitle="";this.closeOnBackdrop=true;this.handleBackdrop=function(e){if(!r.closeOnBackdrop)return;if(e.target===e.currentTarget){r.requestClose()}};this.handleKey=function(e){if(e.key==="Escape"&&r.open){r.requestClose()}}}e.prototype.requestClose=function(){this.ruiClose.emit()};e.prototype.openChanged=function(e){if(e){document.addEventListener("keydown",this.handleKey)}else{document.removeEventListener("keydown",this.handleKey)}};e.prototype.disconnectedCallback=function(){document.removeEventListener("keydown",this.handleKey)};e.prototype.render=function(){var e=this;return h(Host,{key:"9bbdb18b18e8c09ec5e8edfd886a44cb4d86cb0b"},this.open&&h("div",{key:"b772df0ce6a04949c1ac0d44449545a35d877adc",class:"rui-modal__backdrop",onClick:this.handleBackdrop},h("div",{key:"4c22489ccd86da08b1a007757b1c42da4023067e",class:"rui-modal__dialog",role:"dialog","aria-modal":"true","aria-label":this.modalTitle},h("header",{key:"5dd1ceca76410c18acbc8b12fc7cb9ca8c6dff27",class:"rui-modal__header"},h("h3",{key:"c131c313193f0ba0fd847426dff141f3c1adc143",class:"rui-modal__title"},this.modalTitle),h("button",{key:"c280b26ea160e5c765b80eb9054dd5ff186e7646",class:"rui-modal__close",type:"button","aria-label":"Close",onClick:function(){return e.requestClose()}},"×")),h("div",{key:"f4c32d83f83e5e452dc10a368f5f620e3557eedf",class:"rui-modal__body"},h("slot",{key:"a278a93efe24076204c4fce7b0cf44be22df4dc9"})),h("footer",{key:"31bed0da07b6310cdf4684c24f505ede0a220416",class:"rui-modal__footer"},h("slot",{key:"7a5806e2edf0d6aaef25b119c1d2ba8f3684a1f7",name:"footer"})))))};Object.defineProperty(e,"watchers",{get:function(){return{open:[{openChanged:0}]}},enumerable:false,configurable:true});return e}();RuiModal.style=ruiModalCss();export{RuiModal as rui_modal};
@@ -0,0 +1 @@
1
+ import{r as registerInstance,c as createEvent,h,H as Host}from"./index-Cye74XUb.js";var ruiRecipeCardCss=function(){return":host{display:block}.rui-card{background:var(--rui-color-bg);border:1px solid var(--rui-color-border);border-radius:var(--rui-radius);overflow:hidden;-webkit-box-shadow:var(--rui-shadow-sm);box-shadow:var(--rui-shadow-sm);cursor:pointer;-webkit-transition:-webkit-transform 0.15s ease, -webkit-box-shadow 0.15s ease;transition:-webkit-transform 0.15s ease, -webkit-box-shadow 0.15s ease;transition:transform 0.15s ease, box-shadow 0.15s ease;transition:transform 0.15s ease, box-shadow 0.15s ease, -webkit-transform 0.15s ease, -webkit-box-shadow 0.15s ease;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;height:100%}.rui-card:hover{-webkit-transform:translateY(-2px);transform:translateY(-2px);-webkit-box-shadow:var(--rui-shadow-md);box-shadow:var(--rui-shadow-md)}.rui-card__media{position:relative;aspect-ratio:16 / 10;background:var(--rui-color-bg-alt);overflow:hidden}.rui-card__media img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;display:block}.rui-card__placeholder{width:100%;height:100%;display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;color:var(--rui-color-muted);font-size:0.85rem}.rui-card__fav{position:absolute;top:0.5rem;right:0.5rem;width:2rem;height:2rem;border-radius:50%;border:none;background:rgba(255, 255, 255, 0.9);color:var(--rui-color-danger);font-size:1.1rem;line-height:1;cursor:pointer;display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;-webkit-transition:background-color 0.15s ease, -webkit-transform 0.1s ease;transition:background-color 0.15s ease, -webkit-transform 0.1s ease;transition:background-color 0.15s ease, transform 0.1s ease;transition:background-color 0.15s ease, transform 0.1s ease, -webkit-transform 0.1s ease}.rui-card__fav:hover{background:#fff;-webkit-transform:scale(1.08);transform:scale(1.08)}.rui-card__fav.is-fav{color:var(--rui-color-danger);background:#fff}.rui-card__body{padding:0.85rem 1rem;-ms-flex:1;flex:1}.rui-card__title{margin:0 0 0.25rem;font-size:1rem;font-weight:600;line-height:1.3;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.rui-card__meta{margin:0;font-size:0.8rem;color:var(--rui-color-muted)}.rui-card__footer{padding:0 1rem 0.85rem;display:-ms-flexbox;display:flex;gap:0.5rem;-ms-flex-wrap:wrap;flex-wrap:wrap}.rui-card__footer:empty{display:none}"};var RuiRecipeCard=/** @class */function(){function e(e){var r=this;registerInstance(this,e);this.ruiCardClick=createEvent(this,"ruiCardClick");this.ruiFavoriteToggle=createEvent(this,"ruiFavoriteToggle");this.isFavorite=false;this.onCardClick=function(){r.ruiCardClick.emit(r.recipe)};this.onFavClick=function(e){e.stopPropagation();r.isFavorite=!r.isFavorite;r.ruiFavoriteToggle.emit({recipe:r.recipe,isFavorite:r.isFavorite})}}e.prototype.render=function(){var e=this.recipe;return h(Host,{key:"8ba2647d2fed8b0539287633a5591892109596fb"},h("article",{key:"8a58a35d34d08d0897bc7c68b82773bd361e2dcf",class:"rui-card",onClick:this.onCardClick},h("div",{key:"04b5aa4b9563847aa116bbf477fabd806092f90a",class:"rui-card__media"},e.image?h("img",{src:e.image,alt:e.name,loading:"lazy"}):h("div",{class:"rui-card__placeholder","aria-hidden":"true"},h("span",null,"No image")),h("button",{key:"ea6b5fe33ab2587f28491b75db84e87e3b1d193f",type:"button",class:"rui-card__fav ".concat(this.isFavorite?"is-fav":""),"aria-pressed":this.isFavorite?"true":"false","aria-label":this.isFavorite?"Remove from favorites":"Add to favorites",onClick:this.onFavClick},this.isFavorite?"♥":"♡")),h("div",{key:"2bd65d44934ee52a98cc2be459b770a8fe18dd0f",class:"rui-card__body"},h("h3",{key:"55bd4f5faf4ed06696c6ed22f828d811afa605a5",class:"rui-card__title"},e.name),(e.category||e.area)&&h("p",{key:"5184ee876bdfb90cdef9bc7f529be504ed18bf45",class:"rui-card__meta"},[e.category,e.area].filter(Boolean).join(" · "))),h("div",{key:"5e3fc6c1cc4559bd6260ebf99039908f2e9c82e2",class:"rui-card__footer"},h("slot",{key:"2567811b6ca78e06df4e2c51714dc1210fa65f00"}))))};return e}();RuiRecipeCard.style=ruiRecipeCardCss();export{RuiRecipeCard as rui_recipe_card};
@@ -0,0 +1 @@
1
+ import{r as registerInstance,c as createEvent,h,H as Host}from"./index-Cye74XUb.js";var ruiRecipeDetailCss=function(){return":host{display:block}.rui-detail{background:var(--rui-color-bg);border-radius:var(--rui-radius);-webkit-box-shadow:var(--rui-shadow-sm);box-shadow:var(--rui-shadow-sm);overflow:hidden}.rui-detail__header{display:grid;grid-template-columns:320px 1fr;gap:1.5rem;padding:1.5rem}@media (max-width: 640px){.rui-detail__header{grid-template-columns:1fr}}.rui-detail__media{aspect-ratio:4 / 3;background:var(--rui-color-bg-alt);border-radius:var(--rui-radius);overflow:hidden}.rui-detail__media img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;display:block}.rui-detail__placeholder{width:100%;height:100%;display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;color:var(--rui-color-muted)}.rui-detail__title{margin:0 0 0.35rem;font-size:1.6rem;font-weight:700}.rui-detail__meta{margin:0 0 1rem;color:var(--rui-color-muted);font-size:0.95rem}.rui-detail__actions{display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;gap:0.6rem;-ms-flex-align:center;align-items:center}.rui-detail__fav,.rui-detail__plan{font-family:var(--rui-font);font-size:0.9rem;font-weight:600;padding:0.5rem 0.9rem;border-radius:var(--rui-radius);border:1px solid var(--rui-color-border);background:var(--rui-color-bg);cursor:pointer;-webkit-transition:background-color 0.15s ease, border-color 0.15s ease;transition:background-color 0.15s ease, border-color 0.15s ease}.rui-detail__fav:hover,.rui-detail__plan:hover{border-color:var(--rui-color-primary);background:var(--rui-color-primary-soft)}.rui-detail__fav.is-fav{color:var(--rui-color-danger);border-color:var(--rui-color-danger);background:#fff5f5}.rui-detail__section{padding:0 1.5rem 1.5rem}.rui-detail__section h3{margin:0 0 0.75rem;font-size:1.15rem;font-weight:700;border-bottom:2px solid var(--rui-color-primary-soft);padding-bottom:0.35rem}.rui-detail__tables{display:grid;grid-template-columns:1fr 1fr;gap:1rem;-ms-flex-align:start;align-items:start}@media (max-width: 700px){.rui-detail__tables{grid-template-columns:1fr}}.rui-detail__table{width:100%;border-collapse:collapse;font-size:0.9rem;background:var(--rui-color-bg, #ffffff);border:1px solid var(--rui-color-border, #dee2e6);border-radius:var(--rui-radius, 8px);overflow:hidden}.rui-detail__table thead{background:var(--rui-color-bg-alt, #f8f9fa)}.rui-detail__table th{text-align:left;padding:0.6rem 0.75rem;font-weight:700;font-size:0.82rem;text-transform:uppercase;letter-spacing:0.03em;color:var(--rui-color-muted, #868e96);border-bottom:2px solid var(--rui-color-border, #dee2e6)}.rui-detail__table td{padding:0.55rem 0.75rem;border-bottom:1px solid var(--rui-color-border, #dee2e6);vertical-align:middle}.rui-detail__table tbody tr:last-child td{border-bottom:none}.rui-detail__table tbody tr:hover{background:var(--rui-color-primary-soft, #dcfce7)}.rui-detail__td--index{width:36px;text-align:center;color:var(--rui-color-muted, #868e96);font-weight:600}.rui-detail__ing-measure{color:var(--rui-color-muted, #868e96);white-space:nowrap}.rui-detail__ing-name{font-weight:500;color:var(--rui-color-text, #212529)}.rui-detail__empty{color:var(--rui-color-muted, #868e96);font-size:0.9rem;margin:0.5rem 0 0}.rui-detail__ingredients{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill, minmax(220px, 1fr));gap:0.4rem 1rem}.rui-detail__ingredients li{display:-ms-flexbox;display:flex;gap:0.5rem;font-size:0.9rem;padding:0.3rem 0;border-bottom:1px dashed var(--rui-color-border, #dee2e6)}.rui-detail__instructions{white-space:pre-line;line-height:1.6;font-size:0.95rem;margin:0}.rui-detail__links{display:-ms-flexbox;display:flex;gap:1rem}.rui-detail__links a{color:var(--rui-color-secondary);text-decoration:none;font-weight:500}.rui-detail__links a:hover{text-decoration:underline}"};var RuiRecipeDetail=/** @class */function(){function e(e){var r=this;registerInstance(this,e);this.ruiAddToPlan=createEvent(this,"ruiAddToPlan");this.ruiFavoriteToggle=createEvent(this,"ruiFavoriteToggle");this.isFavorite=false;this.onAddToPlan=function(){r.ruiAddToPlan.emit(r.recipe)};this.onFavToggle=function(){r.isFavorite=!r.isFavorite;r.ruiFavoriteToggle.emit({recipe:r.recipe,isFavorite:r.isFavorite})}}e.prototype.render=function(){var e=this.recipe;return h(Host,{key:"3cbe3361e6d88381fbec4fd8d282963933878de4"},h("article",{key:"ef3860f9752829fae37d374684f5b6e5045299e5",class:"rui-detail"},h("header",{key:"a14c496c15e23458956538926449bcecb742fd4c",class:"rui-detail__header"},h("div",{key:"e6766cf5e4d766fcd2b47a946122b0b108de6a73",class:"rui-detail__media"},e.image?h("img",{src:e.image,alt:e.name}):h("div",{class:"rui-detail__placeholder"},"No image")),h("div",{key:"3c0ccb26f0379d9ddd9cd29a05d237a9d377d516",class:"rui-detail__intro"},h("h2",{key:"108020c974704efc52907eb1f945ee3a7584436f",class:"rui-detail__title"},e.name),(e.category||e.area)&&h("p",{key:"fc381751090c3c067076967347db95907e048898",class:"rui-detail__meta"},[e.category,e.area].filter(Boolean).join(" · ")),h("div",{key:"a0084338478d82d0e7c4f738ff7650646805efe9",class:"rui-detail__actions"},h("slot",{key:"ba5ac7fba83204b9c7512837313238771d68a59c",name:"actions"}),h("button",{key:"1b2a17d3d7571e5d484a9a26bb13b69a9ec8d56a",type:"button",class:"rui-detail__fav ".concat(this.isFavorite?"is-fav":""),"aria-pressed":this.isFavorite?"true":"false",onClick:this.onFavToggle},this.isFavorite?"♥ Favorited":"♡ Add to favorites"),h("button",{key:"1f9e6eec95cf99ef6bad7197d488e4623d9c0381",type:"button",class:"rui-detail__plan",onClick:this.onAddToPlan},"+ Add to meal plan")))),h("section",{key:"8fa48000e6baaf8f22431b413d964c79ce2f9441",class:"rui-detail__section"},h("h3",{key:"44e655db0ee49e4a1f9f2e31a82a23c3c549060a"},"Ingredients"),e.ingredients&&e.ingredients.length>0?function(){var r=Math.ceil(e.ingredients.length/2);var i=e.ingredients.slice(0,r);var a=e.ingredients.slice(r);var t=function(e,r){return h("table",{class:"rui-detail__table"},h("thead",null,h("tr",null,h("th",null,"#"),h("th",null,"Ingredient"),h("th",null,"Measure"))),h("tbody",null,e.map((function(e,i){return h("tr",null,h("td",{class:"rui-detail__td--index"},r+i+1),h("td",{class:"rui-detail__ing-name"},e.name),h("td",{class:"rui-detail__ing-measure"},e.measure||"—"))}))))};return h("div",{class:"rui-detail__tables"},t(i,0),a.length>0&&t(a,r))}():h("p",{class:"rui-detail__empty"},"No ingredients listed."),h("slot",{key:"58d20bb01497af2651f492d9e6520a587d3e21ce",name:"ingredients-extra"})),e.instructions&&h("section",{key:"54176a29fab9b1142b30994d0ae74acd2e881e69",class:"rui-detail__section"},h("h3",{key:"0f0900c1f6abb29cf8601d5d3e6fc44abc344105"},"Instructions"),h("p",{key:"e4f4e185a193ac818bc21e3974c957716a1b8fd6",class:"rui-detail__instructions"},e.instructions)),(e.youtube||e.source)&&h("section",{key:"f8db0b0a526a6e774e83d700325471dbc032170e",class:"rui-detail__section rui-detail__links"},e.youtube&&h("a",{key:"add83e9353e6294219dfb9304c98a49833913200",href:e.youtube,target:"_blank",rel:"noopener noreferrer"},"Watch on YouTube"),e.source&&h("a",{key:"b719435a049b54a4b5ec1500ea9a19da9c10f98d",href:e.source,target:"_blank",rel:"noopener noreferrer"},"Original source"))))};return e}();RuiRecipeDetail.style=ruiRecipeDetailCss();export{RuiRecipeDetail as rui_recipe_detail};
@@ -0,0 +1 @@
1
+ import{r as registerInstance,c as createEvent,h,H as Host}from"./index-Cye74XUb.js";var ruiRecipeListCss=function(){return":host{display:block}.rui-list{display:grid;grid-template-columns:repeat(auto-fill, minmax(220px, 1fr));gap:1.25rem}.rui-list__empty{margin:2rem 0;text-align:center;color:var(--rui-color-muted);font-size:1rem}"};var RuiRecipeList=/** @class */function(){function i(i){registerInstance(this,i);this.ruiSelectRecipe=createEvent(this,"ruiSelectRecipe");this.ruiFavoriteToggle=createEvent(this,"ruiFavoriteToggle");this.recipes=[];this.favorites=[];this.emptyMessage="No recipes found."}i.prototype.recipesChanged=function(){};i.prototype.favoritesChanged=function(){};i.prototype.isFav=function(i){return this.favorites.includes(i)};i.prototype.render=function(){var i=this;if(!this.recipes||this.recipes.length===0){return h(Host,null,h("p",{class:"rui-list__empty"},this.emptyMessage))}return h(Host,null,h("div",{class:"rui-list"},this.recipes.map((function(e){return h("rui-recipe-card",{recipe:e,isFavorite:i.isFav(e.id),onRuiCardClick:function(e){e.stopPropagation();i.ruiSelectRecipe.emit(e.detail)},onRuiFavoriteToggle:function(e){e.stopPropagation();i.ruiFavoriteToggle.emit(e.detail)}})}))))};Object.defineProperty(i,"watchers",{get:function(){return{recipes:[{recipesChanged:0}],favorites:[{favoritesChanged:0}]}},enumerable:false,configurable:true});return i}();RuiRecipeList.style=ruiRecipeListCss();export{RuiRecipeList as rui_recipe_list};
@@ -0,0 +1 @@
1
+ import{r as registerInstance,c as createEvent,h,H as Host,a as getElement}from"./index-Cye74XUb.js";var ruiSearchBarCss=function(){return":host{display:block}.rui-search{display:-ms-flexbox;display:flex;-ms-flex-align:stretch;align-items:stretch;gap:0.5rem;width:100%;max-width:640px}.rui-search__input{-ms-flex:1;flex:1;min-width:0;padding:0.6rem 0.85rem;font-size:1rem;font-family:var(--rui-font);border:1px solid var(--rui-color-border);border-radius:var(--rui-radius);outline:none;-webkit-transition:border-color 0.15s ease, -webkit-box-shadow 0.15s ease;transition:border-color 0.15s ease, -webkit-box-shadow 0.15s ease;transition:border-color 0.15s ease, box-shadow 0.15s ease;transition:border-color 0.15s ease, box-shadow 0.15s ease, -webkit-box-shadow 0.15s ease}.rui-search__input:focus{border-color:var(--rui-color-primary);-webkit-box-shadow:0 0 0 3px var(--rui-color-primary-soft);box-shadow:0 0 0 3px var(--rui-color-primary-soft)}.rui-search__btn{padding:0.6rem 1.1rem;font-size:0.95rem;font-weight:600;font-family:var(--rui-font);background:var(--rui-color-primary);color:#fff;border:none;border-radius:var(--rui-radius);cursor:pointer;-webkit-transition:background-color 0.15s ease;transition:background-color 0.15s ease}.rui-search__btn:hover{background:var(--rui-color-primary-hover)}"};var RuiSearchBar=/** @class */function(){function r(r){var e=this;registerInstance(this,r);this.ruiSearchInput=createEvent(this,"ruiSearchInput");this.ruiSearchSubmit=createEvent(this,"ruiSearchSubmit");this.value="";this.placeholder="Search recipes...";this.debounceMs=300;this.onInput=function(r){var a=r.target;e.value=a.value;clearTimeout(e.timer);e.timer=setTimeout((function(){e.ruiSearchInput.emit(e.value)}),e.debounceMs)};this.onSubmit=function(r){r.preventDefault();clearTimeout(e.timer);e.ruiSearchSubmit.emit(e.value)}}r.prototype.disconnectedCallback=function(){clearTimeout(this.timer)};r.prototype.render=function(){return h(Host,{key:"42c4c7437175136a28e810f73417147e4e609870"},h("form",{key:"7b450f3e9fa9a3c63cda1169b3cecc5e2577ba96",class:"rui-search",onSubmit:this.onSubmit,role:"search"},h("input",{key:"861e092e1c537cedcbe3bf6b1cd580d00fd8d24d",class:"rui-search__input",type:"search",value:this.value,placeholder:this.placeholder,onInput:this.onInput,"aria-label":this.placeholder}),h("button",{key:"b6676deed915b99ecb22ca2c5d30851f51f04c74",class:"rui-search__btn",type:"submit","aria-label":"Search"},"Search")))};Object.defineProperty(r.prototype,"el",{get:function(){return getElement(this)},enumerable:false,configurable:true});return r}();RuiSearchBar.style=ruiSearchBarCss();export{RuiSearchBar as rui_search_bar};
@@ -0,0 +1,4 @@
1
+ var __awaiter=this&&this.__awaiter||function(e,r,i,t){function n(e){return e instanceof i?e:new i((function(r){r(e)}))}return new(i||(i=Promise))((function(i,a){function o(e){try{s(t.next(e))}catch(e){a(e)}}function c(e){try{s(t["throw"](e))}catch(e){a(e)}}function s(e){e.done?i(e.value):n(e.value).then(o,c)}s((t=t.apply(e,r||[])).next())}))};var __generator=this&&this.__generator||function(e,r){var i={label:0,sent:function(){if(a[0]&1)throw a[1];return a[1]},trys:[],ops:[]},t,n,a,o=Object.create((typeof Iterator==="function"?Iterator:Object).prototype);return o.next=c(0),o["throw"]=c(1),o["return"]=c(2),typeof Symbol==="function"&&(o[Symbol.iterator]=function(){return this}),o;function c(e){return function(r){return s([e,r])}}function s(c){if(t)throw new TypeError("Generator is already executing.");while(o&&(o=0,c[0]&&(i=0)),i)try{if(t=1,n&&(a=c[0]&2?n["return"]:c[0]?n["throw"]||((a=n["return"])&&a.call(n),0):n.next)&&!(a=a.call(n,c[1])).done)return a;if(n=0,a)c=[c[0]&2,a.value];switch(c[0]){case 0:case 1:a=c;break;case 4:i.label++;return{value:c[1],done:false};case 5:i.label++;n=c[1];c=[0];continue;case 7:c=i.ops.pop();i.trys.pop();continue;default:if(!(a=i.trys,a=a.length>0&&a[a.length-1])&&(c[0]===6||c[0]===2)){i=0;continue}if(c[0]===3&&(!a||c[1]>a[0]&&c[1]<a[3])){i.label=c[1];break}if(c[0]===6&&i.label<a[1]){i.label=a[1];a=c;break}if(a&&i.label<a[2]){i.label=a[2];i.ops.push(c);break}if(a[2])i.ops.pop();i.trys.pop();continue}c=r.call(e,i)}catch(e){c=[6,e];n=0}finally{t=a=0}if(c[0]&5)throw c[1];return{value:c[0]?c[1]:void 0,done:true}}};import{p as promiseResolve,g as globalScripts,b as bootstrapLazy}from"./index-Cye74XUb.js";export{s as setNonce}from"./index-Cye74XUb.js";
2
+ /*
3
+ Stencil Client Patch Browser v4.44.2 | MIT Licensed | https://stenciljs.com
4
+ */var patchBrowser=function(){var e=import.meta.url;var r={};if(e!==""){r.resourcesUrl=new URL(".",e).href}return promiseResolve(r)};patchBrowser().then((function(e){return __awaiter(void 0,void 0,void 0,(function(){return __generator(this,(function(r){switch(r.label){case 0:return[4/*yield*/,globalScripts()];case 1:r.sent();return[2/*return*/,bootstrapLazy([["rui-recipe-list",[[1,"rui-recipe-list",{recipes:[16],favorites:[16],emptyMessage:[1,"empty-message"]},null,{recipes:[{recipesChanged:0}],favorites:[{favoritesChanged:0}]}]]],["rui-button",[[257,"rui-button",{variant:[1],disabled:[516],loading:[4],type:[1]}]]],["rui-filter-chips",[[1,"rui-filter-chips",{categories:[16],selected:[16]}]]],["rui-meal-planner",[[1,"rui-meal-planner",{plan:[16],days:[16]}]]],["rui-modal",[[257,"rui-modal",{open:[1540],modalTitle:[1,"modal-title"],closeOnBackdrop:[4,"close-on-backdrop"]},null,{open:[{openChanged:0}]}]]],["rui-recipe-detail",[[257,"rui-recipe-detail",{recipe:[16],isFavorite:[516,"is-favorite"]}]]],["rui-search-bar",[[1,"rui-search-bar",{value:[1025],placeholder:[1],debounceMs:[2,"debounce-ms"]}]]],["rui-recipe-card",[[257,"rui-recipe-card",{recipe:[16],isFavorite:[516,"is-favorite"]}]]]],e)]}}))}))}));
@@ -0,0 +1 @@
1
+ module.exports = require('./cjs/index.cjs.js');
package/dist/index.js ADDED
@@ -0,0 +1 @@
1
+ export * from './esm-es5/index.js';
File without changes
@@ -0,0 +1 @@
1
+ import{r as i,c as e,h as t,H as r}from"./p-Cye74XUb.js";const s=class{constructor(t){i(this,t),this.ruiSelectRecipe=e(this,"ruiSelectRecipe"),this.ruiFavoriteToggle=e(this,"ruiFavoriteToggle"),this.recipes=[],this.favorites=[],this.emptyMessage="No recipes found."}recipesChanged(){}favoritesChanged(){}isFav(i){return this.favorites.includes(i)}render(){return t(r,null,this.recipes&&0!==this.recipes.length?t("div",{class:"rui-list"},this.recipes.map((i=>t("rui-recipe-card",{recipe:i,isFavorite:this.isFav(i.id),onRuiCardClick:i=>{i.stopPropagation(),this.ruiSelectRecipe.emit(i.detail)},onRuiFavoriteToggle:i=>{i.stopPropagation(),this.ruiFavoriteToggle.emit(i.detail)}})))):t("p",{class:"rui-list__empty"},this.emptyMessage))}static get watchers(){return{recipes:[{recipesChanged:0}],favorites:[{favoritesChanged:0}]}}};s.style=":host{display:block}.rui-list{display:grid;grid-template-columns:repeat(auto-fill, minmax(220px, 1fr));gap:1.25rem}.rui-list__empty{margin:2rem 0;text-align:center;color:var(--rui-color-muted);font-size:1rem}";export{s as rui_recipe_list}
@@ -0,0 +1 @@
1
+ System.register(["./p-DMa34l4T.system.js"],(function(r){"use strict";var e,i,o,t,a;return{setters:[function(r){e=r.r;i=r.c;o=r.h;t=r.H;a=r.a}],execute:function(){var s=function(){return":host{display:block}.rui-search{display:-ms-flexbox;display:flex;-ms-flex-align:stretch;align-items:stretch;gap:0.5rem;width:100%;max-width:640px}.rui-search__input{-ms-flex:1;flex:1;min-width:0;padding:0.6rem 0.85rem;font-size:1rem;font-family:var(--rui-font);border:1px solid var(--rui-color-border);border-radius:var(--rui-radius);outline:none;-webkit-transition:border-color 0.15s ease, -webkit-box-shadow 0.15s ease;transition:border-color 0.15s ease, -webkit-box-shadow 0.15s ease;transition:border-color 0.15s ease, box-shadow 0.15s ease;transition:border-color 0.15s ease, box-shadow 0.15s ease, -webkit-box-shadow 0.15s ease}.rui-search__input:focus{border-color:var(--rui-color-primary);-webkit-box-shadow:0 0 0 3px var(--rui-color-primary-soft);box-shadow:0 0 0 3px var(--rui-color-primary-soft)}.rui-search__btn{padding:0.6rem 1.1rem;font-size:0.95rem;font-weight:600;font-family:var(--rui-font);background:var(--rui-color-primary);color:#fff;border:none;border-radius:var(--rui-radius);cursor:pointer;-webkit-transition:background-color 0.15s ease;transition:background-color 0.15s ease}.rui-search__btn:hover{background:var(--rui-color-primary-hover)}"};var c=r("rui_search_bar",/** @class */function(){function r(r){var o=this;e(this,r);this.ruiSearchInput=i(this,"ruiSearchInput");this.ruiSearchSubmit=i(this,"ruiSearchSubmit");this.value="";this.placeholder="Search recipes...";this.debounceMs=300;this.onInput=function(r){var e=r.target;o.value=e.value;clearTimeout(o.timer);o.timer=setTimeout((function(){o.ruiSearchInput.emit(o.value)}),o.debounceMs)};this.onSubmit=function(r){r.preventDefault();clearTimeout(o.timer);o.ruiSearchSubmit.emit(o.value)}}r.prototype.disconnectedCallback=function(){clearTimeout(this.timer)};r.prototype.render=function(){return o(t,{key:"42c4c7437175136a28e810f73417147e4e609870"},o("form",{key:"7b450f3e9fa9a3c63cda1169b3cecc5e2577ba96",class:"rui-search",onSubmit:this.onSubmit,role:"search"},o("input",{key:"861e092e1c537cedcbe3bf6b1cd580d00fd8d24d",class:"rui-search__input",type:"search",value:this.value,placeholder:this.placeholder,onInput:this.onInput,"aria-label":this.placeholder}),o("button",{key:"b6676deed915b99ecb22ca2c5d30851f51f04c74",class:"rui-search__btn",type:"submit","aria-label":"Search"},"Search")))};Object.defineProperty(r.prototype,"el",{get:function(){return a(this)},enumerable:false,configurable:true});return r}());c.style=s()}}}));
@@ -0,0 +1 @@
1
+ System.register(["./p-DMa34l4T.system.js"],(function(r){"use strict";var e,o,t,i,n;return{setters:[function(r){e=r.r;o=r.c;t=r.h;i=r.H;n=r.a}],execute:function(){var a=function(){return":host{display:inline-block}.rui-btn{display:-ms-inline-flexbox;display:inline-flex;-ms-flex-align:center;align-items:center;gap:0.5em;font-family:var(--rui-font);font-size:0.95rem;font-weight:600;padding:0.55rem 1.1rem;border-radius:var(--rui-radius);border:1px solid transparent;cursor:pointer;-webkit-transition:background-color 0.15s ease, border-color 0.15s ease, opacity 0.15s ease;transition:background-color 0.15s ease, border-color 0.15s ease, opacity 0.15s ease;line-height:1.2;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.rui-btn:disabled{opacity:0.6;cursor:not-allowed}.rui-btn--primary{background-color:var(--rui-color-primary);color:#fff}.rui-btn--primary:hover:not(:disabled){background-color:var(--rui-color-primary-hover)}.rui-btn--secondary{background-color:var(--rui-color-secondary);color:#fff}.rui-btn--secondary:hover:not(:disabled){background-color:#14538a}.rui-btn--danger{background-color:var(--rui-color-danger);color:#fff}.rui-btn--danger:hover:not(:disabled){background-color:#a52323}.rui-btn--ghost{background-color:transparent;color:var(--rui-color-text);border-color:var(--rui-color-border)}.rui-btn--ghost:hover:not(:disabled){background-color:var(--rui-color-bg-alt)}.rui-btn__spinner{width:1em;height:1em;border:2px solid currentColor;border-top-color:transparent;border-radius:50%;-webkit-animation:rui-spin 0.7s linear infinite;animation:rui-spin 0.7s linear infinite}@-webkit-keyframes rui-spin{to{-webkit-transform:rotate(360deg);transform:rotate(360deg)}}@keyframes rui-spin{to{-webkit-transform:rotate(360deg);transform:rotate(360deg)}}"};var s=r("rui_button",/** @class */function(){function r(r){var t=this;e(this,r);this.ruiClick=o(this,"ruiClick");this.variant="primary";this.disabled=false;this.loading=false;this.type="button";this.handleClick=function(r){if(t.disabled||t.loading){r.preventDefault();r.stopPropagation();return}t.ruiClick.emit(r)}}r.prototype.render=function(){return t(i,{key:"0ab23154d1836dfd9d0a691705a0e5cc6f91dae3"},t("button",{key:"986e600d39ed91200857739179c2e105207c0ebc",class:"rui-btn rui-btn--".concat(this.variant),type:this.type,disabled:this.disabled||this.loading,onClick:this.handleClick,"aria-busy":this.loading?"true":"false"},this.loading&&t("span",{key:"406a34032a25dd05f986e53075e2c7cf45727c85",class:"rui-btn__spinner","aria-hidden":"true"}),t("span",{key:"7f9ae69c7824227e0b56f2abffb10b95c7a8b92d",class:"rui-btn__label"},t("slot",{key:"1498be76d79baf033b9913f5f61a5b64192b341e"}))))};Object.defineProperty(r.prototype,"el",{get:function(){return n(this)},enumerable:false,configurable:true});return r}());s.style=a()}}}));
@@ -0,0 +1 @@
1
+ System.register(["./p-DMa34l4T.system.js"],(function(i){"use strict";var t,e,r,n;return{setters:[function(i){t=i.r;e=i.c;r=i.h;n=i.H}],execute:function(){var s=function(){return":host{display:block}.rui-list{display:grid;grid-template-columns:repeat(auto-fill, minmax(220px, 1fr));gap:1.25rem}.rui-list__empty{margin:2rem 0;text-align:center;color:var(--rui-color-muted);font-size:1rem}"};var u=i("rui_recipe_list",/** @class */function(){function i(i){t(this,i);this.ruiSelectRecipe=e(this,"ruiSelectRecipe");this.ruiFavoriteToggle=e(this,"ruiFavoriteToggle");this.recipes=[];this.favorites=[];this.emptyMessage="No recipes found."}i.prototype.recipesChanged=function(){};i.prototype.favoritesChanged=function(){};i.prototype.isFav=function(i){return this.favorites.includes(i)};i.prototype.render=function(){var i=this;if(!this.recipes||this.recipes.length===0){return r(n,null,r("p",{class:"rui-list__empty"},this.emptyMessage))}return r(n,null,r("div",{class:"rui-list"},this.recipes.map((function(t){return r("rui-recipe-card",{recipe:t,isFavorite:i.isFav(t.id),onRuiCardClick:function(t){t.stopPropagation();i.ruiSelectRecipe.emit(t.detail)},onRuiFavoriteToggle:function(t){t.stopPropagation();i.ruiFavoriteToggle.emit(t.detail)}})}))))};Object.defineProperty(i,"watchers",{get:function(){return{recipes:[{recipesChanged:0}],favorites:[{favoritesChanged:0}]}},enumerable:false,configurable:true});return i}());u.style=s()}}}));
@@ -0,0 +1 @@
1
+ System.register(["./p-DMa34l4T.system.js"],(function(e){"use strict";var r,o,a,i;return{setters:[function(e){r=e.r;o=e.c;a=e.h;i=e.H}],execute:function(){var d=function(){return":host{display:block}.rui-modal__backdrop{position:fixed;inset:0;background:rgba(0, 0, 0, 0.5);display:-ms-flexbox;display:flex;-ms-flex-align:start;align-items:flex-start;-ms-flex-pack:center;justify-content:center;padding:5vh 1rem 1rem;z-index:1000;overflow-y:auto}.rui-modal__dialog{background:var(--rui-color-bg, #ffffff);border:1px solid var(--rui-color-border, #dee2e6);border-radius:var(--rui-radius, 8px);-webkit-box-shadow:var(--rui-shadow-md, 0 4px 12px rgba(0, 0, 0, 0.12));box-shadow:var(--rui-shadow-md, 0 4px 12px rgba(0, 0, 0, 0.12));width:100%;max-width:560px;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;max-height:90vh;position:relative}.rui-modal__header{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:justify;justify-content:space-between;padding:1rem 1.25rem;border-bottom:1px solid var(--rui-color-border, #dee2e6);background:var(--rui-color-bg, #ffffff);border-radius:var(--rui-radius, 8px) var(--rui-radius, 8px) 0 0}.rui-modal__title{margin:0;font-size:1.15rem;font-weight:700;color:var(--rui-color-text, #212529);font-family:var(--rui-font, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif)}.rui-modal__close{background:none;border:none;font-size:1.5rem;line-height:1;cursor:pointer;color:var(--rui-color-muted, #868e96);padding:0 0.25rem}.rui-modal__close:hover{color:var(--rui-color-text, #212529)}.rui-modal__body{padding:1.25rem;overflow-y:auto;background:var(--rui-color-bg, #ffffff);color:var(--rui-color-text, #212529)}.rui-modal__footer{padding:1rem 1.25rem;border-top:1px solid var(--rui-color-border, #dee2e6);display:-ms-flexbox;display:flex;-ms-flex-pack:end;justify-content:flex-end;gap:0.5rem;background:var(--rui-color-bg, #ffffff);border-radius:0 0 var(--rui-radius, 8px) var(--rui-radius, 8px)}.rui-modal__footer:empty{display:none}"};var t=e("rui_modal",/** @class */function(){function e(e){var a=this;r(this,e);this.ruiClose=o(this,"ruiClose");this.open=false;this.modalTitle="";this.closeOnBackdrop=true;this.handleBackdrop=function(e){if(!a.closeOnBackdrop)return;if(e.target===e.currentTarget){a.requestClose()}};this.handleKey=function(e){if(e.key==="Escape"&&a.open){a.requestClose()}}}e.prototype.requestClose=function(){this.ruiClose.emit()};e.prototype.openChanged=function(e){if(e){document.addEventListener("keydown",this.handleKey)}else{document.removeEventListener("keydown",this.handleKey)}};e.prototype.disconnectedCallback=function(){document.removeEventListener("keydown",this.handleKey)};e.prototype.render=function(){var e=this;return a(i,{key:"9bbdb18b18e8c09ec5e8edfd886a44cb4d86cb0b"},this.open&&a("div",{key:"b772df0ce6a04949c1ac0d44449545a35d877adc",class:"rui-modal__backdrop",onClick:this.handleBackdrop},a("div",{key:"4c22489ccd86da08b1a007757b1c42da4023067e",class:"rui-modal__dialog",role:"dialog","aria-modal":"true","aria-label":this.modalTitle},a("header",{key:"5dd1ceca76410c18acbc8b12fc7cb9ca8c6dff27",class:"rui-modal__header"},a("h3",{key:"c131c313193f0ba0fd847426dff141f3c1adc143",class:"rui-modal__title"},this.modalTitle),a("button",{key:"c280b26ea160e5c765b80eb9054dd5ff186e7646",class:"rui-modal__close",type:"button","aria-label":"Close",onClick:function(){return e.requestClose()}},"×")),a("div",{key:"f4c32d83f83e5e452dc10a368f5f620e3557eedf",class:"rui-modal__body"},a("slot",{key:"a278a93efe24076204c4fce7b0cf44be22df4dc9"})),a("footer",{key:"31bed0da07b6310cdf4684c24f505ede0a220416",class:"rui-modal__footer"},a("slot",{key:"7a5806e2edf0d6aaef25b119c1d2ba8f3684a1f7",name:"footer"})))))};Object.defineProperty(e,"watchers",{get:function(){return{open:[{openChanged:0}]}},enumerable:false,configurable:true});return e}());t.style=d()}}}));
@@ -0,0 +1 @@
1
+ import{r as e,c as r,h as o,H as a}from"./p-Cye74XUb.js";const d=class{constructor(o){e(this,o),this.ruiClose=r(this,"ruiClose"),this.open=!1,this.modalTitle="",this.closeOnBackdrop=!0,this.handleBackdrop=e=>{this.closeOnBackdrop&&e.target===e.currentTarget&&this.requestClose()},this.handleKey=e=>{"Escape"===e.key&&this.open&&this.requestClose()}}requestClose(){this.ruiClose.emit()}openChanged(e){e?document.addEventListener("keydown",this.handleKey):document.removeEventListener("keydown",this.handleKey)}disconnectedCallback(){document.removeEventListener("keydown",this.handleKey)}render(){return o(a,{key:"9bbdb18b18e8c09ec5e8edfd886a44cb4d86cb0b"},this.open&&o("div",{key:"b772df0ce6a04949c1ac0d44449545a35d877adc",class:"rui-modal__backdrop",onClick:this.handleBackdrop},o("div",{key:"4c22489ccd86da08b1a007757b1c42da4023067e",class:"rui-modal__dialog",role:"dialog","aria-modal":"true","aria-label":this.modalTitle},o("header",{key:"5dd1ceca76410c18acbc8b12fc7cb9ca8c6dff27",class:"rui-modal__header"},o("h3",{key:"c131c313193f0ba0fd847426dff141f3c1adc143",class:"rui-modal__title"},this.modalTitle),o("button",{key:"c280b26ea160e5c765b80eb9054dd5ff186e7646",class:"rui-modal__close",type:"button","aria-label":"Close",onClick:()=>this.requestClose()},"×")),o("div",{key:"f4c32d83f83e5e452dc10a368f5f620e3557eedf",class:"rui-modal__body"},o("slot",{key:"a278a93efe24076204c4fce7b0cf44be22df4dc9"})),o("footer",{key:"31bed0da07b6310cdf4684c24f505ede0a220416",class:"rui-modal__footer"},o("slot",{key:"7a5806e2edf0d6aaef25b119c1d2ba8f3684a1f7",name:"footer"})))))}static get watchers(){return{open:[{openChanged:0}]}}};d.style=":host{display:block}.rui-modal__backdrop{position:fixed;inset:0;background:rgba(0, 0, 0, 0.5);display:-ms-flexbox;display:flex;-ms-flex-align:start;align-items:flex-start;-ms-flex-pack:center;justify-content:center;padding:5vh 1rem 1rem;z-index:1000;overflow-y:auto}.rui-modal__dialog{background:var(--rui-color-bg, #ffffff);border:1px solid var(--rui-color-border, #dee2e6);border-radius:var(--rui-radius, 8px);-webkit-box-shadow:var(--rui-shadow-md, 0 4px 12px rgba(0, 0, 0, 0.12));box-shadow:var(--rui-shadow-md, 0 4px 12px rgba(0, 0, 0, 0.12));width:100%;max-width:560px;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;max-height:90vh;position:relative}.rui-modal__header{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:justify;justify-content:space-between;padding:1rem 1.25rem;border-bottom:1px solid var(--rui-color-border, #dee2e6);background:var(--rui-color-bg, #ffffff);border-radius:var(--rui-radius, 8px) var(--rui-radius, 8px) 0 0}.rui-modal__title{margin:0;font-size:1.15rem;font-weight:700;color:var(--rui-color-text, #212529);font-family:var(--rui-font, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif)}.rui-modal__close{background:none;border:none;font-size:1.5rem;line-height:1;cursor:pointer;color:var(--rui-color-muted, #868e96);padding:0 0.25rem}.rui-modal__close:hover{color:var(--rui-color-text, #212529)}.rui-modal__body{padding:1.25rem;overflow-y:auto;background:var(--rui-color-bg, #ffffff);color:var(--rui-color-text, #212529)}.rui-modal__footer{padding:1rem 1.25rem;border-top:1px solid var(--rui-color-border, #dee2e6);display:-ms-flexbox;display:flex;-ms-flex-pack:end;justify-content:flex-end;gap:0.5rem;background:var(--rui-color-bg, #ffffff);border-radius:0 0 var(--rui-radius, 8px) var(--rui-radius, 8px)}.rui-modal__footer:empty{display:none}";export{d as rui_modal}
@@ -0,0 +1 @@
1
+ System.register(["./p-DMa34l4T.system.js"],(function(r){"use strict";var e,i,a,n;return{setters:[function(r){e=r.r;i=r.c;a=r.h;n=r.H}],execute:function(){var o=function(){return":host{display:block}.rui-planner{display:grid;grid-template-columns:repeat(auto-fill, minmax(260px, 1fr));gap:1rem}.rui-planner__day{background:var(--rui-color-bg);border:1px solid var(--rui-color-border);border-radius:var(--rui-radius);-webkit-box-shadow:var(--rui-shadow-sm);box-shadow:var(--rui-shadow-sm);overflow:hidden}.rui-planner__day-head{padding:0.6rem 0.85rem;background:var(--rui-color-primary-soft);border-bottom:1px solid var(--rui-color-border)}.rui-planner__day-head h4{margin:0;font-size:0.95rem;font-weight:700;color:var(--rui-color-primary-hover)}.rui-planner__meal{display:-ms-flexbox;display:flex;gap:0.6rem;padding:0.75rem;-ms-flex-align:center;align-items:center}.rui-planner__meal--clickable{cursor:pointer;-webkit-transition:background-color 0.15s ease;transition:background-color 0.15s ease;border-radius:var(--rui-radius)}.rui-planner__meal--clickable:hover{background:var(--rui-color-primary-soft, #dcfce7)}.rui-planner__meal--clickable:focus-visible{outline:2px solid var(--rui-color-primary, #16a34a);outline-offset:-2px}.rui-planner__meal img{width:56px;height:56px;border-radius:var(--rui-radius-sm);-o-object-fit:cover;object-fit:cover;-ms-flex-negative:0;flex-shrink:0}.rui-planner__meal-info{-ms-flex:1;flex:1;min-width:0;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;gap:0.15rem}.rui-planner__meal-name{font-size:0.9rem;font-weight:600;line-height:1.3;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.rui-planner__meal-cat{font-size:0.75rem;color:var(--rui-color-muted)}.rui-planner__meal-actions{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;gap:0.25rem}.rui-planner__meal-actions button{font-family:var(--rui-font);font-size:0.75rem;padding:0.25rem 0.5rem;border-radius:var(--rui-radius-sm);border:1px solid var(--rui-color-border);background:var(--rui-color-bg);cursor:pointer}.rui-planner__meal-actions button:hover{border-color:var(--rui-color-primary)}.rui-planner__view{color:var(--rui-color-primary-hover, #15803d);font-weight:600}.rui-planner__view:hover{background:var(--rui-color-primary, #16a34a) !important;color:#fff !important;border-color:var(--rui-color-primary, #16a34a) !important}.rui-planner__clear:hover{color:var(--rui-color-danger);border-color:var(--rui-color-danger) !important}.rui-planner__empty{padding:1rem 0.75rem;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;-ms-flex-align:center;align-items:center;gap:0.6rem;color:var(--rui-color-muted);font-size:0.85rem}.rui-planner__empty button{font-family:var(--rui-font);font-size:0.8rem;font-weight:600;padding:0.4rem 0.8rem;border-radius:var(--rui-radius);border:1px dashed var(--rui-color-border);background:var(--rui-color-bg-alt);color:var(--rui-color-primary-hover);cursor:pointer}.rui-planner__empty button:hover{border-color:var(--rui-color-primary);background:var(--rui-color-primary-soft)}"};var l=r("rui_meal_planner",/** @class */function(){function r(r){var a=this;e(this,r);this.ruiAssignMeal=i(this,"ruiAssignMeal");this.ruiRemoveMeal=i(this,"ruiRemoveMeal");this.ruiClearDay=i(this,"ruiClearDay");this.ruiSelectMeal=i(this,"ruiSelectMeal");this.plan={};this.days=["Monday","Tuesday","Wednesday","Thursday","Friday","Saturday","Sunday"];this.assign=function(r){return a.ruiAssignMeal.emit({day:r})};this.remove=function(r,e){return a.ruiRemoveMeal.emit({day:r,recipe:e})};this.clear=function(r){return a.ruiClearDay.emit({day:r})};this.selectMeal=function(r,e){return a.ruiSelectMeal.emit({day:r,recipe:e})}}r.prototype.render=function(){var r=this;return a(n,{key:"de032b8a71504aa8c7ce9ae269c299974c03e160"},a("div",{key:"178b5fc0a98d94cc2bb9666d7edcd74ca605df98",class:"rui-planner"},this.days.map((function(e){var i=r.plan[e];return a("div",{class:"rui-planner__day"},a("div",{class:"rui-planner__day-head"},a("h4",null,e)),i&&i.recipe?a("div",{class:"rui-planner__meal rui-planner__meal--clickable",onClick:function(){return r.selectMeal(e,i.recipe)},role:"button",tabindex:0,onKeyDown:function(a){if(a.key==="Enter"||a.key===" "){a.preventDefault();r.selectMeal(e,i.recipe)}},title:"View recipe ingredients"},i.recipe.image&&a("img",{src:i.recipe.image,alt:i.recipe.name}),a("div",{class:"rui-planner__meal-info"},a("span",{class:"rui-planner__meal-name"},i.recipe.name),i.recipe.category&&a("span",{class:"rui-planner__meal-cat"},i.recipe.category)),a("div",{class:"rui-planner__meal-actions"},a("button",{type:"button",class:"rui-planner__view",onClick:function(a){a.stopPropagation();r.selectMeal(e,i.recipe)}},"View"),a("button",{type:"button",onClick:function(a){a.stopPropagation();r.remove(e,i.recipe)}},"Remove"),a("button",{type:"button",class:"rui-planner__clear",onClick:function(i){i.stopPropagation();r.clear(e)}},"Clear"))):a("div",{class:"rui-planner__empty"},a("span",null,"No meal planned"),a("button",{type:"button",onClick:function(){return r.assign(e)}},"+ Assign recipe")))}))))};return r}());l.style=o()}}}));