@sps-woodland/core 7.0.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/README.md +3 -0
- package/lib/components/app-root/AppRoot.css.d.ts +7 -0
- package/lib/components/app-root/AppRoot.d.ts +5 -0
- package/lib/components/box/Box.d.ts +13 -0
- package/lib/components/cap-content/CapContent.css.d.ts +4 -0
- package/lib/components/cap-content/CapContent.d.ts +3 -0
- package/lib/components/cap-content/CapContentTitle.d.ts +3 -0
- package/lib/components/content/Content.css.d.ts +1 -0
- package/lib/components/content/Content.d.ts +8 -0
- package/lib/components/icon/Icon.css.d.ts +12 -0
- package/lib/components/icon/Icon.d.ts +8 -0
- package/lib/components/spinner/Spinner.css.d.ts +22 -0
- package/lib/components/spinner/Spinner.d.ts +8 -0
- package/lib/components/spinner/Spinner.examples.d.ts +2 -0
- package/lib/components/vertical-rule/VerticalRule.css.d.ts +1 -0
- package/lib/components/vertical-rule/VerticalRule.d.ts +4 -0
- package/lib/examples.d.ts +42 -0
- package/lib/i18n/I18nContext.d.ts +6 -0
- package/lib/i18n/translations.d.ts +139 -0
- package/lib/index.cjs.js +25 -0
- package/lib/index.d.ts +35 -0
- package/lib/index.es.js +445 -0
- package/lib/manifest.d.ts +2 -0
- package/lib/metadata/metadata.d.ts +20 -0
- package/lib/style.css +1 -0
- package/lib/types/table.d.ts +12 -0
- package/lib/utils/ComponentProps.d.ts +4 -0
- package/lib/utils/Provide.d.ts +23 -0
- package/lib/utils/VariantDefinitions.d.ts +6 -0
- package/lib/utils/addClassName.d.ts +2 -0
- package/lib/utils/addProps.d.ts +2 -0
- package/lib/utils/bindProps.d.ts +33 -0
- package/lib/utils/cl.d.ts +1 -0
- package/lib/utils/contentOf.d.ts +2 -0
- package/lib/utils/modChildren.d.ts +4 -0
- package/lib/utils/selectChildren.d.ts +8 -0
- package/lib/utils/useChildTestIdAttrBuilder.d.ts +4 -0
- package/lib/utils/usePatchReducer.d.ts +2 -0
- package/lib/utils/usePortal.d.ts +6 -0
- package/package.json +40 -0
- package/vite.config.js +21 -0
package/README.md
ADDED
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import type { Sprinkles } from "@sps-woodland/tokens";
|
|
2
|
+
import * as React from "react";
|
|
3
|
+
import type { ComponentProps } from "../../utils/ComponentProps";
|
|
4
|
+
declare const utilityCSSPropList: readonly ["alignItems", "display", "flex", "flexWrap", "justifyContent", "textAlign"];
|
|
5
|
+
declare type UtilityCSSProps = Pick<React.CSSProperties, typeof utilityCSSPropList[number]>;
|
|
6
|
+
declare type BoxRootElement = HTMLDivElement;
|
|
7
|
+
declare type BoxProps = ComponentProps<Sprinkles & UtilityCSSProps & {
|
|
8
|
+
inline?: boolean;
|
|
9
|
+
}, BoxRootElement>;
|
|
10
|
+
declare type BoxForwardRefType = BoxProps & React.RefAttributes<BoxRootElement>;
|
|
11
|
+
declare type BoxForwardRefExoticComponent = React.ForwardRefExoticComponent<BoxForwardRefType>;
|
|
12
|
+
export declare const Box: BoxForwardRefExoticComponent;
|
|
13
|
+
export {};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare const content: string;
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import * as React from "react";
|
|
2
|
+
import type { ComponentProps } from "../../utils/ComponentProps";
|
|
3
|
+
declare type ContentRootElement = HTMLDivElement;
|
|
4
|
+
declare type ContentProps = ComponentProps<unknown, ContentRootElement>;
|
|
5
|
+
declare type ContentForwardRefType = ContentProps & React.RefAttributes<ContentRootElement>;
|
|
6
|
+
declare type ContentForwardRefExoticComponent = React.ForwardRefExoticComponent<ContentForwardRefType>;
|
|
7
|
+
export declare const Content: ContentForwardRefExoticComponent;
|
|
8
|
+
export {};
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { Tokens } from "@sps-woodland/tokens";
|
|
2
|
+
declare type Icons = Record<keyof typeof Tokens.icon, string>;
|
|
3
|
+
export declare const icon: import("@vanilla-extract/recipes/dist/declarations/src/types").RuntimeFn<{
|
|
4
|
+
iconName: Icons;
|
|
5
|
+
size: {
|
|
6
|
+
xs: string;
|
|
7
|
+
sm: string;
|
|
8
|
+
md: string;
|
|
9
|
+
lg: string;
|
|
10
|
+
};
|
|
11
|
+
}>;
|
|
12
|
+
export {};
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import type { IconName, IconSize, Color } from "@sps-woodland/tokens";
|
|
2
|
+
import * as React from "react";
|
|
3
|
+
import type { ComponentProps } from "../../utils/ComponentProps";
|
|
4
|
+
export declare function Icon({ className, color, icon: iconName, size, ...rest }: ComponentProps<{
|
|
5
|
+
icon: IconName;
|
|
6
|
+
size?: IconSize;
|
|
7
|
+
color?: Color;
|
|
8
|
+
}, HTMLElement>): React.ReactElement;
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import type { RecipeVariants } from "@vanilla-extract/recipes";
|
|
2
|
+
export declare const spinnerRoot: string;
|
|
3
|
+
export declare const spinner: import("@vanilla-extract/recipes/dist/declarations/src/types").RuntimeFn<{
|
|
4
|
+
size: {
|
|
5
|
+
sm: {
|
|
6
|
+
borderWidth: string;
|
|
7
|
+
height: string;
|
|
8
|
+
width: string;
|
|
9
|
+
};
|
|
10
|
+
md: {
|
|
11
|
+
borderWidth: string;
|
|
12
|
+
height: string;
|
|
13
|
+
width: string;
|
|
14
|
+
};
|
|
15
|
+
lg: {
|
|
16
|
+
borderWidth: string;
|
|
17
|
+
height: string;
|
|
18
|
+
width: string;
|
|
19
|
+
};
|
|
20
|
+
};
|
|
21
|
+
}>;
|
|
22
|
+
export declare type SpinnerVariants = NonNullable<RecipeVariants<typeof spinner>>;
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import * as React from "react";
|
|
2
|
+
import type { ComponentProps } from "../../utils/ComponentProps";
|
|
3
|
+
import type { SpinnerVariants } from "./Spinner.css";
|
|
4
|
+
export declare function Spinner({ alt, className, size, title, ...rest }: ComponentProps<{
|
|
5
|
+
alt?: string;
|
|
6
|
+
size?: SpinnerVariants["size"];
|
|
7
|
+
title?: string;
|
|
8
|
+
}, HTMLDivElement>): React.ReactElement;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare const rootClass: string;
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import * as React from "react";
|
|
2
|
+
import type { ComponentProps } from "../../utils/ComponentProps";
|
|
3
|
+
export declare function VerticalRule({ className, ...rest }: ComponentProps<unknown, HTMLDivElement>): React.ReactElement;
|
|
4
|
+
export declare function Vr(props: Parameters<typeof VerticalRule>[0]): JSX.Element;
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
import type { ReactElement } from "react";
|
|
2
|
+
export interface ExtraExampleRendererArgs {
|
|
3
|
+
naviagateTo: (selection: string) => void;
|
|
4
|
+
NavigateTo: (props: {
|
|
5
|
+
to: string;
|
|
6
|
+
children: ReactElement | string;
|
|
7
|
+
slugPrefix?: string;
|
|
8
|
+
}) => ReactElement;
|
|
9
|
+
Link: (props: {
|
|
10
|
+
to: string;
|
|
11
|
+
children: ReactElement | string;
|
|
12
|
+
}) => ReactElement;
|
|
13
|
+
}
|
|
14
|
+
declare type ReactChildOrRenderer = ReactElement | string | ((args: ExtraExampleRendererArgs) => ReactElement | string);
|
|
15
|
+
export interface DSExampleBase {
|
|
16
|
+
description?: ReactChildOrRenderer;
|
|
17
|
+
}
|
|
18
|
+
export interface DSReactExampleJSX {
|
|
19
|
+
jsx: string;
|
|
20
|
+
}
|
|
21
|
+
export interface DSReactExampleComponent {
|
|
22
|
+
react: string;
|
|
23
|
+
}
|
|
24
|
+
export declare type DSReactExample = DSExampleBase & (DSReactExampleComponent | DSReactExampleJSX);
|
|
25
|
+
export declare type DSExample = DSReactExample;
|
|
26
|
+
export declare function exampleIsReactComponentExample(example: DSExample): example is DSReactExampleComponent;
|
|
27
|
+
export declare function exampleIsReactJSXExample(example: DSExample): example is DSReactExampleJSX;
|
|
28
|
+
export interface DSExamplesTab<T extends DSExample = DSExample> {
|
|
29
|
+
label?: ReactChildOrRenderer;
|
|
30
|
+
description?: ReactChildOrRenderer;
|
|
31
|
+
customSection?: ReactChildOrRenderer;
|
|
32
|
+
examples?: Record<string, T>;
|
|
33
|
+
}
|
|
34
|
+
export declare type DSExamples<T extends DSExample = DSExample> = Record<string, DSExamplesTab<T>>;
|
|
35
|
+
export declare type DSReactExamples = DSExamples<DSReactExample>;
|
|
36
|
+
export interface ComponentManifestEntry {
|
|
37
|
+
description?: ReactChildOrRenderer;
|
|
38
|
+
components: unknown[];
|
|
39
|
+
examples: DSReactExamples;
|
|
40
|
+
}
|
|
41
|
+
export declare type ComponentManifest = Record<string, ComponentManifestEntry>;
|
|
42
|
+
export {};
|
|
@@ -0,0 +1,139 @@
|
|
|
1
|
+
declare const _default: {
|
|
2
|
+
advancedSearch: {
|
|
3
|
+
clear: string;
|
|
4
|
+
search: string;
|
|
5
|
+
};
|
|
6
|
+
button: {
|
|
7
|
+
spinningTitle: string;
|
|
8
|
+
};
|
|
9
|
+
columnChooser: {
|
|
10
|
+
removeButton: string;
|
|
11
|
+
};
|
|
12
|
+
contentRow: {
|
|
13
|
+
collapse: string;
|
|
14
|
+
expand: string;
|
|
15
|
+
};
|
|
16
|
+
datepicker: {
|
|
17
|
+
calendar: {
|
|
18
|
+
prevMonth: string;
|
|
19
|
+
nextMonth: string;
|
|
20
|
+
};
|
|
21
|
+
preset: {
|
|
22
|
+
custom: string;
|
|
23
|
+
today: string;
|
|
24
|
+
sevenDays: string;
|
|
25
|
+
thirtyDays: string;
|
|
26
|
+
sixtyDays: string;
|
|
27
|
+
ninetyDays: string;
|
|
28
|
+
oneYear: string;
|
|
29
|
+
};
|
|
30
|
+
presetsLabel: string;
|
|
31
|
+
};
|
|
32
|
+
fileUpload: {
|
|
33
|
+
acceptedTypes: string;
|
|
34
|
+
acceptedTypes_plural: string;
|
|
35
|
+
cancelled: string;
|
|
36
|
+
cancelled_plural: string;
|
|
37
|
+
close: string;
|
|
38
|
+
instructions: string;
|
|
39
|
+
instructions_plural: string;
|
|
40
|
+
maximumSize: string;
|
|
41
|
+
processing: string;
|
|
42
|
+
title: string;
|
|
43
|
+
};
|
|
44
|
+
filterPanel: {
|
|
45
|
+
clear: string;
|
|
46
|
+
title: string;
|
|
47
|
+
filterPlaceholder: string;
|
|
48
|
+
};
|
|
49
|
+
focusedTask: {
|
|
50
|
+
close: string;
|
|
51
|
+
};
|
|
52
|
+
growler: {
|
|
53
|
+
dismiss: string;
|
|
54
|
+
};
|
|
55
|
+
insightCard: {
|
|
56
|
+
all: string;
|
|
57
|
+
partnerCount: string;
|
|
58
|
+
partners: string;
|
|
59
|
+
};
|
|
60
|
+
insightTile: {
|
|
61
|
+
all: string;
|
|
62
|
+
partnerCount: string;
|
|
63
|
+
partners: string;
|
|
64
|
+
};
|
|
65
|
+
label: {
|
|
66
|
+
errors: {
|
|
67
|
+
dateConstraint: {
|
|
68
|
+
max: string;
|
|
69
|
+
min: string;
|
|
70
|
+
};
|
|
71
|
+
dateFormat: string;
|
|
72
|
+
dateRangeOrder: string;
|
|
73
|
+
dateValidity: string;
|
|
74
|
+
max: string;
|
|
75
|
+
maxLength: string;
|
|
76
|
+
min: string;
|
|
77
|
+
minLength: string;
|
|
78
|
+
required: string;
|
|
79
|
+
};
|
|
80
|
+
preventativeErrors: {
|
|
81
|
+
maxLength: string;
|
|
82
|
+
alpha: string;
|
|
83
|
+
numeric: string;
|
|
84
|
+
nonNumeric: string;
|
|
85
|
+
};
|
|
86
|
+
stronglySuggested: string;
|
|
87
|
+
};
|
|
88
|
+
listActionBar: {
|
|
89
|
+
clearSelected: string;
|
|
90
|
+
itemsSelected: string;
|
|
91
|
+
};
|
|
92
|
+
listToolbar: {
|
|
93
|
+
advancedSearchToggle: string;
|
|
94
|
+
};
|
|
95
|
+
modal: {
|
|
96
|
+
close: string;
|
|
97
|
+
defaultButtonLabel: string;
|
|
98
|
+
defaultTitle: {
|
|
99
|
+
general: string;
|
|
100
|
+
info: string;
|
|
101
|
+
success: string;
|
|
102
|
+
warning: string;
|
|
103
|
+
"serious-warning": string;
|
|
104
|
+
};
|
|
105
|
+
};
|
|
106
|
+
pagination: {
|
|
107
|
+
nextPage: string;
|
|
108
|
+
ofMany: string;
|
|
109
|
+
ofPageCount: string;
|
|
110
|
+
page: string;
|
|
111
|
+
prevPage: string;
|
|
112
|
+
};
|
|
113
|
+
progressBar: {
|
|
114
|
+
closeButtonTitle: string;
|
|
115
|
+
};
|
|
116
|
+
searchResultsBar: {
|
|
117
|
+
clear: string;
|
|
118
|
+
clearResults: string;
|
|
119
|
+
count: string;
|
|
120
|
+
matchingResults: string;
|
|
121
|
+
noAdvancedSearchSelections: string;
|
|
122
|
+
results: string;
|
|
123
|
+
};
|
|
124
|
+
select: {
|
|
125
|
+
defaultPlaceholder: string;
|
|
126
|
+
};
|
|
127
|
+
slackLink: {
|
|
128
|
+
label: string;
|
|
129
|
+
};
|
|
130
|
+
spinner: {
|
|
131
|
+
defaultAltText: string;
|
|
132
|
+
};
|
|
133
|
+
taskQueue: {
|
|
134
|
+
clearCompleted: string;
|
|
135
|
+
newTask: string;
|
|
136
|
+
noTasks: string;
|
|
137
|
+
};
|
|
138
|
+
};
|
|
139
|
+
export default _default;
|
package/lib/index.cjs.js
ADDED
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
"use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const v=require("react"),g=require("@sps-woodland/tokens"),_=require("@spscommerce/utils"),D=require("react-dom");function B(e){if(e&&e.__esModule)return e;const n=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(e){for(const t in e)if(t!=="default"){const r=Object.getOwnPropertyDescriptor(e,t);Object.defineProperty(n,t,r.get?r:{enumerable:!0,get:()=>e[t]})}}return n.default=e,Object.freeze(n)}const l=B(v);const h=Symbol("WoodlandComponentMetadata"),p=Object.freeze({isWoodlandComponent(e){return typeof e=="function"&&e.hasOwnProperty(h)},get(e){return e[h]},set(e,n){Object.assign(e,{[h]:n})}});function u(...e){return e.filter(Boolean).map(String).join(" ")}const S=function({children:e,elements:n}){if(n.length===0)return l.createElement(l.Fragment,null,e);const[t,r]=Array.isArray(n[0])?n[0]:[n[0]];return l.createElement(t,{...r!=null?r:{}},l.createElement(S,{elements:n.slice(1)},e))};function E({children:e,providers:n=[],...t}){return l.createElement("div",{...t},l.createElement(S,{elements:n},e))}function F(e,n,t){return n in e?Object.defineProperty(e,n,{value:t,enumerable:!0,configurable:!0,writable:!0}):e[n]=t,e}function P(e,n){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);n&&(r=r.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),t.push.apply(t,r)}return t}function w(e){for(var n=1;n<arguments.length;n++){var t=arguments[n]!=null?arguments[n]:{};n%2?P(Object(t),!0).forEach(function(r){F(e,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):P(Object(t)).forEach(function(r){Object.defineProperty(e,r,Object.getOwnPropertyDescriptor(t,r))})}return e}var W=(e,n,t)=>{for(var r of Object.keys(e)){var a;if(e[r]!==((a=n[r])!==null&&a!==void 0?a:t[r]))return!1}return!0},y=e=>n=>{var t=e.defaultClassName,r=w(w({},e.defaultVariants),n);for(var a in r){var o,s=(o=r[a])!==null&&o!==void 0?o:e.defaultVariants[a];if(s!=null){var c=s;typeof c=="boolean"&&(c=c===!0?"true":"false");var i=e.variantClassNames[a][c];i&&(t+=" "+i)}}for(var[d,q]of e.compoundVariants)W(d,r,e.defaultVariants)&&(t+=" "+q);return t},U=y({defaultClassName:"g5vsg0",variantClassNames:{fullWidth:{true:"g5vsg1"}},defaultVariants:{},compoundVariants:[]});function k({children:e,className:n,fullWidth:t,...r}){return l.createElement(E,{className:u(U({fullWidth:t}),n),...r},e)}p.set(k,{name:"AppRoot",props:{fullWidth:{type:"boolean",default:"false"},providers:"React.ElementType[]"}});const G=["alignItems","display","flex","flexWrap","justifyContent","textAlign"],Y=new Set(G),A=l.forwardRef(({children:e,className:n,inline:t,style:r,...a},o)=>{const[s,c,i]=Object.keys(a).reduce(([d,q,f],m)=>g.sprinkles.properties.has(m)?[{...d,[m]:a[m]},q,f]:Y.has(m)?[d,{...q,[m]:a[m]},f]:[d,q,{...f,[m]:a[m]}],[{},{...t?{display:"inline"}:null,...r},{}]);return l.createElement("div",{ref:o,className:u(g.sprinkles(s),n),style:c,...i},e)});p.set(A,{name:"Box"});var T={root:"w9p2pg0",title:"w9p2pg1"};function R({className:e,children:n,...t}){return l.createElement("div",{className:u(T.root,e),...t},n)}p.set(R,{name:"CapContent"});function N({className:e,children:n,...t}){return l.createElement("div",{className:u(T.title,e),...t},n)}p.set(N,{name:"CapContentTitle"});var J="o0pwg0";const O=l.forwardRef(({children:e,className:n,...t},r)=>l.createElement("div",{ref:r,className:u(J,n),...t},e));p.set(O,{name:"Content"});var X=y({defaultClassName:"_6qnc0v53",variantClassNames:{iconName:{"angle-left":"_6qnc0v0","angle-right":"_6qnc0v1",archive:"_6qnc0v2","arrow-down":"_6qnc0v3","arrow-left-circle":"_6qnc0v4","arrow-left":"_6qnc0v5","arrow-right":"_6qnc0v6","arrow-up":"_6qnc0v7",asterisk:"_6qnc0v8",ban:"_6qnc0v9",barcode:"_6qnc0va",bell:"_6qnc0vb",bolt:"_6qnc0vc",book:"_6qnc0vd",building:"_6qnc0ve","burst-bolt":"_6qnc0vf",burst:"_6qnc0vg","calendar-blank":"_6qnc0vh",calendar:"_6qnc0vi",camera:"_6qnc0vj","chart-area":"_6qnc0vk","chart-bar":"_6qnc0vl","chart-line":"_6qnc0vm","chart-pie":"_6qnc0vn",checkmark:"_6qnc0vo","chevron-down":"_6qnc0vp","chevron-left":"_6qnc0vq","chevron-right":"_6qnc0vr","chevron-up":"_6qnc0vs","circle-outline":"_6qnc0vt",clock:"_6qnc0vu","code-fork":"_6qnc0vv","comment-bubble-question":"_6qnc0vw","comment-bubble":"_6qnc0vx",conversation:"_6qnc0vy","column-switcher":"_6qnc0vz","credit-card":"_6qnc0v10",dashboard:"_6qnc0v11",database:"_6qnc0v12",disk:"_6qnc0v13","dollar-sign":"_6qnc0v14","double-angle-left":"_6qnc0v15","double-angle-right":"_6qnc0v16","download-cloud":"_6qnc0v17",drill:"_6qnc0v18",duplicate:"_6qnc0v19",ellipses:"_6qnc0v1a",envelope:"_6qnc0v1b",exchange:"_6qnc0v1c","expand-collapse":"_6qnc0v1d",eye:"_6qnc0v1e","file-duplicate":"_6qnc0v1f","file-pdf":"_6qnc0v1g","file-presentation":"_6qnc0v1h","file-size":"_6qnc0v1i","file-solid-text":"_6qnc0v1j","file-solid":"_6qnc0v1k","file-spreadsheet":"_6qnc0v1l","file-text":"_6qnc0v1m",file:"_6qnc0v1n",filter:"_6qnc0v1o",flag:"_6qnc0v1p","folder-open":"_6qnc0v1q","folder-solid-open":"_6qnc0v1r","folder-solid":"_6qnc0v1s",folder:"_6qnc0v1t",gear:"_6qnc0v1u",globe:"_6qnc0v1v",grid:"_6qnc0v1w",group:"_6qnc0v1x","hand-stop":"_6qnc0v1y",handshake:"_6qnc0v1z",hat:"_6qnc0v20",heart:"_6qnc0v21",history:"_6qnc0v22",inbox:"_6qnc0v23",incoming:"_6qnc0v24","info-circle":"_6qnc0v25",intercom:"_6qnc0v26","item-tag":"_6qnc0v27",key:"_6qnc0v28","life-preserver":"_6qnc0v29",lightbulb:"_6qnc0v2a",link:"_6qnc0v2b",linkedin:"_6qnc0v2c","list-cards":"_6qnc0v2d","list-columns":"_6qnc0v2e","list-summary":"_6qnc0v2f","list-table":"_6qnc0v2g",list:"_6qnc0v2h",location:"_6qnc0v2i",locked:"_6qnc0v2j","map-marker":"_6qnc0v2k",map:"_6qnc0v2l",maximize:"_6qnc0v2m",minimize:"_6qnc0v2n","minus-circle":"_6qnc0v2o",minus:"_6qnc0v2p","new-file":"_6qnc0v2q","new-screen":"_6qnc0v2r",outgoing:"_6qnc0v2s","paper-plane":"_6qnc0v2t",pencil:"_6qnc0v2u",photo:"_6qnc0v2v",pinterest:"_6qnc0v2w",play:"_6qnc0v2x","plus-circle":"_6qnc0v2y","plus-sign":"_6qnc0v2z",presentation:"_6qnc0v30",printer:"_6qnc0v31","qr-code":"_6qnc0v32","question-circle":"_6qnc0v33","quote-left":"_6qnc0v34","quote-right":"_6qnc0v35",random:"_6qnc0v36",refresh:"_6qnc0v37",rocket:"_6qnc0v38","search-plus":"_6qnc0v39",search:"_6qnc0v3a",share:"_6qnc0v3b","shopping-cart":"_6qnc0v3c","sort-alpha-asc":"_6qnc0v3d","sort-alpha-desc":"_6qnc0v3e","sort-num-asc":"_6qnc0v3f","sort-num-desc":"_6qnc0v3g","star-outline":"_6qnc0v3h",star:"_6qnc0v3i","archive-circle":"_6qnc0v3j","x-circle":"_6qnc0v3k","exclamation-circle":"_6qnc0v3l","descending-ellipses-circle":"_6qnc0v3m","double-angle-right-circle":"_6qnc0v3n","locked-circle":"_6qnc0v3o","asterisk-circle":"_6qnc0v3p","checkmark-circle":"_6qnc0v3q","clock-circle":"_6qnc0v3r","calendar-blank-circle":"_6qnc0v3s","ban-circle":"_6qnc0v3t","disk-circle":"_6qnc0v3u","template-circle":"_6qnc0v3v","exclamation-triangle":"_6qnc0v3w",table:"_6qnc0v3x",tabs:"_6qnc0v3y","thumbs-down-outline":"_6qnc0v3z","thumbs-down":"_6qnc0v40","thumbs-up-outline":"_6qnc0v41","thumbs-up":"_6qnc0v42",trash:"_6qnc0v43","truck-shipping":"_6qnc0v44",twitter:"_6qnc0v45",undo:"_6qnc0v46",unlocked:"_6qnc0v47","upload-cloud":"_6qnc0v48",wrench:"_6qnc0v49",x:"_6qnc0v4a","arrow-right-circle":"_6qnc0v4b","calendar-select":"_6qnc0v4c",tag:"_6qnc0v4d",user:"_6qnc0v4e","eye-slash":"_6qnc0v4f","bell-filled":"_6qnc0v4g","nested-list":"_6qnc0v4h",pin:"_6qnc0v4i","user-impersonation":"_6qnc0v4j","status-archived":"_6qnc0v4k","status-cancelled":"_6qnc0v4l","status-error":"_6qnc0v4m","status-in-process":"_6qnc0v4n","status-in-transit":"_6qnc0v4o","status-locked":"_6qnc0v4p","status-new":"_6qnc0v4q","status-ok":"_6qnc0v4r","status-on-hold":"_6qnc0v4s","status-outdated":"_6qnc0v4t","status-rejected":"_6qnc0v4u","status-saved":"_6qnc0v4v","status-saving":"_6qnc0v4w","status-template":"_6qnc0v4x","status-warning":"_6qnc0v4y"},size:{xs:"_6qnc0v4z",sm:"_6qnc0v50",md:"_6qnc0v51",lg:"_6qnc0v52"}},defaultVariants:{size:"md"},compoundVariants:[]});function j({className:e,color:n,icon:t,size:r="md",...a}){return l.createElement("i",{className:u(X({iconName:t,size:r}),g.sprinkles({color:n}),e),"aria-hidden":"true",...a})}p.set(j,{name:"Icon",props:{icon:{type:"IconName",required:!0},size:{type:"IconSize",default:'"md"'},color:"Color"}});const K={advancedSearch:{clear:"Clear Fields",search:"Search"},button:{spinningTitle:"Loading\u2026"},columnChooser:{removeButton:"Remove {{elementName}}"},contentRow:{collapse:"Collapse",expand:"Expand"},datepicker:{calendar:{prevMonth:"View Previous Month",nextMonth:"View Next Month"},preset:{custom:"Custom",today:"Today",sevenDays:"Last 7 days",thirtyDays:"Last 30 days",sixtyDays:"Last 60 days",ninetyDays:"Last 90 days",oneYear:"Last year"},presetsLabel:"Ranges"},fileUpload:{acceptedTypes:"{{fileTypes}} format accepted",acceptedTypes_plural:"{{fileTypes}} formats accepted",cancelled:"File Upload Failed",cancelled_plural:"File Upload(s) Failed",close:"Close",instructions:"Drag and drop your file here or |browse for a file| on your desktop.",instructions_plural:"Drag and drop your files here or |browse for files| on your desktop.",maximumSize:"{{size}} maximum",processing:"Processing Upload\u2026",title:"Upload Your {{description}}"},filterPanel:{clear:"Clear Filters",title:"Filters",filterPlaceholder:"Filter options"},focusedTask:{close:"Close"},growler:{dismiss:"Dismiss"},insightCard:{all:"ALL",partnerCount:"{{count}} |of| {{total}}",partners:"PARTNERS"},insightTile:{all:"ALL",partnerCount:"{{count}} |of| {{total}}",partners:"PARTNERS"},label:{errors:{dateConstraint:{max:"Please enter a date on or prior to {{context.maxExceeded}}.",min:"Please enter a date on or after {{context.minExceeded}}."},dateFormat:"Please enter a date in the format {{context}}.",dateRangeOrder:"End date cannot be before start date.",dateValidity:"Please enter a valid date.",max:"Please enter a value no greater than {{context}}.",maxLength:"Please enter no more than {{context}} characters.",min:"Please enter a value no less than {{context}}.",minLength:"Please enter at least {{context}} characters.",required:"This field is required."},preventativeErrors:{maxLength:"This field accepts a maximum number of characters.",alpha:"This field accepts only alphabetic values.",numeric:"This field accepts only numerical values.",nonNumeric:"This field accepts only non-numerical values."},stronglySuggested:"This field is strongly suggested."},listActionBar:{clearSelected:"Clear Selected",itemsSelected:"Items Selected"},listToolbar:{advancedSearchToggle:"Advanced Search"},modal:{close:"Close modal",defaultButtonLabel:"Okay",defaultTitle:{general:"Action",info:"Info",success:"Success",warning:"Warning","serious-warning":"Warning"}},pagination:{nextPage:"Next Page",ofMany:"of many",ofPageCount:"of {{pageCount}}",page:"Page",prevPage:"Previous Page"},progressBar:{closeButtonTitle:"Close progress bar"},searchResultsBar:{clear:"Clear",clearResults:"Clear Results",count:"{{count}} of {{total}}",matchingResults:"Matching results",noAdvancedSearchSelections:"No Advanced Search Selections",results:"Results:"},select:{defaultPlaceholder:"Select one\u2026"},slackLink:{label:"Chat"},spinner:{defaultAltText:"Loading\u2026"},taskQueue:{clearCompleted:"Clear Completed",newTask:"You have a new task in your queue.",noTasks:"There are currently no tasks in your queue."}},I={t(e,n){const t=_.getPath(K,e.replace(/^design-system:/,""));return n?_.template(t)(n):t}},z=l.createContext(I);function L(e){const n=e["data-testid"];return v.useCallback(t=>n?{"data-testid":`${n}__${t}`}:{},[n])}var Q=y({defaultClassName:"_9gd2pg2",variantClassNames:{size:{sm:"_9gd2pg3",md:"_9gd2pg4",lg:"_9gd2pg5"}},defaultVariants:{size:"md"},compoundVariants:[]}),H="_9gd2pg1";function C({alt:e,className:n,size:t,title:r,...a}){const{t:o}=l.useContext(z),s=e||r||o("design-system:spinner.defaultAltText"),c=L(a);return l.createElement("div",{className:u(H,n),...a},l.createElement("i",{className:Q({size:t}),...c("icon"),title:s}))}p.set(C,{name:"Spinner",props:{alt:"string",size:{type:'"sm" | "md" | "lg"',default:'"md"'},title:"string"}});var Z="_17ntd80";function x({className:e,...n}){return l.createElement("div",{className:u(Z,e),...n})}function $(e){return l.createElement(x,{...e})}p.set(x,{name:"VerticalRule"});function ee(e,n){return v.cloneElement(e,{className:u(e.props.className,n)})}function ne(e,n){return v.cloneElement(e,n)}function te(e,n,t=[]){return l.useMemo(()=>{function r(a){return l.createElement(e,{...a,...n},a.children)}return r},t)}function re(e){return typeof e=="function"?e():e}function b(e,n,t=!0){if(Array.isArray(e))return e.map(d=>b(d,n));if(["boolean","string"].includes(typeof e))return e;const r=e,a=r.props.hasOwnProperty("children")?[].concat(r.props.children):[],[o,s]=n(r,a),c=Array.isArray(s)?s:a,i=t?c.map(d=>b(d,n)):c;return v.cloneElement(r,o,...i)}function ae(e,{type:n,props:t={},custom:r}){return r?r(e.type):e.type===n?Object.keys(t).every(a=>t[a]===e.props[a]):!1}function ce(e=[],n=[]){const t=Array.isArray(e)?_.flatten(e):[e],r=n.map(o=>Array.isArray(o)?o:[o]),a=new Array(r.length+1).fill(null).map(()=>[]);for(const o of t){let s=!1;for(let c=0;c<r.length;c+=1){for(const i of r[c])if(s=ae(o,i),s){a[c].push(o);break}if(s)break}s||a[a.length-1].push(o)}return a}function se(e,n){return{...e,...n}}function oe(e){return v.useReducer(se,e)}const V=v.createContext(null);function le(e,n=[]){const t=v.useContext(V);return v.useMemo(()=>r=>{const o=t&&t.parentElementRef&&t.parentElementRef.current||document.body;let s=null,c=o.lastElementChild;for(;c!==o.firstElementChild;){if(c&&c.hasAttribute("data-portalid")&&c.getAttribute("data-portalid")===e){s=c;break}c&&(c=c.previousElementSibling)}if(s)o.contains(s)||o.appendChild(s);else{s=document.createElement("div"),s.setAttribute("data-portalid",e);for(const i of n)s.classList.add(i);o.appendChild(s)}return D.createPortal(r,s)},[t])}var M=(e=>(e.ASCENDING="ascending",e.DESCENDING="descending",e))(M||{});function ie(e){return e.hasOwnProperty("react")}function ue(e){return e.hasOwnProperty("jsx")}const de={components:[C],examples:{basic:{examples:{small:{react:_.code`
|
|
2
|
+
import { Spinner } from "@sps-woodland/core";
|
|
3
|
+
function Component() {
|
|
4
|
+
return (
|
|
5
|
+
<Spinner size="sm" title="Please wait…" />
|
|
6
|
+
);
|
|
7
|
+
}
|
|
8
|
+
`},medium:{react:_.code`
|
|
9
|
+
import { Spinner } from "@sps-woodland/core";
|
|
10
|
+
function Component() {
|
|
11
|
+
return (
|
|
12
|
+
<>
|
|
13
|
+
<Spinner />
|
|
14
|
+
<Spinner size="md" title="Please wait…" />
|
|
15
|
+
</>
|
|
16
|
+
);
|
|
17
|
+
}
|
|
18
|
+
`},large:{react:_.code`
|
|
19
|
+
import { Spinner } from "@sps-woodland/core";
|
|
20
|
+
function Component() {
|
|
21
|
+
return (
|
|
22
|
+
<Spinner size="lg" alt="Loading content…" />
|
|
23
|
+
);
|
|
24
|
+
}
|
|
25
|
+
`}}}}},ve={Spinner:de};exports.AppRoot=k;exports.Box=A;exports.CapContent=R;exports.CapContentTitle=N;exports.Content=O;exports.I18nContext=z;exports.Icon=j;exports.MANIFEST=ve;exports.Metadata=p;exports.PortalContext=V;exports.Provide=E;exports.SortDirection=M;exports.Spinner=C;exports.VerticalRule=x;exports.Vr=$;exports.addClassName=ee;exports.addProps=ne;exports.bindProps=te;exports.cl=u;exports.contentOf=re;exports.exampleIsReactComponentExample=ie;exports.exampleIsReactJSXExample=ue;exports.modChildren=b;exports.noI18nI18n=I;exports.selectChildren=ce;exports.useChildTestIdAttrBuilder=L;exports.usePatchReducer=oe;exports.usePortal=le;
|
package/lib/index.d.ts
ADDED
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* When we are able to fully deprecate ds-styles,
|
|
3
|
+
* uncomment these imports:
|
|
4
|
+
* import "normalize.css/normalize.css";
|
|
5
|
+
* import "the-new-css-reset/css/reset.css";
|
|
6
|
+
*/
|
|
7
|
+
import "./root.css";
|
|
8
|
+
import "@sps-woodland/tokens/lib/font.css";
|
|
9
|
+
import "@sps-woodland/tokens/lib/vanilla-extract/style.css";
|
|
10
|
+
export * from "./components/app-root/AppRoot";
|
|
11
|
+
export * from "./components/box/Box";
|
|
12
|
+
export * from "./components/cap-content/CapContent";
|
|
13
|
+
export * from "./components/cap-content/CapContentTitle";
|
|
14
|
+
export * from "./components/content/Content";
|
|
15
|
+
export * from "./components/icon/Icon";
|
|
16
|
+
export * from "./components/spinner/Spinner";
|
|
17
|
+
export * from "./components/vertical-rule/VerticalRule";
|
|
18
|
+
export * from "./i18n/I18nContext";
|
|
19
|
+
export * from "./metadata/metadata";
|
|
20
|
+
export * from "./utils/addClassName";
|
|
21
|
+
export * from "./utils/addProps";
|
|
22
|
+
export * from "./utils/bindProps";
|
|
23
|
+
export * from "./utils/cl";
|
|
24
|
+
export * from "./utils/ComponentProps";
|
|
25
|
+
export * from "./utils/contentOf";
|
|
26
|
+
export * from "./utils/modChildren";
|
|
27
|
+
export * from "./utils/Provide";
|
|
28
|
+
export * from "./utils/selectChildren";
|
|
29
|
+
export * from "./utils/useChildTestIdAttrBuilder";
|
|
30
|
+
export * from "./utils/usePatchReducer";
|
|
31
|
+
export * from "./utils/usePortal";
|
|
32
|
+
export * from "./utils/VariantDefinitions";
|
|
33
|
+
export * from "./types/table";
|
|
34
|
+
export * from "./examples";
|
|
35
|
+
export * from "./manifest";
|
package/lib/index.es.js
ADDED
|
@@ -0,0 +1,445 @@
|
|
|
1
|
+
import * as l from "react";
|
|
2
|
+
import { useCallback as k, cloneElement as g, useReducer as A, createContext as N, useContext as T, useMemo as R } from "react";
|
|
3
|
+
import { sprinkles as h } from "@sps-woodland/tokens";
|
|
4
|
+
import { getPath as O, template as j, flatten as z, code as q } from "@spscommerce/utils";
|
|
5
|
+
import { createPortal as L } from "react-dom";
|
|
6
|
+
const f = Symbol("WoodlandComponentMetadata"), p = Object.freeze({
|
|
7
|
+
isWoodlandComponent(e) {
|
|
8
|
+
return typeof e == "function" && e.hasOwnProperty(f);
|
|
9
|
+
},
|
|
10
|
+
get(e) {
|
|
11
|
+
return e[f];
|
|
12
|
+
},
|
|
13
|
+
set(e, n) {
|
|
14
|
+
Object.assign(e, { [f]: n });
|
|
15
|
+
}
|
|
16
|
+
});
|
|
17
|
+
function d(...e) {
|
|
18
|
+
return e.filter(Boolean).map(String).join(" ");
|
|
19
|
+
}
|
|
20
|
+
const w = function({
|
|
21
|
+
children: e,
|
|
22
|
+
elements: n
|
|
23
|
+
}) {
|
|
24
|
+
if (n.length === 0)
|
|
25
|
+
return /* @__PURE__ */ l.createElement(l.Fragment, null, e);
|
|
26
|
+
const [t, r] = Array.isArray(n[0]) ? n[0] : [n[0]];
|
|
27
|
+
return /* @__PURE__ */ l.createElement(t, {
|
|
28
|
+
...r != null ? r : {}
|
|
29
|
+
}, /* @__PURE__ */ l.createElement(w, {
|
|
30
|
+
elements: n.slice(1)
|
|
31
|
+
}, e));
|
|
32
|
+
};
|
|
33
|
+
function I({
|
|
34
|
+
children: e,
|
|
35
|
+
providers: n = [],
|
|
36
|
+
...t
|
|
37
|
+
}) {
|
|
38
|
+
return /* @__PURE__ */ l.createElement("div", {
|
|
39
|
+
...t
|
|
40
|
+
}, /* @__PURE__ */ l.createElement(w, {
|
|
41
|
+
elements: n
|
|
42
|
+
}, e));
|
|
43
|
+
}
|
|
44
|
+
function V(e, n, t) {
|
|
45
|
+
return n in e ? Object.defineProperty(e, n, {
|
|
46
|
+
value: t,
|
|
47
|
+
enumerable: !0,
|
|
48
|
+
configurable: !0,
|
|
49
|
+
writable: !0
|
|
50
|
+
}) : e[n] = t, e;
|
|
51
|
+
}
|
|
52
|
+
function y(e, n) {
|
|
53
|
+
var t = Object.keys(e);
|
|
54
|
+
if (Object.getOwnPropertySymbols) {
|
|
55
|
+
var r = Object.getOwnPropertySymbols(e);
|
|
56
|
+
n && (r = r.filter(function(a) {
|
|
57
|
+
return Object.getOwnPropertyDescriptor(e, a).enumerable;
|
|
58
|
+
})), t.push.apply(t, r);
|
|
59
|
+
}
|
|
60
|
+
return t;
|
|
61
|
+
}
|
|
62
|
+
function C(e) {
|
|
63
|
+
for (var n = 1; n < arguments.length; n++) {
|
|
64
|
+
var t = arguments[n] != null ? arguments[n] : {};
|
|
65
|
+
n % 2 ? y(Object(t), !0).forEach(function(r) {
|
|
66
|
+
V(e, r, t[r]);
|
|
67
|
+
}) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : y(Object(t)).forEach(function(r) {
|
|
68
|
+
Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r));
|
|
69
|
+
});
|
|
70
|
+
}
|
|
71
|
+
return e;
|
|
72
|
+
}
|
|
73
|
+
var D = (e, n, t) => {
|
|
74
|
+
for (var r of Object.keys(e)) {
|
|
75
|
+
var a;
|
|
76
|
+
if (e[r] !== ((a = n[r]) !== null && a !== void 0 ? a : t[r]))
|
|
77
|
+
return !1;
|
|
78
|
+
}
|
|
79
|
+
return !0;
|
|
80
|
+
}, b = (e) => (n) => {
|
|
81
|
+
var t = e.defaultClassName, r = C(C({}, e.defaultVariants), n);
|
|
82
|
+
for (var a in r) {
|
|
83
|
+
var o, s = (o = r[a]) !== null && o !== void 0 ? o : e.defaultVariants[a];
|
|
84
|
+
if (s != null) {
|
|
85
|
+
var c = s;
|
|
86
|
+
typeof c == "boolean" && (c = c === !0 ? "true" : "false");
|
|
87
|
+
var i = e.variantClassNames[a][c];
|
|
88
|
+
i && (t += " " + i);
|
|
89
|
+
}
|
|
90
|
+
}
|
|
91
|
+
for (var [u, m] of e.compoundVariants)
|
|
92
|
+
D(u, r, e.defaultVariants) && (t += " " + m);
|
|
93
|
+
return t;
|
|
94
|
+
}, M = b({ defaultClassName: "g5vsg0", variantClassNames: { fullWidth: { true: "g5vsg1" } }, defaultVariants: {}, compoundVariants: [] });
|
|
95
|
+
function B({
|
|
96
|
+
children: e,
|
|
97
|
+
className: n,
|
|
98
|
+
fullWidth: t,
|
|
99
|
+
...r
|
|
100
|
+
}) {
|
|
101
|
+
return /* @__PURE__ */ l.createElement(I, {
|
|
102
|
+
className: d(M({ fullWidth: t }), n),
|
|
103
|
+
...r
|
|
104
|
+
}, e);
|
|
105
|
+
}
|
|
106
|
+
p.set(B, {
|
|
107
|
+
name: "AppRoot",
|
|
108
|
+
props: {
|
|
109
|
+
fullWidth: { type: "boolean", default: "false" },
|
|
110
|
+
providers: "React.ElementType[]"
|
|
111
|
+
}
|
|
112
|
+
});
|
|
113
|
+
const F = [
|
|
114
|
+
"alignItems",
|
|
115
|
+
"display",
|
|
116
|
+
"flex",
|
|
117
|
+
"flexWrap",
|
|
118
|
+
"justifyContent",
|
|
119
|
+
"textAlign"
|
|
120
|
+
], W = new Set(F), U = l.forwardRef(
|
|
121
|
+
({
|
|
122
|
+
children: e,
|
|
123
|
+
className: n,
|
|
124
|
+
inline: t,
|
|
125
|
+
style: r,
|
|
126
|
+
...a
|
|
127
|
+
}, o) => {
|
|
128
|
+
const [
|
|
129
|
+
s,
|
|
130
|
+
c,
|
|
131
|
+
i
|
|
132
|
+
] = Object.keys(a).reduce(([
|
|
133
|
+
u,
|
|
134
|
+
m,
|
|
135
|
+
_
|
|
136
|
+
], v) => h.properties.has(v) ? [
|
|
137
|
+
{ ...u, [v]: a[v] },
|
|
138
|
+
m,
|
|
139
|
+
_
|
|
140
|
+
] : W.has(v) ? [
|
|
141
|
+
u,
|
|
142
|
+
{ ...m, [v]: a[v] },
|
|
143
|
+
_
|
|
144
|
+
] : [
|
|
145
|
+
u,
|
|
146
|
+
m,
|
|
147
|
+
{ ..._, [v]: a[v] }
|
|
148
|
+
], [
|
|
149
|
+
{},
|
|
150
|
+
{
|
|
151
|
+
...t ? { display: "inline" } : null,
|
|
152
|
+
...r
|
|
153
|
+
},
|
|
154
|
+
{}
|
|
155
|
+
]);
|
|
156
|
+
return /* @__PURE__ */ l.createElement("div", {
|
|
157
|
+
ref: o,
|
|
158
|
+
className: d(h(s), n),
|
|
159
|
+
style: c,
|
|
160
|
+
...i
|
|
161
|
+
}, e);
|
|
162
|
+
}
|
|
163
|
+
);
|
|
164
|
+
p.set(U, { name: "Box" });
|
|
165
|
+
var P = { root: "w9p2pg0", title: "w9p2pg1" };
|
|
166
|
+
function G({
|
|
167
|
+
className: e,
|
|
168
|
+
children: n,
|
|
169
|
+
...t
|
|
170
|
+
}) {
|
|
171
|
+
return /* @__PURE__ */ l.createElement("div", {
|
|
172
|
+
className: d(P.root, e),
|
|
173
|
+
...t
|
|
174
|
+
}, n);
|
|
175
|
+
}
|
|
176
|
+
p.set(G, { name: "CapContent" });
|
|
177
|
+
function Y({
|
|
178
|
+
className: e,
|
|
179
|
+
children: n,
|
|
180
|
+
...t
|
|
181
|
+
}) {
|
|
182
|
+
return /* @__PURE__ */ l.createElement("div", {
|
|
183
|
+
className: d(P.title, e),
|
|
184
|
+
...t
|
|
185
|
+
}, n);
|
|
186
|
+
}
|
|
187
|
+
p.set(Y, { name: "CapContentTitle" });
|
|
188
|
+
var J = "o0pwg0";
|
|
189
|
+
const K = l.forwardRef(
|
|
190
|
+
({
|
|
191
|
+
children: e,
|
|
192
|
+
className: n,
|
|
193
|
+
...t
|
|
194
|
+
}, r) => /* @__PURE__ */ l.createElement("div", {
|
|
195
|
+
ref: r,
|
|
196
|
+
className: d(J, n),
|
|
197
|
+
...t
|
|
198
|
+
}, e)
|
|
199
|
+
);
|
|
200
|
+
p.set(K, { name: "Content" });
|
|
201
|
+
var Q = b({ defaultClassName: "_6qnc0v53", variantClassNames: { iconName: { "angle-left": "_6qnc0v0", "angle-right": "_6qnc0v1", archive: "_6qnc0v2", "arrow-down": "_6qnc0v3", "arrow-left-circle": "_6qnc0v4", "arrow-left": "_6qnc0v5", "arrow-right": "_6qnc0v6", "arrow-up": "_6qnc0v7", asterisk: "_6qnc0v8", ban: "_6qnc0v9", barcode: "_6qnc0va", bell: "_6qnc0vb", bolt: "_6qnc0vc", book: "_6qnc0vd", building: "_6qnc0ve", "burst-bolt": "_6qnc0vf", burst: "_6qnc0vg", "calendar-blank": "_6qnc0vh", calendar: "_6qnc0vi", camera: "_6qnc0vj", "chart-area": "_6qnc0vk", "chart-bar": "_6qnc0vl", "chart-line": "_6qnc0vm", "chart-pie": "_6qnc0vn", checkmark: "_6qnc0vo", "chevron-down": "_6qnc0vp", "chevron-left": "_6qnc0vq", "chevron-right": "_6qnc0vr", "chevron-up": "_6qnc0vs", "circle-outline": "_6qnc0vt", clock: "_6qnc0vu", "code-fork": "_6qnc0vv", "comment-bubble-question": "_6qnc0vw", "comment-bubble": "_6qnc0vx", conversation: "_6qnc0vy", "column-switcher": "_6qnc0vz", "credit-card": "_6qnc0v10", dashboard: "_6qnc0v11", database: "_6qnc0v12", disk: "_6qnc0v13", "dollar-sign": "_6qnc0v14", "double-angle-left": "_6qnc0v15", "double-angle-right": "_6qnc0v16", "download-cloud": "_6qnc0v17", drill: "_6qnc0v18", duplicate: "_6qnc0v19", ellipses: "_6qnc0v1a", envelope: "_6qnc0v1b", exchange: "_6qnc0v1c", "expand-collapse": "_6qnc0v1d", eye: "_6qnc0v1e", "file-duplicate": "_6qnc0v1f", "file-pdf": "_6qnc0v1g", "file-presentation": "_6qnc0v1h", "file-size": "_6qnc0v1i", "file-solid-text": "_6qnc0v1j", "file-solid": "_6qnc0v1k", "file-spreadsheet": "_6qnc0v1l", "file-text": "_6qnc0v1m", file: "_6qnc0v1n", filter: "_6qnc0v1o", flag: "_6qnc0v1p", "folder-open": "_6qnc0v1q", "folder-solid-open": "_6qnc0v1r", "folder-solid": "_6qnc0v1s", folder: "_6qnc0v1t", gear: "_6qnc0v1u", globe: "_6qnc0v1v", grid: "_6qnc0v1w", group: "_6qnc0v1x", "hand-stop": "_6qnc0v1y", handshake: "_6qnc0v1z", hat: "_6qnc0v20", heart: "_6qnc0v21", history: "_6qnc0v22", inbox: "_6qnc0v23", incoming: "_6qnc0v24", "info-circle": "_6qnc0v25", intercom: "_6qnc0v26", "item-tag": "_6qnc0v27", key: "_6qnc0v28", "life-preserver": "_6qnc0v29", lightbulb: "_6qnc0v2a", link: "_6qnc0v2b", linkedin: "_6qnc0v2c", "list-cards": "_6qnc0v2d", "list-columns": "_6qnc0v2e", "list-summary": "_6qnc0v2f", "list-table": "_6qnc0v2g", list: "_6qnc0v2h", location: "_6qnc0v2i", locked: "_6qnc0v2j", "map-marker": "_6qnc0v2k", map: "_6qnc0v2l", maximize: "_6qnc0v2m", minimize: "_6qnc0v2n", "minus-circle": "_6qnc0v2o", minus: "_6qnc0v2p", "new-file": "_6qnc0v2q", "new-screen": "_6qnc0v2r", outgoing: "_6qnc0v2s", "paper-plane": "_6qnc0v2t", pencil: "_6qnc0v2u", photo: "_6qnc0v2v", pinterest: "_6qnc0v2w", play: "_6qnc0v2x", "plus-circle": "_6qnc0v2y", "plus-sign": "_6qnc0v2z", presentation: "_6qnc0v30", printer: "_6qnc0v31", "qr-code": "_6qnc0v32", "question-circle": "_6qnc0v33", "quote-left": "_6qnc0v34", "quote-right": "_6qnc0v35", random: "_6qnc0v36", refresh: "_6qnc0v37", rocket: "_6qnc0v38", "search-plus": "_6qnc0v39", search: "_6qnc0v3a", share: "_6qnc0v3b", "shopping-cart": "_6qnc0v3c", "sort-alpha-asc": "_6qnc0v3d", "sort-alpha-desc": "_6qnc0v3e", "sort-num-asc": "_6qnc0v3f", "sort-num-desc": "_6qnc0v3g", "star-outline": "_6qnc0v3h", star: "_6qnc0v3i", "archive-circle": "_6qnc0v3j", "x-circle": "_6qnc0v3k", "exclamation-circle": "_6qnc0v3l", "descending-ellipses-circle": "_6qnc0v3m", "double-angle-right-circle": "_6qnc0v3n", "locked-circle": "_6qnc0v3o", "asterisk-circle": "_6qnc0v3p", "checkmark-circle": "_6qnc0v3q", "clock-circle": "_6qnc0v3r", "calendar-blank-circle": "_6qnc0v3s", "ban-circle": "_6qnc0v3t", "disk-circle": "_6qnc0v3u", "template-circle": "_6qnc0v3v", "exclamation-triangle": "_6qnc0v3w", table: "_6qnc0v3x", tabs: "_6qnc0v3y", "thumbs-down-outline": "_6qnc0v3z", "thumbs-down": "_6qnc0v40", "thumbs-up-outline": "_6qnc0v41", "thumbs-up": "_6qnc0v42", trash: "_6qnc0v43", "truck-shipping": "_6qnc0v44", twitter: "_6qnc0v45", undo: "_6qnc0v46", unlocked: "_6qnc0v47", "upload-cloud": "_6qnc0v48", wrench: "_6qnc0v49", x: "_6qnc0v4a", "arrow-right-circle": "_6qnc0v4b", "calendar-select": "_6qnc0v4c", tag: "_6qnc0v4d", user: "_6qnc0v4e", "eye-slash": "_6qnc0v4f", "bell-filled": "_6qnc0v4g", "nested-list": "_6qnc0v4h", pin: "_6qnc0v4i", "user-impersonation": "_6qnc0v4j", "status-archived": "_6qnc0v4k", "status-cancelled": "_6qnc0v4l", "status-error": "_6qnc0v4m", "status-in-process": "_6qnc0v4n", "status-in-transit": "_6qnc0v4o", "status-locked": "_6qnc0v4p", "status-new": "_6qnc0v4q", "status-ok": "_6qnc0v4r", "status-on-hold": "_6qnc0v4s", "status-outdated": "_6qnc0v4t", "status-rejected": "_6qnc0v4u", "status-saved": "_6qnc0v4v", "status-saving": "_6qnc0v4w", "status-template": "_6qnc0v4x", "status-warning": "_6qnc0v4y" }, size: { xs: "_6qnc0v4z", sm: "_6qnc0v50", md: "_6qnc0v51", lg: "_6qnc0v52" } }, defaultVariants: { size: "md" }, compoundVariants: [] });
|
|
202
|
+
function X({
|
|
203
|
+
className: e,
|
|
204
|
+
color: n,
|
|
205
|
+
icon: t,
|
|
206
|
+
size: r = "md",
|
|
207
|
+
...a
|
|
208
|
+
}) {
|
|
209
|
+
return /* @__PURE__ */ l.createElement("i", {
|
|
210
|
+
className: d(
|
|
211
|
+
Q({ iconName: t, size: r }),
|
|
212
|
+
h({ color: n }),
|
|
213
|
+
e
|
|
214
|
+
),
|
|
215
|
+
"aria-hidden": "true",
|
|
216
|
+
...a
|
|
217
|
+
});
|
|
218
|
+
}
|
|
219
|
+
p.set(X, {
|
|
220
|
+
name: "Icon",
|
|
221
|
+
props: {
|
|
222
|
+
icon: { type: "IconName", required: !0 },
|
|
223
|
+
size: { type: "IconSize", default: '"md"' },
|
|
224
|
+
color: "Color"
|
|
225
|
+
}
|
|
226
|
+
});
|
|
227
|
+
const H = { advancedSearch: { clear: "Clear Fields", search: "Search" }, button: { spinningTitle: "Loading\u2026" }, columnChooser: { removeButton: "Remove {{elementName}}" }, contentRow: { collapse: "Collapse", expand: "Expand" }, datepicker: { calendar: { prevMonth: "View Previous Month", nextMonth: "View Next Month" }, preset: { custom: "Custom", today: "Today", sevenDays: "Last 7 days", thirtyDays: "Last 30 days", sixtyDays: "Last 60 days", ninetyDays: "Last 90 days", oneYear: "Last year" }, presetsLabel: "Ranges" }, fileUpload: { acceptedTypes: "{{fileTypes}} format accepted", acceptedTypes_plural: "{{fileTypes}} formats accepted", cancelled: "File Upload Failed", cancelled_plural: "File Upload(s) Failed", close: "Close", instructions: "Drag and drop your file here or |browse for a file| on your desktop.", instructions_plural: "Drag and drop your files here or |browse for files| on your desktop.", maximumSize: "{{size}} maximum", processing: "Processing Upload\u2026", title: "Upload Your {{description}}" }, filterPanel: { clear: "Clear Filters", title: "Filters", filterPlaceholder: "Filter options" }, focusedTask: { close: "Close" }, growler: { dismiss: "Dismiss" }, insightCard: { all: "ALL", partnerCount: "{{count}} |of| {{total}}", partners: "PARTNERS" }, insightTile: { all: "ALL", partnerCount: "{{count}} |of| {{total}}", partners: "PARTNERS" }, label: { errors: { dateConstraint: { max: "Please enter a date on or prior to {{context.maxExceeded}}.", min: "Please enter a date on or after {{context.minExceeded}}." }, dateFormat: "Please enter a date in the format {{context}}.", dateRangeOrder: "End date cannot be before start date.", dateValidity: "Please enter a valid date.", max: "Please enter a value no greater than {{context}}.", maxLength: "Please enter no more than {{context}} characters.", min: "Please enter a value no less than {{context}}.", minLength: "Please enter at least {{context}} characters.", required: "This field is required." }, preventativeErrors: { maxLength: "This field accepts a maximum number of characters.", alpha: "This field accepts only alphabetic values.", numeric: "This field accepts only numerical values.", nonNumeric: "This field accepts only non-numerical values." }, stronglySuggested: "This field is strongly suggested." }, listActionBar: { clearSelected: "Clear Selected", itemsSelected: "Items Selected" }, listToolbar: { advancedSearchToggle: "Advanced Search" }, modal: { close: "Close modal", defaultButtonLabel: "Okay", defaultTitle: { general: "Action", info: "Info", success: "Success", warning: "Warning", "serious-warning": "Warning" } }, pagination: { nextPage: "Next Page", ofMany: "of many", ofPageCount: "of {{pageCount}}", page: "Page", prevPage: "Previous Page" }, progressBar: { closeButtonTitle: "Close progress bar" }, searchResultsBar: { clear: "Clear", clearResults: "Clear Results", count: "{{count}} of {{total}}", matchingResults: "Matching results", noAdvancedSearchSelections: "No Advanced Search Selections", results: "Results:" }, select: { defaultPlaceholder: "Select one\u2026" }, slackLink: { label: "Chat" }, spinner: { defaultAltText: "Loading\u2026" }, taskQueue: { clearCompleted: "Clear Completed", newTask: "You have a new task in your queue.", noTasks: "There are currently no tasks in your queue." } }, Z = {
|
|
228
|
+
t(e, n) {
|
|
229
|
+
const t = O(H, e.replace(/^design-system:/, ""));
|
|
230
|
+
return n ? j(t)(n) : t;
|
|
231
|
+
}
|
|
232
|
+
}, $ = l.createContext(Z);
|
|
233
|
+
function ee(e) {
|
|
234
|
+
const n = e["data-testid"];
|
|
235
|
+
return k((t) => n ? { "data-testid": `${n}__${t}` } : {}, [n]);
|
|
236
|
+
}
|
|
237
|
+
var ne = b({ defaultClassName: "_9gd2pg2", variantClassNames: { size: { sm: "_9gd2pg3", md: "_9gd2pg4", lg: "_9gd2pg5" } }, defaultVariants: { size: "md" }, compoundVariants: [] }), te = "_9gd2pg1";
|
|
238
|
+
function E({
|
|
239
|
+
alt: e,
|
|
240
|
+
className: n,
|
|
241
|
+
size: t,
|
|
242
|
+
title: r,
|
|
243
|
+
...a
|
|
244
|
+
}) {
|
|
245
|
+
const { t: o } = l.useContext($), s = e || r || o("design-system:spinner.defaultAltText"), c = ee(a);
|
|
246
|
+
return /* @__PURE__ */ l.createElement("div", {
|
|
247
|
+
className: d(te, n),
|
|
248
|
+
...a
|
|
249
|
+
}, /* @__PURE__ */ l.createElement("i", {
|
|
250
|
+
className: ne({ size: t }),
|
|
251
|
+
...c("icon"),
|
|
252
|
+
title: s
|
|
253
|
+
}));
|
|
254
|
+
}
|
|
255
|
+
p.set(E, {
|
|
256
|
+
name: "Spinner",
|
|
257
|
+
props: {
|
|
258
|
+
alt: "string",
|
|
259
|
+
size: { type: '"sm" | "md" | "lg"', default: '"md"' },
|
|
260
|
+
title: "string"
|
|
261
|
+
}
|
|
262
|
+
});
|
|
263
|
+
var re = "_17ntd80";
|
|
264
|
+
function S({
|
|
265
|
+
className: e,
|
|
266
|
+
...n
|
|
267
|
+
}) {
|
|
268
|
+
return /* @__PURE__ */ l.createElement("div", {
|
|
269
|
+
className: d(re, e),
|
|
270
|
+
...n
|
|
271
|
+
});
|
|
272
|
+
}
|
|
273
|
+
function pe(e) {
|
|
274
|
+
return /* @__PURE__ */ l.createElement(S, {
|
|
275
|
+
...e
|
|
276
|
+
});
|
|
277
|
+
}
|
|
278
|
+
p.set(S, { name: "VerticalRule" });
|
|
279
|
+
function me(e, n) {
|
|
280
|
+
return g(e, {
|
|
281
|
+
className: d(e.props.className, n)
|
|
282
|
+
});
|
|
283
|
+
}
|
|
284
|
+
function _e(e, n) {
|
|
285
|
+
return g(e, n);
|
|
286
|
+
}
|
|
287
|
+
function qe(e, n, t = []) {
|
|
288
|
+
return l.useMemo(() => {
|
|
289
|
+
function r(a) {
|
|
290
|
+
return /* @__PURE__ */ l.createElement(e, {
|
|
291
|
+
...a,
|
|
292
|
+
...n
|
|
293
|
+
}, a.children);
|
|
294
|
+
}
|
|
295
|
+
return r;
|
|
296
|
+
}, t);
|
|
297
|
+
}
|
|
298
|
+
function fe(e) {
|
|
299
|
+
return typeof e == "function" ? e() : e;
|
|
300
|
+
}
|
|
301
|
+
function x(e, n, t = !0) {
|
|
302
|
+
if (Array.isArray(e))
|
|
303
|
+
return e.map((u) => x(u, n));
|
|
304
|
+
if (["boolean", "string"].includes(typeof e))
|
|
305
|
+
return e;
|
|
306
|
+
const r = e, a = r.props.hasOwnProperty("children") ? [].concat(r.props.children) : [], [o, s] = n(r, a), c = Array.isArray(s) ? s : a, i = t ? c.map((u) => x(u, n)) : c;
|
|
307
|
+
return g(r, o, ...i);
|
|
308
|
+
}
|
|
309
|
+
function ae(e, { type: n, props: t = {}, custom: r }) {
|
|
310
|
+
return r ? r(e.type) : e.type === n ? Object.keys(t).every((a) => t[a] === e.props[a]) : !1;
|
|
311
|
+
}
|
|
312
|
+
function he(e = [], n = []) {
|
|
313
|
+
const t = Array.isArray(e) ? z(e) : [e], r = n.map((o) => Array.isArray(o) ? o : [o]), a = new Array(r.length + 1).fill(null).map(() => []);
|
|
314
|
+
for (const o of t) {
|
|
315
|
+
let s = !1;
|
|
316
|
+
for (let c = 0; c < r.length; c += 1) {
|
|
317
|
+
for (const i of r[c])
|
|
318
|
+
if (s = ae(o, i), s) {
|
|
319
|
+
a[c].push(o);
|
|
320
|
+
break;
|
|
321
|
+
}
|
|
322
|
+
if (s)
|
|
323
|
+
break;
|
|
324
|
+
}
|
|
325
|
+
s || a[a.length - 1].push(o);
|
|
326
|
+
}
|
|
327
|
+
return a;
|
|
328
|
+
}
|
|
329
|
+
function ce(e, n) {
|
|
330
|
+
return { ...e, ...n };
|
|
331
|
+
}
|
|
332
|
+
function ge(e) {
|
|
333
|
+
return A(
|
|
334
|
+
ce,
|
|
335
|
+
e
|
|
336
|
+
);
|
|
337
|
+
}
|
|
338
|
+
const se = N(null);
|
|
339
|
+
function be(e, n = []) {
|
|
340
|
+
const t = T(se);
|
|
341
|
+
return R(
|
|
342
|
+
() => (r) => {
|
|
343
|
+
const o = t && t.parentElementRef && t.parentElementRef.current || document.body;
|
|
344
|
+
let s = null, c = o.lastElementChild;
|
|
345
|
+
for (; c !== o.firstElementChild; ) {
|
|
346
|
+
if (c && c.hasAttribute("data-portalid") && c.getAttribute("data-portalid") === e) {
|
|
347
|
+
s = c;
|
|
348
|
+
break;
|
|
349
|
+
}
|
|
350
|
+
c && (c = c.previousElementSibling);
|
|
351
|
+
}
|
|
352
|
+
if (s)
|
|
353
|
+
o.contains(s) || o.appendChild(s);
|
|
354
|
+
else {
|
|
355
|
+
s = document.createElement("div"), s.setAttribute("data-portalid", e);
|
|
356
|
+
for (const i of n)
|
|
357
|
+
s.classList.add(i);
|
|
358
|
+
o.appendChild(s);
|
|
359
|
+
}
|
|
360
|
+
return L(r, s);
|
|
361
|
+
},
|
|
362
|
+
[t]
|
|
363
|
+
);
|
|
364
|
+
}
|
|
365
|
+
var oe = /* @__PURE__ */ ((e) => (e.ASCENDING = "ascending", e.DESCENDING = "descending", e))(oe || {});
|
|
366
|
+
function ye(e) {
|
|
367
|
+
return e.hasOwnProperty("react");
|
|
368
|
+
}
|
|
369
|
+
function Ce(e) {
|
|
370
|
+
return e.hasOwnProperty("jsx");
|
|
371
|
+
}
|
|
372
|
+
const le = {
|
|
373
|
+
components: [E],
|
|
374
|
+
examples: {
|
|
375
|
+
basic: {
|
|
376
|
+
examples: {
|
|
377
|
+
small: {
|
|
378
|
+
react: q`
|
|
379
|
+
import { Spinner } from "@sps-woodland/core";
|
|
380
|
+
function Component() {
|
|
381
|
+
return (
|
|
382
|
+
<Spinner size="sm" title="Please wait…" />
|
|
383
|
+
);
|
|
384
|
+
}
|
|
385
|
+
`
|
|
386
|
+
},
|
|
387
|
+
medium: {
|
|
388
|
+
react: q`
|
|
389
|
+
import { Spinner } from "@sps-woodland/core";
|
|
390
|
+
function Component() {
|
|
391
|
+
return (
|
|
392
|
+
<>
|
|
393
|
+
<Spinner />
|
|
394
|
+
<Spinner size="md" title="Please wait…" />
|
|
395
|
+
</>
|
|
396
|
+
);
|
|
397
|
+
}
|
|
398
|
+
`
|
|
399
|
+
},
|
|
400
|
+
large: {
|
|
401
|
+
react: q`
|
|
402
|
+
import { Spinner } from "@sps-woodland/core";
|
|
403
|
+
function Component() {
|
|
404
|
+
return (
|
|
405
|
+
<Spinner size="lg" alt="Loading content…" />
|
|
406
|
+
);
|
|
407
|
+
}
|
|
408
|
+
`
|
|
409
|
+
}
|
|
410
|
+
}
|
|
411
|
+
}
|
|
412
|
+
}
|
|
413
|
+
}, xe = {
|
|
414
|
+
Spinner: le
|
|
415
|
+
};
|
|
416
|
+
export {
|
|
417
|
+
B as AppRoot,
|
|
418
|
+
U as Box,
|
|
419
|
+
G as CapContent,
|
|
420
|
+
Y as CapContentTitle,
|
|
421
|
+
K as Content,
|
|
422
|
+
$ as I18nContext,
|
|
423
|
+
X as Icon,
|
|
424
|
+
xe as MANIFEST,
|
|
425
|
+
p as Metadata,
|
|
426
|
+
se as PortalContext,
|
|
427
|
+
I as Provide,
|
|
428
|
+
oe as SortDirection,
|
|
429
|
+
E as Spinner,
|
|
430
|
+
S as VerticalRule,
|
|
431
|
+
pe as Vr,
|
|
432
|
+
me as addClassName,
|
|
433
|
+
_e as addProps,
|
|
434
|
+
qe as bindProps,
|
|
435
|
+
d as cl,
|
|
436
|
+
fe as contentOf,
|
|
437
|
+
ye as exampleIsReactComponentExample,
|
|
438
|
+
Ce as exampleIsReactJSXExample,
|
|
439
|
+
x as modChildren,
|
|
440
|
+
Z as noI18nI18n,
|
|
441
|
+
he as selectChildren,
|
|
442
|
+
ee as useChildTestIdAttrBuilder,
|
|
443
|
+
ge as usePatchReducer,
|
|
444
|
+
be as usePortal
|
|
445
|
+
};
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import type { FC } from "react";
|
|
2
|
+
export interface WoodlandComponentMetadata {
|
|
3
|
+
name: string;
|
|
4
|
+
props?: Record<string, string | {
|
|
5
|
+
type: string;
|
|
6
|
+
default?: string;
|
|
7
|
+
required?: boolean;
|
|
8
|
+
deprecated?: boolean;
|
|
9
|
+
}>;
|
|
10
|
+
}
|
|
11
|
+
declare const METADATA: unique symbol;
|
|
12
|
+
export declare type WoodlandComponent<Props> = FC<Props> & {
|
|
13
|
+
[METADATA]: WoodlandComponentMetadata;
|
|
14
|
+
};
|
|
15
|
+
export declare const Metadata: Readonly<{
|
|
16
|
+
isWoodlandComponent<T>(arg: unknown): arg is WoodlandComponent<T>;
|
|
17
|
+
get<T_1>(arg: WoodlandComponent<T_1>): WoodlandComponentMetadata;
|
|
18
|
+
set<T_2>(arg: FC<T_2>, metadata: WoodlandComponentMetadata): void;
|
|
19
|
+
}>;
|
|
20
|
+
export {};
|
package/lib/style.css
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
b{font-family:Source Sans Pro,sans-serif;font-weight:600}@font-face{font-family:Source Sans Pro;font-style:normal;font-weight:400;src:url(https://cdn.dev.spsc.io/web/framework/design-system/ds/7.0.0/assets/fonts/source-sans-pro-v9-latin-regular.woff2) format("woff2"),url(https://cdn.dev.spsc.io/web/framework/design-system/ds/7.0.0/assets/fonts/source-sans-pro-v9-latin-regular.woff) format("woff");font-display:fallback}@font-face{font-family:Source Sans Pro;font-style:italic;font-weight:400;src:url(https://cdn.dev.spsc.io/web/framework/design-system/ds/7.0.0/assets/fonts/source-sans-pro-v9-latin-italic.woff2) format("woff2"),url(https://cdn.dev.spsc.io/web/framework/design-system/ds/7.0.0/assets/fonts/source-sans-pro-v9-latin-italic.woff) format("woff");font-display:fallback}@font-face{font-family:Source Sans Pro;font-style:normal;font-weight:600;src:url(https://cdn.dev.spsc.io/web/framework/design-system/ds/7.0.0/assets/fonts/source-sans-pro-v9-latin-600.woff2) format("woff2"),url(https://cdn.dev.spsc.io/web/framework/design-system/ds/7.0.0/assets/fonts/source-sans-pro-v9-latin-600.woff) format("woff");font-display:fallback}@font-face{font-family:Source Sans Pro;font-style:italic;font-weight:600;src:url(https://cdn.dev.spsc.io/web/framework/design-system/ds/7.0.0/assets/fonts/source-sans-pro-v9-latin-600italic.woff2) format("woff2"),url(https://cdn.dev.spsc.io/web/framework/design-system/ds/7.0.0/assets/fonts/source-sans-pro-v9-latin-600italic.woff) format("woff");font-display:fallback}@font-face{font-family:Source Code Pro;font-style:normal;font-weight:400;src:url(https://cdn.dev.spsc.io/web/framework/design-system/ds/7.0.0/assets/fonts/source-code-pro-v6-latin-regular.woff2) format("woff2"),url(https://cdn.dev.spsc.io/web/framework/design-system/ds/7.0.0/assets/fonts/source-code-pro-v6-latin-regular.woff) format("woff");font-display:fallback}@font-face{font-family:Source Code Pro;font-style:italic;font-weight:400;src:url(https://cdn.dev.spsc.io/web/framework/design-system/ds/7.0.0/assets/fonts/source-code-pro-v6-latin-italic.woff2) format("woff2"),url(https://cdn.dev.spsc.io/web/framework/design-system/ds/7.0.0/assets/fonts/source-code-pro-v6-latin-italic.woff) format("woff");font-display:fallback}@font-face{font-family:Source Code Pro;font-style:normal;font-weight:600;src:url(https://cdn.dev.spsc.io/web/framework/design-system/ds/7.0.0/assets/fonts/source-code-pro-v6-latin-600.woff2) format("woff2"),url(https://cdn.dev.spsc.io/web/framework/design-system/ds/7.0.0/assets/fonts/source-code-pro-v6-latin-600.woff) format("woff");font-display:fallback}@font-face{font-family:Source Code Pro;font-style:italic;font-weight:600;src:url(https://cdn.dev.spsc.io/web/framework/design-system/ds/7.0.0/assets/fonts/source-code-pro-v6-latin-600italic.woff2) format("woff2"),url(https://cdn.dev.spsc.io/web/framework/design-system/ds/7.0.0/assets/fonts/source-code-pro-v6-latin-600italic.woff) format("woff");font-display:fallback}@font-face{font-family:SPS-Icons;font-style:normal;font-weight:400;src:url(https://cdn.dev.spsc.io/web/framework/design-system/ds/7.0.0/assets/fonts/icomoon-sps-icons.svg) format("svg"),url(https://cdn.dev.spsc.io/web/framework/design-system/ds/7.0.0/assets/fonts/icomoon-sps-icons.truetype) format("undefined"),url(https://cdn.dev.spsc.io/web/framework/design-system/ds/7.0.0/assets/fonts/icomoon-sps-icons.woff) format("woff"),url(https://cdn.dev.spsc.io/web/framework/design-system/ds/7.0.0/assets/fonts/icomoon-sps-icons.woff2) format("woff2");font-display:fallback}*{font-family:Source Sans Pro,sans-serif}.r5chkp0,.r5chkp1:hover{border-color:#fbe6ea}.r5chkp2:focus{border-color:#fbe6ea}.r5chkp3,.r5chkp4:hover{border-color:#de002e}.r5chkp5:focus{border-color:#de002e}.r5chkp6,.r5chkp7:hover{border-color:#a30d2d}.r5chkp8:focus{border-color:#a30d2d}.r5chkp9,.r5chkpa:hover{border-color:#f2f8fb}.r5chkpb:focus{border-color:#f2f8fb}.r5chkpc,.r5chkpd:hover{border-color:#e6f2f8}.r5chkpe:focus{border-color:#e6f2f8}.r5chkpf,.r5chkpg:hover{border-color:#007db8}.r5chkph:focus{border-color:#007db8}.r5chkpi,.r5chkpj:hover{border-color:#09638d}.r5chkpk:focus{border-color:#09638d}.r5chkpl,.r5chkpm:hover{border-color:#e7f3ec}.r5chkpn:focus{border-color:#e7f3ec}.r5chkpo,.r5chkpp:hover{border-color:#0b8940}.r5chkpq:focus{border-color:#0b8940}.r5chkpr,.r5chkps:hover{border-color:#106b39}.r5chkpt:focus{border-color:#106b39}.r5chkpu,.r5chkpv:hover{border-color:#f4ecf2}.r5chkpw:focus{border-color:#f4ecf2}.r5chkpx,.r5chkpy:hover{border-color:#e3d0de}.r5chkpz:focus{border-color:#e3d0de}.r5chkp10,.r5chkp11:hover{border-color:#91467f}.r5chkp12:focus{border-color:#91467f}.r5chkp13,.r5chkp14:hover{border-color:#6e3c65}.r5chkp15:focus{border-color:#6e3c65}.r5chkp16,.r5chkp17:hover{border-color:#fcf1e7}.r5chkp18:focus{border-color:#fcf1e7}.r5chkp19,.r5chkp1a:hover{border-color:#e7760b}.r5chkp1b:focus{border-color:#e7760b}.r5chkp1c,.r5chkp1d:hover{border-color:#aa5e14}.r5chkp1e:focus{border-color:#aa5e14}.r5chkp1f,.r5chkp1g:hover{border-color:#f3f4f4}.r5chkp1h:focus{border-color:#f3f4f4}.r5chkp1i,.r5chkp1j:hover{border-color:#e9e9ea}.r5chkp1k:focus{border-color:#e9e9ea}.r5chkp1l,.r5chkp1m:hover{border-color:#d2d4d4}.r5chkp1n:focus{border-color:#d2d4d4}.r5chkp1o,.r5chkp1p:hover{border-color:#717779}.r5chkp1q:focus{border-color:#717779}.r5chkp1r,.r5chkp1s:hover{border-color:#4b5356}.r5chkp1t:focus{border-color:#4b5356}.r5chkp1u,.r5chkp1v:hover{border-color:#1f282c}.r5chkp1w:focus{border-color:#1f282c}.r5chkp1x,.r5chkp1y:hover{border-color:#fff8e0}.r5chkp1z:focus{border-color:#fff8e0}.r5chkp20,.r5chkp21:hover{border-color:#fc0}.r5chkp22:focus{border-color:#fc0}.r5chkp23,.r5chkp24:hover{border-color:#fff}.r5chkp25:focus{border-color:#fff}.r5chkp26,.r5chkp27:hover{border-color:#000}.r5chkp28:focus{border-color:#000}.r5chkp29,.r5chkp2a:hover{border-color:#000}.r5chkp2b:focus{border-color:#000}.r5chkp2c,.r5chkp2d:hover{border-bottom-color:#fbe6ea}.r5chkp2e:focus{border-bottom-color:#fbe6ea}.r5chkp2f,.r5chkp2g:hover{border-bottom-color:#de002e}.r5chkp2h:focus{border-bottom-color:#de002e}.r5chkp2i,.r5chkp2j:hover{border-bottom-color:#a30d2d}.r5chkp2k:focus{border-bottom-color:#a30d2d}.r5chkp2l,.r5chkp2m:hover{border-bottom-color:#f2f8fb}.r5chkp2n:focus{border-bottom-color:#f2f8fb}.r5chkp2o,.r5chkp2p:hover{border-bottom-color:#e6f2f8}.r5chkp2q:focus{border-bottom-color:#e6f2f8}.r5chkp2r,.r5chkp2s:hover{border-bottom-color:#007db8}.r5chkp2t:focus{border-bottom-color:#007db8}.r5chkp2u,.r5chkp2v:hover{border-bottom-color:#09638d}.r5chkp2w:focus{border-bottom-color:#09638d}.r5chkp2x,.r5chkp2y:hover{border-bottom-color:#e7f3ec}.r5chkp2z:focus{border-bottom-color:#e7f3ec}.r5chkp30,.r5chkp31:hover{border-bottom-color:#0b8940}.r5chkp32:focus{border-bottom-color:#0b8940}.r5chkp33,.r5chkp34:hover{border-bottom-color:#106b39}.r5chkp35:focus{border-bottom-color:#106b39}.r5chkp36,.r5chkp37:hover{border-bottom-color:#f4ecf2}.r5chkp38:focus{border-bottom-color:#f4ecf2}.r5chkp39,.r5chkp3a:hover{border-bottom-color:#e3d0de}.r5chkp3b:focus{border-bottom-color:#e3d0de}.r5chkp3c,.r5chkp3d:hover{border-bottom-color:#91467f}.r5chkp3e:focus{border-bottom-color:#91467f}.r5chkp3f,.r5chkp3g:hover{border-bottom-color:#6e3c65}.r5chkp3h:focus{border-bottom-color:#6e3c65}.r5chkp3i,.r5chkp3j:hover{border-bottom-color:#fcf1e7}.r5chkp3k:focus{border-bottom-color:#fcf1e7}.r5chkp3l,.r5chkp3m:hover{border-bottom-color:#e7760b}.r5chkp3n:focus{border-bottom-color:#e7760b}.r5chkp3o,.r5chkp3p:hover{border-bottom-color:#aa5e14}.r5chkp3q:focus{border-bottom-color:#aa5e14}.r5chkp3r,.r5chkp3s:hover{border-bottom-color:#f3f4f4}.r5chkp3t:focus{border-bottom-color:#f3f4f4}.r5chkp3u,.r5chkp3v:hover{border-bottom-color:#e9e9ea}.r5chkp3w:focus{border-bottom-color:#e9e9ea}.r5chkp3x,.r5chkp3y:hover{border-bottom-color:#d2d4d4}.r5chkp3z:focus{border-bottom-color:#d2d4d4}.r5chkp40,.r5chkp41:hover{border-bottom-color:#717779}.r5chkp42:focus{border-bottom-color:#717779}.r5chkp43,.r5chkp44:hover{border-bottom-color:#4b5356}.r5chkp45:focus{border-bottom-color:#4b5356}.r5chkp46,.r5chkp47:hover{border-bottom-color:#1f282c}.r5chkp48:focus{border-bottom-color:#1f282c}.r5chkp49,.r5chkp4a:hover{border-bottom-color:#fff8e0}.r5chkp4b:focus{border-bottom-color:#fff8e0}.r5chkp4c,.r5chkp4d:hover{border-bottom-color:#fc0}.r5chkp4e:focus{border-bottom-color:#fc0}.r5chkp4f,.r5chkp4g:hover{border-bottom-color:#fff}.r5chkp4h:focus{border-bottom-color:#fff}.r5chkp4i,.r5chkp4j:hover{border-bottom-color:#000}.r5chkp4k:focus{border-bottom-color:#000}.r5chkp4l,.r5chkp4m:hover{border-bottom-color:#000}.r5chkp4n:focus{border-bottom-color:#000}.r5chkp4o,.r5chkp4p:hover{border-left-color:#fbe6ea}.r5chkp4q:focus{border-left-color:#fbe6ea}.r5chkp4r,.r5chkp4s:hover{border-left-color:#de002e}.r5chkp4t:focus{border-left-color:#de002e}.r5chkp4u,.r5chkp4v:hover{border-left-color:#a30d2d}.r5chkp4w:focus{border-left-color:#a30d2d}.r5chkp4x,.r5chkp4y:hover{border-left-color:#f2f8fb}.r5chkp4z:focus{border-left-color:#f2f8fb}.r5chkp50,.r5chkp51:hover{border-left-color:#e6f2f8}.r5chkp52:focus{border-left-color:#e6f2f8}.r5chkp53,.r5chkp54:hover{border-left-color:#007db8}.r5chkp55:focus{border-left-color:#007db8}.r5chkp56,.r5chkp57:hover{border-left-color:#09638d}.r5chkp58:focus{border-left-color:#09638d}.r5chkp59,.r5chkp5a:hover{border-left-color:#e7f3ec}.r5chkp5b:focus{border-left-color:#e7f3ec}.r5chkp5c,.r5chkp5d:hover{border-left-color:#0b8940}.r5chkp5e:focus{border-left-color:#0b8940}.r5chkp5f,.r5chkp5g:hover{border-left-color:#106b39}.r5chkp5h:focus{border-left-color:#106b39}.r5chkp5i,.r5chkp5j:hover{border-left-color:#f4ecf2}.r5chkp5k:focus{border-left-color:#f4ecf2}.r5chkp5l,.r5chkp5m:hover{border-left-color:#e3d0de}.r5chkp5n:focus{border-left-color:#e3d0de}.r5chkp5o,.r5chkp5p:hover{border-left-color:#91467f}.r5chkp5q:focus{border-left-color:#91467f}.r5chkp5r,.r5chkp5s:hover{border-left-color:#6e3c65}.r5chkp5t:focus{border-left-color:#6e3c65}.r5chkp5u,.r5chkp5v:hover{border-left-color:#fcf1e7}.r5chkp5w:focus{border-left-color:#fcf1e7}.r5chkp5x,.r5chkp5y:hover{border-left-color:#e7760b}.r5chkp5z:focus{border-left-color:#e7760b}.r5chkp60,.r5chkp61:hover{border-left-color:#aa5e14}.r5chkp62:focus{border-left-color:#aa5e14}.r5chkp63,.r5chkp64:hover{border-left-color:#f3f4f4}.r5chkp65:focus{border-left-color:#f3f4f4}.r5chkp66,.r5chkp67:hover{border-left-color:#e9e9ea}.r5chkp68:focus{border-left-color:#e9e9ea}.r5chkp69,.r5chkp6a:hover{border-left-color:#d2d4d4}.r5chkp6b:focus{border-left-color:#d2d4d4}.r5chkp6c,.r5chkp6d:hover{border-left-color:#717779}.r5chkp6e:focus{border-left-color:#717779}.r5chkp6f,.r5chkp6g:hover{border-left-color:#4b5356}.r5chkp6h:focus{border-left-color:#4b5356}.r5chkp6i,.r5chkp6j:hover{border-left-color:#1f282c}.r5chkp6k:focus{border-left-color:#1f282c}.r5chkp6l,.r5chkp6m:hover{border-left-color:#fff8e0}.r5chkp6n:focus{border-left-color:#fff8e0}.r5chkp6o,.r5chkp6p:hover{border-left-color:#fc0}.r5chkp6q:focus{border-left-color:#fc0}.r5chkp6r,.r5chkp6s:hover{border-left-color:#fff}.r5chkp6t:focus{border-left-color:#fff}.r5chkp6u,.r5chkp6v:hover{border-left-color:#000}.r5chkp6w:focus{border-left-color:#000}.r5chkp6x,.r5chkp6y:hover{border-left-color:#000}.r5chkp6z:focus{border-left-color:#000}.r5chkp70,.r5chkp71:hover{border-right-color:#fbe6ea}.r5chkp72:focus{border-right-color:#fbe6ea}.r5chkp73,.r5chkp74:hover{border-right-color:#de002e}.r5chkp75:focus{border-right-color:#de002e}.r5chkp76,.r5chkp77:hover{border-right-color:#a30d2d}.r5chkp78:focus{border-right-color:#a30d2d}.r5chkp79,.r5chkp7a:hover{border-right-color:#f2f8fb}.r5chkp7b:focus{border-right-color:#f2f8fb}.r5chkp7c,.r5chkp7d:hover{border-right-color:#e6f2f8}.r5chkp7e:focus{border-right-color:#e6f2f8}.r5chkp7f,.r5chkp7g:hover{border-right-color:#007db8}.r5chkp7h:focus{border-right-color:#007db8}.r5chkp7i,.r5chkp7j:hover{border-right-color:#09638d}.r5chkp7k:focus{border-right-color:#09638d}.r5chkp7l,.r5chkp7m:hover{border-right-color:#e7f3ec}.r5chkp7n:focus{border-right-color:#e7f3ec}.r5chkp7o,.r5chkp7p:hover{border-right-color:#0b8940}.r5chkp7q:focus{border-right-color:#0b8940}.r5chkp7r,.r5chkp7s:hover{border-right-color:#106b39}.r5chkp7t:focus{border-right-color:#106b39}.r5chkp7u,.r5chkp7v:hover{border-right-color:#f4ecf2}.r5chkp7w:focus{border-right-color:#f4ecf2}.r5chkp7x,.r5chkp7y:hover{border-right-color:#e3d0de}.r5chkp7z:focus{border-right-color:#e3d0de}.r5chkp80,.r5chkp81:hover{border-right-color:#91467f}.r5chkp82:focus{border-right-color:#91467f}.r5chkp83,.r5chkp84:hover{border-right-color:#6e3c65}.r5chkp85:focus{border-right-color:#6e3c65}.r5chkp86,.r5chkp87:hover{border-right-color:#fcf1e7}.r5chkp88:focus{border-right-color:#fcf1e7}.r5chkp89,.r5chkp8a:hover{border-right-color:#e7760b}.r5chkp8b:focus{border-right-color:#e7760b}.r5chkp8c,.r5chkp8d:hover{border-right-color:#aa5e14}.r5chkp8e:focus{border-right-color:#aa5e14}.r5chkp8f,.r5chkp8g:hover{border-right-color:#f3f4f4}.r5chkp8h:focus{border-right-color:#f3f4f4}.r5chkp8i,.r5chkp8j:hover{border-right-color:#e9e9ea}.r5chkp8k:focus{border-right-color:#e9e9ea}.r5chkp8l,.r5chkp8m:hover{border-right-color:#d2d4d4}.r5chkp8n:focus{border-right-color:#d2d4d4}.r5chkp8o,.r5chkp8p:hover{border-right-color:#717779}.r5chkp8q:focus{border-right-color:#717779}.r5chkp8r,.r5chkp8s:hover{border-right-color:#4b5356}.r5chkp8t:focus{border-right-color:#4b5356}.r5chkp8u,.r5chkp8v:hover{border-right-color:#1f282c}.r5chkp8w:focus{border-right-color:#1f282c}.r5chkp8x,.r5chkp8y:hover{border-right-color:#fff8e0}.r5chkp8z:focus{border-right-color:#fff8e0}.r5chkp90,.r5chkp91:hover{border-right-color:#fc0}.r5chkp92:focus{border-right-color:#fc0}.r5chkp93,.r5chkp94:hover{border-right-color:#fff}.r5chkp95:focus{border-right-color:#fff}.r5chkp96,.r5chkp97:hover{border-right-color:#000}.r5chkp98:focus{border-right-color:#000}.r5chkp99,.r5chkp9a:hover{border-right-color:#000}.r5chkp9b:focus{border-right-color:#000}.r5chkp9c,.r5chkp9d:hover{border-top-color:#fbe6ea}.r5chkp9e:focus{border-top-color:#fbe6ea}.r5chkp9f,.r5chkp9g:hover{border-top-color:#de002e}.r5chkp9h:focus{border-top-color:#de002e}.r5chkp9i,.r5chkp9j:hover{border-top-color:#a30d2d}.r5chkp9k:focus{border-top-color:#a30d2d}.r5chkp9l,.r5chkp9m:hover{border-top-color:#f2f8fb}.r5chkp9n:focus{border-top-color:#f2f8fb}.r5chkp9o,.r5chkp9p:hover{border-top-color:#e6f2f8}.r5chkp9q:focus{border-top-color:#e6f2f8}.r5chkp9r,.r5chkp9s:hover{border-top-color:#007db8}.r5chkp9t:focus{border-top-color:#007db8}.r5chkp9u,.r5chkp9v:hover{border-top-color:#09638d}.r5chkp9w:focus{border-top-color:#09638d}.r5chkp9x,.r5chkp9y:hover{border-top-color:#e7f3ec}.r5chkp9z:focus{border-top-color:#e7f3ec}.r5chkpa0,.r5chkpa1:hover{border-top-color:#0b8940}.r5chkpa2:focus{border-top-color:#0b8940}.r5chkpa3,.r5chkpa4:hover{border-top-color:#106b39}.r5chkpa5:focus{border-top-color:#106b39}.r5chkpa6,.r5chkpa7:hover{border-top-color:#f4ecf2}.r5chkpa8:focus{border-top-color:#f4ecf2}.r5chkpa9,.r5chkpaa:hover{border-top-color:#e3d0de}.r5chkpab:focus{border-top-color:#e3d0de}.r5chkpac,.r5chkpad:hover{border-top-color:#91467f}.r5chkpae:focus{border-top-color:#91467f}.r5chkpaf,.r5chkpag:hover{border-top-color:#6e3c65}.r5chkpah:focus{border-top-color:#6e3c65}.r5chkpai,.r5chkpaj:hover{border-top-color:#fcf1e7}.r5chkpak:focus{border-top-color:#fcf1e7}.r5chkpal,.r5chkpam:hover{border-top-color:#e7760b}.r5chkpan:focus{border-top-color:#e7760b}.r5chkpao,.r5chkpap:hover{border-top-color:#aa5e14}.r5chkpaq:focus{border-top-color:#aa5e14}.r5chkpar,.r5chkpas:hover{border-top-color:#f3f4f4}.r5chkpat:focus{border-top-color:#f3f4f4}.r5chkpau,.r5chkpav:hover{border-top-color:#e9e9ea}.r5chkpaw:focus{border-top-color:#e9e9ea}.r5chkpax,.r5chkpay:hover{border-top-color:#d2d4d4}.r5chkpaz:focus{border-top-color:#d2d4d4}.r5chkpb0,.r5chkpb1:hover{border-top-color:#717779}.r5chkpb2:focus{border-top-color:#717779}.r5chkpb3,.r5chkpb4:hover{border-top-color:#4b5356}.r5chkpb5:focus{border-top-color:#4b5356}.r5chkpb6,.r5chkpb7:hover{border-top-color:#1f282c}.r5chkpb8:focus{border-top-color:#1f282c}.r5chkpb9,.r5chkpba:hover{border-top-color:#fff8e0}.r5chkpbb:focus{border-top-color:#fff8e0}.r5chkpbc,.r5chkpbd:hover{border-top-color:#fc0}.r5chkpbe:focus{border-top-color:#fc0}.r5chkpbf,.r5chkpbg:hover{border-top-color:#fff}.r5chkpbh:focus{border-top-color:#fff}.r5chkpbi,.r5chkpbj:hover{border-top-color:#000}.r5chkpbk:focus{border-top-color:#000}.r5chkpbl,.r5chkpbm:hover{border-top-color:#000}.r5chkpbn:focus{border-top-color:#000}.r5chkpbo,.r5chkpbp:hover{border-radius:0}.r5chkpbq:focus{border-radius:0}.r5chkpbr,.r5chkpbs:hover{border-radius:.125rem}.r5chkpbt:focus{border-radius:.125rem}.r5chkpbu,.r5chkpbv:hover{border-radius:.25rem}.r5chkpbw:focus{border-radius:.25rem}.r5chkpbx,.r5chkpby:hover{border-width:0}.r5chkpbz:focus{border-width:0}.r5chkpc0,.r5chkpc1:hover{border-width:.0625rem}.r5chkpc2:focus{border-width:.0625rem}.r5chkpc3,.r5chkpc4:hover{border-top-width:0}.r5chkpc5:focus{border-top-width:0}.r5chkpc6,.r5chkpc7:hover{border-top-width:.0625rem}.r5chkpc8:focus{border-top-width:.0625rem}.r5chkpc9,.r5chkpca:hover{border-right-width:0}.r5chkpcb:focus{border-right-width:0}.r5chkpcc,.r5chkpcd:hover{border-right-width:.0625rem}.r5chkpce:focus{border-right-width:.0625rem}.r5chkpcf,.r5chkpcg:hover{border-bottom-width:0}.r5chkpch:focus{border-bottom-width:0}.r5chkpci,.r5chkpcj:hover{border-bottom-width:.0625rem}.r5chkpck:focus{border-bottom-width:.0625rem}.r5chkpcl,.r5chkpcm:hover{border-left-width:0}.r5chkpcn:focus{border-left-width:0}.r5chkpco,.r5chkpcp:hover{border-left-width:.0625rem}.r5chkpcq:focus{border-left-width:.0625rem}.r5chkpcr,.r5chkpcs:hover{border-top-left-radius:0}.r5chkpct:focus{border-top-left-radius:0}.r5chkpcu,.r5chkpcv:hover{border-top-left-radius:.125rem}.r5chkpcw:focus{border-top-left-radius:.125rem}.r5chkpcx,.r5chkpcy:hover{border-top-left-radius:.25rem}.r5chkpcz:focus{border-top-left-radius:.25rem}.r5chkpd0,.r5chkpd1:hover{border-top-right-radius:0}.r5chkpd2:focus{border-top-right-radius:0}.r5chkpd3,.r5chkpd4:hover{border-top-right-radius:.125rem}.r5chkpd5:focus{border-top-right-radius:.125rem}.r5chkpd6,.r5chkpd7:hover{border-top-right-radius:.25rem}.r5chkpd8:focus{border-top-right-radius:.25rem}.r5chkpd9,.r5chkpda:hover{border-bottom-right-radius:0}.r5chkpdb:focus{border-bottom-right-radius:0}.r5chkpdc,.r5chkpdd:hover{border-bottom-right-radius:.125rem}.r5chkpde:focus{border-bottom-right-radius:.125rem}.r5chkpdf,.r5chkpdg:hover{border-bottom-right-radius:.25rem}.r5chkpdh:focus{border-bottom-right-radius:.25rem}.r5chkpdi,.r5chkpdj:hover{border-bottom-left-radius:0}.r5chkpdk:focus{border-bottom-left-radius:0}.r5chkpdl,.r5chkpdm:hover{border-bottom-left-radius:.125rem}.r5chkpdn:focus{border-bottom-left-radius:.125rem}.r5chkpdo,.r5chkpdp:hover{border-bottom-left-radius:.25rem}.r5chkpdq:focus{border-bottom-left-radius:.25rem}._11lkjuc0,._11lkjuc1:hover{background-color:#fbe6ea}._11lkjuc2:focus{background-color:#fbe6ea}._11lkjuc3,._11lkjuc4:hover{background-color:#de002e}._11lkjuc5:focus{background-color:#de002e}._11lkjuc6,._11lkjuc7:hover{background-color:#a30d2d}._11lkjuc8:focus{background-color:#a30d2d}._11lkjuc9,._11lkjuca:hover{background-color:#f2f8fb}._11lkjucb:focus{background-color:#f2f8fb}._11lkjucc,._11lkjucd:hover{background-color:#e6f2f8}._11lkjuce:focus{background-color:#e6f2f8}._11lkjucf,._11lkjucg:hover{background-color:#007db8}._11lkjuch:focus{background-color:#007db8}._11lkjuci,._11lkjucj:hover{background-color:#09638d}._11lkjuck:focus{background-color:#09638d}._11lkjucl,._11lkjucm:hover{background-color:#e7f3ec}._11lkjucn:focus{background-color:#e7f3ec}._11lkjuco,._11lkjucp:hover{background-color:#0b8940}._11lkjucq:focus{background-color:#0b8940}._11lkjucr,._11lkjucs:hover{background-color:#106b39}._11lkjuct:focus{background-color:#106b39}._11lkjucu,._11lkjucv:hover{background-color:#f4ecf2}._11lkjucw:focus{background-color:#f4ecf2}._11lkjucx,._11lkjucy:hover{background-color:#e3d0de}._11lkjucz:focus{background-color:#e3d0de}._11lkjuc10,._11lkjuc11:hover{background-color:#91467f}._11lkjuc12:focus{background-color:#91467f}._11lkjuc13,._11lkjuc14:hover{background-color:#6e3c65}._11lkjuc15:focus{background-color:#6e3c65}._11lkjuc16,._11lkjuc17:hover{background-color:#fcf1e7}._11lkjuc18:focus{background-color:#fcf1e7}._11lkjuc19,._11lkjuc1a:hover{background-color:#e7760b}._11lkjuc1b:focus{background-color:#e7760b}._11lkjuc1c,._11lkjuc1d:hover{background-color:#aa5e14}._11lkjuc1e:focus{background-color:#aa5e14}._11lkjuc1f,._11lkjuc1g:hover{background-color:#f3f4f4}._11lkjuc1h:focus{background-color:#f3f4f4}._11lkjuc1i,._11lkjuc1j:hover{background-color:#e9e9ea}._11lkjuc1k:focus{background-color:#e9e9ea}._11lkjuc1l,._11lkjuc1m:hover{background-color:#d2d4d4}._11lkjuc1n:focus{background-color:#d2d4d4}._11lkjuc1o,._11lkjuc1p:hover{background-color:#717779}._11lkjuc1q:focus{background-color:#717779}._11lkjuc1r,._11lkjuc1s:hover{background-color:#4b5356}._11lkjuc1t:focus{background-color:#4b5356}._11lkjuc1u,._11lkjuc1v:hover{background-color:#1f282c}._11lkjuc1w:focus{background-color:#1f282c}._11lkjuc1x,._11lkjuc1y:hover{background-color:#fff8e0}._11lkjuc1z:focus{background-color:#fff8e0}._11lkjuc20,._11lkjuc21:hover{background-color:#fc0}._11lkjuc22:focus{background-color:#fc0}._11lkjuc23,._11lkjuc24:hover{background-color:#fff}._11lkjuc25:focus{background-color:#fff}._11lkjuc26,._11lkjuc27:hover{background-color:#000}._11lkjuc28:focus{background-color:#000}._11lkjuc29,._11lkjuc2a:hover{background-color:#000}._11lkjuc2b:focus{background-color:#000}._11lkjuc2c,._11lkjuc2d:hover{color:#fbe6ea}._11lkjuc2e:focus{color:#fbe6ea}._11lkjuc2f,._11lkjuc2g:hover{color:#de002e}._11lkjuc2h:focus{color:#de002e}._11lkjuc2i,._11lkjuc2j:hover{color:#a30d2d}._11lkjuc2k:focus{color:#a30d2d}._11lkjuc2l,._11lkjuc2m:hover{color:#f2f8fb}._11lkjuc2n:focus{color:#f2f8fb}._11lkjuc2o,._11lkjuc2p:hover{color:#e6f2f8}._11lkjuc2q:focus{color:#e6f2f8}._11lkjuc2r,._11lkjuc2s:hover{color:#007db8}._11lkjuc2t:focus{color:#007db8}._11lkjuc2u,._11lkjuc2v:hover{color:#09638d}._11lkjuc2w:focus{color:#09638d}._11lkjuc2x,._11lkjuc2y:hover{color:#e7f3ec}._11lkjuc2z:focus{color:#e7f3ec}._11lkjuc30,._11lkjuc31:hover{color:#0b8940}._11lkjuc32:focus{color:#0b8940}._11lkjuc33,._11lkjuc34:hover{color:#106b39}._11lkjuc35:focus{color:#106b39}._11lkjuc36,._11lkjuc37:hover{color:#f4ecf2}._11lkjuc38:focus{color:#f4ecf2}._11lkjuc39,._11lkjuc3a:hover{color:#e3d0de}._11lkjuc3b:focus{color:#e3d0de}._11lkjuc3c,._11lkjuc3d:hover{color:#91467f}._11lkjuc3e:focus{color:#91467f}._11lkjuc3f,._11lkjuc3g:hover{color:#6e3c65}._11lkjuc3h:focus{color:#6e3c65}._11lkjuc3i,._11lkjuc3j:hover{color:#fcf1e7}._11lkjuc3k:focus{color:#fcf1e7}._11lkjuc3l,._11lkjuc3m:hover{color:#e7760b}._11lkjuc3n:focus{color:#e7760b}._11lkjuc3o,._11lkjuc3p:hover{color:#aa5e14}._11lkjuc3q:focus{color:#aa5e14}._11lkjuc3r,._11lkjuc3s:hover{color:#f3f4f4}._11lkjuc3t:focus{color:#f3f4f4}._11lkjuc3u,._11lkjuc3v:hover{color:#e9e9ea}._11lkjuc3w:focus{color:#e9e9ea}._11lkjuc3x,._11lkjuc3y:hover{color:#d2d4d4}._11lkjuc3z:focus{color:#d2d4d4}._11lkjuc40,._11lkjuc41:hover{color:#717779}._11lkjuc42:focus{color:#717779}._11lkjuc43,._11lkjuc44:hover{color:#4b5356}._11lkjuc45:focus{color:#4b5356}._11lkjuc46,._11lkjuc47:hover{color:#1f282c}._11lkjuc48:focus{color:#1f282c}._11lkjuc49,._11lkjuc4a:hover{color:#fff8e0}._11lkjuc4b:focus{color:#fff8e0}._11lkjuc4c,._11lkjuc4d:hover{color:#fc0}._11lkjuc4e:focus{color:#fc0}._11lkjuc4f,._11lkjuc4g:hover{color:#fff}._11lkjuc4h:focus{color:#fff}._11lkjuc4i,._11lkjuc4j:hover{color:#000}._11lkjuc4k:focus{color:#000}._11lkjuc4l,._11lkjuc4m:hover{color:#000}._11lkjuc4n:focus{color:#000}.ztktm30{column-gap:.25rem}.ztktm31{column-gap:.5rem}.ztktm32{column-gap:1rem}.ztktm33{column-gap:2rem}.ztktm34{column-gap:0}.ztktm35{column-gap:auto}.ztktm36{row-gap:.25rem}.ztktm37{row-gap:.5rem}.ztktm38{row-gap:1rem}.ztktm39{row-gap:2rem}.ztktm3a{row-gap:0}.ztktm3b{row-gap:auto}._2obqyp0,._2obqyp1:first-child{margin-bottom:.25rem}._2obqyp2:not(:first-child){margin-bottom:.25rem}._2obqyp3:last-child{margin-bottom:.25rem}._2obqyp4:not(:last-child){margin-bottom:.25rem}._2obqyp5:not(:first-child):not(:last-child){margin-bottom:.25rem}._2obqyp6,._2obqyp7:first-child{margin-bottom:.5rem}._2obqyp8:not(:first-child){margin-bottom:.5rem}._2obqyp9:last-child{margin-bottom:.5rem}._2obqypa:not(:last-child){margin-bottom:.5rem}._2obqypb:not(:first-child):not(:last-child){margin-bottom:.5rem}._2obqypc,._2obqypd:first-child{margin-bottom:1rem}._2obqype:not(:first-child){margin-bottom:1rem}._2obqypf:last-child{margin-bottom:1rem}._2obqypg:not(:last-child){margin-bottom:1rem}._2obqyph:not(:first-child):not(:last-child){margin-bottom:1rem}._2obqypi,._2obqypj:first-child{margin-bottom:2rem}._2obqypk:not(:first-child){margin-bottom:2rem}._2obqypl:last-child{margin-bottom:2rem}._2obqypm:not(:last-child){margin-bottom:2rem}._2obqypn:not(:first-child):not(:last-child){margin-bottom:2rem}._2obqypo,._2obqypp:first-child{margin-bottom:0}._2obqypq:not(:first-child){margin-bottom:0}._2obqypr:last-child{margin-bottom:0}._2obqyps:not(:last-child){margin-bottom:0}._2obqypt:not(:first-child):not(:last-child){margin-bottom:0}._2obqypu,._2obqypv:first-child{margin-bottom:auto}._2obqypw:not(:first-child){margin-bottom:auto}._2obqypx:last-child{margin-bottom:auto}._2obqypy:not(:last-child){margin-bottom:auto}._2obqypz:not(:first-child):not(:last-child){margin-bottom:auto}._2obqyp10,._2obqyp11:first-child{margin-left:.25rem}._2obqyp12:not(:first-child){margin-left:.25rem}._2obqyp13:last-child{margin-left:.25rem}._2obqyp14:not(:last-child){margin-left:.25rem}._2obqyp15:not(:first-child):not(:last-child){margin-left:.25rem}._2obqyp16,._2obqyp17:first-child{margin-left:.5rem}._2obqyp18:not(:first-child){margin-left:.5rem}._2obqyp19:last-child{margin-left:.5rem}._2obqyp1a:not(:last-child){margin-left:.5rem}._2obqyp1b:not(:first-child):not(:last-child){margin-left:.5rem}._2obqyp1c,._2obqyp1d:first-child{margin-left:1rem}._2obqyp1e:not(:first-child){margin-left:1rem}._2obqyp1f:last-child{margin-left:1rem}._2obqyp1g:not(:last-child){margin-left:1rem}._2obqyp1h:not(:first-child):not(:last-child){margin-left:1rem}._2obqyp1i,._2obqyp1j:first-child{margin-left:2rem}._2obqyp1k:not(:first-child){margin-left:2rem}._2obqyp1l:last-child{margin-left:2rem}._2obqyp1m:not(:last-child){margin-left:2rem}._2obqyp1n:not(:first-child):not(:last-child){margin-left:2rem}._2obqyp1o,._2obqyp1p:first-child{margin-left:0}._2obqyp1q:not(:first-child){margin-left:0}._2obqyp1r:last-child{margin-left:0}._2obqyp1s:not(:last-child){margin-left:0}._2obqyp1t:not(:first-child):not(:last-child){margin-left:0}._2obqyp1u,._2obqyp1v:first-child{margin-left:auto}._2obqyp1w:not(:first-child){margin-left:auto}._2obqyp1x:last-child{margin-left:auto}._2obqyp1y:not(:last-child){margin-left:auto}._2obqyp1z:not(:first-child):not(:last-child){margin-left:auto}._2obqyp20,._2obqyp21:first-child{margin-right:.25rem}._2obqyp22:not(:first-child){margin-right:.25rem}._2obqyp23:last-child{margin-right:.25rem}._2obqyp24:not(:last-child){margin-right:.25rem}._2obqyp25:not(:first-child):not(:last-child){margin-right:.25rem}._2obqyp26,._2obqyp27:first-child{margin-right:.5rem}._2obqyp28:not(:first-child){margin-right:.5rem}._2obqyp29:last-child{margin-right:.5rem}._2obqyp2a:not(:last-child){margin-right:.5rem}._2obqyp2b:not(:first-child):not(:last-child){margin-right:.5rem}._2obqyp2c,._2obqyp2d:first-child{margin-right:1rem}._2obqyp2e:not(:first-child){margin-right:1rem}._2obqyp2f:last-child{margin-right:1rem}._2obqyp2g:not(:last-child){margin-right:1rem}._2obqyp2h:not(:first-child):not(:last-child){margin-right:1rem}._2obqyp2i,._2obqyp2j:first-child{margin-right:2rem}._2obqyp2k:not(:first-child){margin-right:2rem}._2obqyp2l:last-child{margin-right:2rem}._2obqyp2m:not(:last-child){margin-right:2rem}._2obqyp2n:not(:first-child):not(:last-child){margin-right:2rem}._2obqyp2o,._2obqyp2p:first-child{margin-right:0}._2obqyp2q:not(:first-child){margin-right:0}._2obqyp2r:last-child{margin-right:0}._2obqyp2s:not(:last-child){margin-right:0}._2obqyp2t:not(:first-child):not(:last-child){margin-right:0}._2obqyp2u,._2obqyp2v:first-child{margin-right:auto}._2obqyp2w:not(:first-child){margin-right:auto}._2obqyp2x:last-child{margin-right:auto}._2obqyp2y:not(:last-child){margin-right:auto}._2obqyp2z:not(:first-child):not(:last-child){margin-right:auto}._2obqyp30,._2obqyp31:first-child{margin-top:.25rem}._2obqyp32:not(:first-child){margin-top:.25rem}._2obqyp33:last-child{margin-top:.25rem}._2obqyp34:not(:last-child){margin-top:.25rem}._2obqyp35:not(:first-child):not(:last-child){margin-top:.25rem}._2obqyp36,._2obqyp37:first-child{margin-top:.5rem}._2obqyp38:not(:first-child){margin-top:.5rem}._2obqyp39:last-child{margin-top:.5rem}._2obqyp3a:not(:last-child){margin-top:.5rem}._2obqyp3b:not(:first-child):not(:last-child){margin-top:.5rem}._2obqyp3c,._2obqyp3d:first-child{margin-top:1rem}._2obqyp3e:not(:first-child){margin-top:1rem}._2obqyp3f:last-child{margin-top:1rem}._2obqyp3g:not(:last-child){margin-top:1rem}._2obqyp3h:not(:first-child):not(:last-child){margin-top:1rem}._2obqyp3i,._2obqyp3j:first-child{margin-top:2rem}._2obqyp3k:not(:first-child){margin-top:2rem}._2obqyp3l:last-child{margin-top:2rem}._2obqyp3m:not(:last-child){margin-top:2rem}._2obqyp3n:not(:first-child):not(:last-child){margin-top:2rem}._2obqyp3o,._2obqyp3p:first-child{margin-top:0}._2obqyp3q:not(:first-child){margin-top:0}._2obqyp3r:last-child{margin-top:0}._2obqyp3s:not(:last-child){margin-top:0}._2obqyp3t:not(:first-child):not(:last-child){margin-top:0}._2obqyp3u,._2obqyp3v:first-child{margin-top:auto}._2obqyp3w:not(:first-child){margin-top:auto}._2obqyp3x:last-child{margin-top:auto}._2obqyp3y:not(:last-child){margin-top:auto}._2obqyp3z:not(:first-child):not(:last-child){margin-top:auto}._180f0od0,._180f0od1:first-child{padding-bottom:.25rem}._180f0od2:not(:first-child){padding-bottom:.25rem}._180f0od3:last-child{padding-bottom:.25rem}._180f0od4:not(:last-child){padding-bottom:.25rem}._180f0od5:not(:first-child):not(:last-child){padding-bottom:.25rem}._180f0od6,._180f0od7:first-child{padding-bottom:.5rem}._180f0od8:not(:first-child){padding-bottom:.5rem}._180f0od9:last-child{padding-bottom:.5rem}._180f0oda:not(:last-child){padding-bottom:.5rem}._180f0odb:not(:first-child):not(:last-child){padding-bottom:.5rem}._180f0odc,._180f0odd:first-child{padding-bottom:1rem}._180f0ode:not(:first-child){padding-bottom:1rem}._180f0odf:last-child{padding-bottom:1rem}._180f0odg:not(:last-child){padding-bottom:1rem}._180f0odh:not(:first-child):not(:last-child){padding-bottom:1rem}._180f0odi,._180f0odj:first-child{padding-bottom:2rem}._180f0odk:not(:first-child){padding-bottom:2rem}._180f0odl:last-child{padding-bottom:2rem}._180f0odm:not(:last-child){padding-bottom:2rem}._180f0odn:not(:first-child):not(:last-child){padding-bottom:2rem}._180f0odo,._180f0odp:first-child{padding-bottom:0}._180f0odq:not(:first-child){padding-bottom:0}._180f0odr:last-child{padding-bottom:0}._180f0ods:not(:last-child){padding-bottom:0}._180f0odt:not(:first-child):not(:last-child){padding-bottom:0}._180f0odu,._180f0odv:first-child{padding-bottom:auto}._180f0odw:not(:first-child){padding-bottom:auto}._180f0odx:last-child{padding-bottom:auto}._180f0ody:not(:last-child){padding-bottom:auto}._180f0odz:not(:first-child):not(:last-child){padding-bottom:auto}._180f0od10,._180f0od11:first-child{padding-left:.25rem}._180f0od12:not(:first-child){padding-left:.25rem}._180f0od13:last-child{padding-left:.25rem}._180f0od14:not(:last-child){padding-left:.25rem}._180f0od15:not(:first-child):not(:last-child){padding-left:.25rem}._180f0od16,._180f0od17:first-child{padding-left:.5rem}._180f0od18:not(:first-child){padding-left:.5rem}._180f0od19:last-child{padding-left:.5rem}._180f0od1a:not(:last-child){padding-left:.5rem}._180f0od1b:not(:first-child):not(:last-child){padding-left:.5rem}._180f0od1c,._180f0od1d:first-child{padding-left:1rem}._180f0od1e:not(:first-child){padding-left:1rem}._180f0od1f:last-child{padding-left:1rem}._180f0od1g:not(:last-child){padding-left:1rem}._180f0od1h:not(:first-child):not(:last-child){padding-left:1rem}._180f0od1i,._180f0od1j:first-child{padding-left:2rem}._180f0od1k:not(:first-child){padding-left:2rem}._180f0od1l:last-child{padding-left:2rem}._180f0od1m:not(:last-child){padding-left:2rem}._180f0od1n:not(:first-child):not(:last-child){padding-left:2rem}._180f0od1o,._180f0od1p:first-child{padding-left:0}._180f0od1q:not(:first-child){padding-left:0}._180f0od1r:last-child{padding-left:0}._180f0od1s:not(:last-child){padding-left:0}._180f0od1t:not(:first-child):not(:last-child){padding-left:0}._180f0od1u,._180f0od1v:first-child{padding-left:auto}._180f0od1w:not(:first-child){padding-left:auto}._180f0od1x:last-child{padding-left:auto}._180f0od1y:not(:last-child){padding-left:auto}._180f0od1z:not(:first-child):not(:last-child){padding-left:auto}._180f0od20,._180f0od21:first-child{padding-right:.25rem}._180f0od22:not(:first-child){padding-right:.25rem}._180f0od23:last-child{padding-right:.25rem}._180f0od24:not(:last-child){padding-right:.25rem}._180f0od25:not(:first-child):not(:last-child){padding-right:.25rem}._180f0od26,._180f0od27:first-child{padding-right:.5rem}._180f0od28:not(:first-child){padding-right:.5rem}._180f0od29:last-child{padding-right:.5rem}._180f0od2a:not(:last-child){padding-right:.5rem}._180f0od2b:not(:first-child):not(:last-child){padding-right:.5rem}._180f0od2c,._180f0od2d:first-child{padding-right:1rem}._180f0od2e:not(:first-child){padding-right:1rem}._180f0od2f:last-child{padding-right:1rem}._180f0od2g:not(:last-child){padding-right:1rem}._180f0od2h:not(:first-child):not(:last-child){padding-right:1rem}._180f0od2i,._180f0od2j:first-child{padding-right:2rem}._180f0od2k:not(:first-child){padding-right:2rem}._180f0od2l:last-child{padding-right:2rem}._180f0od2m:not(:last-child){padding-right:2rem}._180f0od2n:not(:first-child):not(:last-child){padding-right:2rem}._180f0od2o,._180f0od2p:first-child{padding-right:0}._180f0od2q:not(:first-child){padding-right:0}._180f0od2r:last-child{padding-right:0}._180f0od2s:not(:last-child){padding-right:0}._180f0od2t:not(:first-child):not(:last-child){padding-right:0}._180f0od2u,._180f0od2v:first-child{padding-right:auto}._180f0od2w:not(:first-child){padding-right:auto}._180f0od2x:last-child{padding-right:auto}._180f0od2y:not(:last-child){padding-right:auto}._180f0od2z:not(:first-child):not(:last-child){padding-right:auto}._180f0od30,._180f0od31:first-child{padding-top:.25rem}._180f0od32:not(:first-child){padding-top:.25rem}._180f0od33:last-child{padding-top:.25rem}._180f0od34:not(:last-child){padding-top:.25rem}._180f0od35:not(:first-child):not(:last-child){padding-top:.25rem}._180f0od36,._180f0od37:first-child{padding-top:.5rem}._180f0od38:not(:first-child){padding-top:.5rem}._180f0od39:last-child{padding-top:.5rem}._180f0od3a:not(:last-child){padding-top:.5rem}._180f0od3b:not(:first-child):not(:last-child){padding-top:.5rem}._180f0od3c,._180f0od3d:first-child{padding-top:1rem}._180f0od3e:not(:first-child){padding-top:1rem}._180f0od3f:last-child{padding-top:1rem}._180f0od3g:not(:last-child){padding-top:1rem}._180f0od3h:not(:first-child):not(:last-child){padding-top:1rem}._180f0od3i,._180f0od3j:first-child{padding-top:2rem}._180f0od3k:not(:first-child){padding-top:2rem}._180f0od3l:last-child{padding-top:2rem}._180f0od3m:not(:last-child){padding-top:2rem}._180f0od3n:not(:first-child):not(:last-child){padding-top:2rem}._180f0od3o,._180f0od3p:first-child{padding-top:0}._180f0od3q:not(:first-child){padding-top:0}._180f0od3r:last-child{padding-top:0}._180f0od3s:not(:last-child){padding-top:0}._180f0od3t:not(:first-child):not(:last-child){padding-top:0}._180f0od3u,._180f0od3v:first-child{padding-top:auto}._180f0od3w:not(:first-child){padding-top:auto}._180f0od3x:last-child{padding-top:auto}._180f0od3y:not(:last-child){padding-top:auto}._180f0od3z:not(:first-child):not(:last-child){padding-top:auto}._1dkuq2z0{font-size:.75rem}._1dkuq2z1{font-size:.875rem}._1dkuq2z2{font-size:.75rem}._1dkuq2z3{font-size:1rem}._1dkuq2z4{font-size:1.125rem}._1dkuq2z5{font-size:1.25rem}._1dkuq2z6{font-size:1.5rem}._1dkuq2z7{font-weight:400}._1dkuq2z8{font-weight:600}._1dkuq2z9{line-height:1.125rem}._1dkuq2za{line-height:1.25rem}._1dkuq2zb{line-height:.875rem}._1dkuq2zc{line-height:1rem}._1dkuq2zd{line-height:1.125rem}._1dkuq2ze{line-height:1.25rem}._1dkuq2zf{line-height:1.5rem}._1gri89mw{border-style:solid}.mvou5q0{display:grid;gap:1rem;grid-template-columns:1fr 1fr 1fr 1fr 1fr 1fr 1fr 1fr 1fr 1fr 1fr 1fr}.mvou5q1{grid-column:span 1}.mvou5q2{grid-column:span 2}.mvou5q3{grid-column:span 3}.mvou5q4{grid-column:span 4}.mvou5q5{grid-column:span 5}.mvou5q6{grid-column:span 6}.mvou5q7{grid-column:span 7}.mvou5q8{grid-column:span 8}.mvou5q9{grid-column:span 9}.mvou5qa{grid-column:span 10}.mvou5qb{grid-column:span 11}.mvou5qc{grid-column:span 12}.g5vsg0{margin:3.75rem auto 3.125rem;max-width:77.5rem;min-width:0;padding:1.25rem}.g5vsg1{max-width:100%}.w9p2pg0{display:flex;font-size:.75rem;line-height:1.875rem;padding:.5rem}.w9p2pg1{align-items:center;display:flex;flex:1;padding-left:.5rem}.o0pwg0{height:100%;padding:1rem}.o0pwg0 p:last-child{margin-bottom:0}.o0pwg0>section{display:flex;flex-wrap:wrap;margin-top:0;margin-right:-1rem;margin-bottom:0;margin-left:-1rem;padding:1rem}.o0pwg0>section:first-child{margin-top:-1rem}.o0pwg0>section:last-child{margin-bottom:-1rem}.o0pwg0>section+section{border-top-style:solid;border-top-width:.0625rem;border-top-color:#d2d4d4}.o0pwg0>section>section{flex:1;margin-top:-1rem;margin-right:0;margin-bottom:-1rem;margin-left:0;padding:1rem}.o0pwg0>section>section:first-child{margin-left:-1rem}.o0pwg0>section>section:last-child{margin-right:-1rem}.o0pwg0>section>section+section{border-left-style:solid;border-left-width:.0625rem;border-left-color:#d2d4d4}._6qnc0v0:before{content:"\e900"}._6qnc0v1:before{content:"\e901"}._6qnc0v2:before{content:"\e902"}._6qnc0v3:before{content:"\e903"}._6qnc0v4:before{content:"\e904"}._6qnc0v5:before{content:"\e905"}._6qnc0v6:before{content:"\e906"}._6qnc0v7:before{content:"\e907"}._6qnc0v8:before{content:"\e908"}._6qnc0v9:before{content:"\e909"}._6qnc0va:before{content:"\e90a"}._6qnc0vb:before{content:"\e90b"}._6qnc0vc:before{content:"\e90c"}._6qnc0vd:before{content:"\e90d"}._6qnc0ve:before{content:"\e90e"}._6qnc0vf:before{content:"\e90f"}._6qnc0vg:before{content:"\e910"}._6qnc0vh:before{content:"\e911"}._6qnc0vi:before{content:"\e912"}._6qnc0vj:before{content:"\e913"}._6qnc0vk:before{content:"\e914"}._6qnc0vl:before{content:"\e915"}._6qnc0vm:before{content:"\e916"}._6qnc0vn:before{content:"\e917"}._6qnc0vo:before{content:"\e918"}._6qnc0vp:before{content:"\e919"}._6qnc0vq:before{content:"\e91a"}._6qnc0vr:before{content:"\e91b"}._6qnc0vs:before{content:"\e91c"}._6qnc0vt:before{content:"\e91d"}._6qnc0vu:before{content:"\e91e"}._6qnc0vv:before{content:"\e91f"}._6qnc0vw:before{content:"\e920"}._6qnc0vx:before{content:"\e921"}._6qnc0vy:before{content:"\e922"}._6qnc0vz:before{content:"\e923"}._6qnc0v10:before{content:"\e924"}._6qnc0v11:before{content:"\e925"}._6qnc0v12:before{content:"\e926"}._6qnc0v13:before{content:"\e927"}._6qnc0v14:before{content:"\e928"}._6qnc0v15:before{content:"\e929"}._6qnc0v16:before{content:"\e92a"}._6qnc0v17:before{content:"\e92b"}._6qnc0v18:before{content:"\e92c"}._6qnc0v19:before{content:"\e92d"}._6qnc0v1a:before{content:"\e92e"}._6qnc0v1b:before{content:"\e92f"}._6qnc0v1c:before{content:"\e930"}._6qnc0v1d:before{content:"\e931"}._6qnc0v1e:before{content:"\e932"}._6qnc0v1f:before{content:"\e933"}._6qnc0v1g:before{content:"\e934"}._6qnc0v1h:before{content:"\e935"}._6qnc0v1i:before{content:"\e936"}._6qnc0v1j:before{content:"\e937"}._6qnc0v1k:before{content:"\e938"}._6qnc0v1l:before{content:"\e939"}._6qnc0v1m:before{content:"\e93a"}._6qnc0v1n:before{content:"\e93b"}._6qnc0v1o:before{content:"\e93c"}._6qnc0v1p:before{content:"\e93d"}._6qnc0v1q:before{content:"\e93e"}._6qnc0v1r:before{content:"\e93f"}._6qnc0v1s:before{content:"\e940"}._6qnc0v1t:before{content:"\e941"}._6qnc0v1u:before{content:"\e942"}._6qnc0v1v:before{content:"\e943"}._6qnc0v1w:before{content:"\e944"}._6qnc0v1x:before{content:"\e945"}._6qnc0v1y:before{content:"\e946"}._6qnc0v1z:before{content:"\e947"}._6qnc0v20:before{content:"\e948"}._6qnc0v21:before{content:"\e949"}._6qnc0v22:before{content:"\e94a"}._6qnc0v23:before{content:"\e94b"}._6qnc0v24:before{content:"\e94c"}._6qnc0v25:before{content:"\e94d"}._6qnc0v26:before{content:"\e94e"}._6qnc0v27:before{content:"\e94f"}._6qnc0v28:before{content:"\e950"}._6qnc0v29:before{content:"\e951"}._6qnc0v2a:before{content:"\e952"}._6qnc0v2b:before{content:"\e953"}._6qnc0v2c:before{content:"\e954"}._6qnc0v2d:before{content:"\e955"}._6qnc0v2e:before{content:"\e956"}._6qnc0v2f:before{content:"\e957"}._6qnc0v2g:before{content:"\e958"}._6qnc0v2h:before{content:"\e959"}._6qnc0v2i:before{content:"\e95a"}._6qnc0v2j:before{content:"\e95b"}._6qnc0v2k:before{content:"\e95c"}._6qnc0v2l:before{content:"\e95d"}._6qnc0v2m:before{content:"\e95e"}._6qnc0v2n:before{content:"\e95f"}._6qnc0v2o:before{content:"\e960"}._6qnc0v2p:before{content:"\e961"}._6qnc0v2q:before{content:"\e962"}._6qnc0v2r:before{content:"\e963"}._6qnc0v2s:before{content:"\e964"}._6qnc0v2t:before{content:"\e965"}._6qnc0v2u:before{content:"\e966"}._6qnc0v2v:before{content:"\e967"}._6qnc0v2w:before{content:"\e968"}._6qnc0v2x:before{content:"\e969"}._6qnc0v2y:before{content:"\e96a"}._6qnc0v2z:before{content:"\e96b"}._6qnc0v30:before{content:"\e96c"}._6qnc0v31:before{content:"\e96d"}._6qnc0v32:before{content:"\e96e"}._6qnc0v33:before{content:"\e96f"}._6qnc0v34:before{content:"\e970"}._6qnc0v35:before{content:"\e971"}._6qnc0v36:before{content:"\e972"}._6qnc0v37:before{content:"\e973"}._6qnc0v38:before{content:"\e974"}._6qnc0v39:before{content:"\e975"}._6qnc0v3a:before{content:"\e976"}._6qnc0v3b:before{content:"\e977"}._6qnc0v3c:before{content:"\e978"}._6qnc0v3d:before{content:"\e979"}._6qnc0v3e:before{content:"\e97a"}._6qnc0v3f:before{content:"\e97b"}._6qnc0v3g:before{content:"\e97c"}._6qnc0v3h:before{content:"\e97d"}._6qnc0v3i:before{content:"\e97e"}._6qnc0v3j:before{content:"\e97f"}._6qnc0v3k:before{content:"\e980"}._6qnc0v3l:before{content:"\e981"}._6qnc0v3m:before{content:"\e982"}._6qnc0v3n:before{content:"\e983"}._6qnc0v3o:before{content:"\e984"}._6qnc0v3p:before{content:"\e985"}._6qnc0v3q:before{content:"\e986"}._6qnc0v3r:before{content:"\e987"}._6qnc0v3s:before{content:"\e988"}._6qnc0v3t:before{content:"\e989"}._6qnc0v3u:before{content:"\e98b"}._6qnc0v3v:before{content:"\e98c"}._6qnc0v3w:before{content:"\e98d"}._6qnc0v3x:before{content:"\e98e"}._6qnc0v3y:before{content:"\e98f"}._6qnc0v3z:before{content:"\e990"}._6qnc0v40:before{content:"\e991"}._6qnc0v41:before{content:"\e992"}._6qnc0v42:before{content:"\e993"}._6qnc0v43:before{content:"\e994"}._6qnc0v44:before{content:"\e995"}._6qnc0v45:before{content:"\e996"}._6qnc0v46:before{content:"\e997"}._6qnc0v47:before{content:"\e998"}._6qnc0v48:before{content:"\e999"}._6qnc0v49:before{content:"\e99a"}._6qnc0v4a:before{content:"\e99b"}._6qnc0v4b:before{content:"\e99c"}._6qnc0v4c:before{content:"\e99d"}._6qnc0v4d:before{content:"\e99e"}._6qnc0v4e:before{content:"\e99f"}._6qnc0v4f:before{content:"\e9a0"}._6qnc0v4g:before{content:"\e9a1"}._6qnc0v4h:before{content:"\e9a2"}._6qnc0v4i:before{content:"\e9a3"}._6qnc0v4j:before{content:"\e9a4"}._6qnc0v4k:before{content:"\e97f"}._6qnc0v4l:before{content:"\e980"}._6qnc0v4m:before{content:"\e981"}._6qnc0v4n:before{content:"\e982"}._6qnc0v4o:before{content:"\e983"}._6qnc0v4p:before{content:"\e984"}._6qnc0v4q:before{content:"\e985"}._6qnc0v4r:before{content:"\e986"}._6qnc0v4s:before{content:"\e987"}._6qnc0v4t:before{content:"\e988"}._6qnc0v4u:before{content:"\e989"}._6qnc0v4v:before{content:"\e98b"}._6qnc0v4w:before{content:"\e98b"}._6qnc0v4x:before{content:"\e98c"}._6qnc0v4y:before{content:"\e98d"}._6qnc0v4z{font-size:.75rem}._6qnc0v50{font-size:.875rem}._6qnc0v51{font-size:1rem}._6qnc0v52{font-size:1.25rem}._6qnc0v53{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;font-family:SPS-Icons;font-style:normal;font-variant:normal;font-weight:400;line-height:1;text-transform:none}@keyframes _9gd2pg0{0%{transform:rotate(0)}to{transform:rotate(360deg)}}._9gd2pg1{display:flex}._9gd2pg2{animation:_9gd2pg0 .75s infinite linear;border-radius:50%;border-style:solid;border-top-color:#91467f;border-right-color:#91467f;border-left-color:#91467f;border-bottom-color:#f4ecf2;margin:auto}._9gd2pg3{border-width:.125rem;height:1.125rem;width:1.125rem}._9gd2pg4{border-width:.25rem;height:2.25rem;width:2.25rem}._9gd2pg5{border-width:.5rem;height:4.5rem;width:4.5rem}@media (prefers-reduced-motion){._9gd2pg2{animation:none}}._17ntd80{background-color:#d2d4d4;display:inline-block;height:2rem;margin-left:.25rem;margin-right:.25rem;vertical-align:middle;width:.0625rem}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
export declare enum SortDirection {
|
|
2
|
+
ASCENDING = "ascending",
|
|
3
|
+
DESCENDING = "descending"
|
|
4
|
+
}
|
|
5
|
+
export interface SortedColumn {
|
|
6
|
+
key: string;
|
|
7
|
+
direction: SortDirection;
|
|
8
|
+
}
|
|
9
|
+
export declare type SortChangeHandler = (newSort: SortedColumn[]) => void;
|
|
10
|
+
export declare type ResizeState = Record<string, number>;
|
|
11
|
+
export declare type ResizeStateChangeHandler = (newResizeState: ResizeState) => void;
|
|
12
|
+
export declare type SpsTableCellWrapWidth = 200 | 300 | 400 | 500 | 600;
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import * as React from "react";
|
|
2
|
+
import type { ComponentProps } from "./ComponentProps";
|
|
3
|
+
/**
|
|
4
|
+
* This is the use case for Nested: wrapping JSX in a flat list of
|
|
5
|
+
* multiple React context providers instead of creating a pyramid of doom.
|
|
6
|
+
*
|
|
7
|
+
* bindProps (see bindProps.tsx in this same directory) was
|
|
8
|
+
* created to be used with this, so you can set props on the
|
|
9
|
+
* providers, including and especially `value` on the built-in
|
|
10
|
+
* context object's `.Provider` component.
|
|
11
|
+
*
|
|
12
|
+
* <Provide providers={[
|
|
13
|
+
* ProplessProviderFromALibrary,
|
|
14
|
+
* bindProps(MyReallyUsefulContext.Provider, { value: "foo" }),
|
|
15
|
+
* // ...etc
|
|
16
|
+
* ]}>
|
|
17
|
+
* (component tree that will have access to context from these providers)
|
|
18
|
+
* </Provide>
|
|
19
|
+
*/
|
|
20
|
+
export declare type ProvideProps = ComponentProps<{
|
|
21
|
+
providers?: React.ElementType[];
|
|
22
|
+
}, HTMLDivElement>;
|
|
23
|
+
export declare function Provide({ children, providers, ...rest }: ProvideProps): React.ReactElement;
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import type { ComplexStyleRule } from "@vanilla-extract/css";
|
|
2
|
+
export declare type RecipeVariant<T extends string> = {
|
|
3
|
+
[K in T]: ComplexStyleRule | string;
|
|
4
|
+
};
|
|
5
|
+
export declare type BooleanRecipeVariant = RecipeVariant<"true" | "false">;
|
|
6
|
+
export declare type VariantDefinitions = Record<string, RecipeVariant<any>>;
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
import * as React from "react";
|
|
2
|
+
/**
|
|
3
|
+
* takes in an ElementType (e.g. a React component) and
|
|
4
|
+
* returns a new version of that component where certain
|
|
5
|
+
* props are ALWAYS set to predefined values.
|
|
6
|
+
*
|
|
7
|
+
* for example, consider the following component:
|
|
8
|
+
* const Foo: React.FC<{
|
|
9
|
+
* a: string;
|
|
10
|
+
* b: string;
|
|
11
|
+
* }> = function ({ a, b }) {
|
|
12
|
+
* return (
|
|
13
|
+
* <span>
|
|
14
|
+
* a is {a} and b is {b}
|
|
15
|
+
* </span>
|
|
16
|
+
* );
|
|
17
|
+
* };
|
|
18
|
+
*
|
|
19
|
+
* <Foo a="dog" b="cat"/> would produce <span>a is dog and b is cat</span>
|
|
20
|
+
*
|
|
21
|
+
* But if you bind the prop a...
|
|
22
|
+
* const FooWithBoundA = bindProps(Foo, { a: "parakeet" });
|
|
23
|
+
*
|
|
24
|
+
* then <FooWithBoundA b="cat"/> will produce <span>a is parakeet and b is cat</span>
|
|
25
|
+
*
|
|
26
|
+
* The type of the props is the same, except that prop a is pre-set and so no
|
|
27
|
+
* longer something that can be passed in.
|
|
28
|
+
*
|
|
29
|
+
* This was created to be used with <Provide> (see Provide.tsx in this same directory),
|
|
30
|
+
* but may have other use cases.
|
|
31
|
+
*/
|
|
32
|
+
export declare type BoundFC<T extends React.ElementType, K extends Partial<React.ComponentProps<T>>> = React.FC<Omit<React.ComponentProps<T>, keyof K>>;
|
|
33
|
+
export declare function bindProps<T extends React.ElementType, K extends Partial<React.ComponentProps<T>>>(E: T, boundProps: K, deps?: unknown[]): BoundFC<T, K>;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare function cl(...args: unknown[]): string;
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import type { ReactNode, FunctionComponentElement } from "react";
|
|
2
|
+
declare type ElementModifier<P = any> = (node: FunctionComponentElement<P>, children: ReactNode[]) => [Partial<P>?, ReactNode[]?];
|
|
3
|
+
export declare function modChildren(node: ReactNode | ReactNode[], modifier: ElementModifier, recurse?: boolean): ReactNode;
|
|
4
|
+
export {};
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import type { ReactNode, ReactElement, FunctionComponentElement } from "react";
|
|
2
|
+
export interface ISelectChildrenGroup {
|
|
3
|
+
type?: any;
|
|
4
|
+
props?: Record<string, any>;
|
|
5
|
+
custom?: (child: any) => boolean;
|
|
6
|
+
}
|
|
7
|
+
export declare type Children<T extends (props: any, ...args: any[]) => ReactElement> = Array<FunctionComponentElement<Parameters<T>[0]>>;
|
|
8
|
+
export declare function selectChildren<T extends ReactNode[][]>(children?: any, groups?: Array<ISelectChildrenGroup | ISelectChildrenGroup[]>): T;
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import type { ReactNode, ReactPortal, RefObject } from "react";
|
|
2
|
+
export declare const PortalContext: import("react").Context<{
|
|
3
|
+
parentElementRef?: RefObject<HTMLElement | null> | undefined;
|
|
4
|
+
fixed?: boolean | undefined;
|
|
5
|
+
} | null>;
|
|
6
|
+
export declare function usePortal(id: string, classes?: string[]): (jsx: ReactNode) => ReactPortal;
|
package/package.json
ADDED
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "@sps-woodland/core",
|
|
3
|
+
"description": "SPS Woodland Design System core library code",
|
|
4
|
+
"version": "7.0.0",
|
|
5
|
+
"author": "SPS Commerce",
|
|
6
|
+
"license": "UNLICENSED",
|
|
7
|
+
"repository": "https://github.com/SPSCommerce/woodland/tree/main/packages/@sps-woodland/core",
|
|
8
|
+
"homepage": "https://github.com/SPSCommerce/woodland/tree/master/packages/@sps-woodland/core#readme",
|
|
9
|
+
"main": "./lib/index.es.js",
|
|
10
|
+
"module": "./lib/index.es.js",
|
|
11
|
+
"types": "./lib/index.d.ts",
|
|
12
|
+
"publishConfig": {
|
|
13
|
+
"access": "public"
|
|
14
|
+
},
|
|
15
|
+
"peerDependencies": {
|
|
16
|
+
"@spscommerce/utils": "^6.12.1",
|
|
17
|
+
"@sps-woodland/tokens": "7.0.0",
|
|
18
|
+
"react": "^16.9.0",
|
|
19
|
+
"react-dom": "^16.9.0"
|
|
20
|
+
},
|
|
21
|
+
"devDependencies": {
|
|
22
|
+
"@spscommerce/utils": "^6.12.1",
|
|
23
|
+
"@vanilla-extract/css": "^1.9.1",
|
|
24
|
+
"@vanilla-extract/recipes": "^0.2.5",
|
|
25
|
+
"@sps-woodland/tokens": "7.0.0",
|
|
26
|
+
"react": "^16.9.0",
|
|
27
|
+
"react-dom": "^16.9.0"
|
|
28
|
+
},
|
|
29
|
+
"dependencies": {
|
|
30
|
+
"nanoid": "^3.3.4"
|
|
31
|
+
},
|
|
32
|
+
"scripts": {
|
|
33
|
+
"build": "pnpm run build:js && pnpm run build:types",
|
|
34
|
+
"build:js": "vite build",
|
|
35
|
+
"build:types": "tsc --emitDeclarationOnly --declaration --declarationDir lib",
|
|
36
|
+
"watch": "vite build --watch",
|
|
37
|
+
"clean": "git clean -fdX",
|
|
38
|
+
"pub": "node ../../../scripts/publish-package.js"
|
|
39
|
+
}
|
|
40
|
+
}
|
package/vite.config.js
ADDED
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import path from "path";
|
|
2
|
+
import { vanillaExtractPlugin } from "@vanilla-extract/vite-plugin";
|
|
3
|
+
import { defineConfig } from "vite";
|
|
4
|
+
|
|
5
|
+
import pkg from "./package.json";
|
|
6
|
+
|
|
7
|
+
export default defineConfig({
|
|
8
|
+
plugins: [vanillaExtractPlugin()],
|
|
9
|
+
build: {
|
|
10
|
+
lib: {
|
|
11
|
+
entry: path.resolve(__dirname, "src/index.ts"),
|
|
12
|
+
formats: ["es", "cjs"],
|
|
13
|
+
fileName: (format) => `index.${format}.js`,
|
|
14
|
+
},
|
|
15
|
+
outDir: path.resolve(__dirname, "./lib"),
|
|
16
|
+
emptyOutDir: false,
|
|
17
|
+
rollupOptions: {
|
|
18
|
+
external: pkg.peerDependencies ? Object.keys(pkg.peerDependencies) : [],
|
|
19
|
+
},
|
|
20
|
+
},
|
|
21
|
+
});
|