@adcops/autocore-react 3.0.34 → 3.0.38

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 (173) hide show
  1. package/dist/assets/BlocklyLogo.js +1 -9
  2. package/dist/assets/Distance.js +1 -5
  3. package/dist/assets/JogLong.js +1 -3
  4. package/dist/assets/JogMedium.js +1 -3
  5. package/dist/assets/JogShort.js +1 -3
  6. package/dist/assets/PythonLogo.js +1 -21
  7. package/dist/assets/Rotation3D.js +1 -3
  8. package/dist/assets/RotationCcw.js +1 -10
  9. package/dist/assets/RotationCcwA.js +1 -16
  10. package/dist/assets/RotationCcwB.js +1 -16
  11. package/dist/assets/RotationCcwC.js +1 -16
  12. package/dist/assets/RotationCw.js +1 -10
  13. package/dist/assets/RotationCwA.js +1 -16
  14. package/dist/assets/RotationCwB.js +1 -16
  15. package/dist/assets/RotationCwC.js +1 -16
  16. package/dist/assets/Run.js +1 -3
  17. package/dist/assets/Speed.js +1 -5
  18. package/dist/assets/SpeedFast.js +1 -3
  19. package/dist/assets/SpeedMedium.js +1 -3
  20. package/dist/assets/SpeedNone.js +1 -3
  21. package/dist/assets/SpeedSlow.js +1 -3
  22. package/dist/assets/Walk.js +1 -3
  23. package/dist/assets/index.js +1 -22
  24. package/dist/components/BlocklyEditor.css +71 -2
  25. package/dist/components/BlocklyEditor.js +1 -508
  26. package/dist/components/CodeEditor.js +1 -108
  27. package/dist/components/FileList.js +1 -218
  28. package/dist/components/FileSelect.js +1 -63
  29. package/dist/components/FitText.js +1 -13
  30. package/dist/components/Indicator.js +1 -113
  31. package/dist/components/IndicatorButton.js +1 -187
  32. package/dist/components/IndicatorRect.js +1 -93
  33. package/dist/components/JogPanel.js +1 -295
  34. package/dist/components/Lamp.js +1 -161
  35. package/dist/components/Osk.js +1 -125
  36. package/dist/components/OskDialog.js +1 -128
  37. package/dist/components/ProgressBarWithValue.js +1 -18
  38. package/dist/components/TextInput.js +1 -139
  39. package/dist/components/ToggleGroup.js +1 -204
  40. package/dist/components/ValueDisplay.js +1 -160
  41. package/dist/components/ValueIndicator.js +1 -38
  42. package/dist/components/ValueInput.js +1 -158
  43. package/dist/core/ActionMode.js +1 -18
  44. package/dist/core/EventEmitterContext.js +1 -252
  45. package/dist/core/IndicatorButtonState.js +1 -9
  46. package/dist/core/IndicatorColor.js +1 -36
  47. package/dist/core/MaskPatterns.js +1 -80
  48. package/dist/core/NumerableTypes.js +1 -10
  49. package/dist/core/PositionContext.js +1 -24
  50. package/dist/core/UniqueId.js +1 -32
  51. package/dist/core/ValueSimulator.js +1 -233
  52. package/dist/core/hoc.js +1 -44
  53. package/dist/hooks/adsHooks.js +1 -253
  54. package/dist/hooks/commandHooks.js +1 -252
  55. package/dist/hooks/index.js +1 -10
  56. package/dist/hooks/useScaledValue.js +1 -86
  57. package/dist/hub/CommandMessage.js +1 -9
  58. package/dist/hub/HubBase.js +1 -310
  59. package/dist/hub/HubSimulate.js +1 -46
  60. package/dist/hub/HubTauri.js +1 -130
  61. package/dist/hub/HubWebSocket.js +1 -240
  62. package/dist/hub/index.js +1 -57
  63. package/dist/themes/adc-dark/blue/fonts/AtkinsonHyperlegibleMono-Italic-VariableFont_wght.ttf +0 -0
  64. package/dist/themes/adc-dark/blue/fonts/AtkinsonHyperlegibleMono-VariableFont_wght.ttf +0 -0
  65. package/dist/themes/adc-dark/blue/fonts/AtkinsonHyperlegibleNext-Italic-VariableFont_wght.ttf +0 -0
  66. package/dist/themes/adc-dark/blue/fonts/AtkinsonHyperlegibleNext-Regular.woff2 +0 -0
  67. package/dist/themes/adc-dark/blue/fonts/AtkinsonHyperlegibleNext-RegularItalic.woff2 +0 -0
  68. package/dist/themes/adc-dark/blue/fonts/AtkinsonHyperlegibleNext-VariableFont_wght.ttf +0 -0
  69. package/dist/themes/adc-dark/blue/theme.css +7097 -0
  70. package/dist/themes/adc-dark/blue/theme.css.map +1 -0
  71. package/package.json +8 -2
  72. package/src/components/BlocklyEditor.css +71 -2
  73. package/src/themes/adc-dark/_extensions.scss +166 -0
  74. package/src/themes/adc-dark/_variables.scss +913 -0
  75. package/src/themes/adc-dark/blue/_fonts.scss +24 -0
  76. package/src/themes/adc-dark/blue/adc_theme.scss +32 -0
  77. package/src/themes/adc-dark/blue/fonts/AtkinsonHyperlegibleMono-Italic-VariableFont_wght.ttf +0 -0
  78. package/src/themes/adc-dark/blue/fonts/AtkinsonHyperlegibleMono-VariableFont_wght.ttf +0 -0
  79. package/src/themes/adc-dark/blue/fonts/AtkinsonHyperlegibleNext-Italic-VariableFont_wght.ttf +0 -0
  80. package/src/themes/adc-dark/blue/fonts/AtkinsonHyperlegibleNext-Regular.woff2 +0 -0
  81. package/src/themes/adc-dark/blue/fonts/AtkinsonHyperlegibleNext-RegularItalic.woff2 +0 -0
  82. package/src/themes/adc-dark/blue/fonts/AtkinsonHyperlegibleNext-VariableFont_wght.ttf +0 -0
  83. package/src/themes/adc-dark/blue/theme.scss +14 -0
  84. package/src/themes/theme-base/_colors.scss +18 -0
  85. package/src/themes/theme-base/_common.scss +75 -0
  86. package/src/themes/theme-base/_components.scss +111 -0
  87. package/src/themes/theme-base/_mixins.scss +243 -0
  88. package/src/themes/theme-base/components/button/_button.scss +644 -0
  89. package/src/themes/theme-base/components/button/_speeddial.scss +91 -0
  90. package/src/themes/theme-base/components/button/_splitbutton.scss +359 -0
  91. package/src/themes/theme-base/components/data/_carousel.scss +39 -0
  92. package/src/themes/theme-base/components/data/_datascroller.scss +47 -0
  93. package/src/themes/theme-base/components/data/_datatable.scss +389 -0
  94. package/src/themes/theme-base/components/data/_dataview.scss +47 -0
  95. package/src/themes/theme-base/components/data/_filter.scss +138 -0
  96. package/src/themes/theme-base/components/data/_orderlist.scss +86 -0
  97. package/src/themes/theme-base/components/data/_organizationchart.scss +50 -0
  98. package/src/themes/theme-base/components/data/_paginator.scss +91 -0
  99. package/src/themes/theme-base/components/data/_picklist.scss +74 -0
  100. package/src/themes/theme-base/components/data/_timeline.scss +38 -0
  101. package/src/themes/theme-base/components/data/_tree.scss +184 -0
  102. package/src/themes/theme-base/components/data/_treetable.scss +431 -0
  103. package/src/themes/theme-base/components/file/_fileupload.scss +41 -0
  104. package/src/themes/theme-base/components/input/_autocomplete.scss +95 -0
  105. package/src/themes/theme-base/components/input/_calendar.scss +251 -0
  106. package/src/themes/theme-base/components/input/_cascadeselect.scss +107 -0
  107. package/src/themes/theme-base/components/input/_checkbox.scss +181 -0
  108. package/src/themes/theme-base/components/input/_chips.scss +102 -0
  109. package/src/themes/theme-base/components/input/_colorpicker.scss +18 -0
  110. package/src/themes/theme-base/components/input/_dropdown.scss +252 -0
  111. package/src/themes/theme-base/components/input/_editor.scss +122 -0
  112. package/src/themes/theme-base/components/input/_iconfield.scss +10 -0
  113. package/src/themes/theme-base/components/input/_inputgroup.scss +74 -0
  114. package/src/themes/theme-base/components/input/_inputicon.scss +15 -0
  115. package/src/themes/theme-base/components/input/_inputnumber.scss +5 -0
  116. package/src/themes/theme-base/components/input/_inputotp.scss +10 -0
  117. package/src/themes/theme-base/components/input/_inputswitch.scss +100 -0
  118. package/src/themes/theme-base/components/input/_inputtext.scss +101 -0
  119. package/src/themes/theme-base/components/input/_listbox.scss +139 -0
  120. package/src/themes/theme-base/components/input/_mention.scss +31 -0
  121. package/src/themes/theme-base/components/input/_multiselect.scss +278 -0
  122. package/src/themes/theme-base/components/input/_password.scss +33 -0
  123. package/src/themes/theme-base/components/input/_radiobutton.scss +170 -0
  124. package/src/themes/theme-base/components/input/_rating.scss +81 -0
  125. package/src/themes/theme-base/components/input/_selectbutton.scss +50 -0
  126. package/src/themes/theme-base/components/input/_slider.scss +49 -0
  127. package/src/themes/theme-base/components/input/_togglebutton.scss +99 -0
  128. package/src/themes/theme-base/components/input/_treeselect.scss +151 -0
  129. package/src/themes/theme-base/components/input/_tristatecheckbox.scss +46 -0
  130. package/src/themes/theme-base/components/menu/_breadcrumb.scss +42 -0
  131. package/src/themes/theme-base/components/menu/_contextmenu.scss +39 -0
  132. package/src/themes/theme-base/components/menu/_dock.scss +109 -0
  133. package/src/themes/theme-base/components/menu/_megamenu.scss +141 -0
  134. package/src/themes/theme-base/components/menu/_menu.scss +33 -0
  135. package/src/themes/theme-base/components/menu/_menubar.scss +216 -0
  136. package/src/themes/theme-base/components/menu/_panelmenu.scss +153 -0
  137. package/src/themes/theme-base/components/menu/_slidemenu.scss +60 -0
  138. package/src/themes/theme-base/components/menu/_steps.scss +57 -0
  139. package/src/themes/theme-base/components/menu/_tabmenu.scss +50 -0
  140. package/src/themes/theme-base/components/menu/_tieredmenu.scss +43 -0
  141. package/src/themes/theme-base/components/messages/_inlinemessage.scss +69 -0
  142. package/src/themes/theme-base/components/messages/_message.scss +107 -0
  143. package/src/themes/theme-base/components/messages/_toast.scss +100 -0
  144. package/src/themes/theme-base/components/misc/_avatar.scss +34 -0
  145. package/src/themes/theme-base/components/misc/_badge.scss +77 -0
  146. package/src/themes/theme-base/components/misc/_blockui.scss +0 -0
  147. package/src/themes/theme-base/components/misc/_chip.scss +39 -0
  148. package/src/themes/theme-base/components/misc/_inplace.scss +17 -0
  149. package/src/themes/theme-base/components/misc/_metergroup.scss +81 -0
  150. package/src/themes/theme-base/components/misc/_progressbar.scss +17 -0
  151. package/src/themes/theme-base/components/misc/_scrolltop.scss +25 -0
  152. package/src/themes/theme-base/components/misc/_skeleton.scss +8 -0
  153. package/src/themes/theme-base/components/misc/_tag.scss +40 -0
  154. package/src/themes/theme-base/components/misc/_terminal.scss +12 -0
  155. package/src/themes/theme-base/components/multimedia/_galleria.scss +153 -0
  156. package/src/themes/theme-base/components/multimedia/_image.scss +54 -0
  157. package/src/themes/theme-base/components/overlay/_confirmpopup.scss +72 -0
  158. package/src/themes/theme-base/components/overlay/_dialog.scss +78 -0
  159. package/src/themes/theme-base/components/overlay/_overlaypanel.scss +64 -0
  160. package/src/themes/theme-base/components/overlay/_sidebar.scss +23 -0
  161. package/src/themes/theme-base/components/overlay/_tooltip.scss +33 -0
  162. package/src/themes/theme-base/components/panel/_accordion.scss +118 -0
  163. package/src/themes/theme-base/components/panel/_card.scss +30 -0
  164. package/src/themes/theme-base/components/panel/_divider.scss +31 -0
  165. package/src/themes/theme-base/components/panel/_fieldset.scss +47 -0
  166. package/src/themes/theme-base/components/panel/_panel.scss +47 -0
  167. package/src/themes/theme-base/components/panel/_scrollpanel.scss +10 -0
  168. package/src/themes/theme-base/components/panel/_splitter.scss +23 -0
  169. package/src/themes/theme-base/components/panel/_stepper.scss +136 -0
  170. package/src/themes/theme-base/components/panel/_tabview.scss +147 -0
  171. package/src/themes/theme-base/components/panel/_toolbar.scss +11 -0
  172. package/tools/build-themes.cjs +66 -0
  173. package/tools/copy-distribution-files.cjs +20 -16
