@adcops/autocore-react 3.3.9 → 3.3.10
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/LICENSE +58 -58
- package/additional-docs/AutoCoreTagContext.md +441 -441
- package/additional-docs/ButtonApiSpecs.md +48 -48
- package/additional-docs/GlobalEventEmitter.md +243 -243
- package/additional-docs/general_recommendations.md +22 -22
- package/additional-docs/react_performance_notes.md +94 -94
- package/dist/assets/svg/blockly_logo.svg +82 -82
- package/dist/assets/svg/distance.svg +40 -40
- package/dist/assets/svg/python_logo.svg +246 -246
- package/dist/assets/svg/rotation_ccw.svg +50 -50
- package/dist/assets/svg/rotation_ccw_a.svg +57 -57
- package/dist/assets/svg/rotation_ccw_b.svg +57 -57
- package/dist/assets/svg/rotation_ccw_c.svg +57 -57
- package/dist/assets/svg/rotation_cw.svg +49 -49
- package/dist/assets/svg/rotation_cw_a.svg +30 -30
- package/dist/assets/svg/rotation_cw_b.svg +30 -30
- package/dist/assets/svg/rotation_cw_c.svg +30 -30
- package/dist/assets/svg/speed.svg +39 -39
- package/dist/components/BlocklyEditor.css +93 -93
- package/dist/components/JogPanel.css +41 -41
- package/dist/components/ProgressBarWithValue.css +27 -27
- package/dist/components/ValueIndicator.css +31 -31
- package/dist/components/osk.css +123 -123
- package/dist/core/AutoCoreTagContext.d.ts.map +1 -1
- package/dist/core/AutoCoreTagContext.js +1 -1
- package/dist/hub/HubBase.d.ts +3 -3
- package/dist/hub/HubBase.d.ts.map +1 -1
- package/dist/hub/HubBase.js +1 -1
- package/package.json +104 -104
- package/readme.md +343 -343
- package/src/assets/BlocklyLogo.tsx +27 -27
- package/src/assets/Distance.tsx +18 -18
- package/src/assets/JogLong.tsx +13 -13
- package/src/assets/JogMedium.tsx +13 -13
- package/src/assets/JogShort.tsx +13 -13
- package/src/assets/PythonLogo.tsx +83 -83
- package/src/assets/Rotation3D.tsx +13 -13
- package/src/assets/RotationCcw.tsx +33 -33
- package/src/assets/RotationCcwA.tsx +45 -45
- package/src/assets/RotationCcwB.tsx +45 -45
- package/src/assets/RotationCcwC.tsx +45 -45
- package/src/assets/RotationCw.tsx +31 -31
- package/src/assets/RotationCwA.tsx +42 -42
- package/src/assets/RotationCwB.tsx +42 -42
- package/src/assets/RotationCwC.tsx +42 -42
- package/src/assets/Run.tsx +13 -13
- package/src/assets/Speed.tsx +18 -18
- package/src/assets/SpeedFast.tsx +13 -13
- package/src/assets/SpeedMedium.tsx +13 -13
- package/src/assets/SpeedNone.tsx +13 -13
- package/src/assets/SpeedSlow.tsx +13 -13
- package/src/assets/Walk.tsx +13 -13
- package/src/assets/index.ts +22 -22
- package/src/assets/svg/blockly_logo.svg +82 -82
- package/src/assets/svg/distance.svg +40 -40
- package/src/assets/svg/python_logo.svg +246 -246
- package/src/assets/svg/rotation_ccw.svg +50 -50
- package/src/assets/svg/rotation_ccw_a.svg +57 -57
- package/src/assets/svg/rotation_ccw_b.svg +57 -57
- package/src/assets/svg/rotation_ccw_c.svg +57 -57
- package/src/assets/svg/rotation_cw.svg +49 -49
- package/src/assets/svg/rotation_cw_a.svg +30 -30
- package/src/assets/svg/rotation_cw_b.svg +30 -30
- package/src/assets/svg/rotation_cw_c.svg +30 -30
- package/src/assets/svg/speed.svg +39 -39
- package/src/components/AutoCoreDevPanel.tsx +414 -414
- package/src/components/BlocklyEditor.css +93 -93
- package/src/components/BlocklyEditor.tsx +609 -609
- package/src/components/CodeEditor.tsx +155 -155
- package/src/components/FileList.tsx +390 -390
- package/src/components/FileSelect.tsx +128 -128
- package/src/components/FitText.tsx +35 -35
- package/src/components/Indicator.tsx +188 -188
- package/src/components/IndicatorButton.tsx +214 -214
- package/src/components/IndicatorRect.tsx +172 -172
- package/src/components/JogPanel.css +41 -41
- package/src/components/JogPanel.tsx +461 -461
- package/src/components/Lamp.tsx +243 -243
- package/src/components/Osk.tsx +192 -192
- package/src/components/OskDialog.tsx +164 -164
- package/src/components/ProgressBarWithValue.css +27 -27
- package/src/components/ProgressBarWithValue.tsx +48 -48
- package/src/components/TextInput.tsx +195 -195
- package/src/components/ToggleGroup.tsx +322 -322
- package/src/components/ValueDisplay.tsx +236 -236
- package/src/components/ValueIndicator.css +31 -31
- package/src/components/ValueIndicator.tsx +135 -135
- package/src/components/ValueInput.tsx +368 -368
- package/src/components/osk.css +123 -123
- package/src/core/ActionMode.ts +19 -19
- package/src/core/AutoCoreTagContext.tsx +625 -614
- package/src/core/AutoCoreTagTypes.ts +334 -334
- package/src/core/CoreStreamTypes.ts +512 -512
- package/src/core/EventEmitterContext.tsx +434 -434
- package/src/core/IndicatorButtonState.ts +34 -34
- package/src/core/IndicatorColor.ts +35 -35
- package/src/core/MaskPatterns.ts +87 -87
- package/src/core/NumerableTypes.ts +80 -80
- package/src/core/PositionContext.ts +59 -59
- package/src/core/UniqueId.ts +41 -41
- package/src/core/ValueSimulator.ts +166 -166
- package/src/core/hoc.tsx +65 -65
- package/src/hooks/adsHooks.tsx +287 -287
- package/src/hooks/commandHooks.tsx +300 -300
- package/src/hooks/index.ts +12 -12
- package/src/hooks/useAutoCoreTag.ts +103 -103
- package/src/hooks/useScaledValue.tsx +99 -99
- package/src/hub/CommandMessage.ts +89 -89
- package/src/hub/DebugPanel.ts +307 -307
- package/src/hub/HubBase.ts +249 -236
- package/src/hub/HubSimulate.ts +124 -124
- package/src/hub/HubTauri.ts +140 -140
- package/src/hub/HubWebSocket.ts +250 -250
- package/src/hub/debug.ts +211 -211
- package/src/hub/index.ts +81 -81
- package/src/themes/adc-dark/_extensions.scss +166 -166
- package/src/themes/adc-dark/_variables.scss +913 -913
- package/src/themes/adc-dark/blue/_fonts.scss +23 -23
- package/src/themes/adc-dark/blue/adc_theme.scss +31 -31
- package/src/themes/adc-dark/blue/theme.scss +14 -14
- package/src/themes/theme-base/_colors.scss +17 -17
- package/src/themes/theme-base/_common.scss +74 -74
- package/src/themes/theme-base/_components.scss +111 -111
- package/src/themes/theme-base/_mixins.scss +243 -243
- package/src/themes/theme-base/components/button/_button.scss +644 -644
- package/src/themes/theme-base/components/button/_speeddial.scss +91 -91
- package/src/themes/theme-base/components/button/_splitbutton.scss +358 -358
- package/src/themes/theme-base/components/data/_carousel.scss +39 -39
- package/src/themes/theme-base/components/data/_datascroller.scss +47 -47
- package/src/themes/theme-base/components/data/_datatable.scss +388 -388
- package/src/themes/theme-base/components/data/_dataview.scss +47 -47
- package/src/themes/theme-base/components/data/_filter.scss +137 -137
- package/src/themes/theme-base/components/data/_orderlist.scss +86 -86
- package/src/themes/theme-base/components/data/_organizationchart.scss +50 -50
- package/src/themes/theme-base/components/data/_paginator.scss +91 -91
- package/src/themes/theme-base/components/data/_picklist.scss +73 -73
- package/src/themes/theme-base/components/data/_timeline.scss +38 -38
- package/src/themes/theme-base/components/data/_tree.scss +184 -184
- package/src/themes/theme-base/components/data/_treetable.scss +431 -431
- package/src/themes/theme-base/components/file/_fileupload.scss +41 -41
- package/src/themes/theme-base/components/input/_autocomplete.scss +94 -94
- package/src/themes/theme-base/components/input/_calendar.scss +251 -251
- package/src/themes/theme-base/components/input/_cascadeselect.scss +107 -107
- package/src/themes/theme-base/components/input/_checkbox.scss +181 -181
- package/src/themes/theme-base/components/input/_chips.scss +102 -102
- package/src/themes/theme-base/components/input/_colorpicker.scss +17 -17
- package/src/themes/theme-base/components/input/_dropdown.scss +252 -252
- package/src/themes/theme-base/components/input/_editor.scss +122 -122
- package/src/themes/theme-base/components/input/_iconfield.scss +9 -9
- package/src/themes/theme-base/components/input/_inputgroup.scss +74 -74
- package/src/themes/theme-base/components/input/_inputicon.scss +14 -14
- package/src/themes/theme-base/components/input/_inputnumber.scss +4 -4
- package/src/themes/theme-base/components/input/_inputotp.scss +10 -10
- package/src/themes/theme-base/components/input/_inputswitch.scss +99 -99
- package/src/themes/theme-base/components/input/_inputtext.scss +101 -101
- package/src/themes/theme-base/components/input/_listbox.scss +138 -138
- package/src/themes/theme-base/components/input/_mention.scss +30 -30
- package/src/themes/theme-base/components/input/_multiselect.scss +278 -278
- package/src/themes/theme-base/components/input/_password.scss +32 -32
- package/src/themes/theme-base/components/input/_radiobutton.scss +169 -169
- package/src/themes/theme-base/components/input/_rating.scss +80 -80
- package/src/themes/theme-base/components/input/_selectbutton.scss +49 -49
- package/src/themes/theme-base/components/input/_slider.scss +49 -49
- package/src/themes/theme-base/components/input/_togglebutton.scss +99 -99
- package/src/themes/theme-base/components/input/_treeselect.scss +151 -151
- package/src/themes/theme-base/components/input/_tristatecheckbox.scss +46 -46
- package/src/themes/theme-base/components/menu/_breadcrumb.scss +42 -42
- package/src/themes/theme-base/components/menu/_contextmenu.scss +39 -39
- package/src/themes/theme-base/components/menu/_dock.scss +109 -109
- package/src/themes/theme-base/components/menu/_megamenu.scss +141 -141
- package/src/themes/theme-base/components/menu/_menu.scss +33 -33
- package/src/themes/theme-base/components/menu/_menubar.scss +216 -216
- package/src/themes/theme-base/components/menu/_panelmenu.scss +153 -153
- package/src/themes/theme-base/components/menu/_slidemenu.scss +60 -60
- package/src/themes/theme-base/components/menu/_steps.scss +57 -57
- package/src/themes/theme-base/components/menu/_tabmenu.scss +50 -50
- package/src/themes/theme-base/components/menu/_tieredmenu.scss +43 -43
- package/src/themes/theme-base/components/messages/_inlinemessage.scss +69 -69
- package/src/themes/theme-base/components/messages/_message.scss +107 -107
- package/src/themes/theme-base/components/messages/_toast.scss +100 -100
- package/src/themes/theme-base/components/misc/_avatar.scss +33 -33
- package/src/themes/theme-base/components/misc/_badge.scss +76 -76
- package/src/themes/theme-base/components/misc/_chip.scss +38 -38
- package/src/themes/theme-base/components/misc/_inplace.scss +17 -17
- package/src/themes/theme-base/components/misc/_metergroup.scss +80 -80
- package/src/themes/theme-base/components/misc/_progressbar.scss +17 -17
- package/src/themes/theme-base/components/misc/_scrolltop.scss +24 -24
- package/src/themes/theme-base/components/misc/_skeleton.scss +7 -7
- package/src/themes/theme-base/components/misc/_tag.scss +39 -39
- package/src/themes/theme-base/components/misc/_terminal.scss +12 -12
- package/src/themes/theme-base/components/multimedia/_galleria.scss +153 -153
- package/src/themes/theme-base/components/multimedia/_image.scss +53 -53
- package/src/themes/theme-base/components/overlay/_confirmpopup.scss +72 -72
- package/src/themes/theme-base/components/overlay/_dialog.scss +78 -78
- package/src/themes/theme-base/components/overlay/_overlaypanel.scss +64 -64
- package/src/themes/theme-base/components/overlay/_sidebar.scss +23 -23
- package/src/themes/theme-base/components/overlay/_tooltip.scss +33 -33
- package/src/themes/theme-base/components/panel/_accordion.scss +118 -118
- package/src/themes/theme-base/components/panel/_card.scss +30 -30
- package/src/themes/theme-base/components/panel/_divider.scss +30 -30
- package/src/themes/theme-base/components/panel/_fieldset.scss +47 -47
- package/src/themes/theme-base/components/panel/_panel.scss +47 -47
- package/src/themes/theme-base/components/panel/_scrollpanel.scss +10 -10
- package/src/themes/theme-base/components/panel/_splitter.scss +23 -23
- package/src/themes/theme-base/components/panel/_stepper.scss +136 -136
- package/src/themes/theme-base/components/panel/_tabview.scss +147 -147
- package/src/themes/theme-base/components/panel/_toolbar.scss +11 -11
- package/terser.config.cjs +25 -25
- package/todo.md +18 -18
- package/tools/build-themes.cjs +65 -65
- package/tools/copy-distribution-files.cjs +77 -77
- package/tools/minify.cjs +55 -55
- package/tsconfig.json +48 -48
- package/typedoc.json +12 -12
- package/.claude/settings.local.json +0 -7
|
@@ -1,147 +1,147 @@
|
|
|
1
|
-
//core
|
|
2
|
-
.p-tabview-nav-container {
|
|
3
|
-
position: relative;
|
|
4
|
-
}
|
|
5
|
-
|
|
6
|
-
.p-tabview-scrollable .p-tabview-nav-container {
|
|
7
|
-
overflow: hidden;
|
|
8
|
-
}
|
|
9
|
-
|
|
10
|
-
.p-tabview-nav-content {
|
|
11
|
-
overflow-x: auto;
|
|
12
|
-
overflow-y: hidden;
|
|
13
|
-
scroll-behavior: smooth;
|
|
14
|
-
scrollbar-width: none;
|
|
15
|
-
overscroll-behavior: contain auto;
|
|
16
|
-
position: relative;
|
|
17
|
-
}
|
|
18
|
-
|
|
19
|
-
.p-tabview-nav {
|
|
20
|
-
display: flex;
|
|
21
|
-
margin: 0;
|
|
22
|
-
padding: 0;
|
|
23
|
-
list-style-type: none;
|
|
24
|
-
flex: 1 1 auto;
|
|
25
|
-
}
|
|
26
|
-
|
|
27
|
-
.p-tabview-nav-link {
|
|
28
|
-
cursor: pointer;
|
|
29
|
-
user-select: none;
|
|
30
|
-
display: flex;
|
|
31
|
-
align-items: center;
|
|
32
|
-
position: relative;
|
|
33
|
-
text-decoration: none;
|
|
34
|
-
overflow: hidden;
|
|
35
|
-
}
|
|
36
|
-
|
|
37
|
-
.p-tabview-ink-bar {
|
|
38
|
-
display: none;
|
|
39
|
-
z-index: 1;
|
|
40
|
-
}
|
|
41
|
-
|
|
42
|
-
.p-tabview-nav-link:focus {
|
|
43
|
-
z-index: 1;
|
|
44
|
-
}
|
|
45
|
-
|
|
46
|
-
.p-tabview-close {
|
|
47
|
-
z-index: 1;
|
|
48
|
-
}
|
|
49
|
-
|
|
50
|
-
.p-tabview-title {
|
|
51
|
-
line-height: 1;
|
|
52
|
-
white-space: nowrap;
|
|
53
|
-
}
|
|
54
|
-
|
|
55
|
-
.p-tabview-nav-btn {
|
|
56
|
-
position: absolute;
|
|
57
|
-
top: 0;
|
|
58
|
-
z-index: 2;
|
|
59
|
-
height: 100%;
|
|
60
|
-
display: flex;
|
|
61
|
-
align-items: center;
|
|
62
|
-
justify-content: center;
|
|
63
|
-
}
|
|
64
|
-
|
|
65
|
-
.p-tabview-nav-prev {
|
|
66
|
-
left: 0;
|
|
67
|
-
}
|
|
68
|
-
|
|
69
|
-
.p-tabview-nav-next {
|
|
70
|
-
right: 0;
|
|
71
|
-
}
|
|
72
|
-
|
|
73
|
-
.p-tabview-nav-content::-webkit-scrollbar {
|
|
74
|
-
display: none;
|
|
75
|
-
}
|
|
76
|
-
|
|
77
|
-
//theme
|
|
78
|
-
.p-tabview {
|
|
79
|
-
.p-tabview-nav {
|
|
80
|
-
background: $tabviewNavBg;
|
|
81
|
-
border: $tabviewNavBorder;
|
|
82
|
-
border-width: $tabviewNavBorderWidth;
|
|
83
|
-
|
|
84
|
-
li {
|
|
85
|
-
margin-right: $tabviewHeaderSpacing;
|
|
86
|
-
|
|
87
|
-
.p-tabview-nav-link {
|
|
88
|
-
border: $tabviewHeaderBorder;
|
|
89
|
-
border-width: $tabviewHeaderBorderWidth;
|
|
90
|
-
border-color: $tabviewHeaderBorderColor;
|
|
91
|
-
background: $tabviewHeaderBg;
|
|
92
|
-
color: $tabviewHeaderTextColor;
|
|
93
|
-
padding: $tabviewHeaderPadding;
|
|
94
|
-
font-weight: $tabviewHeaderFontWeight;
|
|
95
|
-
border-top-right-radius: $borderRadius;
|
|
96
|
-
border-top-left-radius: $borderRadius;
|
|
97
|
-
transition: $listItemTransition;
|
|
98
|
-
margin: $tabviewHeaderMargin;
|
|
99
|
-
|
|
100
|
-
&:not(.p-disabled):focus-visible {
|
|
101
|
-
@include focused-inset();
|
|
102
|
-
}
|
|
103
|
-
}
|
|
104
|
-
|
|
105
|
-
&:not(.p-highlight):not(.p-disabled):hover {
|
|
106
|
-
.p-tabview-nav-link {
|
|
107
|
-
background: $tabviewHeaderHoverBg;
|
|
108
|
-
border-color: $tabviewHeaderHoverBorderColor;
|
|
109
|
-
color: $tabviewHeaderTextHoverColor;
|
|
110
|
-
}
|
|
111
|
-
}
|
|
112
|
-
|
|
113
|
-
&.p-highlight {
|
|
114
|
-
.p-tabview-nav-link {
|
|
115
|
-
background: $tabviewHeaderActiveBg;
|
|
116
|
-
border-color: $tabviewHeaderActiveBorderColor;
|
|
117
|
-
color: $tabviewHeaderTextActiveColor;
|
|
118
|
-
}
|
|
119
|
-
}
|
|
120
|
-
}
|
|
121
|
-
}
|
|
122
|
-
|
|
123
|
-
.p-tabview-close {
|
|
124
|
-
margin-left: $inlineSpacing;
|
|
125
|
-
}
|
|
126
|
-
|
|
127
|
-
.p-tabview-nav-btn.p-link {
|
|
128
|
-
background: $tabviewHeaderActiveBg;
|
|
129
|
-
color: $tabviewHeaderTextActiveColor;
|
|
130
|
-
width: $buttonIconOnlyWidth;
|
|
131
|
-
box-shadow: $raisedButtonShadow;
|
|
132
|
-
border-radius: 0;
|
|
133
|
-
|
|
134
|
-
&:focus-visible {
|
|
135
|
-
@include focused-inset();
|
|
136
|
-
}
|
|
137
|
-
}
|
|
138
|
-
|
|
139
|
-
.p-tabview-panels {
|
|
140
|
-
background: $tabviewContentBg;
|
|
141
|
-
padding: $tabviewContentPadding;
|
|
142
|
-
border: $tabviewContentBorder;
|
|
143
|
-
color: $tabviewContentTextColor;
|
|
144
|
-
border-bottom-right-radius: $borderRadius;
|
|
145
|
-
border-bottom-left-radius: $borderRadius;
|
|
146
|
-
}
|
|
147
|
-
}
|
|
1
|
+
//core
|
|
2
|
+
.p-tabview-nav-container {
|
|
3
|
+
position: relative;
|
|
4
|
+
}
|
|
5
|
+
|
|
6
|
+
.p-tabview-scrollable .p-tabview-nav-container {
|
|
7
|
+
overflow: hidden;
|
|
8
|
+
}
|
|
9
|
+
|
|
10
|
+
.p-tabview-nav-content {
|
|
11
|
+
overflow-x: auto;
|
|
12
|
+
overflow-y: hidden;
|
|
13
|
+
scroll-behavior: smooth;
|
|
14
|
+
scrollbar-width: none;
|
|
15
|
+
overscroll-behavior: contain auto;
|
|
16
|
+
position: relative;
|
|
17
|
+
}
|
|
18
|
+
|
|
19
|
+
.p-tabview-nav {
|
|
20
|
+
display: flex;
|
|
21
|
+
margin: 0;
|
|
22
|
+
padding: 0;
|
|
23
|
+
list-style-type: none;
|
|
24
|
+
flex: 1 1 auto;
|
|
25
|
+
}
|
|
26
|
+
|
|
27
|
+
.p-tabview-nav-link {
|
|
28
|
+
cursor: pointer;
|
|
29
|
+
user-select: none;
|
|
30
|
+
display: flex;
|
|
31
|
+
align-items: center;
|
|
32
|
+
position: relative;
|
|
33
|
+
text-decoration: none;
|
|
34
|
+
overflow: hidden;
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
.p-tabview-ink-bar {
|
|
38
|
+
display: none;
|
|
39
|
+
z-index: 1;
|
|
40
|
+
}
|
|
41
|
+
|
|
42
|
+
.p-tabview-nav-link:focus {
|
|
43
|
+
z-index: 1;
|
|
44
|
+
}
|
|
45
|
+
|
|
46
|
+
.p-tabview-close {
|
|
47
|
+
z-index: 1;
|
|
48
|
+
}
|
|
49
|
+
|
|
50
|
+
.p-tabview-title {
|
|
51
|
+
line-height: 1;
|
|
52
|
+
white-space: nowrap;
|
|
53
|
+
}
|
|
54
|
+
|
|
55
|
+
.p-tabview-nav-btn {
|
|
56
|
+
position: absolute;
|
|
57
|
+
top: 0;
|
|
58
|
+
z-index: 2;
|
|
59
|
+
height: 100%;
|
|
60
|
+
display: flex;
|
|
61
|
+
align-items: center;
|
|
62
|
+
justify-content: center;
|
|
63
|
+
}
|
|
64
|
+
|
|
65
|
+
.p-tabview-nav-prev {
|
|
66
|
+
left: 0;
|
|
67
|
+
}
|
|
68
|
+
|
|
69
|
+
.p-tabview-nav-next {
|
|
70
|
+
right: 0;
|
|
71
|
+
}
|
|
72
|
+
|
|
73
|
+
.p-tabview-nav-content::-webkit-scrollbar {
|
|
74
|
+
display: none;
|
|
75
|
+
}
|
|
76
|
+
|
|
77
|
+
//theme
|
|
78
|
+
.p-tabview {
|
|
79
|
+
.p-tabview-nav {
|
|
80
|
+
background: $tabviewNavBg;
|
|
81
|
+
border: $tabviewNavBorder;
|
|
82
|
+
border-width: $tabviewNavBorderWidth;
|
|
83
|
+
|
|
84
|
+
li {
|
|
85
|
+
margin-right: $tabviewHeaderSpacing;
|
|
86
|
+
|
|
87
|
+
.p-tabview-nav-link {
|
|
88
|
+
border: $tabviewHeaderBorder;
|
|
89
|
+
border-width: $tabviewHeaderBorderWidth;
|
|
90
|
+
border-color: $tabviewHeaderBorderColor;
|
|
91
|
+
background: $tabviewHeaderBg;
|
|
92
|
+
color: $tabviewHeaderTextColor;
|
|
93
|
+
padding: $tabviewHeaderPadding;
|
|
94
|
+
font-weight: $tabviewHeaderFontWeight;
|
|
95
|
+
border-top-right-radius: $borderRadius;
|
|
96
|
+
border-top-left-radius: $borderRadius;
|
|
97
|
+
transition: $listItemTransition;
|
|
98
|
+
margin: $tabviewHeaderMargin;
|
|
99
|
+
|
|
100
|
+
&:not(.p-disabled):focus-visible {
|
|
101
|
+
@include focused-inset();
|
|
102
|
+
}
|
|
103
|
+
}
|
|
104
|
+
|
|
105
|
+
&:not(.p-highlight):not(.p-disabled):hover {
|
|
106
|
+
.p-tabview-nav-link {
|
|
107
|
+
background: $tabviewHeaderHoverBg;
|
|
108
|
+
border-color: $tabviewHeaderHoverBorderColor;
|
|
109
|
+
color: $tabviewHeaderTextHoverColor;
|
|
110
|
+
}
|
|
111
|
+
}
|
|
112
|
+
|
|
113
|
+
&.p-highlight {
|
|
114
|
+
.p-tabview-nav-link {
|
|
115
|
+
background: $tabviewHeaderActiveBg;
|
|
116
|
+
border-color: $tabviewHeaderActiveBorderColor;
|
|
117
|
+
color: $tabviewHeaderTextActiveColor;
|
|
118
|
+
}
|
|
119
|
+
}
|
|
120
|
+
}
|
|
121
|
+
}
|
|
122
|
+
|
|
123
|
+
.p-tabview-close {
|
|
124
|
+
margin-left: $inlineSpacing;
|
|
125
|
+
}
|
|
126
|
+
|
|
127
|
+
.p-tabview-nav-btn.p-link {
|
|
128
|
+
background: $tabviewHeaderActiveBg;
|
|
129
|
+
color: $tabviewHeaderTextActiveColor;
|
|
130
|
+
width: $buttonIconOnlyWidth;
|
|
131
|
+
box-shadow: $raisedButtonShadow;
|
|
132
|
+
border-radius: 0;
|
|
133
|
+
|
|
134
|
+
&:focus-visible {
|
|
135
|
+
@include focused-inset();
|
|
136
|
+
}
|
|
137
|
+
}
|
|
138
|
+
|
|
139
|
+
.p-tabview-panels {
|
|
140
|
+
background: $tabviewContentBg;
|
|
141
|
+
padding: $tabviewContentPadding;
|
|
142
|
+
border: $tabviewContentBorder;
|
|
143
|
+
color: $tabviewContentTextColor;
|
|
144
|
+
border-bottom-right-radius: $borderRadius;
|
|
145
|
+
border-bottom-left-radius: $borderRadius;
|
|
146
|
+
}
|
|
147
|
+
}
|
|
@@ -1,11 +1,11 @@
|
|
|
1
|
-
.p-toolbar {
|
|
2
|
-
background: $panelHeaderBg;
|
|
3
|
-
border: $panelHeaderBorder;
|
|
4
|
-
padding: $panelHeaderPadding;
|
|
5
|
-
border-radius: $borderRadius;
|
|
6
|
-
gap: $inlineSpacing;
|
|
7
|
-
|
|
8
|
-
.p-toolbar-separator {
|
|
9
|
-
margin: 0 $inlineSpacing;
|
|
10
|
-
}
|
|
11
|
-
}
|
|
1
|
+
.p-toolbar {
|
|
2
|
+
background: $panelHeaderBg;
|
|
3
|
+
border: $panelHeaderBorder;
|
|
4
|
+
padding: $panelHeaderPadding;
|
|
5
|
+
border-radius: $borderRadius;
|
|
6
|
+
gap: $inlineSpacing;
|
|
7
|
+
|
|
8
|
+
.p-toolbar-separator {
|
|
9
|
+
margin: 0 $inlineSpacing;
|
|
10
|
+
}
|
|
11
|
+
}
|
package/terser.config.cjs
CHANGED
|
@@ -1,25 +1,25 @@
|
|
|
1
|
-
/*
|
|
2
|
-
* Copyright (C) 2024 Automated Design Corp. All Rights Reserved.
|
|
3
|
-
* Created Date: 2024-01-15 09:43:10
|
|
4
|
-
* Author: Thomas C. Bitsky Jr.
|
|
5
|
-
* -----
|
|
6
|
-
* Last Modified: 2024-01-15 10:11:50
|
|
7
|
-
* Modified By: Thomas C. Bitsky Jr.
|
|
8
|
-
* -----
|
|
9
|
-
*
|
|
10
|
-
*/
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
module.exports = {
|
|
15
|
-
compress: {
|
|
16
|
-
drop_console: true, // Remove console statements (optional)
|
|
17
|
-
warnings: false, // Suppress warnings (optional)
|
|
18
|
-
keep_fnames: true, // Preserve function names for better debugging
|
|
19
|
-
keep_fargs: true, // Preserve function arguments for better hinting
|
|
20
|
-
},
|
|
21
|
-
mangle: true,
|
|
22
|
-
format: {
|
|
23
|
-
comments: /@preserve|@license|@cc_on|^!|^\*!|^\*\*!/,
|
|
24
|
-
},
|
|
25
|
-
};
|
|
1
|
+
/*
|
|
2
|
+
* Copyright (C) 2024 Automated Design Corp. All Rights Reserved.
|
|
3
|
+
* Created Date: 2024-01-15 09:43:10
|
|
4
|
+
* Author: Thomas C. Bitsky Jr.
|
|
5
|
+
* -----
|
|
6
|
+
* Last Modified: 2024-01-15 10:11:50
|
|
7
|
+
* Modified By: Thomas C. Bitsky Jr.
|
|
8
|
+
* -----
|
|
9
|
+
*
|
|
10
|
+
*/
|
|
11
|
+
|
|
12
|
+
|
|
13
|
+
|
|
14
|
+
module.exports = {
|
|
15
|
+
compress: {
|
|
16
|
+
drop_console: true, // Remove console statements (optional)
|
|
17
|
+
warnings: false, // Suppress warnings (optional)
|
|
18
|
+
keep_fnames: true, // Preserve function names for better debugging
|
|
19
|
+
keep_fargs: true, // Preserve function arguments for better hinting
|
|
20
|
+
},
|
|
21
|
+
mangle: true,
|
|
22
|
+
format: {
|
|
23
|
+
comments: /@preserve|@license|@cc_on|^!|^\*!|^\*\*!/,
|
|
24
|
+
},
|
|
25
|
+
};
|
package/todo.md
CHANGED
|
@@ -1,18 +1,18 @@
|
|
|
1
|
-
# TODO
|
|
2
|
-
|
|
3
|
-
## Integration
|
|
4
|
-
- [x] Hub class to route to and from the back end
|
|
5
|
-
- -[x] The Hub should also be the dispatcher. I can't think of a reason they should be separate.
|
|
6
|
-
- [x] Wrapper to link any control and one of its properties or methods to a signal from the backend
|
|
7
|
-
- - [x] update value from a topic
|
|
8
|
-
- - [ ] write topic and callback for accepted value
|
|
9
|
-
|
|
10
|
-
## Controls
|
|
11
|
-
- [ ] Alarm List Dialog
|
|
12
|
-
- [ ] Alarm List Widget
|
|
13
|
-
- [ ] Settings view
|
|
14
|
-
- [-] JoyPad widget
|
|
15
|
-
- [-] On-screen keyboard (based on https://github.com/hodgef/simple-keyboard)
|
|
16
|
-
- - [-] Num pad
|
|
17
|
-
- - [-] Text input
|
|
18
|
-
|
|
1
|
+
# TODO
|
|
2
|
+
|
|
3
|
+
## Integration
|
|
4
|
+
- [x] Hub class to route to and from the back end
|
|
5
|
+
- -[x] The Hub should also be the dispatcher. I can't think of a reason they should be separate.
|
|
6
|
+
- [x] Wrapper to link any control and one of its properties or methods to a signal from the backend
|
|
7
|
+
- - [x] update value from a topic
|
|
8
|
+
- - [ ] write topic and callback for accepted value
|
|
9
|
+
|
|
10
|
+
## Controls
|
|
11
|
+
- [ ] Alarm List Dialog
|
|
12
|
+
- [ ] Alarm List Widget
|
|
13
|
+
- [ ] Settings view
|
|
14
|
+
- [-] JoyPad widget
|
|
15
|
+
- [-] On-screen keyboard (based on https://github.com/hodgef/simple-keyboard)
|
|
16
|
+
- - [-] Num pad
|
|
17
|
+
- - [-] Text input
|
|
18
|
+
|
package/tools/build-themes.cjs
CHANGED
|
@@ -1,66 +1,66 @@
|
|
|
1
|
-
/*
|
|
2
|
-
* Copyright (C) 2025 Automated Design Corp.. All Rights Reserved.
|
|
3
|
-
* Created Date: 2025-07-15 15:05:23
|
|
4
|
-
* -----
|
|
5
|
-
* Last Modified: 2025-07-16 07:33:11
|
|
6
|
-
* -----
|
|
7
|
-
*
|
|
8
|
-
*/
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
const { execSync } = require('child_process');
|
|
12
|
-
const path = require('path');
|
|
13
|
-
const fs = require('fs');
|
|
14
|
-
|
|
15
|
-
/**
|
|
16
|
-
*
|
|
17
|
-
* @param {*} input_file Relative path to the source sass file.
|
|
18
|
-
* @param {*} output_file Relative path to the destination file
|
|
19
|
-
*/
|
|
20
|
-
function build_theme(input_file, output_file) {
|
|
21
|
-
|
|
22
|
-
// Define absolute paths for input and output files for reliability
|
|
23
|
-
const inputFile = path.resolve(__dirname, input_file);
|
|
24
|
-
const outputFile = path.resolve(__dirname, output_file);
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
// Get the directory of the output file
|
|
28
|
-
const outputDir = path.dirname(outputFile);
|
|
29
|
-
|
|
30
|
-
try {
|
|
31
|
-
// 1. Ensure the output directory exists.
|
|
32
|
-
// The `recursive: true` option creates parent directories if they don't exist.
|
|
33
|
-
if (!fs.existsSync(outputDir)) {
|
|
34
|
-
fs.mkdirSync(outputDir, { recursive: true });
|
|
35
|
-
console.log(`Created directory: ${outputDir}`);
|
|
36
|
-
}
|
|
37
|
-
|
|
38
|
-
// 2. Construct the sass build command.
|
|
39
|
-
// We use npx to ensure the locally installed sass package is used.
|
|
40
|
-
const command = `npx sass ${inputFile} ${outputFile}`;
|
|
41
|
-
|
|
42
|
-
console.log(`Executing: ${command}`);
|
|
43
|
-
|
|
44
|
-
// 3. Execute the command.
|
|
45
|
-
// `stdio: 'inherit'` pipes the output (and errors) to the current terminal.
|
|
46
|
-
execSync(command, { stdio: 'inherit' });
|
|
47
|
-
|
|
48
|
-
console.log('✅ AutoCore theme built successfully!');
|
|
49
|
-
|
|
50
|
-
} catch (error) {
|
|
51
|
-
console.error('❌ Failed to build AutoCore theme.');
|
|
52
|
-
// Exit the process with an error code to stop the entire build chain if this fails.
|
|
53
|
-
process.exit(1);
|
|
54
|
-
}
|
|
55
|
-
|
|
56
|
-
}
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
console.log('Building custom AutoCore theme...');
|
|
61
|
-
|
|
62
|
-
//
|
|
63
|
-
// List the themes to include in the distribution below.
|
|
64
|
-
//
|
|
65
|
-
|
|
1
|
+
/*
|
|
2
|
+
* Copyright (C) 2025 Automated Design Corp.. All Rights Reserved.
|
|
3
|
+
* Created Date: 2025-07-15 15:05:23
|
|
4
|
+
* -----
|
|
5
|
+
* Last Modified: 2025-07-16 07:33:11
|
|
6
|
+
* -----
|
|
7
|
+
*
|
|
8
|
+
*/
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
const { execSync } = require('child_process');
|
|
12
|
+
const path = require('path');
|
|
13
|
+
const fs = require('fs');
|
|
14
|
+
|
|
15
|
+
/**
|
|
16
|
+
*
|
|
17
|
+
* @param {*} input_file Relative path to the source sass file.
|
|
18
|
+
* @param {*} output_file Relative path to the destination file
|
|
19
|
+
*/
|
|
20
|
+
function build_theme(input_file, output_file) {
|
|
21
|
+
|
|
22
|
+
// Define absolute paths for input and output files for reliability
|
|
23
|
+
const inputFile = path.resolve(__dirname, input_file);
|
|
24
|
+
const outputFile = path.resolve(__dirname, output_file);
|
|
25
|
+
|
|
26
|
+
|
|
27
|
+
// Get the directory of the output file
|
|
28
|
+
const outputDir = path.dirname(outputFile);
|
|
29
|
+
|
|
30
|
+
try {
|
|
31
|
+
// 1. Ensure the output directory exists.
|
|
32
|
+
// The `recursive: true` option creates parent directories if they don't exist.
|
|
33
|
+
if (!fs.existsSync(outputDir)) {
|
|
34
|
+
fs.mkdirSync(outputDir, { recursive: true });
|
|
35
|
+
console.log(`Created directory: ${outputDir}`);
|
|
36
|
+
}
|
|
37
|
+
|
|
38
|
+
// 2. Construct the sass build command.
|
|
39
|
+
// We use npx to ensure the locally installed sass package is used.
|
|
40
|
+
const command = `npx sass ${inputFile} ${outputFile}`;
|
|
41
|
+
|
|
42
|
+
console.log(`Executing: ${command}`);
|
|
43
|
+
|
|
44
|
+
// 3. Execute the command.
|
|
45
|
+
// `stdio: 'inherit'` pipes the output (and errors) to the current terminal.
|
|
46
|
+
execSync(command, { stdio: 'inherit' });
|
|
47
|
+
|
|
48
|
+
console.log('✅ AutoCore theme built successfully!');
|
|
49
|
+
|
|
50
|
+
} catch (error) {
|
|
51
|
+
console.error('❌ Failed to build AutoCore theme.');
|
|
52
|
+
// Exit the process with an error code to stop the entire build chain if this fails.
|
|
53
|
+
process.exit(1);
|
|
54
|
+
}
|
|
55
|
+
|
|
56
|
+
}
|
|
57
|
+
|
|
58
|
+
|
|
59
|
+
|
|
60
|
+
console.log('Building custom AutoCore theme...');
|
|
61
|
+
|
|
62
|
+
//
|
|
63
|
+
// List the themes to include in the distribution below.
|
|
64
|
+
//
|
|
65
|
+
|
|
66
66
|
build_theme('../src/themes/adc-dark/blue/adc_theme.scss', '../dist/themes/adc-dark/blue/theme.css');
|