@elliemae/ds-basic 3.57.0-next.8 → 3.57.0-rc.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 CHANGED
@@ -11,3 +11,13 @@ dimsum component that are still using `scss` files are either deprecated, soon t
11
11
  # What we think will be the future of ds-basic
12
12
 
13
13
  Once all the non-deprecated packages lose the `scss` styling dependency we will completely remove ds-basic from the library and ds-basic scss would be present only as a deprecated unsupported package hosting scss/css for deprecated/unsupported components.
14
+
15
+ ---
16
+
17
+ # 22/october/2025 - update
18
+
19
+ cleaned up the package, it has been a very very long time since we last needed to touch scss directly and we have kept around the gulp and postscss problematic dependencies without any value from them.
20
+
21
+ as of today we are keeping strictly the static-build files
22
+
23
+ on the off-chance that any change needs to be carried out, it will be carried out sin-compilation directly in the relevant files ad hoc
@@ -896,112 +896,112 @@
896
896
  ********************************************************************* */
897
897
  @font-face {
898
898
  font-family: 'proxima-nova';
899
- src: url('~@elliemae/ds-basic/styles/base/fonts/ProximaNovaThin.woff') format('woff');
899
+ src: url('./fonts/ProximaNovaThin.woff') format('woff');
900
900
  font-weight: 100;
901
901
  font-style: normal;
902
902
  }
903
903
 
904
904
  @font-face {
905
905
  font-family: 'proxima-nova';
906
- src: url('~@elliemae/ds-basic/styles/base/fonts/ProximaLight.woff') format('woff');
906
+ src: url('./fonts/ProximaLight.woff') format('woff');
907
907
  font-weight: 300;
908
908
  font-style: normal;
909
909
  }
910
910
 
911
911
  @font-face {
912
912
  font-family: 'proxima-nova';
913
- src: url('~@elliemae/ds-basic/styles/base/fonts/ProximaNovaRegular.woff') format('woff');
913
+ src: url('./fonts/ProximaNovaRegular.woff') format('woff');
914
914
  font-weight: normal;
915
915
  font-style: normal;
916
916
  }
917
917
 
918
918
  @font-face {
919
919
  font-family: 'proxima-nova';
920
- src: url('~@elliemae/ds-basic/styles/base/fonts/ProximaMedium.woff') format('woff');
920
+ src: url('./fonts/ProximaMedium.woff') format('woff');
921
921
  font-weight: 500;
922
922
  font-style: normal;
923
923
  }
924
924
 
925
925
  @font-face {
926
926
  font-family: 'proxima-nova';
927
- src: url('~@elliemae/ds-basic/styles/base/fonts/ProximaNovaSemibold.woff') format('woff');
927
+ src: url('./fonts/ProximaNovaSemibold.woff') format('woff');
928
928
  font-weight: 600;
929
929
  font-style: normal;
930
930
  }
931
931
 
932
932
  @font-face {
933
933
  font-family: 'proxima-nova';
934
- src: url('~@elliemae/ds-basic/styles/base/fonts/ProximaNovaBold.woff') format('woff');
934
+ src: url('./fonts/ProximaNovaBold.woff') format('woff');
935
935
  font-weight: bold;
936
936
  font-style: normal;
937
937
  }
938
938
 
939
939
  @font-face {
940
940
  font-family: 'proxima-nova';
941
- src: url('~@elliemae/ds-basic/styles/base/fonts/ProximaNovaExtrabold.woff') format('woff');
941
+ src: url('./fonts/ProximaNovaExtrabold.woff') format('woff');
942
942
  font-weight: 800;
943
943
  font-style: normal;
944
944
  }
945
945
 
946
946
  @font-face {
947
947
  font-family: 'proxima-nova';
948
- src: url('~@elliemae/ds-basic/styles/base/fonts/ProximaNovaBlack.woff') format('woff');
948
+ src: url('./fonts/ProximaNovaBlack.woff') format('woff');
949
949
  font-weight: 900;
950
950
  font-style: normal;
951
951
  }
952
952
 
953
953
  @font-face {
954
954
  font-family: 'proxima-nova';
955
- src: url('~@elliemae/ds-basic/styles/base/fonts/ProximaNovaThinItalic.woff') format('woff');
955
+ src: url('./fonts/ProximaNovaThinItalic.woff') format('woff');
956
956
  font-weight: 100;
957
957
  font-style: italic;
958
958
  }
959
959
 
960
960
  @font-face {
961
961
  font-family: 'proxima-nova';
962
- src: url('~@elliemae/ds-basic/styles/base/fonts/ProximaLightItalic.woff') format('woff');
962
+ src: url('./fonts/ProximaLightItalic.woff') format('woff');
963
963
  font-weight: 300;
964
964
  font-style: italic;
965
965
  }
966
966
 
967
967
  @font-face {
968
968
  font-family: 'proxima-nova';
969
- src: url('~@elliemae/ds-basic/styles/base/fonts/ProximaNovaRegularItalic.woff') format('woff');
969
+ src: url('./fonts/ProximaNovaRegularItalic.woff') format('woff');
970
970
  font-weight: normal;
971
971
  font-style: italic;
972
972
  }
973
973
 
974
974
  @font-face {
975
975
  font-family: 'proxima-nova';
976
- src: url('~@elliemae/ds-basic/styles/base/fonts/ProximaMediumItalic.woff') format('woff');
976
+ src: url('./fonts/ProximaMediumItalic.woff') format('woff');
977
977
  font-weight: 500;
978
978
  font-style: italic;
979
979
  }
980
980
 
