@configura/web-ui 1.1.1-alpha.0 → 1.1.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (75) hide show
  1. package/.postcssrc.json +8 -8
  2. package/LICENSE +201 -201
  3. package/README.md +1 -1
  4. package/dist/components/CanvasWrapper.d.ts +9 -9
  5. package/dist/components/CanvasWrapper.js +8 -8
  6. package/dist/components/ConfigurationActionsButtonRow.d.ts +11 -11
  7. package/dist/components/ConfigurationActionsButtonRow.js +13 -13
  8. package/dist/components/Configurator.d.ts +12 -12
  9. package/dist/components/Configurator.js +15 -15
  10. package/dist/components/ConfiguratorWrapper.d.ts +8 -8
  11. package/dist/components/ConfiguratorWrapper.js +5 -5
  12. package/dist/components/CurrencyPrice.d.ts +9 -9
  13. package/dist/components/CurrencyPrice.js +7 -7
  14. package/dist/components/ExpandableHeadingRow.d.ts +15 -15
  15. package/dist/components/ExpandableHeadingRow.js +21 -21
  16. package/dist/components/Loading.d.ts +13 -13
  17. package/dist/components/Loading.js +20 -20
  18. package/dist/components/ProductInformation.d.ts +10 -10
  19. package/dist/components/ProductInformation.js +23 -23
  20. package/dist/components/icons/Checkmark.d.ts +5 -5
  21. package/dist/components/icons/Checkmark.js +12 -12
  22. package/dist/components/icons/Chevron.d.ts +6 -6
  23. package/dist/components/icons/Chevron.js +18 -18
  24. package/dist/components/productConfiguration/CfgAdditionalProductView.d.ts +3 -3
  25. package/dist/components/productConfiguration/CfgAdditionalProductView.js +28 -28
  26. package/dist/components/productConfiguration/CfgCheckboxView.d.ts +18 -18
  27. package/dist/components/productConfiguration/CfgCheckboxView.js +22 -22
  28. package/dist/components/productConfiguration/CfgCheckboxesView.d.ts +12 -12
  29. package/dist/components/productConfiguration/CfgCheckboxesView.js +18 -18
  30. package/dist/components/productConfiguration/CfgDropdownOptionView.d.ts +18 -18
  31. package/dist/components/productConfiguration/CfgDropdownOptionView.js +33 -33
  32. package/dist/components/productConfiguration/CfgDropdownView.d.ts +12 -12
  33. package/dist/components/productConfiguration/CfgDropdownView.js +20 -20
  34. package/dist/components/productConfiguration/CfgFeatureView.d.ts +27 -27
  35. package/dist/components/productConfiguration/CfgFeatureView.js +34 -34
  36. package/dist/components/productConfiguration/CfgGroupView.d.ts +4 -4
  37. package/dist/components/productConfiguration/CfgGroupView.js +13 -13
  38. package/dist/components/productConfiguration/CfgOptionFeaturesView.d.ts +6 -6
  39. package/dist/components/productConfiguration/CfgOptionFeaturesView.js +13 -13
  40. package/dist/components/productConfiguration/CfgOptionPriceView.d.ts +9 -9
  41. package/dist/components/productConfiguration/CfgOptionPriceView.js +29 -29
  42. package/dist/components/productConfiguration/CfgProductConfigurationView.d.ts +18 -18
  43. package/dist/components/productConfiguration/CfgProductConfigurationView.js +37 -37
  44. package/dist/css/web-ui.css.map +1 -1
  45. package/dist/index.d.ts +20 -20
  46. package/dist/index.js +20 -20
  47. package/dist/scss/_button.scss +36 -36
  48. package/dist/scss/_configurator.scss +67 -67
  49. package/dist/scss/_expandable.scss +37 -37
  50. package/dist/scss/_feature-item.scss +124 -124
  51. package/dist/scss/_hr.scss +16 -16
  52. package/dist/scss/_loading.scss +98 -98
  53. package/dist/scss/_mixins.scss +56 -56
  54. package/dist/scss/_option-tree.scss +29 -29
  55. package/dist/scss/_product-information.scss +49 -49
  56. package/dist/scss/_slider.scss +70 -70
  57. package/dist/scss/_themed.scss +123 -123
  58. package/dist/scss/_utilities.scss +17 -17
  59. package/dist/scss/_variables.scss +6 -6
  60. package/dist/scss/icons/_checkmark.scss +46 -46
  61. package/dist/scss/icons/_chevron.scss +62 -62
  62. package/dist/scss/web-ui.scss +11 -11
  63. package/dist/useObservable.d.ts +4 -4
  64. package/dist/useObservable.js +18 -18
  65. package/dist/useRerender.d.ts +1 -1
  66. package/dist/useRerender.js +5 -5
  67. package/dist/useResize.d.ts +6 -6
  68. package/dist/useResize.js +47 -47
  69. package/dist/useSelected.d.ts +2 -2
  70. package/dist/useSelected.js +13 -13
  71. package/dist/useUniqueId.d.ts +1 -1
  72. package/dist/useUniqueId.js +7 -7
  73. package/dist/utilities.d.ts +5 -5
  74. package/dist/utilities.js +1 -1
  75. package/package.json +3 -3
