@brad-frost-web/eddie-recipes 0.19.2 → 0.19.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 (94) hide show
  1. package/package.json +1 -1
  2. package/recipes/bradfrost-com/timeline/timeline.d.ts +17 -0
  3. package/recipes/bradfrost-com/timeline/timeline.d.ts.map +1 -0
  4. package/recipes/bradfrost-com/timeline/timeline.js +20 -0
  5. package/recipes/bradfrost-com/timeline-node/timeline-node.d.ts +37 -0
  6. package/recipes/bradfrost-com/timeline-node/timeline-node.d.ts.map +1 -0
  7. package/recipes/bradfrost-com/timeline-node/timeline-node.js +56 -0
  8. package/recipes/common/example-form/example-form.d.ts +17 -0
  9. package/recipes/common/example-form/example-form.d.ts.map +1 -0
  10. package/recipes/common/example-form/example-form.js +133 -0
  11. package/recipes/common/project-card/project-card.d.ts +39 -0
  12. package/recipes/common/project-card/project-card.d.ts.map +1 -0
  13. package/recipes/common/project-card/project-card.js +60 -0
  14. package/recipes/common/promo-block/promo-block.d.ts +15 -0
  15. package/recipes/common/promo-block/promo-block.d.ts.map +1 -0
  16. package/recipes/common/promo-block/promo-block.js +30 -0
  17. package/recipes/common/site-footer/site-footer.d.ts +14 -0
  18. package/recipes/common/site-footer/site-footer.d.ts.map +1 -0
  19. package/recipes/common/site-footer/site-footer.js +35 -0
  20. package/recipes/common/site-header/site-header.d.ts +20 -0
  21. package/recipes/common/site-header/site-header.d.ts.map +1 -0
  22. package/recipes/common/site-header/{site-header.ts → site-header.js} +50 -69
  23. package/recipes/we-are-here/chunky-checkbox/chunky-checkbox.d.ts +36 -0
  24. package/recipes/we-are-here/chunky-checkbox/chunky-checkbox.d.ts.map +1 -0
  25. package/recipes/we-are-here/chunky-checkbox/chunky-checkbox.js +64 -0
  26. package/recipes/we-are-here/wah-link-list/wah-link-list.d.ts +39 -0
  27. package/recipes/we-are-here/wah-link-list/wah-link-list.d.ts.map +1 -0
  28. package/recipes/we-are-here/wah-link-list/wah-link-list.js +58 -0
  29. package/recipes/we-are-here/wah-logo/wah-logo.d.ts +24 -0
  30. package/recipes/we-are-here/wah-logo/wah-logo.d.ts.map +1 -0
  31. package/recipes/we-are-here/wah-logo/wah-logo.js +46 -0
  32. package/recipes/we-are-here/wah-site-footer/wah-site-footer.d.ts +23 -0
  33. package/recipes/we-are-here/wah-site-footer/wah-site-footer.d.ts.map +1 -0
  34. package/recipes/we-are-here/wah-site-footer/wah-site-footer.js +56 -0
  35. package/recipes/we-are-here/wah-site-header/wah-site-header.d.ts +41 -0
  36. package/recipes/we-are-here/wah-site-header/wah-site-header.d.ts.map +1 -0
  37. package/recipes/we-are-here/wah-site-header/wah-site-header.js +106 -0
  38. package/README.md +0 -46
  39. package/declaration.d.ts +0 -1
  40. package/plop-templates/recipe/recipe.scss.hbs +0 -11
  41. package/plop-templates/recipe/recipe.stories.ts.hbs +0 -10
  42. package/plop-templates/recipe/recipe.test.ts.hbs +0 -5
  43. package/plop-templates/recipe/recipe.ts.hbs +0 -34
  44. package/plopfile.cjs +0 -41
  45. package/recipes/ai-and-design-systems-course-website/.gitkeep +0 -0
  46. package/recipes/atomic-design-course-website/.gitkeep +0 -0
  47. package/recipes/bradfrost-com/.gitkeep +0 -0
  48. package/recipes/bradfrost-com/timeline/timeline.scss +0 -24
  49. package/recipes/bradfrost-com/timeline/timeline.ts +0 -35
  50. package/recipes/bradfrost-com/timeline-node/timeline-node.scss +0 -92
  51. package/recipes/bradfrost-com/timeline-node/timeline-node.ts +0 -84
  52. package/recipes/common/example-form/example-form.scss +0 -12
  53. package/recipes/common/example-form/example-form.stories.ts +0 -10
  54. package/recipes/common/example-form/example-form.ts +0 -152
  55. package/recipes/common/example-form/test/example-form.test.ts +0 -5
  56. package/recipes/common/project-card/project-card.scss +0 -82
  57. package/recipes/common/project-card/project-card.stories.ts +0 -45
  58. package/recipes/common/project-card/project-card.ts +0 -89
  59. package/recipes/common/project-card/test/project-card.test.ts +0 -5
  60. package/recipes/common/promo-block/promo-block.scss +0 -24
  61. package/recipes/common/promo-block/promo-block.stories.ts +0 -10
  62. package/recipes/common/promo-block/promo-block.ts +0 -43
  63. package/recipes/common/promo-block/test/promo-block.test.ts +0 -5
  64. package/recipes/common/site-footer/site-footer.scss +0 -49
  65. package/recipes/common/site-footer/site-footer.stories.ts +0 -9
  66. package/recipes/common/site-footer/site-footer.ts +0 -47
  67. package/recipes/common/site-footer/test/site-footer.test.ts +0 -5
  68. package/recipes/common/site-header/site-header.scss +0 -61
  69. package/recipes/common/site-header/site-header.stories.ts +0 -9
  70. package/recipes/common/site-header/test/site-header.test.ts +0 -5
  71. package/recipes/we-are-here/.gitkeep +0 -0
  72. package/recipes/we-are-here/chunky-checkbox/chunky-checkbox.scss +0 -68
  73. package/recipes/we-are-here/chunky-checkbox/chunky-checkbox.stories.ts +0 -55
  74. package/recipes/we-are-here/chunky-checkbox/chunky-checkbox.ts +0 -88
  75. package/recipes/we-are-here/chunky-checkbox/test/chunky-checkbox.test.ts +0 -5
  76. package/recipes/we-are-here/wah-link-list/test/wah-link-list.test.ts +0 -5
  77. package/recipes/we-are-here/wah-link-list/wah-link-list.scss +0 -56
  78. package/recipes/we-are-here/wah-link-list/wah-link-list.stories.ts +0 -50
  79. package/recipes/we-are-here/wah-link-list/wah-link-list.ts +0 -89
  80. package/recipes/we-are-here/wah-logo/test/wah-logo.test.ts +0 -5
  81. package/recipes/we-are-here/wah-logo/wah-logo.scss +0 -36
  82. package/recipes/we-are-here/wah-logo/wah-logo.stories.ts +0 -14
  83. package/recipes/we-are-here/wah-logo/wah-logo.ts +0 -62
  84. package/recipes/we-are-here/wah-site-footer/test/wah-site-footer.test.ts +0 -5
  85. package/recipes/we-are-here/wah-site-footer/wah-site-footer.scss +0 -33
  86. package/recipes/we-are-here/wah-site-footer/wah-site-footer.stories.ts +0 -10
  87. package/recipes/we-are-here/wah-site-footer/wah-site-footer.ts +0 -68
  88. package/recipes/we-are-here/wah-site-header/test/wah-site-header.test.ts +0 -5
  89. package/recipes/we-are-here/wah-site-header/wah-site-header.scss +0 -137
  90. package/recipes/we-are-here/wah-site-header/wah-site-header.stories.ts +0 -13
  91. package/recipes/we-are-here/wah-site-header/wah-site-header.ts +0 -132
  92. package/tsconfig.json +0 -27
  93. package/vite.config.cdn.ts +0 -83
  94. package/vite.config.ts +0 -65
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@brad-frost-web/eddie-recipes",
3
- "version": "0.19.2",
3
+ "version": "0.19.4",
4
4
  "private": false,