@@ -0,0 +1,24 @@
1
+ @font-face {
2
+ /* font-family: 'Inter var'; */
3
+ font-family: "HyperlegibleNext var";
4
+ font-weight: 100 900;
5
+ font-display: swap;
6
+ font-style: normal;
7
+ font-named-instance: 'Regular';
8
+ /* src: url("./fonts/InterVariable.woff2") format("woff2"); */
9
+ /* src: url("./fonts/AtkinsonHyperlegibleNext-VariableFont_wght.ttf") format("truetype"); */
10
+ src: url("./fonts/AtkinsonHyperlegibleNext-Regular.woff2") format("woff2");
11
+
12
+ }
13
+ @font-face {
14
+ /* font-family: 'Inter var'; */
15
+ font-family: "HyperlegibleNext var";
16
+ font-weight: 100 900;
17
+ font-display: swap;
18
+ font-style: italic;
19
+ font-named-instance: 'Italic';
20
+ /* src: url("./fonts/InterVariable-Italic.woff2") format("woff2"); */
21
+ /* src: url("./fonts/AtkinsonHyperlegibleNext-Italic-VariableFont_wght.ttf") format("truetype"); */
22
+ src: url("./fonts/AtkinsonHyperlegibleNext-RegularItalic.woff2") format("woff2");
23
+ }
24
+
@@ -0,0 +1,32 @@
1
+ /*
2
+ * Copyright (C) 2025 Automated Design Corp.. All Rights Reserved.
3
+ * Created Date: 2025-07-15 11:55:03
4
+ * -----
5
+ * Last Modified: 2025-07-17 06:52:28
6
+ * -----
7
+ *
8
+ */
9
+
10
+
11
+
12
+ // 1. Define your custom, compact values
13
+
14
+ // General Padding & Sizing
15
+ $panelContentPadding: 0.5rem 0.75rem !default; // Affects panels, cards, dialogs, etc.
16
+ $inputPadding: 0.5rem 0.75rem !default; // Affects all input fields
17
+ $buttonPadding: 0.5rem 0.75rem !default; // Affects buttons
18
+ $buttonIconOnlyPadding: 0.5rem 0 !default;
19
+ $inlineSpacing: 0.25rem !default; // Space between items like icons and text
20
+ $borderRadius: 3px !default; // Sharper corners for a more "desktop" feel
21
+
22
+ // Table (Datatable) Sizing
23
+ $tableHeaderCellPadding: 0.5rem 0.75rem !default;
24
+ $tableBodyCellPadding: 0.5rem 0.75rem !default;
25
+
26
+ // Menu Sizing
27
+ $menuitemPadding: 0.5rem 0.75rem !default;
28
+ $horizontalMenuRootMenuitemPadding: 0.5rem 0.75rem !default;
29
+
30
+
31
+ // 2. Import the original lara-dark-blue theme
32
+ @import "./theme.scss";
@@ -0,0 +1,14 @@
1
+ $primaryColor: #60a5fa !default;
2
+ $primaryLightColor: #93c5fd !default;
3
+ $primaryLighterColor: #bfdbfe !default;
4
+ $primaryLightestColor: rgba(96, 165, 250, 0.2) !default;
5
+ $primaryTextColor: #030712 !default;
6
+
7
+ $highlightBg: rgba(96, 165, 250, 0.16) !default;
8
+ $highlightTextColor: rgba(255, 255, 255, 0.87) !default;
9
+ $highlightFocusBg: rgba($primaryColor, 0.24) !default;
10
+
11
+ @import "../_variables";
12
+ @import "./_fonts";
13
+ @import "../../theme-base/_components";
14
+ @import "../_extensions";
@@ -0,0 +1,18 @@
1
+ :root {
2
+ @if variable-exists(colors) {
3
+ @each $name, $color in $colors {
4
+ @for $i from 0 through 5 {
5
+ @if ($i == 0) {
6
+ --#{$name}-50:#{tint($color, (5 - $i) * 19%)};
7
+ }
8
+ @else {
9
+ --#{$name}-#{$i * 100}:#{tint($color, (5 - $i) * 19%)};
10
+ }
11
+ }
12
+
13
+ @for $i from 1 through 4 {
14
+ --#{$name}-#{($i + 5) * 100}:#{shade($color, $i * 15%)};
15
+ }
16
+ }
17
+ }
18
+ }
@@ -0,0 +1,75 @@
1
+ * {
2
+ box-sizing: border-box;
3
+ }
4
+
5
+ .p-component {
6
+ font-family: var(--font-family);
7
+ font-feature-settings: var(--font-feature-settings, normal);
8
+ font-size: $fontSize;
9
+ font-weight: $fontWeight;
10
+ }
11
+
12
+ .p-component-overlay {
13
+ background-color: $maskBg;
14
+ transition-duration: $transitionDuration;
15
+ }
16
+
17
+ .p-disabled, .p-component:disabled {
18
+ opacity: $disabledOpacity;
19
+ }
20
+
21
+ .p-error {
22
+ color: $errorColor;
23
+ }
24
+
25
+ .p-text-secondary {
26
+ color: $textSecondaryColor;
27
+ }
28
+
29
+ .pi {
30
+ font-size: $primeIconFontSize;
31
+ }
32
+
33
+ .p-icon {
34
+ width: $primeIconFontSize;
35
+ height: $primeIconFontSize;
36
+ }
37
+
38
+ .p-link {
39
+ font-family: var(--font-family);
40
+ font-feature-settings: var(--font-feature-settings, normal);
41
+ font-size: $fontSize;
42
+ border-radius: $borderRadius;
43
+
44
+ &:focus-visible {
45
+ @include focused();
46
+ }
47
+ }
48
+
49
+ .p-component-overlay-enter {
50
+ animation: p-component-overlay-enter-animation 150ms forwards;
51
+ }
52
+
53
+ .p-component-overlay-leave {
54
+ animation: p-component-overlay-leave-animation 150ms forwards;
55
+ }
56
+
57
+ .p-component-overlay {
58
+ @keyframes p-component-overlay-enter-animation {
59
+ from {
60
+ background-color: transparent;
61
+ }
62
+ to {
63
+ background-color: var(--maskbg);
64
+ }
65
+ }
66
+
67
+ @keyframes p-component-overlay-leave-animation {
68
+ from {
69
+ background-color: var(--maskbg);
70
+ }
71
+ to {
72
+ background-color: transparent;
73
+ }
74
+ }
75
+ }
@@ -0,0 +1,111 @@
1
+ @import '_mixins';
2
+ @import '_colors';
3
+
4
+ @import './components/input/_editor';
5
+
6
+ @layer primereact {
7
+ @import '_common';
8
+
9
+ //Input
10
+ @import './components/input/_autocomplete';
11
+ @import './components/input/_calendar';
12
+ @import './components/input/_cascadeselect';
13
+ @import './components/input/_checkbox';
14
+ @import './components/input/tristatecheckbox';
15
+ @import './components/input/_chips';
16
+ @import './components/input/_colorpicker';
17
+ @import './components/input/_dropdown';
18
+ @import './components/input/_inputgroup';
19
+ @import './components/input/_inputnumber';
20
+ @import './components/input/_inputswitch';
21
+ @import './components/input/_inputtext';
22
+ @import './components/input/_iconfield';
23
+ @import './components/input/_inputicon';
24
+ @import './components/input/_inputotp';
25
+ @import './components/input/_listbox';
26
+ @import './components/input/_mention';
27
+ @import './components/input/_multiselect';
28
+ @import './components/input/_password';
29
+ @import './components/input/_radiobutton';
30
+ @import './components/input/_rating';
31
+ @import './components/input/_selectbutton';
32
+ @import './components/input/_slider';
33
+ @import './components/input/_treeselect';
34
+ @import './components/input/_togglebutton';
35
+
36
+ //Button
37
+ @import './components/button/_button';
38
+ @import './components/button/_splitbutton';
39
+ @import './components/button/_speeddial';
40
+
41
+ //Data
42
+ @import './components/data/_carousel';
43
+ @import './components/data/_datatable';
44
+ @import './components/data/_dataview';
45
+ @import './components/data/_datascroller';
46
+ @import './components/data/_filter';
47
+ @import './components/data/_orderlist';
48
+ @import './components/data/_organizationchart';
49
+ @import './components/data/_paginator';
50
+ @import './components/data/_picklist';
51
+ @import './components/data/_tree';
52
+ @import './components/data/_treetable';
53
+ @import './components/data/_timeline';
54
+
55
+ //Panel
56
+ @import './components/panel/_accordion';
57
+ @import './components/panel/_card';
58
+ @import './components/panel/_fieldset';
59
+ @import './components/panel/_divider';
60
+ @import './components/panel/_panel';
61
+ @import './components/panel/_splitter';
62
+ @import './components/panel/_stepper';
63
+ @import './components/panel/_scrollpanel';
64
+ @import './components/panel/_tabview';
65
+ @import './components/panel/_toolbar';
66
+
67
+ //Overlay
68
+ @import './components/overlay/_confirmpopup';
69
+ @import './components/overlay/_dialog';
70
+ @import './components/overlay/_overlaypanel';
71
+ @import './components/overlay/_sidebar';
72
+ @import './components/overlay/_tooltip';
73
+
74
+ //File
75
+ @import './components/file/_fileupload';
76
+
77
+ //Menu
78
+ @import './components/menu/_breadcrumb';
79
+ @import './components/menu/_contextmenu';
80
+ @import './components/menu/_dock';
81
+ @import './components/menu/_megamenu';
82
+ @import './components/menu/_menu';
83
+ @import './components/menu/_menubar';
84
+ @import './components/menu/_panelmenu';
85
+ @import './components/menu/_slidemenu';
86
+ @import './components/menu/_steps';
87
+ @import './components/menu/_tabmenu';
88
+ @import './components/menu/_tieredmenu';
89
+
90
+ //Messages
91
+ @import './components/messages/_inlinemessage';
92
+ @import './components/messages/_message';
93
+ @import 'components/messages/toast';
94
+
95
+ //MultiMedia
96
+ @import './components/multimedia/_galleria';
97
+ @import './components/multimedia/_image';
98
+
99
+ //Misc
100
+ @import './components/misc/_avatar';
101
+ @import './components/misc/_chip';
102
+ @import './components/misc/_scrolltop';
103
+ @import './components/misc/_skeleton';
104
+ @import './components/misc/_tag';
105
+ @import './components/misc/_inplace';
106
+ @import './components/misc/metergroup';
107
+ @import './components/misc/_progressbar';
108
+ @import './components/misc/_terminal';
109
+ @import './components/misc/_blockui';
110
+ @import './components/misc/_badge';
111
+ }
@@ -0,0 +1,243 @@
1
+ @mixin icon-override($icon) {
2
+ &:before {
3
+ content: $icon;
4
+ }
5
+ }
6
+
7
+ @mixin focused() {
8
+ outline: $focusOutline;
9
+ outline-offset: $focusOutlineOffset;
10
+ box-shadow: $focusShadow;
11
+ }
12
+
13
+ @mixin focused-inset() {
14
+ outline: $focusOutline;
15
+ outline-offset: $focusOutlineOffset;
16
+ box-shadow: inset $focusShadow;
17
+ }
18
+
19
+ @mixin focused-input() {
20
+ @include focused();
21
+ border-color: $inputFocusBorderColor;
22
+ }
23
+
24
+ @mixin focused-listitem() {
25
+ outline: $focusOutline;
26
+ outline-offset: $focusOutlineOffset;
27
+ box-shadow: $inputListItemFocusShadow;
28
+ }
29
+
30
+ @mixin invalid-input() {
31
+ border-color: $inputErrorBorderColor;
32
+ }
33
+
34
+ @mixin menuitem-link {
35
+ > .p-menuitem-content {
36
+ color: $menuitemTextColor;
37
+ transition: $listItemTransition;
38
+ border-radius: $menuitemBorderRadius;
39
+
40
+ .p-menuitem-link {
41
+ color: $menuitemTextColor;
42
+ padding: $menuitemPadding;
43
+ user-select: none;
44
+
45
+ .p-menuitem-text {
46
+ color: $menuitemTextColor;
47
+ }
48
+
49
+ .p-menuitem-icon {
50
+ color: $menuitemIconColor;
51
+ margin-right: $inlineSpacing;
52
+ }
53
+
54
+ .p-submenu-icon {
55
+ color: $menuitemIconColor;
56
+ }
57
+ }
58
+ }
59
+
60
+ &.p-highlight {
61
+ > .p-menuitem-content {
62
+ color: $menuitemTextActiveColor;
63
+ background: $menuitemActiveBg;
64
+
65
+ .p-menuitem-link {
66
+ .p-menuitem-text {
67
+ color: $menuitemTextActiveColor;
68
+ }
69
+
70
+ .p-menuitem-icon,
71
+ .p-submenu-icon {
72
+ color: $menuitemIconActiveColor;
73
+ }
74
+ }
75
+ }
76
+
77
+ &.p-focus {
78
+ > .p-menuitem-content {
79
+ background: $menuitemActiveFocusBg;
80
+ }
81
+ }
82
+ }
83
+
84
+ &:not(.p-highlight):not(.p-disabled) {
85
+ &.p-focus {
86
+ > .p-menuitem-content {
87
+ color: $menuitemTextFocusColor;
88
+ background: $menuitemFocusBg;
89
+
90
+ .p-menuitem-link {
91
+ .p-menuitem-text {
92
+ color: $menuitemTextFocusColor;
93
+ }
94
+
95
+ .p-menuitem-icon,
96
+ .p-submenu-icon {
97
+ color: $menuitemIconFocusColor;
98
+ }
99
+ }
100
+ }
101
+ }
102
+
103
+ > .p-menuitem-content {
104
+ &:hover {
105
+ color: $menuitemTextHoverColor;
106
+ background: $menuitemHoverBg;
107
+
108
+ .p-menuitem-link {
109
+ .p-menuitem-text {
110
+ color: $menuitemTextHoverColor;
111
+ }
112
+
113
+ .p-menuitem-icon,
114
+ .p-submenu-icon {
115
+ color: $menuitemIconHoverColor;
116
+ }
117
+ }
118
+ }
119
+ }
120
+ }
121
+ }
122
+
123
+ @mixin horizontal-rootmenuitem-link {
124
+ > .p-menuitem-content {
125
+ color: $horizontalMenuRootMenuitemTextColor;
126
+ transition: $listItemTransition;
127
+ border-radius: $horizontalMenuRootMenuitemBorderRadius;
128
+
129
+ .p-menuitem-link {
130
+ padding: $horizontalMenuRootMenuitemPadding;
131
+ user-select: none;
132
+
133
+ .p-menuitem-text {
134
+ color: $horizontalMenuRootMenuitemTextColor;
135
+ }
136
+
137
+ .p-menuitem-icon {
138
+ color: $horizontalMenuRootMenuitemIconColor;
139
+ margin-right: $inlineSpacing;
140
+ }
141
+
142
+ .p-submenu-icon {
143
+ color: $horizontalMenuRootMenuitemIconColor;
144
+ margin-left: $inlineSpacing;
145
+ }
146
+ }
147
+ }
148
+
149
+ &:not(.p-highlight):not(.p-disabled) {
150
+ > .p-menuitem-content {
151
+ &:hover {
152
+ color: $horizontalMenuRootMenuitemTextHoverColor;
153
+ background: $horizontalMenuRootMenuitemHoverBg;
154
+
155
+ .p-menuitem-link {
156
+ .p-menuitem-text {
157
+ color: $horizontalMenuRootMenuitemTextHoverColor;
158
+ }
159
+
160
+ .p-menuitem-icon,
161
+ .p-submenu-icon {
162
+ color: $horizontalMenuRootMenuitemIconHoverColor;
163
+ }
164
+ }
165
+ }
166
+ }
167
+ }
168
+ }
169
+
170
+ @mixin placeholder {
171
+ ::-webkit-input-placeholder {
172
+ @content;
173
+ }
174
+ :-moz-placeholder {
175
+ @content;
176
+ }
177
+ ::-moz-placeholder {
178
+ @content;
179
+ }
180
+ :-ms-input-placeholder {
181
+ @content;
182
+ }
183
+ }
184
+
185
+ @mixin scaledPadding($val, $scale) {
186
+ padding: nth($val, 1) * $scale nth($val, 2) * $scale;
187
+ }
188
+
189
+ @mixin scaledFontSize($val, $scale) {
190
+ font-size: $val * $scale;
191
+ }
192
+
193
+ @mixin nested-submenu-indents($val, $index, $length) {
194
+ ul {
195
+ li {
196
+ a {
197
+ padding-left: $val * ($index + 1);
198
+ }
199
+
200
+ @if $index < $length {
201
+ @include nested-submenu-indents($val, $index + 2, $length);
202
+ }
203
+ }
204
+ }
205
+ }
206
+
207
+ @mixin action-icon($enabled: true) {
208
+ width: $actionIconWidth;
209
+ height: $actionIconHeight;
210
+ color: $actionIconColor;
211
+ border: $actionIconBorder;
212
+ background: $actionIconBg;
213
+ border-radius: $actionIconBorderRadius;
214
+ transition: $actionIconTransition;
215
+
216
+ @if $enabled {
217
+ &:enabled:hover {
218
+ @include action-icon-hover();
219
+ }
220
+ } @else {
221
+ &:hover {
222
+ @include action-icon-hover();
223
+ }
224
+ }
225
+
226
+ &:focus-visible {
227
+ @include focused();
228
+ }
229
+ }
230
+
231
+ @mixin action-icon-hover() {
232
+ color: $actionIconHoverColor;
233
+ border-color: $actionIconHoverBorderColor;
234
+ background: $actionIconHoverBg;
235
+ }
236
+
237
+ @function tint($color, $percentage) {
238
+ @return mix(#fff, $color, $percentage);
239
+ }
240
+
241
+ @function shade($color, $percentage) {
242
+ @return mix(#000, $color, $percentage);
243
+ }