@@ -1,67 +1,67 @@
1
- /**
2
- * Web UI Configurator
3
- */
4
-
5
- @use "mixins";
6
-
7
- @mixin classes($fontSize, $textColor, $headerUnderlineColor) {
8
- .cfgConfigurator {
9
- @include mixins.cfgRootStyles;
10
- @include mixins.cfgDefaultFont;
11
- font-size: $fontSize;
12
- color: $textColor;
13
- min-width: 0;
14
- }
15
-
16
- .cfgConfiguratorHeader {
17
- border-bottom: 0.1em solid $headerUnderlineColor;
18
- padding: 1.7em 1.7em 1.9em;
19
- position: relative;
20
-
21
- &__actions {
22
- margin-top: 1em;
23
- }
24
- }
25
-
26
- .cfgConfiguratorTree {
27
- padding-top: 1em;
28
- }
29
-
30
- .cfgCanvasWrapper {
31
- @include mixins.cfgRootStyles;
32
- position: relative;
33
- height: 50rem;
34
- user-select: none;
35
-
36
- & canvas {
37
- outline: none;
38
- }
39
- }
40
-
41
- .cfgConfiguratorWrapper {
42
- @include mixins.cfgRootStyles;
43
- color: $textColor;
44
- height: 100%;
45
- width: 100%;
46
- }
47
-
48
- @media screen and (orientation: landscape) {
49
- .cfgConfiguratorWrapper {
50
- display: flex;
51
- flex-direction: row;
52
-
53
- & > .cfgConfigurator {
54
- flex: 0 1 40%;
55
- height: 100%;
56
- }
57
-
58
- & .cfgCanvasWrapper {
59
- flex: 0 1 60%;
60
- height: 85vh;
61
- overflow: hidden;
62
- position: sticky;
63
- top: 0;
64
- }
65
- }
66
- }
67
- }
1
+ /**
2
+ * Web UI Configurator
3
+ */
4
+
5
+ @use "mixins";
6
+
7
+ @mixin classes($fontSize, $textColor, $headerUnderlineColor) {
8
+ .cfgConfigurator {
9
+ @include mixins.cfgRootStyles;
10
+ @include mixins.cfgDefaultFont;
11
+ font-size: $fontSize;
12
+ color: $textColor;
13
+ min-width: 0;
14
+ }
15
+
16
+ .cfgConfiguratorHeader {
17
+ border-bottom: 0.1em solid $headerUnderlineColor;
18
+ padding: 1.7em 1.7em 1.9em;
19
+ position: relative;
20
+
21
+ &__actions {
22
+ margin-top: 1em;
23
+ }
24
+ }
25
+
26
+ .cfgConfiguratorTree {
27
+ padding-top: 1em;
28
+ }
29
+
30
+ .cfgCanvasWrapper {
31
+ @include mixins.cfgRootStyles;
32
+ position: relative;
33
+ height: 50rem;
34
+ user-select: none;
35
+
36
+ & canvas {
37
+ outline: none;
38
+ }
39
+ }
40
+
41
+ .cfgConfiguratorWrapper {
42
+ @include mixins.cfgRootStyles;
43
+ color: $textColor;
44
+ height: 100%;
45
+ width: 100%;
46
+ }
47
+
48
+ @media screen and (orientation: landscape) {
49
+ .cfgConfiguratorWrapper {
50
+ display: flex;
51
+ flex-direction: row;
52
+
53
+ & > .cfgConfigurator {
54
+ flex: 0 1 40%;
55
+ height: 100%;
56
+ }
57
+
58
+ & .cfgCanvasWrapper {
59
+ flex: 0 1 60%;
60
+ height: 85vh;
61
+ overflow: hidden;
62
+ position: sticky;
63
+ top: 0;
64
+ }
65
+ }
66
+ }
67
+ }
@@ -1,37 +1,37 @@
1
- @use "mixins";
2
-
3
- @mixin classes {
4
- .cfgExpandableHeadingRow {
5
- @include mixins.cfgRootStyles;
6
- @include mixins.noButtonLook;
7
- align-items: stretch;
8
- display: flex;
9
- height: 3.9em;
10
- outline: 0;
11
- position: relative;
12
- width: 100%;
13
-
14
- &--expandable {
15
- cursor: pointer;
16
- }
17
-
18
- &__title {
19
- align-items: center;
20
- display: flex;
21
- flex: 1 1 auto;
22
- font-size: 1.5em;
23
- font-weight: 500;
24
- justify-content: flex-start;
25
- }
26
-
27
- &__icon {
28
- align-items: center;
29
- display: flex;
30
- flex: 0 0 5em;
31
- justify-content: center;
32
- padding: 0 1.5em;
33
- }
34
-
35
- @content;
36
- }
37
- }
1
+ @use "mixins";
2
+
3
+ @mixin classes {
4
+ .cfgExpandableHeadingRow {
5
+ @include mixins.cfgRootStyles;
6
+ @include mixins.noButtonLook;
7
+ align-items: stretch;
8
+ display: flex;
9
+ height: 3.9em;
10
+ outline: 0;
11
+ position: relative;
12
+ width: 100%;
13
+
14
+ &--expandable {
15
+ cursor: pointer;
16
+ }
17
+
18
+ &__title {
19
+ align-items: center;
20
+ display: flex;
21
+ flex: 1 1 auto;
22
+ font-size: 1.5em;
23
+ font-weight: 500;
24
+ justify-content: flex-start;
25
+ }
26
+
27
+ &__icon {
28
+ align-items: center;
29
+ display: flex;
30
+ flex: 0 0 5em;
31
+ justify-content: center;
32
+ padding: 0 1.5em;
33
+ }
34
+
35
+ @content;
36
+ }
37
+ }
@@ -1,124 +1,124 @@
1
- /**
2
- * Web UI Feature item
3
- */
4
-
5
- @use "mixins";
6
-
7
- @mixin classes(
8
- $textColor,
9
- $grayTextColor,
10
- $checkButtonUncheckedColor,
11
- $checkButtonCheckedColor,
12
- $focusOutlineInnerColor,
13
- $focusOutlineOuterColor
14
- ) {
15
- .cfgThumbnailImage {
16
- border-radius: 0.7em;
17
- display: inline-block;
18
- height: 3em;
19
- width: 3em;
20
- }
21
-
22
- .cfgThumbnailPlaceholder {
23
- align-items: center;
24
- display: flex;
25
- flex: 0 0 4.2em;
26
- justify-content: flex-start;
27
- }
28
-
29
- .cfgFeatureItem {
30
- @include mixins.cfgRootStyles;
31
-
32
- color: $textColor;
33
-
34
- &__dropdown {
35
- @include mixins.noButtonLook;
36
- align-items: stretch;
37
- display: flex;
38
- height: 3.9em;
39
- outline: 0;
40
- position: relative;
41
- width: 100%;
42
- cursor: pointer;
43
- }
44
-
45
- &--optional {
46
- margin-top: 1em;
47
- }
48
-
49
- &__hiddenInput {
50
- left: -99999px;
51
- opacity: 0;
52
- position: absolute;
53
- z-index: -1;
54
- }
55
-
56
- &__radio {
57
- @include mixins.cfgRadio($checkButtonUncheckedColor);
58
- }
59
-
60
- &__checkbox {
61
- @include mixins.cfgCheckbox($checkButtonUncheckedColor);
62
- }
63
-
64
- /* The &-syntax brings in the entire path, so the second part of this rule must be explicit */
65
-
66
- &__hiddenInput:focus ~ .cfgFeatureItem__radio,
67
- &__hiddenInput:focus ~ .cfgFeatureItem__checkbox {
68
- @include mixins.focusOutline($focusOutlineInnerColor, $focusOutlineOuterColor);
69
- }
70
-
71
- &__hiddenInput:checked ~ .cfgFeatureItem__radio {
72
- @include mixins.cfgRadio($checkButtonCheckedColor);
73
- }
74
- &__hiddenInput:checked ~ .cfgFeatureItem__checkbox {
75
- @include mixins.cfgCheckbox($checkButtonCheckedColor);
76
- }
77
- }
78
-
79
- .cfgFeatureItemOptional__titleWrapper,
80
- .cfgFeatureItemOption__titleWrapper {
81
- flex: 1 1 auto;
82
- margin-left: 1em;
83
- }
84
-
85
- .cfgFeatureItemOptional__title,
86
- .cfgFeatureItemOption__title {
87
- font-size: 1.5em;
88
- }
89
-
90
- .cfgFeatureItemOption__price {
91
- font-weight: 600;
92
- font-size: 0.75em;
93
- color: $grayTextColor;
94
- }
95
-
96
- .cfgOptionTree--subLevel .cfgFeatureItem__hr {
97
- display: none;
98
- }
99
-
100
- .cfgFeatureItemOption {
101
- align-items: center;
102
- display: flex;
103
- }
104
-
105
- .cfgFeatureItemOptional {
106
- align-items: center;
107
- display: flex;
108
- justify-content: center;
109
- margin-top: 0.5em;
110
-
111
- &__header {
112
- font-size: 1.2em;
113
- font-weight: 600;
114
- margin: 0 0 0.3em 0;
115
- padding: 0;
116
- text-transform: uppercase;
117
- }
118
- }
119
-
120
- /* The last themathic break (hr) we move under the next thematic break so it appears as one */
121
- .cfgAdditionalProduct .cfgFeatureItem:last-child .cfgFeatureItem__hr {
122
- margin-bottom: -0.1em;
123
- }
124
- }
1
+ /**
2
+ * Web UI Feature item
3
+ */
4
+
5
+ @use "mixins";
6
+
7
+ @mixin classes(
8
+ $textColor,
9
+ $grayTextColor,
10
+ $checkButtonUncheckedColor,
11
+ $checkButtonCheckedColor,
12
+ $focusOutlineInnerColor,
13
+ $focusOutlineOuterColor
14
+ ) {
15
+ .cfgThumbnailImage {
16
+ border-radius: 0.7em;
17
+ display: inline-block;
18
+ height: 3em;
19
+ width: 3em;
20
+ }
21
+
22
+ .cfgThumbnailPlaceholder {
23
+ align-items: center;
24
+ display: flex;
25
+ flex: 0 0 4.2em;
26
+ justify-content: flex-start;
27
+ }
28
+
29
+ .cfgFeatureItem {
30
+ @include mixins.cfgRootStyles;
31
+
32
+ color: $textColor;
33
+
34
+ &__dropdown {
35
+ @include mixins.noButtonLook;
36
+ align-items: stretch;
37
+ display: flex;
38
+ height: 3.9em;
39
+ outline: 0;
40
+ position: relative;
41
+ width: 100%;
42
+ cursor: pointer;
43
+ }
44
+
45
+ &--optional {
46
+ margin-top: 1em;
47
+ }
48
+
49
+ &__hiddenInput {
50
+ left: -99999px;
51
+ opacity: 0;
52
+ position: absolute;
53
+ z-index: -1;
54
+ }
55
+
56
+ &__radio {
57
+ @include mixins.cfgRadio($checkButtonUncheckedColor);
58
+ }
59
+
60
+ &__checkbox {
61
+ @include mixins.cfgCheckbox($checkButtonUncheckedColor);
62
+ }
63
+
64
+ /* The &-syntax brings in the entire path, so the second part of this rule must be explicit */
65
+
66
+ &__hiddenInput:focus ~ .cfgFeatureItem__radio,
67
+ &__hiddenInput:focus ~ .cfgFeatureItem__checkbox {
68
+ @include mixins.focusOutline($focusOutlineInnerColor, $focusOutlineOuterColor);
69
+ }
70
+
71
+ &__hiddenInput:checked ~ .cfgFeatureItem__radio {
72
+ @include mixins.cfgRadio($checkButtonCheckedColor);
73
+ }
74
+ &__hiddenInput:checked ~ .cfgFeatureItem__checkbox {
75
+ @include mixins.cfgCheckbox($checkButtonCheckedColor);
76
+ }
77
+ }
78
+
79
+ .cfgFeatureItemOptional__titleWrapper,
80
+ .cfgFeatureItemOption__titleWrapper {
81
+ flex: 1 1 auto;
82
+ margin-left: 1em;
83
+ }
84
+
85
+ .cfgFeatureItemOptional__title,
86
+ .cfgFeatureItemOption__title {
87
+ font-size: 1.5em;
88
+ }
89
+
90
+ .cfgFeatureItemOption__price {
91
+ font-weight: 600;
92
+ font-size: 0.75em;
93
+ color: $grayTextColor;
94
+ }
95
+
96
+ .cfgOptionTree--subLevel .cfgFeatureItem__hr {
97
+ display: none;
98
+ }
99
+
100
+ .cfgFeatureItemOption {
101
+ align-items: center;
102
+ display: flex;
103
+ }
104
+
105
+ .cfgFeatureItemOptional {
106
+ align-items: center;
107
+ display: flex;
108
+ justify-content: center;
109
+ margin-top: 0.5em;
110
+
111
+ &__header {
112
+ font-size: 1.2em;
113
+ font-weight: 600;
114
+ margin: 0 0 0.3em 0;
115
+ padding: 0;
116
+ text-transform: uppercase;
117
+ }
118
+ }
119
+
120
+ /* The last themathic break (hr) we move under the next thematic break so it appears as one */
121
+ .cfgAdditionalProduct .cfgFeatureItem:last-child .cfgFeatureItem__hr {
122
+ margin-bottom: -0.1em;
123
+ }
124
+ }