@superrouteca/smap 1.1.2 → 1.1.6

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/dist/smap.css CHANGED
@@ -76,3 +76,92 @@
76
76
  padding: 0 4px; box-sizing: border-box; border: 2px solid; border-radius: 11px; color: #fff; font-size: 10px; font-weight: 700;
77
77
  text-shadow: 1px 1px 2px rgba(0, 0, 0, 0.5); }
78
78
  .smap-chooser-label { min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
79
+
80
+ /* Map tools (M49-M57). A hidden tool is not drawn; its corner closes up. */
81
+ .smap-tool-hidden { display: none !important; }
82
+ .maplibregl-ctrl.smap-tools.smap-tools-empty { display: none; }
83
+ .smap-tools { position: relative; z-index: 1; }
84
+ /* By default the tools control is the last button of the map's toolbar (the corner of the navigation control). While
85
+ its panel is open, its corner is drawn above the map's other corners and the panel opens towards the map's middle. */
86
+ .maplibregl-ctrl-top-left.smap-tools-open, .maplibregl-ctrl-top-right.smap-tools-open,
87
+ .maplibregl-ctrl-bottom-left.smap-tools-open, .maplibregl-ctrl-bottom-right.smap-tools-open { z-index: 5; }
88
+ .smap-tools .smap-tools-button { display: flex; align-items: center; justify-content: center; color: #1e293b; }
89
+ .smap-tools .smap-tools-button[aria-expanded="true"] { color: #2563eb; }
90
+ .smap-tools-panel {
91
+ position: absolute; top: 0; z-index: 3; display: flex; flex-direction: column; gap: 4px;
92
+ min-width: 170px; max-height: 60vmin; overflow-y: auto; padding: 8px; box-sizing: border-box;
93
+ border-radius: 8px; background: #ffffff; color: #1e293b; box-shadow: 0 2px 10px rgba(15, 23, 42, 0.18);
94
+ font: 12px/1.3 -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
95
+ }
96
+ .smap-tools-panel[hidden] { display: none; }
97
+ .maplibregl-ctrl-top-right .smap-tools-panel, .maplibregl-ctrl-bottom-right .smap-tools-panel { right: 36px; }
98
+ .maplibregl-ctrl-top-left .smap-tools-panel, .maplibregl-ctrl-bottom-left .smap-tools-panel { left: 36px; }
99
+ .maplibregl-ctrl-bottom-right .smap-tools-panel, .maplibregl-ctrl-bottom-left .smap-tools-panel { top: auto; bottom: 0; }
100
+ .maplibregl-ctrl-group .smap-tools-panel button {
101
+ display: flex; align-items: center; width: 100%; height: auto; min-height: 28px; padding: 4px 8px; box-sizing: border-box;
102
+ border: 1px solid rgba(15, 23, 42, 0.15); border-radius: 6px; background: #ffffff; color: inherit;
103
+ font: inherit; text-align: left; white-space: nowrap; cursor: pointer;
104
+ }
105
+ .maplibregl-ctrl-group .smap-tools-panel button + button { border-top: 1px solid rgba(15, 23, 42, 0.15); }
106
+ .maplibregl-ctrl-group .smap-tools-panel .smap-tools-item[aria-pressed="true"] { border-color: #2563eb; background: #2563eb; color: #ffffff; }
107
+ .maplibregl-ctrl-group .smap-tools-panel button:focus-visible { outline: 2px solid #2563eb; outline-offset: 1px; }
108
+ .smap-tools-all { display: flex; gap: 4px; margin-top: 4px; padding-top: 6px; border-top: 1px solid rgba(15, 23, 42, 0.12); }
109
+ .maplibregl-ctrl-group .smap-tools-all button { justify-content: center; text-align: center; }
110
+ .smap-style-dark .smap-tools-panel, .smap-style-black .smap-tools-panel { background: #1f2430; color: #e5e7eb; }
111
+ .smap-style-dark .smap-tools-panel button, .smap-style-black .smap-tools-panel button { background: #1f2430; border-color: rgba(229, 231, 235, 0.2); }
112
+
113
+ /* Plan editor panel (OPEN-ROUTE-EDIT E10). Restyle through these classes; every colour is set here. */
114
+ .smap-plan-panel {
115
+ width: 320px; max-width: calc(100vw - 20px); max-height: 70vmin; overflow-y: auto; padding: 10px; box-sizing: border-box;
116
+ border-radius: 8px; background: #ffffff; color: #1e293b; box-shadow: 0 2px 10px rgba(15, 23, 42, 0.18);
117
+ font: 12px/1.35 -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
118
+ }
119
+ .smap-plan-panel h3 { margin: 10px 0 4px; font-size: 13px; font-weight: 600; }
120
+ .smap-plan-panel h4 { margin: 6px 0 2px; font-size: 12px; font-weight: 600; }
121
+ .smap-plan-bar { display: flex; align-items: center; gap: 4px; flex-wrap: wrap; }
122
+ .smap-plan-button {
123
+ min-height: 26px; padding: 3px 8px; border: 1px solid rgba(15, 23, 42, 0.18); border-radius: 6px; background: #ffffff;
124
+ color: inherit; font: inherit; cursor: pointer;
125
+ }
126
+ .smap-plan-button:disabled { opacity: 0.45; cursor: default; }
127
+ .smap-plan-button:focus-visible { outline: 2px solid #2563eb; outline-offset: 1px; }
128
+ .smap-plan-status { margin-left: auto; color: #2563eb; }
129
+ .smap-plan-error { display: flex; align-items: center; gap: 6px; margin-top: 8px; padding: 6px 8px; border-radius: 6px; background: #fef2f2; color: #991b1b; }
130
+ .smap-plan-error span { flex: 1 1 auto; }
131
+ .smap-plan-note { margin-top: 8px; color: #475569; }
132
+ .smap-plan-totals { display: flex; flex-wrap: wrap; gap: 2px 12px; margin: 2px 0 4px; }
133
+ .smap-plan-totals div { display: flex; gap: 4px; }
134
+ .smap-plan-totals dt { color: #64748b; }
135
+ .smap-plan-totals dd { margin: 0; font-weight: 600; }
136
+ .smap-plan-violations dd, .smap-plan-unreachable dd, .smap-plan-route-violations, .smap-plan-stop-violations { color: #b91c1c; }
137
+ .smap-plan-preview { margin-top: 4px; padding: 4px 6px; border-radius: 6px; background: #eff6ff; }
138
+ .smap-plan-pending { margin: 2px 0; color: #64748b; }
139
+ .smap-plan-route-head { display: flex; align-items: center; gap: 6px; }
140
+ .smap-plan-swatch { width: 10px; height: 10px; border-radius: 50%; flex: 0 0 auto; }
141
+ .smap-plan-route-violations { margin: 2px 0; padding-left: 16px; }
142
+ .smap-plan-stops-list, .smap-plan-unassigned-list, .smap-plan-choice-list { margin: 0; padding: 0; list-style: none; min-height: 8px; }
143
+ .smap-plan-stop, .smap-plan-job, .smap-plan-choice {
144
+ display: flex; flex-wrap: wrap; align-items: center; gap: 4px 6px; padding: 3px 4px; border-radius: 4px;
145
+ }
146
+ .smap-plan-stop, .smap-plan-job { flex-wrap: nowrap; }
147
+ .smap-plan-stop .smap-plan-id, .smap-plan-job .smap-plan-id { min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
148
+ .smap-plan-stop .smap-plan-arrival { white-space: nowrap; }
149
+ .smap-plan-stop .smap-plan-stop-violations { white-space: nowrap; overflow: hidden; text-overflow: ellipsis; min-width: 0; }
150
+ .smap-plan-stop, .smap-plan-job { cursor: grab; }
151
+ .smap-plan-stop:hover, .smap-plan-job:hover { background: #f1f5f9; }
152
+ .smap-plan-over { outline: 2px dashed #2563eb; outline-offset: -2px; }
153
+ .smap-plan-seq { min-width: 18px; color: #64748b; text-align: right; }
154
+ .smap-plan-id { font-weight: 600; }
155
+ .smap-plan-arrival { color: #475569; }
156
+ .smap-plan-stop .smap-plan-button, .smap-plan-job .smap-plan-button, .smap-plan-choice .smap-plan-button { min-height: 22px; padding: 1px 6px; }
157
+ .smap-plan-stop .smap-plan-lock { margin-left: auto; }
158
+ .smap-plan-job .smap-plan-place, .smap-plan-choice .smap-plan-choose { margin-left: auto; }
159
+ .smap-plan-locked .smap-plan-id::after { content: " \1F512"; font-weight: 400; }
160
+ .smap-plan-empty { color: #94a3b8; cursor: default; }
161
+ .smap-plan-infeasible .smap-plan-choice-where { color: #b91c1c; }
162
+ .smap-plan-choices { margin-top: 8px; padding-top: 4px; border-top: 1px solid rgba(15, 23, 42, 0.12); }
163
+ .smap-plan-choices-close { margin-top: 6px; }
164
+ .smap-style-dark .smap-plan-panel, .smap-style-black .smap-plan-panel { background: #1f2430; color: #e5e7eb; }
165
+ .smap-style-dark .smap-plan-button, .smap-style-black .smap-plan-button { background: #1f2430; border-color: rgba(229, 231, 235, 0.2); }
166
+ .smap-style-dark .smap-plan-stop:hover, .smap-style-black .smap-plan-stop:hover,
167
+ .smap-style-dark .smap-plan-job:hover, .smap-style-black .smap-plan-job:hover { background: #2b3242; }