981
981
  @font-face {
982
982
  font-family: 'proxima-nova';
983
- src: url('~@elliemae/ds-basic/styles/base/fonts/ProximaNovaSemiboldItalic.woff') format('woff');
983
+ src: url('./fonts/ProximaNovaSemiboldItalic.woff') format('woff');
984
984
  font-weight: 600;
985
985
  font-style: italic;
986
986
  }
987
987
 
988
988
  @font-face {
989
989
  font-family: 'proxima-nova';
990
- src: url('~@elliemae/ds-basic/styles/base/fonts/ProximaNovaBoldItalic.woff') format('woff');
990
+ src: url('./fonts/ProximaNovaBoldItalic.woff') format('woff');
991
991
  font-weight: bold;
992
992
  font-style: italic;
993
993
  }
994
994
 
995
995
  @font-face {
996
996
  font-family: 'proxima-nova';
997
- src: url('~@elliemae/ds-basic/styles/base/fonts/ProximaNovaExtraboldItalic.woff') format('woff');
997
+ src: url('./fonts/ProximaNovaExtraboldItalic.woff') format('woff');
998
998
  font-weight: 800;
999
999
  font-style: italic;
1000
1000
  }
1001
1001
 
1002
1002
  @font-face {
1003
1003
  font-family: 'proxima-nova';
1004
- src: url('~@elliemae/ds-basic/styles/base/fonts/ProximaNovaBlackItalic.woff') format('woff');
1004
+ src: url('./fonts/ProximaNovaBlackItalic.woff') format('woff');
1005
1005
  font-weight: 900;
1006
1006
  font-style: italic;
1007
1007
  }
@@ -768,97 +768,97 @@
768
768
  font-family: proxima-nova;
769
769
  font-style: normal;
770
770
  font-weight: 100;
771
- src: url(~@elliemae/ds-basic/styles/base/fonts/ProximaNovaThin.woff) format('woff');
771
+ src: url(./fonts/ProximaNovaThin.woff) format('woff');
772
772
  }
773
773
  @font-face {
774
774
  font-family: proxima-nova;
775
775
  font-style: normal;
776
776
  font-weight: 300;
777
- src: url(~@elliemae/ds-basic/styles/base/fonts/ProximaLight.woff) format('woff');
777
+ src: url(./fonts/ProximaLight.woff) format('woff');
778
778
  }
779
779
  @font-face {
780
780
  font-family: proxima-nova;
781
781
  font-style: normal;
782
782
  font-weight: 400;
783
- src: url(~@elliemae/ds-basic/styles/base/fonts/ProximaNovaRegular.woff) format('woff');
783
+ src: url(./fonts/ProximaNovaRegular.woff) format('woff');
784
784
  }
785
785
  @font-face {
786
786
  font-family: proxima-nova;
787
787
  font-style: normal;
788
788
  font-weight: 500;
789
- src: url(~@elliemae/ds-basic/styles/base/fonts/ProximaMedium.woff) format('woff');
789
+ src: url(./fonts/ProximaMedium.woff) format('woff');
790
790
  }
791
791
  @font-face {
792
792
  font-family: proxima-nova;
793
793
  font-style: normal;
794
794
  font-weight: 600;
795
- src: url(~@elliemae/ds-basic/styles/base/fonts/ProximaNovaSemibold.woff) format('woff');
795
+ src: url(./fonts/ProximaNovaSemibold.woff) format('woff');
796
796
  }
797
797
  @font-face {
798
798
  font-family: proxima-nova;
799
799
  font-style: normal;
800
800
  font-weight: 700;
801
- src: url(~@elliemae/ds-basic/styles/base/fonts/ProximaNovaBold.woff) format('woff');
801
+ src: url(./fonts/ProximaNovaBold.woff) format('woff');
802
802
  }
803
803
  @font-face {
804
804
  font-family: proxima-nova;
805
805
  font-style: normal;
806
806
  font-weight: 800;
807
- src: url(~@elliemae/ds-basic/styles/base/fonts/ProximaNovaExtrabold.woff) format('woff');
807
+ src: url(./fonts/ProximaNovaExtrabold.woff) format('woff');
808
808
  }
809
809
  @font-face {
810
810
  font-family: proxima-nova;
811
811
  font-style: normal;
812
812
  font-weight: 900;
813
- src: url(~@elliemae/ds-basic/styles/base/fonts/ProximaNovaBlack.woff) format('woff');
813
+ src: url(./fonts/ProximaNovaBlack.woff) format('woff');
814
814
  }
815
815
  @font-face {
816
816
  font-family: proxima-nova;
817
817
  font-style: italic;
818
818
  font-weight: 100;
819
- src: url(~@elliemae/ds-basic/styles/base/fonts/ProximaNovaThinItalic.woff) format('woff');
819
+ src: url(./fonts/ProximaNovaThinItalic.woff) format('woff');
820
820
  }
821
821
  @font-face {
822
822
  font-family: proxima-nova;
823
823
  font-style: italic;
824
824
  font-weight: 300;
825
- src: url(~@elliemae/ds-basic/styles/base/fonts/ProximaLightItalic.woff) format('woff');
825
+ src: url(./fonts/ProximaLightItalic.woff) format('woff');
826
826
  }
827
827
  @font-face {
828
828
  font-family: proxima-nova;
829
829
  font-style: italic;
830
830
  font-weight: 400;
831
- src: url(~@elliemae/ds-basic/styles/base/fonts/ProximaNovaRegularItalic.woff) format('woff');
831
+ src: url(./fonts/ProximaNovaRegularItalic.woff) format('woff');
832
832
  }
