@troychaplin/parlour-ui 0.1.0 → 0.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (107) hide show
  1. package/README.md +141 -145
  2. package/dist/_shared/client-Ban3HFV8.mjs +174 -0
  3. package/dist/_shared/client-D7AH6qxi.cjs +1 -0
  4. package/dist/_shared/shared-CihwD_kP.mjs +546 -0
  5. package/dist/_shared/shared-HWeZXz9t.cjs +1 -0
  6. package/dist/components/BrandIcon/BrandIcon.d.ts +9 -0
  7. package/dist/components/BrandIcon/BrandIcon.d.ts.map +1 -0
  8. package/dist/components/BrandIcon/brandIcons.d.ts +88 -0
  9. package/dist/components/BrandIcon/brandIcons.d.ts.map +1 -0
  10. package/dist/components/BrandIcon/index.cjs +1 -0
  11. package/dist/components/BrandIcon/index.d.ts +99 -0
  12. package/dist/components/BrandIcon/index.d.ts.map +1 -0
  13. package/dist/components/BrandIcon/index.mjs +2 -0
  14. package/dist/components/Card/Card.d.ts +5 -2
  15. package/dist/components/Card/Card.d.ts.map +1 -1
  16. package/dist/components/Card/index.cjs +1 -1
  17. package/dist/components/Card/index.d.ts +6 -2
  18. package/dist/components/Card/index.mjs +2 -21
  19. package/dist/components/Card/styles.css +123 -26
  20. package/dist/components/Card/styles.scss +123 -26
  21. package/dist/components/CodeBlock/index.cjs +1 -1
  22. package/dist/components/CodeBlock/index.d.ts +1 -0
  23. package/dist/components/CodeBlock/index.mjs +1 -1
  24. package/dist/components/Column/index.cjs +1 -1
  25. package/dist/components/Column/index.mjs +1 -1
  26. package/dist/components/Container/index.d.ts +1 -0
  27. package/dist/components/Container/styles.css +6 -0
  28. package/dist/components/Container/styles.scss +6 -0
  29. package/dist/components/FlexGroup/index.cjs +1 -1
  30. package/dist/components/FlexGroup/index.mjs +1 -1
  31. package/dist/components/GridGroup/index.cjs +1 -1
  32. package/dist/components/GridGroup/index.mjs +1 -1
  33. package/dist/components/Hero/index.cjs +1 -1
  34. package/dist/components/Hero/index.mjs +1 -1
  35. package/dist/components/HeroHeader/styles.css +2 -1
  36. package/dist/components/HeroHeader/styles.scss +2 -1
  37. package/dist/components/InfoBar/index.cjs +1 -1
  38. package/dist/components/InfoBar/index.mjs +1 -1
  39. package/dist/components/Main/Main.d.ts +1 -1
  40. package/dist/components/Main/Main.d.ts.map +1 -1
  41. package/dist/components/Main/index.cjs +1 -1
  42. package/dist/components/Main/index.d.ts +1 -1
  43. package/dist/components/Main/index.mjs +6 -4
  44. package/dist/components/Main/styles.css +4 -0
  45. package/dist/components/Main/styles.scss +4 -0
  46. package/dist/components/ProjectCard/ProjectCard.d.ts +14 -0
  47. package/dist/components/ProjectCard/ProjectCard.d.ts.map +1 -0
  48. package/dist/components/ProjectCard/index.cjs +1 -0
  49. package/dist/components/ProjectCard/index.d.ts +151 -0
  50. package/dist/components/ProjectCard/index.d.ts.map +1 -0
  51. package/dist/components/ProjectCard/index.mjs +51 -0
  52. package/dist/components/ProjectCard/styles.css +95 -0
  53. package/dist/components/ProjectCard/styles.scss +95 -0
  54. package/dist/components/SiteFooter/SiteFooter.d.ts +13 -0
  55. package/dist/components/SiteFooter/SiteFooter.d.ts.map +1 -0
  56. package/dist/components/SiteFooter/index.cjs +1 -0
  57. package/dist/components/SiteFooter/index.d.ts +15 -0
  58. package/dist/components/SiteFooter/index.d.ts.map +1 -0
  59. package/dist/components/SiteFooter/index.mjs +64 -0
  60. package/dist/components/SiteFooter/styles.css +86 -0
  61. package/dist/components/SiteFooter/styles.scss +86 -0
  62. package/dist/components/SiteHeader/index.cjs +1 -1
  63. package/dist/components/SiteHeader/index.mjs +1 -1
  64. package/dist/components/SkipLink/SkipLink.d.ts +8 -0
  65. package/dist/components/SkipLink/SkipLink.d.ts.map +1 -0
  66. package/dist/components/SkipLink/index.cjs +1 -0
  67. package/dist/components/SkipLink/index.d.ts +11 -0
  68. package/dist/components/SkipLink/index.d.ts.map +1 -0
  69. package/dist/components/SkipLink/index.mjs +14 -0
  70. package/dist/components/SkipLink/styles.css +29 -0
  71. package/dist/components/SkipLink/styles.scss +29 -0
  72. package/dist/components/_shared/BrandIcon-CRT5CX33.cjs +1 -0
  73. package/dist/components/_shared/BrandIcon-CcelVr9Y.mjs +111 -0
  74. package/dist/components/_shared/Card-CHHpCLeB.cjs +1 -0
  75. package/dist/components/_shared/Card-HwBpJDVj.mjs +34 -0
  76. package/dist/components/_shared/{FlexGroup-CgPbyEha.cjs → FlexGroup-D9sTJeh4.cjs} +1 -1
  77. package/dist/components/_shared/{FlexGroup-CnOrx2MF.mjs → FlexGroup-DorFgrVL.mjs} +1 -1
  78. package/dist/components/_shared/parlour-tokens-B-n0blwG.cjs +1 -0
  79. package/dist/components/_shared/{parlour-tokens-CHt4gBUd.mjs → parlour-tokens-DpDDQf0L.mjs} +2 -0
  80. package/dist/components/_shared/propClasses-BWhHB1BQ.cjs +1 -0
  81. package/dist/components/_shared/{propClasses-R9s_eOfA.mjs → propClasses-DXjiKI33.mjs} +2 -1
  82. package/dist/components/tokens/index.cjs +1 -1
  83. package/dist/components/tokens/index.mjs +1 -1
  84. package/dist/data/ProjectData.d.ts +3 -0
  85. package/dist/data/ProjectData.d.ts.map +1 -0
  86. package/dist/graphics/parlour-icon.svg +27 -0
  87. package/dist/index.cjs +1 -1
  88. package/dist/index.d.ts +5 -0
  89. package/dist/index.d.ts.map +1 -1
  90. package/dist/index.mjs +3 -3
  91. package/dist/style.css +1 -1
  92. package/dist/styles/c2b/parlour-tokens.d.ts +1 -1
  93. package/dist/styles/parlour-tokens.css +1 -0
  94. package/dist/styles/parlour-tokens.d.ts +1 -1
  95. package/dist/styles/parlour-tokens.js +2 -1
  96. package/dist/styles/parlour-tokens.scss +1 -0
  97. package/dist/utils/propClasses.d.ts +2 -0
  98. package/dist/utils/propClasses.d.ts.map +1 -1
  99. package/dist/wordpress/block-theme.css +1 -0
  100. package/dist/wordpress/hybrid-theme.css +1 -0
  101. package/package.json +1 -1
  102. package/dist/_shared/client-CLAcY4nN.cjs +0 -1
  103. package/dist/_shared/client-CsCPbj42.mjs +0 -93
  104. package/dist/_shared/shared-B07rlYN8.cjs +0 -1
  105. package/dist/_shared/shared-DZTw1JIu.mjs +0 -400
  106. package/dist/components/_shared/parlour-tokens-BT0frVnY.cjs +0 -1
  107. package/dist/components/_shared/propClasses-CLbmpfVJ.cjs +0 -1