5
5
  "publishConfig": {
6
6
  "access": "public"
@@ -0,0 +1,17 @@
1
+ import { EdElement } from '@brad-frost-web/eddie-web-components/components/EdElement';
2
+ /**
3
+ * A vertical timeline component that displays a series of timeline nodes
4
+ * along a vertical line. Used as a wrapper around `ed-r-timeline-node` elements.
5
+ *
6
+ * @slot - Timeline node elements (`ed-r-timeline-node`)
7
+ */
8
+ export declare class EdRTimeline extends EdElement {
9
+ static get styles(): import('lit').CSSResult;
10
+ render(): import('lit-html').TemplateResult<1>;
11
+ }
12
+ declare global {
13
+ interface HTMLElementTagNameMap {
14
+ 'ed-r-timeline': EdRTimeline;
15
+ }
16
+ }
17
+ //# sourceMappingURL=timeline.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"timeline.d.ts","sourceRoot":"","sources":["../../../../../packages/eddie-recipes/recipes/bradfrost-com/timeline/timeline.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,2DAA2D,CAAC;AAItF;;;;;GAKG;AACH,qBAAa,WAAY,SAAQ,SAAS;IACxC,MAAM,KAAK,MAAM,4BAEhB;IAED,MAAM;CASP;AAMD,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,qBAAqB;QAC7B,eAAe,EAAE,WAAW,CAAC;KAC9B;CACF"}
@@ -0,0 +1,20 @@
1
+ import { EdElement as t } from "@brad-frost-web/eddie-web-components/components/EdElement";
2
+ import { unsafeCSS as o, html as i } from "lit";
3
+ const s = ':root,:host{--size-base-unit: .5rem}*,::slotted(*),*:before,*:after{box-sizing:border-box}h1,h2,h3,h4,h5,h6{margin:0}.ed-r-c-timeline{position:relative;padding-inline-start:3rem}.ed-r-c-timeline:before{content:"";position:absolute;top:0;bottom:0;left:1rem;width:2px;background:var(--ed-theme-color-border-default)}';
4
+ class r extends t {
5
+ static get styles() {
6
+ return o(s);
7
+ }
8
+ render() {
9
+ const e = this.componentClassNames("ed-r-c-timeline", {});
10
+ return i`
11
+ <div class="${e}">
12
+ <slot></slot>
13
+ </div>
14
+ `;
15
+ }
16
+ }
17
+ customElements.get("ed-r-timeline") === void 0 && customElements.define("ed-r-timeline", r);
18
+ export {
19
+ r as EdRTimeline
20
+ };
@@ -0,0 +1,37 @@
1
+ import { EdElement } from '@brad-frost-web/eddie-web-components/components/EdElement';
2
+ /**
3
+ * A single node on a vertical timeline. Displays a dot marker on the timeline
4
+ * line with a heading, optional date, and slotted content to the right.
5
+ *
6
+ * @slot - Additional content for this timeline entry
7
+ */
8
+ export declare class EdRTimelineNode extends EdElement {
9
+ static get styles(): import('lit').CSSResult;
10
+ /**
11
+ * The heading text for this timeline node
12
+ */
13
+ text: string;
14
+ /**
15
+ * Optional date or time label displayed above/beside the heading
16
+ */
17
+ date?: string;
18
+ /**
19
+ * URL the heading links to
20
+ */
21
+ href?: string;
22
+ /**
23
+ * Heading tag name for semantic heading level
24
+ */
25
+ headingTagName: 'h2' | 'h3' | 'h4' | 'h5' | 'h6';
26
+ /**
27
+ * Visual variant of the node marker
28
+ */
29
+ variant?: 'default' | 'highlight';
30
+ render(): import('lit-html').TemplateResult<1>;
31
+ }
32
+ declare global {
33
+ interface HTMLElementTagNameMap {
34
+ 'ed-r-timeline-node': EdRTimelineNode;
35
+ }
36
+ }
37
+ //# sourceMappingURL=timeline-node.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"timeline-node.d.ts","sourceRoot":"","sources":["../../../../../packages/eddie-recipes/recipes/bradfrost-com/timeline-node/timeline-node.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,2DAA2D,CAAC;AACtF,OAAO,iEAAiE,CAAC;AAKzE;;;;;GAKG;AACH,qBAAa,eAAgB,SAAQ,SAAS;IAC5C,MAAM,KAAK,MAAM,4BAEhB;IAED;;OAEG;IAEH,IAAI,SAAM;IAEV;;OAEG;IAEH,IAAI,CAAC,EAAE,MAAM,CAAC;IAEd;;OAEG;IAEH,IAAI,CAAC,EAAE,MAAM,CAAC;IAEd;;OAEG;IAEH,cAAc,EAAE,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,CAAQ;IAExD;;OAEG;IAEH,OAAO,CAAC,EAAE,SAAS,GAAG,WAAW,CAAC;IAElC,MAAM;CA0BP;AAMD,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,qBAAqB;QAC7B,oBAAoB,EAAE,eAAe,CAAC;KACvC;CACF"}
@@ -0,0 +1,56 @@
1
+ import { EdElement as h } from "@brad-frost-web/eddie-web-components/components/EdElement";
2
+ import "@brad-frost-web/eddie-web-components/components/heading/heading";
3
+ import { unsafeCSS as c, nothing as s, html as r } from "lit";
4
+ import { property as i } from "lit/decorators.js";
5
+ const p = ":root,:host{--size-base-unit: .5rem}*,::slotted(*),*:before,*:after{box-sizing:border-box}h1,h2,h3,h4,h5,h6{margin:0}.ed-r-c-timeline-node{position:relative;padding-block-end:2rem}.ed-r-c-timeline-node__marker{position:absolute;top:.25rem;left:calc(-2rem - 5px);width:12px;height:12px;border-radius:50%;background:var(--ed-theme-color-background-brand);border:2px solid var(--ed-theme-color-background-default)}.ed-r-c-timeline-node--highlight .ed-r-c-timeline-node__marker{width:16px;height:16px;left:calc(-2rem - 7px);box-shadow:0 0 0 3px var(--ed-theme-color-background-brand)}.ed-r-c-timeline-node__body{display:flex;flex-direction:column;gap:.25rem}.ed-r-c-timeline-node__date{font-family:var(--ed-theme-typography-meta-default-font-family);font-weight:var(--ed-theme-typography-meta-default-font-weight);font-size:var(--ed-theme-typography-meta-default-font-size);line-height:var(--ed-theme-typography-meta-default-line-height);letter-spacing:var(--ed-theme-typography-meta-default-letter-spacing);text-transform:var(--ed-theme-typography-meta-default-text-transform);color:var(--ed-theme-color-content-subtle)}.ed-r-c-timeline-node__heading{display:block}.ed-r-c-timeline-node__link{color:inherit;text-decoration:none}.ed-r-c-timeline-node__link:hover,.ed-r-c-timeline-node__link:focus{text-decoration:underline;color:var(--ed-theme-link-color-content-hover)}.ed-r-c-timeline-node__content:empty{display:none}";
6
+ var g = Object.defineProperty, n = (d, o, l, f) => {
7
+ for (var e = void 0, a = d.length - 1, m; a >= 0; a--)
8
+ (m = d[a]) && (e = m(o, l, e) || e);
9
+ return e && g(o, l, e), e;
10
+ };
11
+ class t extends h {
12
+ constructor() {
13
+ super(...arguments), this.text = "", this.headingTagName = "h3";
14
+ }
15
+ static get styles() {
16
+ return c(p);
17
+ }
18
+ render() {
19
+ const o = this.componentClassNames("ed-r-c-timeline-node", {
20
+ "ed-r-c-timeline-node--highlight": this.variant === "highlight"
21
+ });
22
+ return r`
23
+ <div class="${o}">
24
+ <div class="ed-r-c-timeline-node__marker"></div>
25
+ <div class="ed-r-c-timeline-node__body">
26
+ ${this.date ? r`<span class="ed-r-c-timeline-node__date">${this.date}</span>` : s}
27
+ ${this.text ? r`<ed-heading class="ed-r-c-timeline-node__heading" tagName="${this.headingTagName}" variant="headline-sm">
28
+ ${this.href ? r`<a class="ed-r-c-timeline-node__link" href="${this.href}">${this.text}</a>` : this.text}
29
+ </ed-heading>` : s}
30
+ <div class="ed-r-c-timeline-node__content">
31
+ <slot></slot>
32
+ </div>
33
+ </div>
34
+ </div>
35
+ `;
36
+ }
37
+ }
38
+ n([
39
+ i()
40
+ ], t.prototype, "text");
41
+ n([
42
+ i()
43
+ ], t.prototype, "date");
44
+ n([
45
+ i()
46
+ ], t.prototype, "href");
47
+ n([
48
+ i()
49
+ ], t.prototype, "headingTagName");
50
+ n([
51
+ i()
52
+ ], t.prototype, "variant");
53
+ customElements.get("ed-r-timeline-node") === void 0 && customElements.define("ed-r-timeline-node", t);
54
+ export {
55
+ t as EdRTimelineNode
56
+ };
@@ -0,0 +1,17 @@
1
+ import { EdElement } from '@brad-frost-web/eddie-web-components/components/EdElement';
2
+ /**
3
+ * Example form recipe demonstrating various form components working together.
4
+ */
5
+ export declare class EdRExampleForm extends EdElement {
6
+ static get styles(): import('lit').CSSResult;
7
+ formData: string;
8
+ logFiles(e: CustomEvent): void;
9
+ render(): import('lit-html').TemplateResult<1>;
10
+ handleSubmit(e: Event): void;
11
+ }
12
+ declare global {
13
+ interface HTMLElementTagNameMap {
14
+ 'ed-r-example-form': EdRExampleForm;
15
+ }
16
+ }
17
+ //# sourceMappingURL=example-form.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"example-form.d.ts","sourceRoot":"","sources":["../../../../../packages/eddie-recipes/recipes/common/example-form/example-form.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,2DAA2D,CAAC;AACtF,OAAO,2EAA2E,CAAC;AACnF,OAAO,+DAA+D,CAAC;AACvE,OAAO,yFAAyF,CAAC;AACjG,OAAO,+EAA+E,CAAC;AACvF,OAAO,yEAAyE,CAAC;AACjF,OAAO,iEAAiE,CAAC;AACzE,OAAO,mFAAmF,CAAC;AAC3F,OAAO,yEAAyE,CAAC;AACjF,OAAO,2EAA2E,CAAC;AACnF,OAAO,uEAAuE,CAAC;AAC/E,OAAO,+EAA+E,CAAC;AACvF,OAAO,+DAA+D,CAAC;AAKvE;;GAEG;AACH,qBAAa,cAAe,SAAQ,SAAS;IAC3C,MAAM,KAAK,MAAM,4BAEhB;IAGD,QAAQ,EAAE,MAAM,CAAM;IAEtB,QAAQ,CAAC,CAAC,EAAE,WAAW;IAOvB,MAAM;IAyFN,YAAY,CAAC,CAAC,EAAE,KAAK;CAiBtB;AAMD,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,qBAAqB;QAC7B,mBAAmB,EAAE,cAAc,CAAC;KACrC;CACF"}
@@ -0,0 +1,133 @@
1
+ import { EdElement as l } from "@brad-frost-web/eddie-web-components/components/EdElement";
2
+ import "@brad-frost-web/eddie-web-components/components/button-group/button-group";
3
+ import "@brad-frost-web/eddie-web-components/components/button/button";
4
+ import "@brad-frost-web/eddie-web-components/components/checkbox-field-item/checkbox-field-item";
5
+ import "@brad-frost-web/eddie-web-components/components/checkbox-field/checkbox-field";
6
+ import "@brad-frost-web/eddie-web-components/components/file-upload/file-upload";
7
+ import "@brad-frost-web/eddie-web-components/components/heading/heading";
8
+ import "@brad-frost-web/eddie-web-components/components/radio-field-item/radio-field-item";
9
+ import "@brad-frost-web/eddie-web-components/components/radio-field/radio-field";
10
+ import "@brad-frost-web/eddie-web-components/components/select-field/select-field";
11
+ import "@brad-frost-web/eddie-web-components/components/text-field/text-field";
12
+ import "@brad-frost-web/eddie-web-components/components/textarea-field/textarea-field";
13
+ import "@brad-frost-web/eddie-web-components/components/toggle/toggle";
14
+ import { unsafeCSS as p, nothing as g, html as m } from "lit";
15
+ import { state as u } from "lit/decorators.js";
16
+ const s = '@charset "UTF-8";:root,:host{--size-base-unit: .5rem}*,::slotted(*),*:before,*:after{box-sizing:border-box}h1,h2,h3,h4,h5,h6{margin:0}.ed-u-margin-none{margin:0!important}.ed-u-margin-sm{margin:.5rem!important}.ed-u-margin-md{margin:1rem!important}.ed-u-margin-lg{margin:1.5rem!important}.ed-u-margin-xl{margin:2rem!important}.ed-u-margin-xxl{margin:4rem!important}.ed-u-margin-top-none{margin-block-start:0!important}.ed-u-margin-top-sm{margin-block-start:.5rem!important}.ed-u-margin-top-md{margin-block-start:1rem!important}.ed-u-margin-top-lg{margin-block-start:1.5rem!important}.ed-u-margin-top-xl{margin-block-start:2rem!important}.ed-u-margin-top-xxl{margin-block-start:4rem!important}.ed-u-margin-right-none{margin-inline-end:0!important}.ed-u-margin-right-sm{margin-inline-end:.5rem!important}.ed-u-margin-right-md{margin-inline-end:1rem!important}.ed-u-margin-right-lg{margin-inline-end:1.5rem!important}.ed-u-margin-right-xl{margin-inline-end:2rem!important}.ed-u-margin-right-xxl{margin-inline-end:4rem!important}.ed-u-margin-bottom-none{margin-block-end:0!important}.ed-u-margin-bottom-sm{margin-block-end:.5rem!important}.ed-u-margin-bottom-md{margin-block-end:1rem!important}.ed-u-margin-bottom-lg{margin-block-end:1.5rem!important}.ed-u-margin-bottom-xl{margin-block-end:2rem!important}.ed-u-margin-bottom-xxl{margin-block-end:4rem!important}.ed-u-margin-bottom-xl-xxl{margin-block-end:2rem!important}@media all and (min-width:48rem){.ed-u-margin-bottom-xl-xxl{margin-block-end:4rem!important}}.ed-u-margin-left-none{margin-inline-start:0!important}.ed-u-margin-left-sm{margin-inline-start:.5rem!important}.ed-u-margin-left-md{margin-inline-start:1rem!important}.ed-u-margin-left-lg{margin-inline-start:1.5rem!important}.ed-u-margin-left-xl{margin-inline-start:2rem!important}.ed-u-margin-left-xxl{margin-inline-start:4rem!important}.ed-u-padding-none{padding:0!important}.ed-u-padding-sm{padding:.5rem!important}.ed-u-padding-md{padding:1rem!important}.ed-u-padding-lg{padding:1.5rem!important}.ed-u-padding-xl{padding:2rem!important}.ed-u-padding-xxl{padding:4rem!important}.ed-u-padding-top-none{padding-block-start:0!important}.ed-u-padding-top-sm{padding-block-start:.5rem!important}.ed-u-padding-top-md{padding-block-start:1rem!important}.ed-u-padding-top-lg{padding-block-start:1.5rem!important}.ed-u-padding-top-xl{padding-block-start:2rem!important}.ed-u-padding-top-xxl{padding-block-start:4rem!important}.ed-u-padding-right-none{padding-inline-end:0!important}.ed-u-padding-right-sm{padding-inline-end:.5rem!important}.ed-u-padding-right-md{padding-inline-end:1rem!important}.ed-u-padding-right-lg{padding-inline-end:1.5rem!important}.ed-u-padding-right-xl{padding-inline-end:2rem!important}.ed-u-padding-right-xxl{padding-inline-end:4rem!important}.ed-u-padding-bottom-none{padding-block-end:0!important}.ed-u-padding-bottom-sm{padding-block-end:.5rem!important}.ed-u-padding-bottom-md{padding-block-end:1rem!important}.ed-u-padding-bottom-lg{padding-block-end:1.5rem!important}.ed-u-padding-bottom-xl{padding-block-end:2rem!important}.ed-u-padding-bottom-xxl{padding-block-end:4rem!important}.ed-u-padding-left-none{padding-inline-start:0!important}.ed-u-padding-left-sm{padding-inline-start:.5rem!important}.ed-u-padding-left-md{padding-inline-start:1rem!important}.ed-u-padding-left-lg{padding-inline-start:1.5rem!important}.ed-u-padding-left-xl{padding-inline-start:2rem!important}.ed-u-padding-left-xxl{padding-inline-start:4rem!important}.ed-u-display-flex{display:flex!important}.ed-u-display-block{display:block!important}';
17
+ var b = Object.defineProperty, c = (a, e, d, n) => {
18
+ for (var t = void 0, i = a.length - 1, r; i >= 0; i--)
19
+ (r = a[i]) && (t = r(e, d, t) || t);
20
+ return t && b(e, d, t), t;
21
+ };
22
+ class o extends l {
23
+ constructor() {
24
+ super(...arguments), this.formData = "";
25
+ }
26
+ static get styles() {
27
+ return p(s);
28
+ }
29
+ logFiles(e) {
30
+ console.log(e.detail.uploadedFiles), e.detail.uploadedFiles.forEach((d) => {
31
+ console.log(d);
32
+ });
33
+ }
34
+ render() {
35
+ const e = [
36
+ {
37
+ optGroupLabel: "Option Group",
38
+ options: [
39
+ {
40
+ label: "Option Group Item 1",
41
+ value: "option-group-item-1"
42
+ },
43
+ {
44
+ label: "Option Group Item 2",
45
+ value: "option-group-item-2",
46
+ selected: !0
47
+ },
48
+ {
49
+ label: "Option Group Item 3",
50
+ value: "option-group-item-3"
51
+ }
52
+ ]
53
+ },
54
+ {
55
+ label: "No option group item 1",
56
+ value: "no-option-group-item-1"
57
+ },
58
+ {
59
+ label: "No option group item 2",
60
+ value: "no-option-group-item-2"
61
+ }
62
+ ];
63
+ return m`
64
+ <iframe name="dummyframe" id="dummyframe" style="display: none;"></iframe>
65
+ <form id="fakeform" action="#" target="dummyframe" @submit=${this.handleSubmit}>
66
+ <ed-textarea-field class="ed-u-display-block ed-u-margin-bottom-lg" name="limerick" label="Write a limerick"></ed-textarea-field>
67
+ <ed-text-field class="ed-u-display-block ed-u-margin-bottom-lg" name="name" label="Enter your name"></ed-text-field>
68
+ <ed-text-field class="ed-u-display-block ed-u-margin-bottom-lg" name="textfield2" value="beagles" label="Best breed of dog"></ed-text-field>
69
+ <ed-checkbox-field class="ed-u-display-block ed-u-margin-bottom-lg">
70
+ <ed-checkbox-field-item name="checkbox-example" value="1">Checkbox field item 1</ed-checkbox-field-item>
71
+ <ed-checkbox-field-item name="checkbox-example" value="2" checked>Checkbox field item 2</ed-checkbox-field-item>
72
+ <ed-checkbox-field-item name="checkbox-example" value="3">Checkbox field item 3</ed-checkbox-field-item>
73
+ </ed-checkbox-field>
74
+ <ed-radio-field class="ed-u-display-block ed-u-margin-bottom-lg">
75
+ <ed-radio-field-item name="radio-example" value="on" checked="${!0}">On</ed-radio-field-item>
76
+ <ed-radio-field-item name="radio-example" value="off">Off</ed-radio-field-item>
77
+ </ed-radio-field>
78
+ <ed-select-field
79
+ class="ed-u-display-block ed-u-margin-bottom-lg"
80
+ .items=${e}
81
+ name="select"
82
+ ?inverted=${!0}
83
+ fieldNote="This is a field note."
84
+ ></ed-select-field>
85
+
86
+ <ed-file-upload
87
+ class="ed-u-display-block ed-u-margin-bottom-lg"
88
+ hideLabel="true,"
89
+ name="file-upload-field"
90
+ ?multiple=${!0}
91
+ @uploadedfiles=${(d) => this.logFiles(d)}
92
+ fieldNote="Supported file types: jpg, jpeg, png, pdf, and csv. Maximum upload file size: 75MB."
93
+ >
94
+ Drag and Drop files here or click and select your files</ed-file-upload
95
+ >
96
+
97
+ <ed-toggle
98
+ ?checked=${!0}
99
+ class="ed-u-display-block ed-u-margin-bottom-lg"
100
+ label="Toggle label"
101
+ name="example-toggle"
102
+ value="Toggle value"
103
+ ></ed-toggle>
104
+
105
+ <ed-button-group>
106
+ <ed-button text="Submit" type="submit" value="123"></ed-button>
107
+ <ed-button text="Reset" type="reset"></ed-button>
108
+ </ed-button-group>
109
+ </form>
110
+ ${this.formData ? m`
111
+ <ed-heading>Submitted form data</ed-heading>
112
+ <pre>
113
+ ${this.formData}
114
+ </pre
115
+ >
116
+ ` : g}
117
+ `;
118
+ }
119
+ handleSubmit(e) {
120
+ e.preventDefault();
121
+ const d = new FormData(e.target), n = {};
122
+ d.forEach((t, i) => {
123
+ n[i] ? Array.isArray(n[i]) ? n[i].push(t) : n[i] = [n[i], t] : n[i] = t;
124
+ }), this.formData = JSON.stringify(n, null, 2);
125
+ }
126
+ }
127
+ c([
128
+ u()
129
+ ], o.prototype, "formData");
130
+ customElements.get("ed-r-example-form") === void 0 && customElements.define("ed-r-example-form", o);
131
+ export {
132
+ o as EdRExampleForm
133
+ };
@@ -0,0 +1,39 @@
1
+ import { EdElement } from '@brad-frost-web/eddie-web-components/components/EdElement';
2
+ /**
3
+ * A card composition for showcasing a project with an image,
4
+ * heading, and descriptive text.
5
+ */
6
+ export declare class EdRProjectCard extends EdElement {
7
+ static get styles(): import('lit').CSSResult;
8
+ /**
9
+ * The project title displayed as a heading
10
+ */
11
+ title: string;
12
+ /**
13
+ * The project description text
14
+ */
15
+ description?: string;
16
+ /**
17
+ * Image source URL
18
+ */
19
+ imgSrc?: string;
20
+ /**
21
+ * Image alt text
22
+ */
23
+ imgAlt?: string;
24
+ /**
25
+ * Heading tag name for semantic heading level
26
+ */
27
+ headingTagName: 'h2' | 'h3' | 'h4' | 'h5' | 'h6';
28
+ /**
29
+ * URL the card links to
30
+ */
31
+ href?: string;
32
+ render(): import('lit-html').TemplateResult<1>;
33
+ }
34
+ declare global {
35
+ interface HTMLElementTagNameMap {
36
+ 'ed-r-project-card': EdRProjectCard;
37
+ }
38
+ }
39
+ //# sourceMappingURL=project-card.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"project-card.d.ts","sourceRoot":"","sources":["../../../../../packages/eddie-recipes/recipes/common/project-card/project-card.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,2DAA2D,CAAC;AACtF,OAAO,iEAAiE,CAAC;AACzE,OAAO,2EAA2E,CAAC;AAKnF;;;GAGG;AACH,qBAAa,cAAe,SAAQ,SAAS;IAC3C,MAAM,KAAK,MAAM,4BAEhB;IAED;;OAEG;IAEM,KAAK,SAAM;IAEpB;;OAEG;IAEH,WAAW,CAAC,EAAE,MAAM,CAAC;IAErB;;OAEG;IAEH,MAAM,CAAC,EAAE,MAAM,CAAC;IAEhB;;OAEG;IAEH,MAAM,CAAC,EAAE,MAAM,CAAC;IAEhB;;OAEG;IAEH,cAAc,EAAE,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,CAAQ;IAExD;;OAEG;IAEH,IAAI,CAAC,EAAE,MAAM,CAAC;IAEd,MAAM;CA0BP;AAMD,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,qBAAqB;QAC7B,mBAAmB,EAAE,cAAc,CAAC;KACrC;CACF"}
@@ -0,0 +1,60 @@
1
+ import { EdElement as p } from "@brad-frost-web/eddie-web-components/components/EdElement";
2
+ import "@brad-frost-web/eddie-web-components/components/heading/heading";
3
+ import "@brad-frost-web/eddie-web-components/components/text-passage/text-passage";
4
+ import { unsafeCSS as h, nothing as s, html as d } from "lit";
5
+ import { property as t } from "lit/decorators.js";
6
+ const m = ":root,:host{--size-base-unit: .5rem}*,::slotted(*),*:before,*:after{box-sizing:border-box}h1,h2,h3,h4,h5,h6{margin:0}.ed-r-c-project-card{display:flex;flex-direction:column;height:100%;border-width:var(--ed-theme-border-width-sm);border-style:solid;border-color:var(--ed-theme-color-border-subtle);border-radius:var(--ed-theme-border-radius-md);box-shadow:var(--ed-theme-box-shadow-md);background:var(--ed-theme-color-background-default);overflow:hidden}.ed-r-c-project-card__media{flex:none}.ed-r-c-project-card__img{display:block;width:100%;height:auto;object-fit:cover}.ed-r-c-project-card__body{display:flex;flex-direction:column;flex:1 0 auto;padding:1.5rem;gap:.5rem}.ed-r-c-project-card__title{display:block}.ed-r-c-project-card__link{color:inherit;text-decoration:none}.ed-r-c-project-card__link:hover,.ed-r-c-project-card__link:focus{text-decoration:underline}.ed-r-c-project-card__description{display:block}";
7
+ var _ = Object.defineProperty, o = (c, i, l, g) => {
8
+ for (var r = void 0, a = c.length - 1, n; a >= 0; a--)
9
+ (n = c[a]) && (r = n(i, l, r) || r);
10
+ return r && _(i, l, r), r;
11
+ };
12
+ class e extends p {
13
+ constructor() {
14
+ super(...arguments), this.title = "", this.headingTagName = "h3";
15
+ }
16
+ static get styles() {
17
+ return h(m);
18
+ }
19
+ render() {
20
+ const i = this.componentClassNames("ed-r-c-project-card", {
21
+ "ed-r-c-project-card--has-link": !!this.href
22
+ });
23
+ return d`
24
+ <div class="${i}">
25
+ ${this.imgSrc ? d`<div class="ed-r-c-project-card__media">
26
+ <img class="ed-r-c-project-card__img" src="${this.imgSrc}" alt="${this.imgAlt ?? ""}" />
27
+ </div>` : s}
28
+ <div class="ed-r-c-project-card__body">
29
+ ${this.title ? d`<ed-heading class="ed-r-c-project-card__title" tagName="${this.headingTagName}" variant="headline-sm">
30
+ ${this.href ? d`<a class="ed-r-c-project-card__link" href="${this.href}">${this.title}</a>` : this.title}
31
+ </ed-heading>` : s}
32
+ ${this.description ? d`<ed-text-passage class="ed-r-c-project-card__description">${this.description}</ed-text-passage>` : s}
33
+ <slot></slot>
34
+ </div>
35
+ </div>
36
+ `;
37
+ }
38
+ }
39
+ o([
40
+ t()
41
+ ], e.prototype, "title");
42
+ o([
43
+ t()
44
+ ], e.prototype, "description");
45
+ o([
46
+ t()
47
+ ], e.prototype, "imgSrc");
48
+ o([
49
+ t()
50
+ ], e.prototype, "imgAlt");
51
+ o([
52
+ t()
53
+ ], e.prototype, "headingTagName");
54
+ o([
55
+ t()
56
+ ], e.prototype, "href");
57
+ customElements.get("ed-r-project-card") === void 0 && customElements.define("ed-r-project-card", e);
58
+ export {
59
+ e as EdRProjectCard
60
+ };
@@ -0,0 +1,15 @@
1
+ import { EdElement } from '@brad-frost-web/eddie-web-components/components/EdElement';
2
+ /**
3
+ * Promo block recipe composing a band, heading, text passage, and button
4
+ * into a promotional content block.
5
+ */
6
+ export declare class EdRPromoBlock extends EdElement {
7
+ static get styles(): import('lit').CSSResult;
8
+ render(): import('lit-html').TemplateResult<1>;
9
+ }
10
+ declare global {
11
+ interface HTMLElementTagNameMap {
12
+ 'ed-r-promo-block': EdRPromoBlock;
13
+ }
14
+ }
15
+ //# sourceMappingURL=promo-block.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"promo-block.d.ts","sourceRoot":"","sources":["../../../../../packages/eddie-recipes/recipes/common/promo-block/promo-block.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,2DAA2D,CAAC;AACtF,OAAO,2DAA2D,CAAC;AACnE,OAAO,+DAA+D,CAAC;AACvE,OAAO,iEAAiE,CAAC;AACzE,OAAO,2EAA2E,CAAC;AAInF;;;GAGG;AACH,qBAAa,aAAc,SAAQ,SAAS;IAC1C,MAAM,KAAK,MAAM,4BAEhB;IAED,MAAM;CAeP;AAMD,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,qBAAqB;QAC7B,kBAAkB,EAAE,aAAa,CAAC;KACnC;CACF"}
@@ -0,0 +1,30 @@
1
+ import { EdElement as o } from "@brad-frost-web/eddie-web-components/components/EdElement";
2
+ import "@brad-frost-web/eddie-web-components/components/band/band";
3
+ import "@brad-frost-web/eddie-web-components/components/button/button";
4
+ import "@brad-frost-web/eddie-web-components/components/heading/heading";
5
+ import "@brad-frost-web/eddie-web-components/components/text-passage/text-passage";
6
+ import { unsafeCSS as t, html as r } from "lit";
7
+ const n = ":root,:host{--size-base-unit: .5rem}*,::slotted(*),*:before,*:after{box-sizing:border-box}h1,h2,h3,h4,h5,h6{margin:0}.ed-r-c-promo-block__inner{display:flex;flex-direction:column;align-items:center;padding:2rem 0}.ed-r-c-promo-block__heading{display:block;margin-block-end:1rem}.ed-r-c-promo-block__button{display:block;margin-block-start:1rem}";
8
+ class s extends o {
9
+ static get styles() {
10
+ return t(n);
11
+ }
12
+ render() {
13
+ const e = this.componentClassNames("ed-r-c-promo-block", {});
14
+ return r`
15
+ <ed-band variant="brand-knockout" class="${e}">
16
+ <ed-layout-container>
17
+ <div class="ed-r-c-promo-block__inner">
18
+ <ed-heading class="ed-r-c-promo-block__heading" tagName="h2">This is a promo block title</ed-heading>
19
+ <ed-text-passage>This is a promo block</ed-text-passage>
20
+ <ed-button class="ed-r-c-promo-block__button" variant="primary" text="See More"></ed-button>
21
+ </div>
22
+ </ed-layout-container>
23
+ </ed-band>
24
+ `;
25
+ }
26
+ }
27
+ customElements.get("ed-r-promo-block") === void 0 && customElements.define("ed-r-promo-block", s);
28
+ export {
29
+ s as EdRPromoBlock
30
+ };
@@ -0,0 +1,14 @@
1
+ import { EdElement } from '@brad-frost-web/eddie-web-components/components/EdElement';
2
+ /**
3
+ * Site footer recipe composing footer, logo, navigation links, and copyright.
4
+ */
5
+ export declare class EdRSiteFooter extends EdElement {
6
+ static get styles(): import('lit').CSSResult;
7
+ render(): import('lit-html').TemplateResult<1>;
8
+ }
9
+ declare global {
10
+ interface HTMLElementTagNameMap {
11
+ 'ed-r-site-footer': EdRSiteFooter;
12
+ }
13
+ }
14
+ //# sourceMappingURL=site-footer.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"site-footer.d.ts","sourceRoot":"","sources":["../../../../../packages/eddie-recipes/recipes/common/site-footer/site-footer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,2DAA2D,CAAC;AACtF,OAAO,+DAA+D,CAAC;AACvE,OAAO,+EAA+E,CAAC;AACvF,OAAO,qEAAqE,CAAC;AAC7E,OAAO,2DAA2D,CAAC;AAInE;;GAEG;AACH,qBAAa,aAAc,SAAQ,SAAS;IAC1C,MAAM,KAAK,MAAM,4BAEhB;IAED,MAAM;CAoBP;AAMD,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,qBAAqB;QAC7B,kBAAkB,EAAE,aAAa,CAAC;KACnC;CACF"}
@@ -0,0 +1,35 @@
1
+ import { EdElement as t } from "@brad-frost-web/eddie-web-components/components/EdElement";
2
+ import "@brad-frost-web/eddie-web-components/components/footer/footer";
3
+ import "@brad-frost-web/eddie-web-components/components/link-list-item/link-list-item";
4
+ import "@brad-frost-web/eddie-web-components/components/link-list/link-list";
5
+ import "@brad-frost-web/eddie-web-components/components/logo/logo";
6
+ import { unsafeCSS as o, html as i } from "lit";
7
+ const r = ":root,:host{--size-base-unit: .5rem}*,::slotted(*),*:before,*:after{box-sizing:border-box}h1,h2,h3,h4,h5,h6{margin:0}.ed-r-c-site-footer{display:block;margin-block-start:4rem;margin-block-end:4rem}.ed-r-c-site-footer__middle{padding-block-start:4rem;padding-block-end:4rem}.ed-r-c-site-footer__navigation,.ed-r-c-site-footer__logo{display:block;margin-block-end:2rem}@media all and (min-width:48rem){.ed-r-c-site-footer__logo{justify-content:flex-end}}ed-icon-link-list{display:block;margin-block-end:2rem}.ed-r-c-site-footer__copyright{font-family:var(--ed-theme-typography-body-sm-font-family);font-weight:var(--ed-theme-typography-body-sm-font-weight);font-size:var(--ed-theme-typography-body-sm-font-size);line-height:var(--ed-theme-typography-body-sm-line-height);letter-spacing:var(--ed-theme-typography-body-sm-letter-spacing);text-transform:var(--ed-theme-typography-body-sm-text-transform);margin:0}";
8
+ class s extends t {
9
+ static get styles() {
10
+ return o(r);
11
+ }
12
+ render() {
13
+ const e = this.componentClassNames("ed-r-c-site-footer", {});
14
+ return i`
15
+ <ed-footer class="${e}">
16
+ <ed-layout-container class="ed-r-c-site-footer__layout-container">
17
+ <div class="ed-r-c-site-footer__middle">
18
+ <ed-link-list class="ed-r-c-site-footer__navigation" behavior="horizontal" ?inverted=${!0}>
19
+ <ed-link-list-item href="#" text="Nav Item"></ed-link-list-item>
20
+ <ed-link-list-item href="#" text="Nav Item"></ed-link-list-item>
21
+ <ed-link-list-item href="#" text="Nav Item"></ed-link-list-item>
22
+ <ed-link-list-item href="#" text="Nav Item"></ed-link-list-item>
23
+ </ed-link-list>
24
+ <ed-logo class="ed-r-c-site-footer__logo" size="lg"></ed-logo>
25
+ <p class="ed-r-c-site-footer__copyright">&copy; ${(/* @__PURE__ */ new Date()).getFullYear()}, Brad Frost Web. All Rights Reserved.</p>
26
+ </div>
27
+ </ed-layout-container>
28
+ </ed-footer>
29
+ `;
30
+ }
31
+ }
32
+ customElements.get("ed-r-site-footer") === void 0 && customElements.define("ed-r-site-footer", s);
33
+ export {
34
+ s as EdRSiteFooter
35
+ };
@@ -0,0 +1,20 @@
1
+ import { EdElement } from '@brad-frost-web/eddie-web-components/components/EdElement';
2
+ /**
3
+ * Site header recipe composing header, logo, primary nav, and utility nav.
4
+ */
5
+ export declare class EdRSiteHeader extends EdElement {
6
+ static get styles(): import('lit').CSSResult;
7
+ isActive?: boolean;
8
+ searchModalIsActive?: boolean;
9
+ constructor();
10
+ clickHandler(): void;
11
+ openSearchModal(): void;
12
+ closeSearchModal(): void;
13
+ render(): import('lit-html').TemplateResult<1>;
14
+ }
15
+ declare global {
16
+ interface HTMLElementTagNameMap {
17
+ 'ed-r-site-header': EdRSiteHeader;
18
+ }
19
+ }
20
+ //# sourceMappingURL=site-header.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"site-header.d.ts","sourceRoot":"","sources":["../../../../../packages/eddie-recipes/recipes/common/site-header/site-header.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,2DAA2D,CAAC;AACtF,OAAO,+DAA+D,CAAC;AACvE,OAAO,qEAAqE,CAAC;AAC7E,OAAO,2DAA2D,CAAC;AACnE,OAAO,+DAA+D,CAAC;AACvE,OAAO,2DAA2D,CAAC;AACnE,OAAO,6EAA6E,CAAC;AACrF,OAAO,mFAAmF,CAAC;AAC3F,OAAO,yEAAyE,CAAC;AACjF,OAAO,mFAAmF,CAAC;AAC3F,OAAO,yEAAyE,CAAC;AAKjF;;GAEG;AACH,qBAAa,aAAc,SAAQ,SAAS;IAC1C,MAAM,KAAK,MAAM,4BAEhB;IAGD,QAAQ,CAAC,EAAE,OAAO,CAAC;IAGnB,mBAAmB,CAAC,EAAE,OAAO,CAAC;;IAS9B,YAAY;IASZ,eAAe;IAIf,gBAAgB;IAIhB,MAAM;CAwHP;AAMD,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,qBAAqB;QAC7B,kBAAkB,EAAE,aAAa,CAAC;KACnC;CACF"}