833
833
  @font-face {
834
834
  font-family: proxima-nova;
835
835
  font-style: italic;
836
836
  font-weight: 500;
837
- src: url(~@elliemae/ds-basic/styles/base/fonts/ProximaMediumItalic.woff) format('woff');
837
+ src: url(./fonts/ProximaMediumItalic.woff) format('woff');
838
838
  }
839
839
  @font-face {
840
840
  font-family: proxima-nova;
841
841
  font-style: italic;
842
842
  font-weight: 600;
843
- src: url(~@elliemae/ds-basic/styles/base/fonts/ProximaNovaSemiboldItalic.woff) format('woff');
843
+ src: url(./fonts/ProximaNovaSemiboldItalic.woff) format('woff');
844
844
  }
845
845
  @font-face {
846
846
  font-family: proxima-nova;
847
847
  font-style: italic;
848
848
  font-weight: 700;
849
- src: url(~@elliemae/ds-basic/styles/base/fonts/ProximaNovaBoldItalic.woff) format('woff');
849
+ src: url(./fonts/ProximaNovaBoldItalic.woff) format('woff');
850
850
  }
851
851
  @font-face {
852
852
  font-family: proxima-nova;
853
853
  font-style: italic;
854
854
  font-weight: 800;
855
- src: url(~@elliemae/ds-basic/styles/base/fonts/ProximaNovaExtraboldItalic.woff) format('woff');
855
+ src: url(./fonts/ProximaNovaExtraboldItalic.woff) format('woff');
856
856
  }
857
857
  @font-face {
858
858
  font-family: proxima-nova;
859
859
  font-style: italic;
860
860
  font-weight: 900;
861
- src: url(~@elliemae/ds-basic/styles/base/fonts/ProximaNovaBlackItalic.woff) format('woff');
861
+ src: url(./fonts/ProximaNovaBlackItalic.woff) format('woff');
862
862
  }
