scoobie 21.1.0 → 21.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/package.json CHANGED
@@ -1,10 +1,20 @@
1
1
  {
2
2
  "name": "scoobie",
3
+ "version": "21.2.0",
3
4
  "description": "Component library for SEEK documentation sites",
5
+ "repository": {
6
+ "type": "git",
7
+ "url": "https://github.com/seek-oss/scoobie.git"
8
+ },
4
9
  "license": "MIT",
5
- "main": "src/index.ts",
6
10
  "sideEffects": false,
7
- "version": "21.1.0",
11
+ "main": "src/index.ts",
12
+ "files": [
13
+ "src",
14
+ "webpack",
15
+ "types.d.ts",
16
+ "typography.ts"
17
+ ],
8
18
  "dependencies": {
9
19
  "@capsizecss/core": "^4.0.0",
10
20
  "@vanilla-extract/css": "^1.2.3",
@@ -15,42 +25,35 @@
15
25
  "prism-react-renderer": "^2.4.1"
16
26
  },
17
27
  "devDependencies": {
18
- "@changesets/cli": "2.29.7",
19
- "@changesets/get-github-info": "0.6.0",
28
+ "@changesets/cli": "2.30.0",
29
+ "@changesets/get-github-info": "0.8.0",
20
30
  "@loki/create-async-callback": "0.35.1",
21
31
  "@loki/is-loki-running": "0.35.0",
22
- "@storybook/addon-webpack5-compiler-babel": "3.0.6",
23
- "@storybook/react": "9.1.12",
24
- "@storybook/react-webpack5": "9.1.12",
32
+ "@storybook/addon-webpack5-compiler-babel": "4.0.0",
33
+ "@storybook/react": "10.3.1",
34
+ "@storybook/react-webpack5": "10.3.1",
25
35
  "@types/jest": "30.0.0",
26
- "@types/prismjs": "1.26.5",
27
- "@types/react": "18.3.26",
36
+ "@types/prismjs": "1.26.6",
37
+ "@types/react": "18.3.28",
28
38
  "@types/react-dom": "18.3.7",
29
- "braid-design-system": "33.12.2",
30
- "eslint-plugin-storybook": "9.1.12",
39
+ "braid-design-system": "34.0.4",
40
+ "eslint-plugin-storybook": "10.3.1",
31
41
  "loki": "0.35.1",
32
42
  "prismjs": "1.30.0",
33
43
  "react": "18.3.1",
34
44
  "react-dom": "18.3.1",
35
- "react-router": "7.9.4",
36
- "sku": "15.3.1",
37
- "storybook": "9.1.12",
38
- "webpack": "5.102.1"
45
+ "react-router": "7.13.1",
46
+ "sku": "15.12.0",
47
+ "storybook": "10.3.1",
48
+ "webpack": "5.105.4"
39
49
  },
40
- "files": [
41
- "src",
42
- "webpack",
43
- "types.d.ts",
44
- "typography.ts"
45
- ],
46
50
  "peerDependencies": {
47
51
  "braid-design-system": ">= 31.21.0",
48
52
  "react": ">= 17 < 19",
49
53
  "react-router": ">= 7.5.2 < 8"
50
54
  },
51
- "repository": {
52
- "type": "git",
53
- "url": "https://github.com/seek-oss/scoobie.git"
55
+ "engines": {
56
+ "node": ">=18.18"
54
57
  },
55
58
  "loki": {
56
59
  "configurations": {
@@ -64,9 +67,6 @@
64
67
  "chromeLoadTimeout": "60000",
65
68
  "chromeTolerance": "0"
66
69
  },
67
- "engines": {
68
- "node": ">=18.18"
69
- },
70
70
  "scripts": {
71
71
  "format": "sku format",
72
72
  "lint": "sku lint",
@@ -1,5 +1,5 @@
1
1
  import { IconCopy, IconTick, Text, TextLinkButton } from 'braid-design-system';
2
- import React, {
2
+ import {
3
3
  type ComponentProps,
4
4
  type MouseEventHandler,
5
5
  type ReactNode,
@@ -1,5 +1,5 @@
1
1
  import clsx, { type ClassValue } from 'clsx';
2
- import React, { type ComponentProps, forwardRef } from 'react';
2
+ import { type ComponentProps, forwardRef } from 'react';
3
3
  import { NavLink, useLocation } from 'react-router';
4
4
 
5
5
  import { parseInternalHref } from '../private/url';
@@ -8,8 +8,10 @@ import { useScoobieLink } from './ScoobieLinkProvider';
8
8
 
9
9
  import * as styles from './InternalLink.css';
10
10
 
11
- interface Props
12
- extends Omit<ComponentProps<typeof NavLink>, 'className' | 'to'> {
11
+ interface Props extends Omit<
12
+ ComponentProps<typeof NavLink>,
13
+ 'className' | 'to'
14
+ > {
13
15
  className?: ClassValue | ((isActive: boolean) => ClassValue);
14
16
  href: string;
15
17
  reset?: boolean;
@@ -0,0 +1,20 @@
1
+ import { style } from '@vanilla-extract/css';
2
+
3
+ import { palette } from '../private/color';
4
+
5
+ export const placeholderContainer = style([
6
+ {
7
+ border: `1.5px solid ${palette.grey[300]}`,
8
+ backgroundColor: palette.grey[100],
9
+ },
10
+ ]);
11
+
12
+ export const box = style([
13
+ {
14
+ position: 'absolute',
15
+ width: '100%',
16
+ height: '100%',
17
+ },
18
+ ]);
19
+
20
+ export const xLine = style([{ strokeWidth: 1.5, stroke: palette.grey[300] }]);
@@ -0,0 +1,28 @@
1
+ import { Box } from 'braid-design-system';
2
+ import type React from 'react';
3
+
4
+ import * as styles from './Placeholder.css';
5
+
6
+ export const Placeholder = ({
7
+ width,
8
+ height,
9
+ }: Pick<React.HTMLProps<HTMLDivElement>, 'width' | 'height'>) => (
10
+ <Box
11
+ className={styles.placeholderContainer}
12
+ position="relative"
13
+ overflow="hidden"
14
+ display="flex"
15
+ alignItems="center"
16
+ justifyContent="center"
17
+ borderRadius={undefined}
18
+ style={{
19
+ width,
20
+ height,
21
+ }}
22
+ >
23
+ <svg xmlns="http://www.w3.org/2000/svg" className={styles.box}>
24
+ <line className={styles.xLine} x1="0" y1="0" x2="100%" y2="100%" />
25
+ <line className={styles.xLine} x1="100%" y1="0" x2="0" y2="100%" />
26
+ </svg>
27
+ </Box>
28
+ );
@@ -1,5 +1,4 @@
1
1
  import { makeLinkComponent } from 'braid-design-system';
2
- import React from 'react';
3
2
 
4
3
  import { isExternalHref } from '../private/url';
5
4
 
@@ -1,4 +1,4 @@
1
- import React, { type ReactNode, createContext, useContext } from 'react';
1
+ import { type ReactNode, createContext, useContext } from 'react';
2
2
 
3
3
  interface ScoobieLinkContext {
4
4
  propagateSearchParams: string[];
@@ -1,5 +1,4 @@
1
1
  import { Box } from 'braid-design-system';
2
- import React from 'react';
3
2
 
4
3
  import * as styles from './HorizontalRule.css';
5
4
 
@@ -1,4 +1,4 @@
1
- import React, { type ReactNode, createContext, useContext } from 'react';
1
+ import { type ReactNode, createContext, useContext } from 'react';
2
2
 
3
3
  const LIST_TYPES = ['number', 'alpha', 'roman'] as const;
4
4
 
@@ -1,5 +1,5 @@
1
1
  import { Bleed, Box } from 'braid-design-system';
2
- import React, { type ReactNode } from 'react';
2
+ import type { ReactNode } from 'react';
3
3
 
4
4
  import * as styles from './ScrollableInline.css';
5
5