@@ -80,54 +80,151 @@ li.parlour-card {
80
80
  border-radius: var(--parlour--radius-full);
81
81
  }
82
82
 
83
- .parlour-card--padding-none {
84
- padding: 0;
83
+ .parlour-card--padding-inline-none {
84
+ --parlour-card-padding-inline: 0;
85
+ }
86
+
87
+ .parlour-card--padding-block-none {
88
+ --parlour-card-padding-block: 0;
89
+ }
90
+
91
+ .parlour-card--padding-inline-3-x-small {
92
+ --parlour-card-padding-inline: var(--parlour--spacing-3-x-small);
93
+ }
94
+
95
+ .parlour-card--padding-block-3-x-small {
96
+ --parlour-card-padding-block: var(--parlour--spacing-3-x-small);
97
+ }
98
+
99
+ .parlour-card--padding-inline-2-x-small {
100
+ --parlour-card-padding-inline: var(--parlour--spacing-2-x-small);
101
+ }
102
+
103
+ .parlour-card--padding-block-2-x-small {
104
+ --parlour-card-padding-block: var(--parlour--spacing-2-x-small);
105
+ }
106
+
107
+ .parlour-card--padding-inline-x-small {
108
+ --parlour-card-padding-inline: var(--parlour--spacing-x-small);
109
+ }
110
+
111
+ .parlour-card--padding-block-x-small {
112
+ --parlour-card-padding-block: var(--parlour--spacing-x-small);
113
+ }
114
+
115
+ .parlour-card--padding-inline-small {
116
+ --parlour-card-padding-inline: var(--parlour--spacing-small);
117
+ }
118
+
119
+ .parlour-card--padding-block-small {
120
+ --parlour-card-padding-block: var(--parlour--spacing-small);
121
+ }
122
+
123
+ .parlour-card--padding-inline-normal {
124
+ --parlour-card-padding-inline: var(--parlour--spacing-normal);
85
125
  }
86
126
 
87
- .parlour-card--padding-3-x-small {
88
- padding: var(--parlour--spacing-3-x-small);
127
+ .parlour-card--padding-block-normal {
128
+ --parlour-card-padding-block: var(--parlour--spacing-normal);
89
129
  }
90
130
 
91
- .parlour-card--padding-2-x-small {
92
- padding: var(--parlour--spacing-2-x-small);
131
+ .parlour-card--padding-inline-medium {
132
+ --parlour-card-padding-inline: var(--parlour--spacing-medium);
93
133
  }
94
134
 
95
- .parlour-card--padding-x-small {
96
- padding: var(--parlour--spacing-x-small);
135
+ .parlour-card--padding-block-medium {
136
+ --parlour-card-padding-block: var(--parlour--spacing-medium);
97
137
  }
98
138
 
99
- .parlour-card--padding-small {
100
- padding: var(--parlour--spacing-small);
139
+ .parlour-card--padding-inline-large {
140
+ --parlour-card-padding-inline: var(--parlour--spacing-large);
101
141
  }
102
142
 
103
- .parlour-card--padding-normal {
104
- padding: var(--parlour--spacing-normal);
143
+ .parlour-card--padding-block-large {
144
+ --parlour-card-padding-block: var(--parlour--spacing-large);
105
145
  }
106
146
 
107
- .parlour-card--padding-medium {
108
- padding: var(--parlour--spacing-medium);
147
+ .parlour-card--padding-inline-x-large {
148
+ --parlour-card-padding-inline: var(--parlour--spacing-x-large);
109
149
  }
110
150
 
111
- .parlour-card--padding-large {
112
- padding: var(--parlour--spacing-large);
151
+ .parlour-card--padding-block-x-large {
152
+ --parlour-card-padding-block: var(--parlour--spacing-x-large);
113
153
  }
114
154
 
115
- .parlour-card--padding-x-large {
116
- padding: var(--parlour--spacing-x-large);
155
+ .parlour-card--padding-inline-2-x-large {
156
+ --parlour-card-padding-inline: var(--parlour--spacing-2-x-large);
117
157
  }
118
158
 
119
- .parlour-card--padding-2-x-large {
120
- padding: var(--parlour--spacing-2-x-large);
159
+ .parlour-card--padding-block-2-x-large {
160
+ --parlour-card-padding-block: var(--parlour--spacing-2-x-large);
121
161
  }
122
162
 
123
- .parlour-card--padding-3-x-large {
124
- padding: var(--parlour--spacing-3-x-large);
163
+ .parlour-card--padding-inline-3-x-large {
164
+ --parlour-card-padding-inline: var(--parlour--spacing-3-x-large);
125
165
  }
126
166
 
127
- .parlour-card--padding-4-x-large {
128
- padding: var(--parlour--spacing-4-x-large);
167
+ .parlour-card--padding-block-3-x-large {
168
+ --parlour-card-padding-block: var(--parlour--spacing-3-x-large);
129
169
  }
130
170
 
131
- .parlour-card--padding-5-x-large {
132
- padding: var(--parlour--spacing-5-x-large);
171
+ .parlour-card--padding-inline-4-x-large {
172
+ --parlour-card-padding-inline: var(--parlour--spacing-4-x-large);
173
+ }
174
+
175
+ .parlour-card--padding-block-4-x-large {
176
+ --parlour-card-padding-block: var(--parlour--spacing-4-x-large);
177
+ }
178
+
179
+ .parlour-card--padding-inline-5-x-large {
180
+ --parlour-card-padding-inline: var(--parlour--spacing-5-x-large);
181
+ }
182
+
183
+ .parlour-card--padding-block-5-x-large {
184
+ --parlour-card-padding-block: var(--parlour--spacing-5-x-large);
185
+ }
186
+
187
+ .parlour-card {
188
+ padding-inline: var(--parlour-card-padding-inline, 0);
189
+ padding-block: var(--parlour-card-padding-block, 0);
190
+ }
191
+
192
+ .parlour-card--linked {
193
+ display: flex;
194
+ flex-direction: column;
195
+ padding: 0;
196
+ transition: border-color var(--parlour--transition-fast);
197
+ }
198
+ .parlour-card--linked:hover {
199
+ border-color: var(--parlour--color-neutral-500);
200
+ }
201
+ @media (prefers-reduced-motion: reduce) {
202
+ .parlour-card--linked {
203
+ transition: none;
204
+ }
205
+ }
206
+
207
+ .parlour-card__link {
208
+ flex: 1;
209
+ padding-inline: var(--parlour-card-padding-inline, 0);
210
+ padding-block: var(--parlour-card-padding-block, 0);
211
+ }
212
+ .parlour-card__link > :first-child {
213
+ margin-top: 0;
214
+ }
215
+ .parlour-card__link > :last-child {
216
+ margin-bottom: 0;
217
+ }
218
+
219
+ .parlour-card .parlour-card__link {
220
+ font-weight: inherit;
221
+ color: inherit;
222
+ text-decoration: none;
223
+ }
224
+ .parlour-card .parlour-card__link:hover {
225
+ text-decoration: none;
226
+ }
227
+ .parlour-card .parlour-card__link:focus-visible {
228
+ outline: 2px solid var(--parlour--color-accent-primary);
229
+ outline-offset: var(--parlour--spacing-2-x-small);
133
230
  }
@@ -1 +1 @@
1
- Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require("../_shared/propClasses-CLbmpfVJ.cjs");let t=require("react/jsx-runtime");var n=({code:n,color:r,className:i,hasBorder:a,borderRadius:o,...s})=>{let c=[`parlour-code-block`,r&&`parlour-code-block--${e.t[r]}`,a&&`parlour-code-block--has-border`,o&&`parlour-code-block--radius-${e.n[o]}`,i].filter(Boolean).join(` `);return(0,t.jsx)(`pre`,{className:c,tabIndex:0,...s,children:(0,t.jsx)(`code`,{children:n})})};exports.CodeBlock=n;
1
+ Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require("../_shared/propClasses-BWhHB1BQ.cjs");let t=require("react/jsx-runtime");var n=({code:n,color:r,className:i,hasBorder:a,borderRadius:o,...s})=>{let c=[`parlour-code-block`,r&&`parlour-code-block--${e.t[r]}`,a&&`parlour-code-block--has-border`,o&&`parlour-code-block--radius-${e.n[o]}`,i].filter(Boolean).join(` `);return(0,t.jsx)(`pre`,{className:c,tabIndex:0,...s,children:(0,t.jsx)(`code`,{children:n})})};exports.CodeBlock=n;
@@ -9,6 +9,7 @@ declare const borderRadiusClasses: {
9
9
  none: string;
10
10
  };
11
11
  declare const backgroundColorClasses: {
12
+ pale: string;
12
13
  light: string;
13
14
  medium: string;
14
15
  dark: string;
@@ -1,4 +1,4 @@
1
- import { n as e, t } from "../_shared/propClasses-R9s_eOfA.mjs";
1
+ import { n as e, t } from "../_shared/propClasses-DXjiKI33.mjs";
2
2
  import { jsx as n } from "react/jsx-runtime";
3
3
  //#region src/components/CodeBlock/CodeBlock.tsx
4
4
  var r = ({ code: r, color: i, className: a, hasBorder: o, borderRadius: s, ...c }) => {
@@ -1 +1 @@
1
- Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require("../_shared/rolldown-runtime-BocRIvOZ.cjs"),t=require("../_shared/propClasses-CLbmpfVJ.cjs");let n=require("react");n=e.t(n,1);let r=require("react/jsx-runtime");var i=({children:e,isFirst:t=!1})=>(0,r.jsx)(`div`,{className:`parlour-column__content ${t?`is-first`:``}`,children:e});i.displayName=`Column.Content`;var a=({children:e,cols:n=`2`,maxWidth:i=`aligncontent`})=>{let a=[`parlour-layout parlour-column parlour-column--${t.a[n]}`,i].filter(Boolean).join(` `);return(0,r.jsx)(`div`,{className:a,children:e})},o=Object.assign(a,{Content:i});a.displayName=`Column`,exports.Column=o;
1
+ Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require("../_shared/rolldown-runtime-BocRIvOZ.cjs"),t=require("../_shared/propClasses-BWhHB1BQ.cjs");let n=require("react");n=e.t(n,1);let r=require("react/jsx-runtime");var i=({children:e,isFirst:t=!1})=>(0,r.jsx)(`div`,{className:`parlour-column__content ${t?`is-first`:``}`,children:e});i.displayName=`Column.Content`;var a=({children:e,cols:n=`2`,maxWidth:i=`aligncontent`})=>{let a=[`parlour-layout parlour-column parlour-column--${t.a[n]}`,i].filter(Boolean).join(` `);return(0,r.jsx)(`div`,{className:a,children:e})},o=Object.assign(a,{Content:i});a.displayName=`Column`,exports.Column=o;
@@ -1,4 +1,4 @@
1
- import { a as e } from "../_shared/propClasses-R9s_eOfA.mjs";
1
+ import { a as e } from "../_shared/propClasses-DXjiKI33.mjs";
2
2
  import "react";
3
3
  import { jsx as t } from "react/jsx-runtime";
4
4
  //#region src/components/Column/ColumnContent.tsx
@@ -27,6 +27,7 @@ declare const borderRadiusClasses: {
27
27
  none: string;
28
28
  };
29
29
  declare const backgroundColorClasses: {
30
+ pale: string;
30
31
  light: string;
31
32
  medium: string;
32
33
  dark: string;
@@ -45,6 +45,7 @@
45
45
  margin-top: 0;
46
46
  }
47
47
 
48
+ .parlour-container--pale,
48
49
  .parlour-container--light,
49
50
  .parlour-container--medium,
50
51
  .parlour-container--dark,
@@ -52,6 +53,11 @@
52
53
  padding-block: var(--parlour--spacing-5-x-large);
53
54
  }
54
55
 
56
+ .parlour-container--pale {
57
+ background-color: var(--parlour--color-neutral-50);
58
+ border: 1px solid var(--parlour--color-neutral-50);
59
+ }
60
+
55
61
  .parlour-container--light {
56
62
  background-color: var(--parlour--color-neutral-200);
57
63
  }
@@ -45,6 +45,7 @@
45
45
  margin-top: 0;
46
46
  }
47
47
 
48
+ .parlour-container--pale,
48
49
  .parlour-container--light,
49
50
  .parlour-container--medium,
50
51
  .parlour-container--dark,
@@ -52,6 +53,11 @@
52
53
  padding-block: var(--parlour--spacing-5-x-large);
53
54
  }
54
55
 
56
+ .parlour-container--pale {
57
+ background-color: var(--parlour--color-neutral-50);
58
+ border: 1px solid var(--parlour--color-neutral-50);
59
+ }
60
+
55
61
  .parlour-container--light {
56
62
  background-color: var(--parlour--color-neutral-200);
57
63
  }
@@ -1 +1 @@
1
- Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require("../_shared/FlexGroup-CgPbyEha.cjs");exports.FlexGroup=e.t;
1
+ Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require("../_shared/FlexGroup-D9sTJeh4.cjs");exports.FlexGroup=e.t;
@@ -1,2 +1,2 @@
1
- import { t as e } from "../_shared/FlexGroup-CnOrx2MF.mjs";
1
+ import { t as e } from "../_shared/FlexGroup-DorFgrVL.mjs";
2
2
  export { e as FlexGroup };
@@ -1 +1 @@
1
- Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require("../_shared/propClasses-CLbmpfVJ.cjs");let t=require("react/jsx-runtime");var n=({children:n,as:r=`div`,columns:i=3,gap:a=`medium`,rowGap:o,align:s,maxWidth:c,className:l,...u})=>{let d=r,f=[`parlour-layout parlour-grid-group`,`parlour-grid-group--columns-${i}`,`parlour-grid-group--gap-${e.s[a]}`,o&&`parlour-grid-group--row-gap-${e.s[o]}`,s&&`parlour-grid-group--align-${e.r[s]}`,c&&e.o[c],l].filter(Boolean).join(` `);return(0,t.jsx)(d,{className:f,role:r===`ul`||r===`ol`?`list`:void 0,...u,children:n})};exports.GridGroup=n;
1
+ Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require("../_shared/propClasses-BWhHB1BQ.cjs");let t=require("react/jsx-runtime");var n=({children:n,as:r=`div`,columns:i=3,gap:a=`medium`,rowGap:o,align:s,maxWidth:c,className:l,...u})=>{let d=r,f=[`parlour-layout parlour-grid-group`,`parlour-grid-group--columns-${i}`,`parlour-grid-group--gap-${e.s[a]}`,o&&`parlour-grid-group--row-gap-${e.s[o]}`,s&&`parlour-grid-group--align-${e.r[s]}`,c&&e.o[c],l].filter(Boolean).join(` `);return(0,t.jsx)(d,{className:f,role:r===`ul`||r===`ol`?`list`:void 0,...u,children:n})};exports.GridGroup=n;
@@ -1,4 +1,4 @@
1
- import { o as e, r as t, s as n } from "../_shared/propClasses-R9s_eOfA.mjs";
1
+ import { o as e, r as t, s as n } from "../_shared/propClasses-DXjiKI33.mjs";
2
2
  import { jsx as r } from "react/jsx-runtime";
3
3
  //#region src/components/GridGroup/GridGroup.tsx
4
4
  var i = ({ children: i, as: a = "div", columns: o = 3, gap: s = "medium", rowGap: c, align: l, maxWidth: u, className: d, ...f }) => {
@@ -1 +1 @@
1
- Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require("../_shared/rolldown-runtime-BocRIvOZ.cjs"),t=require("../_shared/Container-Bl4f1ZwJ.cjs"),n=require("../_shared/FlexGroup-CgPbyEha.cjs");let r=require("react");r=e.t(r,1);let i=require("react/jsx-runtime");var a=({className:e=``,children:r})=>{let a=[`parlour-hero`,e].filter(Boolean).join(` `);return(0,i.jsx)(t.t,{as:`section`,className:a,maxWidth:`alignfull`,contentWidth:`alignwide`,children:(0,i.jsx)(n.t,{gap:`normal`,maxWidth:`alignwide`,justify:`space-between`,align:`center`,children:r})})};exports.Hero=a;
1
+ Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require("../_shared/rolldown-runtime-BocRIvOZ.cjs"),t=require("../_shared/Container-Bl4f1ZwJ.cjs"),n=require("../_shared/FlexGroup-D9sTJeh4.cjs");let r=require("react");r=e.t(r,1);let i=require("react/jsx-runtime");var a=({className:e=``,children:r})=>{let a=[`parlour-hero`,e].filter(Boolean).join(` `);return(0,i.jsx)(t.t,{as:`section`,className:a,maxWidth:`alignfull`,contentWidth:`alignwide`,children:(0,i.jsx)(n.t,{gap:`normal`,maxWidth:`alignwide`,justify:`space-between`,align:`center`,children:r})})};exports.Hero=a;
@@ -1,5 +1,5 @@
1
1
  import { t as e } from "../_shared/Container-OGjfScEb.mjs";
2
- import { t } from "../_shared/FlexGroup-CnOrx2MF.mjs";
2
+ import { t } from "../_shared/FlexGroup-DorFgrVL.mjs";
3
3
  import "react";
4
4
  import { jsx as n } from "react/jsx-runtime";
5
5
  //#region src/components/Hero/Hero.tsx
@@ -18,7 +18,8 @@
18
18
  font-size: var(--parlour--font-size-medium);
19
19
  font-weight: var(--parlour--font-weight-light);
20
20
  font-style: italic;
21
- padding-bottom: var(--parlour--spacing-2-x-large);
21
+ padding-bottom: var(--parlour--spacing-3-x-large);
22
+ margin: 0;
22
23
  }
23
24
 
24
25
  .parlour-hero-header ul.parlour-hero-header__stats {
@@ -18,7 +18,8 @@
18
18
  font-size: var(--parlour--font-size-medium);
19
19
  font-weight: var(--parlour--font-weight-light);
20
20
  font-style: italic;
21
- padding-bottom: var(--parlour--spacing-2-x-large);
21
+ padding-bottom: var(--parlour--spacing-3-x-large);
22
+ margin: 0;
22
23
  }
23
24
 
24
25
  .parlour-hero-header ul.parlour-hero-header__stats {
@@ -1 +1 @@
1
- Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require("../_shared/rolldown-runtime-BocRIvOZ.cjs"),t=require("../_shared/FlexGroup-CgPbyEha.cjs");let n=require("react");n=e.t(n,1);let r=require("react/jsx-runtime");var i=864e5,a=e=>(Date.UTC(e.getFullYear(),e.getMonth(),e.getDate())-Date.UTC(e.getFullYear(),0,0))/i,o=e=>[e.getFullYear(),e.getMonth()+1,e.getDate()].map(e=>String(e).padStart(2,`0`)).join(`-`),s=({className:e=``,children:n,date:i=new Date})=>{let s=[`parlour-infobar`,e].filter(Boolean).join(` `),c=i.toLocaleDateString(`en-US`,{month:`long`,day:`numeric`,year:`numeric`});return(0,r.jsx)(`div`,{className:s,children:(0,r.jsxs)(t.t,{gap:`normal`,maxWidth:`alignwide`,justify:`space-between`,align:`center`,children:[(0,r.jsx)(`p`,{children:`Building since 2005`}),(0,r.jsxs)(`p`,{children:[`Day `,a(i),` `,(0,r.jsx)(`span`,{"aria-hidden":`true`,children:`•`}),` `,(0,r.jsx)(`time`,{dateTime:o(i),children:c})]}),n]})})};exports.InfoBar=s;
1
+ Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require("../_shared/rolldown-runtime-BocRIvOZ.cjs"),t=require("../_shared/FlexGroup-D9sTJeh4.cjs");let n=require("react");n=e.t(n,1);let r=require("react/jsx-runtime");var i=864e5,a=e=>(Date.UTC(e.getFullYear(),e.getMonth(),e.getDate())-Date.UTC(e.getFullYear(),0,0))/i,o=e=>[e.getFullYear(),e.getMonth()+1,e.getDate()].map(e=>String(e).padStart(2,`0`)).join(`-`),s=({className:e=``,children:n,date:i=new Date})=>{let s=[`parlour-infobar`,e].filter(Boolean).join(` `),c=i.toLocaleDateString(`en-US`,{month:`long`,day:`numeric`,year:`numeric`});return(0,r.jsx)(`div`,{className:s,children:(0,r.jsxs)(t.t,{gap:`normal`,maxWidth:`alignwide`,justify:`space-between`,align:`center`,children:[(0,r.jsx)(`p`,{children:`Building since 2005`}),(0,r.jsxs)(`p`,{children:[`Day `,a(i),` `,(0,r.jsx)(`span`,{"aria-hidden":`true`,children:`•`}),` `,(0,r.jsx)(`time`,{dateTime:o(i),children:c})]}),n]})})};exports.InfoBar=s;
@@ -1,4 +1,4 @@
1
- import { t as e } from "../_shared/FlexGroup-CnOrx2MF.mjs";
1
+ import { t as e } from "../_shared/FlexGroup-DorFgrVL.mjs";
2
2
  import "react";
3
3
  import { jsx as t, jsxs as n } from "react/jsx-runtime";
4
4
  //#region src/components/InfoBar/InfoBar.tsx
@@ -4,5 +4,5 @@ export interface MainProps extends React.HTMLAttributes<HTMLElement> {
4
4
  hasPadding?: boolean;
5
5
  className?: string;
6
6
  }
7
- export declare const Main: ({ children, hasPadding, className, ...rest }: MainProps) => React.JSX.Element;
7
+ export declare const Main: ({ children, hasPadding, className, id, tabIndex, ...rest }: MainProps) => React.JSX.Element;
8
8
  //# sourceMappingURL=Main.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"Main.d.ts","sourceRoot":"","sources":["../../../src/components/Main/Main.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,eAAe,CAAC;AAEvB,MAAM,WAAW,SAAU,SAAQ,KAAK,CAAC,cAAc,CAAC,WAAW,CAAC;IAChE,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,SAAS,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,eAAO,MAAM,IAAI,GAAI,8CAAqD,SAAS,sBAYlF,CAAC"}
1
+ {"version":3,"file":"Main.d.ts","sourceRoot":"","sources":["../../../src/components/Main/Main.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,eAAe,CAAC;AAEvB,MAAM,WAAW,SAAU,SAAQ,KAAK,CAAC,cAAc,CAAC,WAAW,CAAC;IAChE,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,SAAS,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,eAAO,MAAM,IAAI,GAAI,4DAOlB,SAAS,sBAYX,CAAC"}
@@ -1 +1 @@
1
- Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require("../_shared/rolldown-runtime-BocRIvOZ.cjs");let t=require("react");t=e.t(t,1);let n=require("react/jsx-runtime");var r=({children:e,hasPadding:t=!0,className:r,...i})=>{let a=[`parlour-main`,t&&`parlour-main--padding`,r].filter(Boolean).join(` `);return(0,n.jsx)(`main`,{className:a,...i,children:(0,n.jsx)(`div`,{className:`alignfull has-global-padding is-layout-constrained entry-content`,children:e})})};exports.Main=r;
1
+ Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require("../_shared/rolldown-runtime-BocRIvOZ.cjs");let t=require("react");t=e.t(t,1);let n=require("react/jsx-runtime");var r=({children:e,hasPadding:t=!0,className:r,id:i=`main`,tabIndex:a=-1,...o})=>{let s=[`parlour-main`,t&&`parlour-main--padding`,r].filter(Boolean).join(` `);return(0,n.jsx)(`main`,{className:s,id:i,tabIndex:a,...o,children:(0,n.jsx)(`div`,{className:`alignfull has-global-padding is-layout-constrained entry-content`,children:e})})};exports.Main=r;
@@ -5,6 +5,6 @@ interface MainProps extends React.HTMLAttributes<HTMLElement> {
5
5
  hasPadding?: boolean;
6
6
  className?: string;
7
7
  }
8
- declare const Main: ({ children, hasPadding, className, ...rest }: MainProps) => React.JSX.Element;
8
+ declare const Main: ({ children, hasPadding, className, id, tabIndex, ...rest }: MainProps) => React.JSX.Element;
9
9
 
10
10
  export { Main };
@@ -1,15 +1,17 @@
1
1
  import "react";
2
2
  import { jsx as e } from "react/jsx-runtime";
3
3
  //#region src/components/Main/Main.tsx
4
- var t = ({ children: t, hasPadding: n = !0, className: r, ...i }) => {
5
- let a = [
4
+ var t = ({ children: t, hasPadding: n = !0, className: r, id: i = "main", tabIndex: a = -1, ...o }) => {
5
+ let s = [
6
6
  "parlour-main",
7
7
  n && "parlour-main--padding",
8
8
  r
9
9
  ].filter(Boolean).join(" ");
10
10
  return /* @__PURE__ */ e("main", {
11
- className: a,
12
- ...i,
11
+ className: s,
12
+ id: i,
13
+ tabIndex: a,
14
+ ...o,
13
15
  children: /* @__PURE__ */ e("div", {
14
16
  className: "alignfull has-global-padding is-layout-constrained entry-content",
15
17
  children: t
@@ -1,3 +1,7 @@
1
+ .parlour-main:focus {
2
+ outline: none;
3
+ }
4
+
1
5
  .parlour-main > * + * {
2
6
  margin-block-start: var(--parlour--spacing-medium);
3
7
  margin-block-end: 0;
@@ -1,3 +1,7 @@
1
+ .parlour-main:focus {
2
+ outline: none;
3
+ }
4
+
1
5
  .parlour-main > * + * {
2
6
  margin-block-start: var(--parlour--spacing-medium);
3
7
  margin-block-end: 0;
@@ -0,0 +1,14 @@
1
+ import { CardProps } from '../Card/Card';
2
+ import { BrandIconName } from '../BrandIcon/brandIcons';
3
+ export interface ProjectCardProps extends Omit<CardProps, 'children' | 'title' | 'linkProps'> {
4
+ title: string;
5
+ href?: string;
6
+ type?: string;
7
+ icon?: BrandIconName;
8
+ version?: string;
9
+ description?: string;
10
+ footer?: string;
11
+ headingLevel?: 'h2' | 'h3' | 'h4';
12
+ }
13
+ export declare const ProjectCard: ({ title, href, type, icon, version, description, footer, headingLevel, className, ...rest }: ProjectCardProps) => import('react').JSX.Element;
14
+ //# sourceMappingURL=ProjectCard.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ProjectCard.d.ts","sourceRoot":"","sources":["../../../src/components/ProjectCard/ProjectCard.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAQ,KAAK,SAAS,EAAE,MAAM,cAAc,CAAC;AAEpD,OAAO,EAAc,KAAK,aAAa,EAAE,MAAM,yBAAyB,CAAC;AACzE,OAAO,eAAe,CAAC;AAEvB,MAAM,WAAW,gBAAiB,SAAQ,IAAI,CAAC,SAAS,EAAE,UAAU,GAAG,OAAO,GAAG,WAAW,CAAC;IACzF,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,aAAa,CAAC;IACrB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,YAAY,CAAC,EAAE,IAAI,GAAG,IAAI,GAAG,IAAI,CAAC;CACrC;AAED,eAAO,MAAM,WAAW,GAAI,6FAWzB,gBAAgB,gCAqDlB,CAAC"}
@@ -0,0 +1 @@
1
+ Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require("../_shared/BrandIcon-CRT5CX33.cjs"),t=require("../_shared/Card-CHHpCLeB.cjs");let n=require("react"),r=require("react/jsx-runtime");var i=({title:i,href:a,type:o,icon:s,version:c,description:l,footer:u,headingLevel:d=`h3`,className:f,...p})=>{let m=d,h=(0,n.useId)(),g=[`parlour-project-card`,f].filter(Boolean).join(` `),_=(0,r.jsxs)(r.Fragment,{children:[(o||s)&&(0,r.jsxs)(`div`,{className:`parlour-project-card__meta`,children:[o&&(0,r.jsx)(`p`,{className:`parlour-project-card__type`,children:o}),s&&(0,r.jsx)(e.t,{className:`parlour-project-card__icon`,name:s,label:e.n[s].title})]}),(0,r.jsx)(m,{className:`parlour-project-card__title`,id:h,children:i}),c&&(0,r.jsx)(`p`,{className:`parlour-project-card__version`,children:c}),l&&(0,r.jsx)(`p`,{className:`parlour-project-card__description`,children:l}),(u||a)&&(0,r.jsxs)(`div`,{className:`parlour-project-card__footer`,children:[(0,r.jsx)(`span`,{children:u}),a&&(0,r.jsx)(`span`,{className:`parlour-project-card__arrow`,"aria-hidden":`true`,children:`→`})]})]});return(0,r.jsx)(t.t,{className:g,borderRadius:`sm`,href:a,linkProps:{"aria-labelledby":h},...p,children:_})};exports.ProjectCard=i;
@@ -0,0 +1,151 @@
1
+ import * as react from 'react';
2
+
3
+ declare const spacingClasses: {
4
+ '3-x-small': "3-x-small";
5
+ '2-x-small': "2-x-small";
6
+ 'x-small': "x-small";
7
+ small: "small";
8
+ normal: "normal";
9
+ medium: "medium";
10
+ large: "large";
11
+ 'x-large': "x-large";
12
+ '2-x-large': "2-x-large";
13
+ '3-x-large': "3-x-large";
14
+ '4-x-large': "4-x-large";
15
+ '5-x-large': "5-x-large";
16
+ none: string;
17
+ };
18
+ declare const borderRadiusClasses: {
19
+ sm: "sm";
20
+ md: "md";
21
+ lg: "lg";
22
+ xl: "xl";
23
+ full: "full";
24
+ none: string;
25
+ };
26
+ declare const backgroundColorClasses: {
27
+ pale: string;
28
+ light: string;
29
+ medium: string;
30
+ dark: string;
31
+ white: string;
32
+ };
33
+
34
+ type surfaceKeys = keyof typeof backgroundColorClasses;
35
+ type borderRadiusKeys = keyof typeof borderRadiusClasses;
36
+ type spacingKeys = keyof typeof spacingClasses;
37
+ interface CardProps extends React.HTMLAttributes<HTMLElement> {
38
+ children: React.ReactNode;
39
+ as?: 'div' | 'article' | 'li';
40
+ backgroundColor?: surfaceKeys;
41
+ border?: boolean;
42
+ borderColor?: surfaceKeys;
43
+ borderRadius?: borderRadiusKeys;
44
+ paddingInline?: spacingKeys;
45
+ paddingBlock?: spacingKeys;
46
+ href?: string;
47
+ linkProps?: Omit<React.ComponentPropsWithoutRef<'a'>, 'href' | 'className' | 'children'>;
48
+ }
49
+
50
+ declare const brandIcons: {
51
+ react: {
52
+ title: string;
53
+ path: string;
54
+ };
55
+ wordpress: {
56
+ title: string;
57
+ path: string;
58
+ };
59
+ nextjs: {
60
+ title: string;
61
+ path: string;
62
+ };
63
+ storybook: {
64
+ title: string;
65
+ path: string;
66
+ };
67
+ npm: {
68
+ title: string;
69
+ path: string;
70
+ };
71
+ typescript: {
72
+ title: string;
73
+ path: string;
74
+ };
75
+ javascript: {
76
+ title: string;
77
+ path: string;
78
+ };
79
+ php: {
80
+ title: string;
81
+ path: string;
82
+ };
83
+ nodejs: {
84
+ title: string;
85
+ path: string;
86
+ };
87
+ vite: {
88
+ title: string;
89
+ path: string;
90
+ };
91
+ sass: {
92
+ title: string;
93
+ path: string;
94
+ };
95
+ github: {
96
+ title: string;
97
+ path: string;
98
+ };
99
+ laravel: {
100
+ title: string;
101
+ path: string;
102
+ };
103
+ packagist: {
104
+ title: string;
105
+ path: string;
106
+ };
107
+ x: {
108
+ title: string;
109
+ path: string;
110
+ };
111
+ bluesky: {
112
+ title: string;
113
+ path: string;
114
+ };
115
+ linkedin: {
116
+ title: string;
117
+ path: string;
118
+ };
119
+ facebook: {
120
+ title: string;
121
+ path: string;
122
+ };
123
+ instagram: {
124
+ title: string;
125
+ path: string;
126
+ };
127
+ youtube: {
128
+ title: string;
129
+ path: string;
130
+ };
131
+ tiktok: {
132
+ title: string;
133
+ path: string;
134
+ };
135
+ };
136
+ type BrandIconName = keyof typeof brandIcons;
137
+
138
+ interface ProjectCardProps extends Omit<CardProps, 'children' | 'title' | 'linkProps'> {
139
+ title: string;
140
+ href?: string;
141
+ type?: string;
142
+ icon?: BrandIconName;
143
+ version?: string;
144
+ description?: string;
145
+ footer?: string;
146
+ headingLevel?: 'h2' | 'h3' | 'h4';
147
+ }
148
+ declare const ProjectCard: ({ title, href, type, icon, version, description, footer, headingLevel, className, ...rest }: ProjectCardProps) => react.JSX.Element;
149
+
150
+ export { ProjectCard };
151
+ export type { ProjectCardProps };
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/ProjectCard/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,YAAY,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC"}
@@ -0,0 +1,51 @@
1
+ import { n as e, t } from "../_shared/BrandIcon-CcelVr9Y.mjs";
2
+ import { t as n } from "../_shared/Card-HwBpJDVj.mjs";
3
+ import { useId as r } from "react";
4
+ import { Fragment as i, jsx as a, jsxs as o } from "react/jsx-runtime";
5
+ //#region src/components/ProjectCard/ProjectCard.tsx
6
+ var s = ({ title: s, href: c, type: l, icon: u, version: d, description: f, footer: p, headingLevel: m = "h3", className: h, ...g }) => {
7
+ let _ = m, v = r(), y = ["parlour-project-card", h].filter(Boolean).join(" "), b = /* @__PURE__ */ o(i, { children: [
8
+ (l || u) && /* @__PURE__ */ o("div", {
9
+ className: "parlour-project-card__meta",
10
+ children: [l && /* @__PURE__ */ a("p", {
11
+ className: "parlour-project-card__type",
12
+ children: l
13
+ }), u && /* @__PURE__ */ a(t, {
14
+ className: "parlour-project-card__icon",
15
+ name: u,
16
+ label: e[u].title
17
+ })]
18
+ }),
19
+ /* @__PURE__ */ a(_, {
20
+ className: "parlour-project-card__title",
21
+ id: v,
22
+ children: s
23
+ }),
24
+ d && /* @__PURE__ */ a("p", {
25
+ className: "parlour-project-card__version",
26
+ children: d
27
+ }),
28
+ f && /* @__PURE__ */ a("p", {
29
+ className: "parlour-project-card__description",
30
+ children: f
31
+ }),
32
+ (p || c) && /* @__PURE__ */ o("div", {
33
+ className: "parlour-project-card__footer",
34
+ children: [/* @__PURE__ */ a("span", { children: p }), c && /* @__PURE__ */ a("span", {
35
+ className: "parlour-project-card__arrow",
36
+ "aria-hidden": "true",
37
+ children: "→"
38
+ })]
39
+ })
40
+ ] });
41
+ return /* @__PURE__ */ a(n, {
42
+ className: y,
43
+ borderRadius: "sm",
44
+ href: c,
45
+ linkProps: { "aria-labelledby": v },
46
+ ...g,
47
+ children: b
48
+ });
49
+ };
50
+ //#endregion
51
+ export { s as ProjectCard };