863
863
  html {
864
864
  -webkit-text-size-adjust: 100%;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@elliemae/ds-basic",
3
- "version": "3.57.0-next.8",
3
+ "version": "3.57.0-rc.0",
4
4
  "license": "MIT",
5
5
  "description": "EllieMae UI Design System Library",
6
6
  "files": [
@@ -32,37 +32,18 @@
32
32
  "reportFile": "tests.xml",
33
33
  "indent": 4
34
34
  },
35
- "devDependencies": {
36
- "@elliemae/pui-cli": "9.0.0-next.65",
37
- "cssnano": "~5.1.15",
38
- "gulp": "~4.0.2",
39
- "gulp-rename": "~2.0.0",
40
- "jest": "~29.7.0",
41
- "postcss": "^8.4.38",
42
- "postcss-cli": "~9.1.0",
43
- "postcss-focus-within": "~5.0.4",
44
- "postcss-styled": "~0.34.0",
45
- "postcss-syntax": "~0.36.2",
46
- "@elliemae/ds-monorepo-devops": "3.57.0-next.8"
47
- },
48
- "peerDependencies": {
49
- "lodash-es": "^4.17.21",
50
- "react": "^18.3.1",
51
- "react-dom": "^18.3.1"
35
+ "scripts": {
36
+ "test:e2e": "echo 'ds-basic only expose prebuilt styles, nothing to test' && exit 0",
37
+ "test:reports": "echo 'ds-basic only expose prebuilt styles, nothing to test' && exit 0",
38
+ "compile:scss": "echo 'officially dropping scss compile step in favor of static built files ad hoc' && exit 0",
39
+ "build:css": "echo 'officially dropping css build step in favor of static built files ad hoc' && exit 0",
40
+ "prebuild": "exit 0",
41
+ "build": "node ./copyPrebuiltFilesInDist.mjs",
42
+ "dev": "exit 0"
52
43
  },
53
44
  "publishConfig": {
54
45
  "access": "public",
55
46
  "typeSafety": false
56
47
  },
57
- "scripts": {
58
- "test:e2e": "../../../node_modules//node_modules/.bin/wdio run ../../../wdio.conf.js",
59
- "test:reports": "../../../node_modules/pui-e2e-test-sdk/node_modules/.bin/allure open",
60
- "compile:scss": "node-sass ./styles/dimsum.scss ./dist/css/dimsum.css",
61
- "prebuild:css": "gulp copySCSSFiles && pnpm run compile:scss",
62
- "build:css": "postcss ./dist/css/dimsum.css -u autoprefixer -b \"> 0.5% in US, not ie 11, not dead\" -r --no-map && postcss ./dist/css/dimsum.css -m -u cssnano -o ./dist/css/dimsum.min.css",
63
- "prebuild": "exit 0",
64
- "build": "node ./copyPrebuiltFilesInDist.mjs",
65
- "dev": "exit 0",
66
- "checkDeps": "npm exec ../../util/ds-codemods -- check-missing-packages --projectFolderPath=\"./\" --ignorePackagesGlobPattern=\"\" --ignoreFilesGlobPattern=\"**/test-ables/*,**/tests/*\""
67
- }
68
- }
48
+ "gitHead": "7e95aacd3d36427e4659f360714c3e0bbc4378bc"
49
+ }
@@ -1 +0,0 @@
1
- # Get Started
@@ -1,47 +0,0 @@
1
- # Color
2
-
3
- Dimsum groups color into 3 types; Brand, Neutral, and Feedback Colors.
4
-
5
- - Brand Colors: These establish the personality of the brand. They should be used for accent elements such as primary buttons, CTA's and links.
6
- - Neutral Colors: These are used for things like text, borders, shadows, background colors, etc.
7
- - Feedback Colors: These are used to communicate status to the user and provide them with feedback.
8
-
9
- A color palette is all of these colors put together. DimSum offers a default palette that contains all of these types of colors.
10
-
11
- ## Color System
12
- Color follows a predictable scale driven by type and a range. Each heu or color has a Base `(400)` and from this base, we extract shades and tints of that heu. Each variation of this color is given a three-digit rage number. This provides a predictable color scale of "allowed" colors in the system; the higher a number is, the darker the color.
13
-
14
- ## Usage
15
- We make use of Sass Functions to extract colors from each type in a consistent way.
16
-
17
- #### `color($type, $range)`
18
-
19
- Applies a color from our palette to a CSS property. `$type` refers to the type of color you would like to use (`brand`, `neutral`, `feedback`). `$range` refers to the scale or how dark you would like to color to be. If `$range` is not specified, the color will default to the base color for that type.
20
-
21
- ```sass
22
- .div-container {
23
- background-color: color(brand-primary, 700); // returns a hex value for that type of color and its range
24
- }
25
- ```
26
-
27
- #### `color-contrast($background-color, $dark-color: color(neutral, 900), $light-color: color(neutral, 000))`
28
-
29
- Applies a color from our palette to a CSS property based on a given background color in accordance with accessibility standards. `$background-color` refers to the background color in which the foreground color is going to sit. `$dark-color` (Optional) refers to the dark color you wish to display if there is enough contrast. `$light-color` (Optional) refers to the light color you wish to display if there is enough contrast. If neither `$dark-color` or $light-color` are specified, the colors will default to `color(neutral, 900)` and `color(neutral, 000)` respectively.
30
-
31
- ```sass
32
- $button-background-color: color(brand-primary, 700);
33
- $button-text-color-dark: color(brand-primary, 800);
34
- $button-text-color-light: color(brand-primary, 200);
35
-
36
- .button {
37
- background-color: $button-background-color;
38
- color: color-contrast($button-background-color, $button-text-color-dark, $button-text-color-light); // returns a hex value with enough contrast for its background
39
- }
40
- ```
41
-
42
-
43
-
44
- ### Supporting Material
45
- * [Color in Design Sytems](https://medium.com/eightshapes-llc/color-in-design-systems-a1c80f65fa3)
46
- * [The Color System](https://material.io/design/color/the-color-system.html#color-usage-palettes)
47
-
@@ -1,31 +0,0 @@
1
- # Depth
2
-
3
- Users interact with analog objects all the time. So, if we are able to translate nature digitally, they will feel more at ease. In the physical world, objects can be stacked or affixed to one another, but cannot pass through each other. Objects also cast shadows and reflect light. We follow those principles closely by having a predictable scale for how elevated an element is. Usually, as an element is closer to you, it is more important than they surrounding elements so we use the z-axis to declare hierarchy.
4
-
5
- ## Depth System
6
- DimSum provides a predictable scale for depth using numbers. The higher the number, the closer it will appear.
7
-
8
- ```scss
9
- $shadows-data: (
10
- 500: (0 27px 24px 0 rgba(0, 0, 0, 0.24), 0 40px 77px 0 rgba(0, 0, 0, 0.19)),
11
- 400: (0 16px 28px 0 rgba(0, 0, 0, 0.24), 0 25px 55px 0 rgba(0, 0, 0, 0.19)),
12
- 300: (0 12px 15px 0 rgba(0, 0, 0, 0.24), 0 17px 50px 0 rgba(0, 0, 0, 0.19)),
13
- 200: (0 6px 20px 0 rgba(0, 0, 0, 0.24), 0 8px 17px 0 rgba(0, 0, 0, 0.19)),
14
- 100: (0 1px 5px 0 rgba(0, 0, 0, 0.13), 0 2px 4px 0 rgba(0, 0, 0, 0.2)),
15
- 000: 0 0 0 0 transparent
16
- );
17
- ```
18
-
19
- ## Usage
20
- We make use of Sass functions specify the box-shadow we want to apply to objects in our mark up.
21
-
22
- ### Functions
23
-
24
- #### `depth($depth: 100)`
25
- Applies a box-shadow to a CSS property. `$depth` refers to the number in elevation you need. The higher the number, the higher the element will appear. If used but no value is passed as a parameter, it defaults to `100`,
26
-
27
- ```sass
28
- .div-container {
29
- box-shadow: depth(500); // returns a box-shadow value(s)
30
- }
31
- ```
@@ -1,45 +0,0 @@
1
- # Motion
2
-
3
- CSS transitions allows you to change property values smoothly (from one value to another), over a given duration. Speed is how fast or slow an element moves or changes. Easing explains how the element moves or changes through a given path.
4
-
5
- ## Motion System
6
- DimSum provides a predictable scale for motion with semantic meaning.
7
-
8
- ```scss
9
- $unit: 100ms;
10
-
11
- $duration-data: (
12
- fast: $unit,
13
- base: $unit * 2,
14
- slow: $unit * 3,
15
- slower: $unit * 4,
16
- slowest: $unit * 5,
17
- );
18
-
19
- $easing-data: (
20
- base: cubic-bezier(0.64, 0, 0.35, 1),
21
- in: cubic-bezier(0.36, 0, 1, 1),
22
- out: cubic-bezier(0, 0, 0.42, 1),
23
- excite: cubic-bezier(0.18, 0.67, 0.6, 1.22),
24
- overshoot: cubic-bezier(0.07, 0.28, 0.32, 1.22),
25
- anticipate: cubic-bezier(0.38, -0.4, 0.88, 0.65),
26
- );
27
-
28
- ```
29
-
30
- ## Usage
31
- We make use of Sass functions specify the transition bezier and timing we want to apply to objects as they transition from one state to another one.
32
-
33
- ### Functions
34
-
35
- #### `motion($variant: base)`
36
- Applies a timing to a CSS property. `$variant` refers to the speed or duration in which you need the element to transition. If used but no value is passed as a parameter, it defaults to `base`.
37
-
38
- #### `duration($variant: base)`
39
- Applies a cubic-bezier to a CSS property. `$variant` refers to *how* you need that element to transition. If used but no value is passed as a parameter, it defaults to `base`.
40
-
41
- ```sass
42
- .div-container {
43
- transition: duration(slowest) easing(overshoot); // the first one returns a number in `ms` units, and the second one returns a cubic-bezier.
44
- }
45
- ```
@@ -1,59 +0,0 @@
1
- # Spacing
2
-
3
- DimSum uses an 8-point grid system as its base for overall space. This means that space uses multiples of 8px to define dimensions, padding, and margin of both block and inline elements. This ensures all measures follow the same spacing rules and avoids many headaches when designers are discussing space with developers. Smaller components, such as iconography and typography, can align to a 4px grid. Regardless of form-factor, most popular screen sizes are divisible by 8 on at least one axis - usually both. This allows us to achieve symmetry in our UI.
4
-
5
- ## Spacing System
6
- DimSum provides a predictable scale for fixed space using t-shirt sizing.
7
-
8
- ```scss
9
- $point-unit: 8px !default;
10
-
11
- $spacing-data: (
12
- none: 0,
13
- xxs: rem($point-unit / 2), // 4px
14
- xs: rem($point-unit), // 8px
15
- s: rem($point-unit * 2), // 16px
16
- m: rem($point-unit * 3), // 24px
17
- l: rem($point-unit * 4), // 32px
18
- xl: rem($point-unit * 6), // 48px
19
- xxl: rem($point-unit * 8) // 64px
20
- );
21
- ```
22
-
23
- ## Usage
24
- We make use of Sass functions specify the space we want to apply to objects in our mark up.
25
-
26
- ### Functions
27
-
28
- #### `space($space)`
29
- Applies spacing rules to a CSS property. `$space` refers to the scale in 8px of how much space you need. The higher the number, the bigger the space.
30
-
31
- ```sass
32
- .div-container {
33
- padding: space(m) space(xl); // returns a pixel value for those variables
34
- }
35
- ```
36
-
37
- #### `rem($value)`
38
- Returns the value in rem for a given pixel value.
39
-
40
- ```sass
41
- .div-container {
42
- padding: rem(space(xl)); // returns a value in rems
43
- }
44
- ```
45
-
46
- #### `em($value)`
47
- Returns the value in ems for a given pixel value. Note that this only works for elements that have had no font-size changes.
48
-
49
- ```sass
50
- .div-container {
51
- padding: em(space(xl)); // returns a value in ems
52
- }
53
- ```
54
-
55
-
56
- ### Supporting Material
57
- * [Intro to the 8-point Grid System](https://builttoadapt.io/intro-to-the-8-point-grid-system-d2573cde8632)
58
- * [The Layout System](https://material.io/design/layout/understanding-layout.html#usage)
59
-
@@ -1,131 +0,0 @@
1
- # Theming
2
-
3
- DimSum Themes are used to customize components to fit the specific needs of a brand or product.
4
-
5
- ## Introduction to Theming
6
- Developers and designers can use DimSum Themes to modify existing components to fit their own specific visual styles and needs. Rather than changing each individual component's scss or building modified components from scratch, components can be easily customized by changing a set of universal variables in one place that seamlessly propagate across all of the components.
7
-
8
- A lot of work goes in to making sure our System provides a great user experience and is also accessible by everyone everywhere. Some of our products that we support need the ability to be themed to match a specific brand (e.i consumer connect product or partner portals). When creating a new Theme, instead of giving the ability to customize every element on a interface, DimSum only allows a consumer of the System to customize Typography (Typeface and base font-size), Colors, and Border Radiuses. At first, this might seem constricting, however most consumers of a Design System are only concerned with these 3, as well as providing curated and delightful user experiences, and how fast they can get set up. Supporting full customization is really hard to maintain. If further customization is desired, and although not advisable, we make our CSS classes available for a consumer of the System to override.
9
-
10
- ![theming](_images/theming.gif)
11
-
12
- ### Dimsum Theme
13
-
14
- The Dimsum Design System has a default theme which is based off of the Styles shared by most of our products. When the system is downloaded and installed, all components are preset to use the default theme.
15
-
16
- The default theme acts as a starting point; from there designers and developers only need to define how their own components and styles deviate from the default. A theme can change all of the values or as little as only one.
17
-
18
- ## Usage
19
- To add a new theme you only have to create a new stylesheet following a specific schema. This Stylesheet is the entry point of the system and everything else in the system is relative to the values you specify in there.
20
-
21
- 1. Add a new SCSS stylesheet `./src/styles/themes/`
22
-
23
- 2. Import your new theme SCSS stylesheet in `./src/styles/dimsum.scss` and comment out or erase the other themes files in there.
24
-
25
- > The new theme stylesheet needs to follow the following schema:
26
- ```scss
27
- // **GLOBAL PREFIX**
28
- // This prefix will be added to all sass classes in the system
29
- $prefix: em-ds;
30
-
31
- /**
32
- Color Palette
33
- Change these color values below to your brand colors.
34
- */
35
- // Brand - Primary
36
- $theme-color-brand-primary-900: null;
37
- $theme-color-brand-primary-800: #005181;
38
- $theme-color-brand-primary-700: #006AA9;
39
- $theme-color-brand-primary-600: #2080CD;
40
- $theme-color-brand-primary-500: #1394E5;
41
- $theme-color-brand-primary-400: #52A6EC;
42
- $theme-color-brand-primary-300: #A3D6FF;
43
- $theme-color-brand-primary-200: #EBF6FF;
44
- $theme-color-brand-primary-100: #F6FBFF;
45
-
46
- // Brand - Secondary
47
- $theme-color-brand-secondary-900: null;
48
- $theme-color-brand-secondary-800: null;
49
- $theme-color-brand-secondary-700: null;
50
- $theme-color-brand-secondary-600: null;
51
- $theme-color-brand-secondary-500: null;
52
- $theme-color-brand-secondary-400: null;
53
- $theme-color-brand-secondary-300: null;
54
- $theme-color-brand-secondary-200: null;
55
- $theme-color-brand-secondary-100: null;
56
-
57
- //Neutral - Used for text, borders, shadows, background, etc
58
- $theme-color-neutral-1000: #000000;
59
- $theme-color-neutral-900: #333333;
60
- $theme-color-neutral-800: #25292F;
61
- $theme-color-neutral-700: #353C46;
62
- $theme-color-neutral-600: #464F5C;
63
- $theme-color-neutral-500: #697489;
64
- $theme-color-neutral-400: #8C93A6;
65
- $theme-color-neutral-300: #B0B9C8;
66
- $theme-color-neutral-200: #CBCFD7;
67
- $theme-color-neutral-100: #E0E3E8;
68
- $theme-color-neutral-080: #EBEDF0;
69
- $theme-color-neutral-050: #F6F7F9;
70
- $theme-color-neutral-000: #FFFFFF;
71
-
72
- // Success - Used to communicate status or feedback to the user
73
- $theme-color-success-900: #32B87C;
74
- $theme-color-success-800: null;
75
- $theme-color-success-700: null;
76
- $theme-color-success-600: null;
77
- $theme-color-success-500: null;
78
- $theme-color-success-400: null;
79
- $theme-color-success-300: #D4F0E5;
80
- $theme-color-success-200: null;
81
- $theme-color-success-100: null;
82
- // Danger - Used to communicate status or feedback to the user
83
- $theme-color-danger-900: #E34256;
84
- $theme-color-danger-800: null;
85
- $theme-color-danger-700: null;
86
- $theme-color-danger-600: null;
87
- $theme-color-danger-500: null;
88
- $theme-color-danger-400: null;
89
- $theme-color-danger-300: null;
90
- $theme-color-danger-200: #F7CDD2;
91
- $theme-color-danger-100: null;
92
- // Warning - Used to communicate status or feedback to the user
93
- $theme-color-warning-900: #FF6300;
94
- $theme-color-warning-800: null;
95
- $theme-color-warning-700: #FF9400;
96
- $theme-color-warning-600: null;
97
- $theme-color-warning-500: #FBB431;
98
- $theme-color-warning-400: null;
99
- $theme-color-warning-300: null;
100
- $theme-color-warning-200: null;
101
- $theme-color-warning-100: null;
102
-
103
-
104
- // **TYPOGRAPHY**
105
- // Typeface
106
- // Change the typeface.
107
- $theme-font-family: "proxima-nova", Arial, sans-serif !default;
108
-
109
- // Type Scale
110
- // Change the font-sizes of HTML typed tags below.
111
- $theme-base-font-size: 13px;
112
-
113
-
114
- // **BORDER RADIUS**
115
- // How round would you like your containers to be?
116
- $theme-base-border-radius: 2px;
117
- );
118
- ```
119
-
120
- ### Colors
121
- Color is divided into Brand Colors (specific to a product), Neutral Colors (used for text, borders, shadows, etc), and Feedback Colors. If you only have one value for each type of color, you can specify a HEX or rgba value in the `400` level and the system will programmatically calculate the tints and shades of that color. Also the system's components makes use of a SASS function called `color-contrast()` which checks for color contrast and changes a foreground color based on the color contrast ratio of a background color.
122
-
123
- ### Typography
124
- Import your Typeface or use the default `Proxima Nova`. You can also specify the base font-size. All typographic styles and the Type Scale is relative to this value.
125
-
126
- ### Border Radius
127
- Specify how round the corners of elements like card, buttons, sections, etc would be.
128
-
129
-
130
- ### Supporting Material
131
- * [Material Theming](https://material.io/design/material-theming/overview.html#using-material-theming)
@@ -1,193 +0,0 @@
1
- # Typography
2
-
3
- DimSum uses Proxima Nova as it Font Family with specific typographic styles that define a hierarchy for both mobile and web.
4
- * H1
5
- * H2
6
- * H3
7
- * H4
8
- * H5
9
- * section-header
10
- * body
11
- * body-small
12
-
13
- ## Type System
14
- Font size, font weight, and line-height have their own predictive scales.
15
-
16
- ### Font Size
17
- We use three digits to convey in size. The higher the range number, the higher the font-size.
18
- ```scss
19
- $font-size-data: (
20
- 700: 2.7692rem, // 36px
21
- 600: 1.3846rem, // 18px
22
- 500: 1.2307rem, // 16px
23
- 400: 1.0769rem, // 14px
24
- 300: 1rem, // 13px
25
- 200: 1rem, // 13px
26
- 100: 0.9230rem// 12px
27
- );
28
- ```
29
-
30
- ### Font Weight
31
- For font-weight we use words.
32
- ```sass
33
- $font-weight-data: (
34
- bold: 900,
35
- semibold: 600,
36
- regular: 400,
37
- light: 300,
38
- thin: 100
39
- );
40
- ```
41
-
42
- ### Line Height
43
- We use three digits to convey in line-height. The higher the range number, the higher the line-height.
44
- ```sass
45
- $line-height-data: (
46
- normal: normal,
47
- 600: 1.2,
48
- 500: 1.2,
49
- 400: 1.5,
50
- 300: 1.5,
51
- 200: 1.5
52
- );
53
- ```
54
-
55
- ## Usage
56
- We make use of Sass functions and mixins to use in our mark up.
57
-
58
- ### Functions
59
-
60
- #### `font-size($range)`
61
- Applies a font size from the allowed sizes in the system to a CSS property. `$range` refers to the scale of how big you would like the font-size to be. The higher the number, the bigger the font-size.
62
-
63
- ```sass
64
- .div-container {
65
- font-size: font-size(500); // returns a pixel value for that range
66
- }
67
- ```
68
-
69
- #### `font-weight($weight)`
70
- Applies a font weight from the allowed weights in the system to a CSS property. `$weight` refers to either bold, semibold, base, light, etc.
71
-
72
- ```sass
73
- .div-container {
74
- font-size: font-weight(bold); // returns a weight value for that range (300 - 900)
75
- }
76
- ```
77
-
78
- #### `line-height($range)`
79
- Applies a line height from the allowed line heights in the system to a CSS property. `$range` refers to how high you would like the line-height to be. The higher the number, the higher the line-height.
80
-
81
- ```sass
82
- .div-container {
83
- font-size: font-weight(bold); // returns a weight value for that range (300 - 900)
84
- }
85
- ```
86
-
87
- ### Mixins
88
-
89
- #### `h1-text-style($weight)`
90
- Applies all the text styling needed by Typographic Style defined in the system to a CSS declaration. `$weight` refers to the weight in the system you would like to use - optional parameter.
91
-
92
- ```sass
93
- .div-container {
94
- @include h1-text-style(bold); // returns all the styles applied to the type style (font-size, line-height, and font-weight).
95
- }
96
- ```
97
-
98
- #### `h2-text-style($weight)`
99
- Applies all the text styling needed by Typographic Style defined in the system to a CSS declaration. `$weight` refers to the weight in the system you would like to use - optional parameter.
100
-
101
- ```sass
102
- .div-container {
103
- @include h2-text-style(bold); // returns all the styles applied to the type style (font-size, line-height, and font-weight).
104
- }
105
- ```
106
-
107
- #### `h3-text-style($weight)`
108
-
109
- Applies all the text styling needed by Typographic Style defined in the system to a CSS declaration. `$weight` refers to the weight in the system you would like to use - optional parameter.
110
-
111
- ```sass
112
- .div-container {
113
- @include h3-text-style(bold); // returns all the styles applied to the type style (font-size, line-height, and font-weight).
114
- }
115
- ```
116
-
117
- #### `h4-text-style($weight)`
118
- Applies all the text styling needed by Typographic Style defined in the system to a CSS declaration. `$weight` refers to the weight in the system you would like to use - optional parameter.
119
-
120
- ```sass
121
- .div-container {
122
- @include h4-text-style(bold); // returns all the styles applied to the type style (font-size, line-height, and font-weight).
123
- }
124
- ```
125
-
126
- #### `h5-text-style($weight)`
127
- Applies all the text styling needed by Typographic Style defined in the system to a CSS declaration. `$weight` refers to the weight in the system you would like to use - optional parameter.
128
-
129
- ```sass
130
- .div-container {
131
- @include h5-text-style(bold); // returns all the styles applied to the type style (font-size, line-height, and font-weight).
132
- }
133
- ```
134
-
135
- #### `section-header-text-style($weight)`
136
- Applies all the text styling needed by Typographic Style defined in the system to a CSS declaration. `$weight` refers to the weight in the system you would like to use - optional parameter.
137
-
138
- ```sass
139
- .div-container {
140
- @include section-header-text-style(bold); // returns all the styles applied to the type style (font-size, line-height, and font-weight).
141
- }
142
- ```
143
-
144
- #### `body-text-style($weight)`
145
- Applies all the text styling needed by Typographic Style defined in the system to a CSS declaration. `$weight` refers to the weight in the system you would like to use - optional parameter.
146
-
147
- ```sass
148
- .div-container {
149
- @include body-text-style(bold); // returns all the styles applied to the type style (font-size, line-height, and font-weight).
150
- }
151
- ```
152
-
153
- #### `body-small-text-style($weight)`
154
- Applies all the text styling needed by Typographic Style defined in the system to a CSS declaration. `$weight` refers to the weight in the system you would like to use - optional parameter.
155
-
156
- ```sass
157
- .div-container {
158
- @include body-small-text-style(bold); // returns all the styles applied to the type style (font-size, line-height, and font-weight).
159
- }
160
- ```
161
-
162
- #### `body-micro-text-style($weight)`
163
- Applies all the text styling needed by Typographic Style defined in the system to a CSS declaration. `$weight` refers to the weight in the system you would like to use - optional parameter.
164
-
165
- ```sass
166
- .div-container {
167
- @include body-micro-text-style(bold); // returns all the styles applied to the type style (font-size, line-height, and font-weight).
168
- }
169
- ```
170
-
171
- #### `body-list-text-style($weight)`
172
- Applies all the text styling needed by Typographic Style defined in the system to a CSS declaration. `$weight` refers to the weight in the system you would like to use - optional parameter.
173
-
174
- ```sass
175
- .div-container {
176
- @include body-list-text-style(bold); // returns all the styles applied to the type style (font-size, line-height, and font-weight).
177
- }
178
- ```
179
-
180
- #### `body-link-text-style($weight)`
181
- Applies all the text styling needed by Typographic Style defined in the system to a CSS declaration. `$weight` refers to the weight in the system you would like to use - optional parameter.
182
-
183
- ```sass
184
- .div-container {
185
- @include body-link-text-style(bold); // returns all the styles applied to the type style (font-size, line-height, and font-weight).
186
- }
187
- ```
188
-
189
- ### Supporting Material
190
- * [Responsive Typography With Sass Maps](https://www.smashingmagazine.com/2015/06/responsive-typography-with-sass-maps/)
191
- * [The Type System](https://material.io/design/typography/the-type-system.html#type-scale)
192
- * [Modular Scale](http://www.modularscale.com/)
193
-
@@ -1,72 +0,0 @@
1
- @import 'packages/ds-form/ExpandableInput/DSExpandableInput';
2
- @import 'packages/ds-common/SearchBox/DSSearchBox';
3
- @import 'packages/ds-form/TimeInput/DSTimeInput';
4
- @import 'packages/ds-form/InputGroup/DSInputGroup';
5
- @import 'packages/ds-button/DSButton';
6
- @import 'packages/ds-separator/DSSeparator';
7
- @import 'packages/ds-label-value/DSLabelValue';
8
- @import 'packages/ds-group-box/DSGroupBox';
9
- @import 'packages/ds-common/Checkbox/DSCheckbox';
10
- @import 'packages/ds-form/FormItem/Error/DSError';
11
- @import 'packages/ds-form/FormItem/Label/DSLabel';
12
- @import 'packages/ds-form/FormItem/DSFormItemLayout';
13
- @import 'packages/ds-form/Input/DSInput';
14
- @import 'packages/ds-form/DateInput/DSDateInput';
15
- @import 'packages/ds-form/Input/InputAddonWrapper';
16
- @import 'packages/ds-form/Toggle/DSToggle';
17
- @import 'packages/ds-form/FloatingLabelInput/DSFloatingLabelInput';
18
- @import 'packages/ds-form/InputMask/DSInputMask';
19
- @import 'packages/ds-form/LargeInputText/DSLargeInputText';
20
- @import 'packages/ds-form/Radio/DSRadio';
21
- @import 'packages/ds-form/InputProtected/DSInputProtected';
22
- @import 'packages/ds-text-wrapper/DSTextWrapper';
23
- @import 'packages/ds-truncated-tooltip-text/DSTruncatedTooltipText';
24
- @import 'packages/ds-toolbar/DSToolbar';
25
- @import 'packages/ds-time-picker/DSTimePicker';
26
- @import 'packages/ds-toast/DSToast';
27
- @import 'packages/ds-progress-indicator/DSProgressIndicator';
28
- @import 'packages/ds-spinner/DSSpinner';
29
- @import 'packages/ds-loading-indicator/DSLoadingIndicator';
30
- @import 'packages/ds-tooltip/v1/DSTooltip';
31
- @import 'packages/ds-popover/DSPopover';
32
- @import 'packages/ds-overlay/DSOverlay';
33
- @import 'packages/ds-portal/DSPortal';
34
- @import 'packages/ds-card/DSCard';
35
- @import 'packages/ds-common/ComboBox/DSComboBox';
36
- @import 'packages/ds-button-group/DSButtonGroup';
37
- @import 'packages/ds-form/RadioGroup/DSRadioGroup';
38
- @import 'packages/ds-form/CheckboxGroup/DSCheckboxGroup';
39
- @import 'packages/ds-form/RequiredMark/RequiredMark';
40
- @import 'packages/ds-dropdownmenu/DSDropdownMenu';
41
- @import 'packages/ds-menu/Menu';
42
- @import 'packages/ds-page-header/DSPageHeader';
43
- @import 'packages/ds-pills/DSPills';
44
- @import 'packages/ds-zoom/DSZoom';
45
- @import 'packages/ds-indeterminate-progress-indicator/DSIndeterminateProgressIndicator';
46
- @import 'packages/ds-page-number/DSPageNumber';
47
- @import 'packages/ds-zipcode-search/DSZipCodeSearch';
48
- @import 'packages/ds-circular-progress-indicator/DSCircularProgressIndicator';
49
-
50
- @import '~react-dates/lib/css/_datepicker.css';
51
-
52
- @import 'packages/ds-filterbar/DSFilterBar';
53
- @import 'packages/ds-shuttle/DSShuttle';
54
- @import 'packages/ds-modal/DSModal';
55
- @import 'packages/ds-modal-slide/DSModalSlide';
56
- @import 'packages/ds-datagrids/DataGrids';
57
- @import 'packages/ds-treeview/Tree';
58
- @import 'packages/ds-query-builder/DSQueryBuilder';
59
- @import 'packages/ds-search-field/DSSearchField';
60
- @import 'packages/ds-date-time-recurrence-picker/DSDateTimeRecurrenceSelector';
61
- @import 'packages/ds-number-range-field/DSNumberRangeField';
62
- @import 'packages/ds-uploader/DSUploader';
63
- @import 'packages/ds-ribbon/DSRibbon';
64
- @import 'packages/ds-date-picker/DSDatePicker';
65
- @import 'packages/ds-date-time-picker/DSDateTimePicker';
66
- @import 'packages/ds-date-range-picker/DSDateRangePicker';
67
- @import 'packages/ds-date-range-selector/DSDateRangeSelector';
68
- @import 'packages/ds-codeeditor/DSCodeEditor';
69
- @import 'packages/ds-wysiwygeditor/DSWYSIWYGEditor';
70
- @import 'packages/ds-imagelibrarymodal/DSImageLibraryModal';
71
- @import 'packages/ds-wizard/DSWizard';
72
- @import 'packages/ds-card-array/DSCardArray';