-
+
);
};
@@ -44,13 +37,13 @@ export const HeaderRow = ({ children }: { children: React.ReactNode }) => {
};
export const HeaderCell = ({ children }: { children: React.ReactNode }) => {
- return
{children} | ;
+ return
{children} | ;
};
export const Row = ({ children }: { children: React.ReactNode }) => {
- return
{children}
;
+ return
{children}
;
};
export const Cell = ({ children }: { children: React.ReactNode }) => {
- return
{children} | ;
+ return
{children} | ;
};
diff --git a/packages/canon/docs/components/Table/styles.css b/packages/canon/docs/components/Table/styles.css
new file mode 100644
index 0000000000..a8c35d3978
--- /dev/null
+++ b/packages/canon/docs/components/Table/styles.css
@@ -0,0 +1,74 @@
+/*
+ * Copyright 2024 The Backstage Authors
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+.table-wrapper {
+ border: 1px solid #e7e7e7;
+ border-radius: 4px;
+ overflow: hidden;
+
+ & .table {
+ width: 100%;
+ margin: 0 !important;
+ padding: 0 !important;
+ border-spacing: 0px;
+ border-collapse: collapse;
+ }
+
+ & .table-cell {
+ padding: 12px 16px !important;
+ border: none !important;
+ text-align: left;
+ background-color: white !important;
+ font-family: 'Geist', sans-serif;
+ font-size: 16px;
+ font-weight: 300;
+
+ & p {
+ margin: 0;
+ }
+ }
+
+ & .table-header-cell {
+ background-color: #f5f5f5 !important;
+ border-bottom: 1px solid #e7e7e7 !important;
+ font-weight: 500;
+ font-size: 14px;
+ }
+
+ & .table-row {
+ border: none;
+ border-bottom: 1px solid #e7e7e7;
+ &:last-child {
+ border-bottom: none;
+ }
+ }
+
+ & .table-chip {
+ display: inline-block;
+ font-size: 14px !important;
+ border: 1px solid #e7e7e7;
+ border-radius: 6px;
+ padding: 0px 6px;
+ height: 24px;
+ }
+
+ & .table-type {
+ display: flex;
+ flex-wrap: wrap;
+ flex-direction: row;
+ gap: 8px;
+ }
+}
diff --git a/packages/canon/docs/components/Table/table.css.ts b/packages/canon/docs/components/Table/table.css.ts
deleted file mode 100644
index b01373ee04..0000000000
--- a/packages/canon/docs/components/Table/table.css.ts
+++ /dev/null
@@ -1,83 +0,0 @@
-/*
- * Copyright 2024 The Backstage Authors
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-import { style, globalStyle } from '@vanilla-extract/css';
-
-export const wrapperStyles = style({
- border: '1px solid #e7e7e7',
- borderRadius: '4px',
- overflow: 'hidden',
-});
-
-export const tableStyles = style({
- width: '100%',
- margin: '0 !important',
- padding: '0 !important',
- borderSpacing: '0px',
- borderCollapse: 'collapse',
-});
-
-export const cellStyles = style({
- padding: '12px 16px !important',
- border: 'none !important',
- textAlign: 'left',
- backgroundColor: 'white !important',
- fontFamily: '"Geist", sans-serif',
- fontSize: '16px',
- fontWeight: 300,
-});
-
-// Apply global styles to
elements inside cellStyles
-globalStyle(`${cellStyles} p`, {
- margin: '0',
-});
-
-export const headerRowStyles = style({
- borderBottom: '1px solid #e7e7e7',
-});
-
-export const headerCellStyles = style({
- backgroundColor: '#f5f5f5 !important',
- borderBottom: '1px solid #e7e7e7 !important',
- fontWeight: 500,
- fontSize: '14px',
-});
-
-export const rowStyles = style({
- border: 'none',
- borderBottom: '1px solid #e7e7e7',
- selectors: {
- '&:last-child': {
- borderBottom: 'none',
- },
- },
-});
-
-export const chipStyles = style({
- display: 'inline-block',
- fontSize: '14px !important',
- border: '1px solid #e7e7e7',
- borderRadius: '6px',
- padding: '0px 6px',
- height: '24px',
-});
-
-export const typeStyles = style({
- display: 'flex',
- flexWrap: 'wrap',
- flexDirection: 'row',
- gap: '8px',
-});
diff --git a/packages/canon/docs/components/Text/index.tsx b/packages/canon/docs/components/Text/Text.tsx
similarity index 90%
rename from packages/canon/docs/components/Text/index.tsx
rename to packages/canon/docs/components/Text/Text.tsx
index be882c0a81..9f3dd6ce90 100644
--- a/packages/canon/docs/components/Text/index.tsx
+++ b/packages/canon/docs/components/Text/Text.tsx
@@ -15,7 +15,6 @@
*/
import React from 'react';
-import { textStyles } from './text.css';
export const Text = ({
children,
@@ -25,7 +24,7 @@ export const Text = ({
style?: React.CSSProperties;
}) => {
return (
-
+
{children}
);
diff --git a/packages/canon/docs/components/Text/styles.css b/packages/canon/docs/components/Text/styles.css
new file mode 100644
index 0000000000..cbb2b88edb
--- /dev/null
+++ b/packages/canon/docs/components/Text/styles.css
@@ -0,0 +1,32 @@
+/*
+ * Copyright 2024 The Backstage Authors
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+.text {
+ font-family: 'Geist', sans-serif;
+ font-size: 16px;
+ line-height: 28px;
+ margin: 0;
+ font-weight: 300;
+ margin-bottom: 16px;
+
+ & p {
+ font-family: 'Geist', sans-serif;
+ font-size: 16px;
+ line-height: 28px;
+ margin: 0;
+ font-weight: 300;
+ }
+}
diff --git a/packages/canon/docs/components/Title/index.tsx b/packages/canon/docs/components/Title/Title.tsx
similarity index 92%
rename from packages/canon/docs/components/Title/index.tsx
rename to packages/canon/docs/components/Title/Title.tsx
index 13e5b964bb..056ccfc14d 100644
--- a/packages/canon/docs/components/Title/index.tsx
+++ b/packages/canon/docs/components/Title/Title.tsx
@@ -15,7 +15,6 @@
*/
import React from 'react';
-import { titleStyles } from './title.css';
export const Title = ({
children,
@@ -32,7 +31,7 @@ export const Title = ({
if (type === 'h3') Component = 'h3';
return React.createElement(Component, {
- className: titleStyles({ type }),
+ className: `title ${type}`,
style,
children,
});
diff --git a/packages/canon/docs/components/Title/styles.css b/packages/canon/docs/components/Title/styles.css
new file mode 100644
index 0000000000..a8d00e2af5
--- /dev/null
+++ b/packages/canon/docs/components/Title/styles.css
@@ -0,0 +1,43 @@
+/*
+ * Copyright 2024 The Backstage Authors
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+.title {
+ font-family: 'Geist', sans-serif;
+ margin: 0;
+ font-weight: 500;
+ border: none;
+
+ &.h1 {
+ font-size: 36px;
+ line-height: 44px;
+ margin-bottom: 8px;
+ margin-top: 0px;
+ }
+
+ &.h2 {
+ font-size: 24px;
+ line-height: 32px;
+ margin-bottom: 12px;
+ margin-top: 52px;
+ }
+
+ &.h3 {
+ font-size: 20px;
+ line-height: 28px;
+ margin-bottom: 12px;
+ margin-top: 40px;
+ }
+}
diff --git a/packages/canon/docs/components/Title/title.css.ts b/packages/canon/docs/components/Title/title.css.ts
deleted file mode 100644
index 6618ad80be..0000000000
--- a/packages/canon/docs/components/Title/title.css.ts
+++ /dev/null
@@ -1,48 +0,0 @@
-/*
- * Copyright 2024 The Backstage Authors
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-import { recipe } from '@vanilla-extract/recipes';
-
-export const titleStyles = recipe({
- base: {
- fontFamily: '"Geist", sans-serif',
- margin: '0',
- fontWeight: 500,
- border: 'none',
- },
- variants: {
- type: {
- h1: {
- fontSize: '36px',
- lineHeight: '44px',
- marginBottom: '8px',
- marginTop: '0px',
- },
- h2: {
- fontSize: '24px',
- lineHeight: '32px',
- marginBottom: '12px',
- marginTop: '52px',
- },
- h3: {
- fontSize: '20px',
- lineHeight: '28px',
- marginBottom: '12px',
- marginTop: '40px',
- },
- },
- },
-});
diff --git a/packages/canon/docs/components/index.ts b/packages/canon/docs/components/index.ts
index 7ad07bec6a..a497f059cb 100644
--- a/packages/canon/docs/components/index.ts
+++ b/packages/canon/docs/components/index.ts
@@ -14,11 +14,11 @@
* limitations under the License.
*/
-export * from './Chip';
+export * from './Chip/Chip';
export * from './Table';
-export * from './Title';
-export * from './Text';
-export * from './Columns';
+export * from './Title/Title';
+export * from './Text/Text';
+export * from './Columns/Columns';
export * from './ComponentStatus';
export * from './LayoutComponents';
export * from './Banner';
diff --git a/packages/canon/docs/components/styles.css b/packages/canon/docs/components/styles.css
index 698085ad19..9cf6eae179 100644
--- a/packages/canon/docs/components/styles.css
+++ b/packages/canon/docs/components/styles.css
@@ -1,2 +1,7 @@
@import './IconLibrary/styles.css';
@import './Roadmap/styles.css';
+@import './Title/styles.css';
+@import './Text/styles.css';
+@import './Table/styles.css';
+@import './ComponentStatus/styles.css';
+@import './Columns/styles.css';