@opengeoweb/shared 9.21.0 → 9.23.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.
package/index.esm.js CHANGED
@@ -4,7 +4,7 @@ import { Close, Exclamation, Success, Info, ChevronRight, GeoWebLogo, HamburgerM
4
4
  import * as React from 'react';
5
5
  import React__default, { useRef, Component } from 'react';
6
6
  import i18n from 'i18next';
7
- import { initReactI18next, useTranslation } from 'react-i18next';
7
+ import { useTranslation } from 'react-i18next';
8
8
  import { throttle, escapeRegExp, debounce } from 'lodash';
9
9
  import Draggable from 'react-draggable';
10
10
  import { Resizable } from 're-resizable';
@@ -63,57 +63,63 @@ var en = {
63
63
  "shared-sentry-enable-both": "Disable HTML + Canvas recording",
64
64
  "shared-sentry-disable-both": "Enable HTML + Canvas recording",
65
65
  "shared-sentry-cors-wait": "Disabled untill with and without CORS headers fetching mechanism has been implemented",
66
- "shared-sentry-disclaimer": "I understand that while using canvas recording, adding a layer without correct CORS headers will cause error and make the recording to fail. A new recording without the canvas or the layer can be made after reloading the application."
66
+ "shared-sentry-disclaimer": "I understand that while using canvas recording, adding a layer without correct CORS headers will cause error and make the recording to fail. A new recording without the canvas or the layer can be made after reloading the application.",
67
+ "shared-clear": "Clear",
68
+ "shared-light": "Light",
69
+ "shared-dark": "Dark"
67
70
  };
68
71
  var fi = {
69
- "shared-choose-app-mode": "ei käännetty",
70
- "shared-cheat-sheet": "ei käännetty",
71
- "shared-save": "ei käännetty",
72
- "shared-viewer": "ei käännetty",
73
- "shared-editor": "ei käännetty",
74
- "shared-reload-page": "ei käännetty",
75
- "shared-search-label": "ei käännetty",
76
- "shared-last-updated": "ei käännetty",
77
- "shared-click-to-refresh": "ei käännetty",
78
- "shared-error-occurred": "ei käännetty",
79
- "shared-confirmation-description": "ei käännetty",
80
- "shared-confirmation-cancel": "ei käännetty",
81
- "shared-confirmation-submit": "ei käännetty",
82
- "shared-close-caps": "ei käännetty",
83
- "shared-close": "ei käännetty",
84
- "shared-search": "ei käännetty",
85
- "shared-choose-selected-time": "ei käännetty",
86
- "shared-move-selected-time": "ei käännetty",
87
- "shared-move-one-step": "ei käännetty",
88
- "shared-toggle-timeslider": "ei käännetty",
89
- "shared-timeslider-scale": "ei käännetty",
90
- "shared-expand-timeslider-scale": "ei käännetty",
91
- "shared-mouseover-selected-time": "ei käännetty",
92
- "shared-mouseover-on-off": "ei käännetty",
93
- "shared-change-timestep-or-speed": "ei käännetty",
94
- "shared-return-to-current-time": "ei käännettye",
95
- "shared-change-layer-values-scrolling": "ei käännetty",
96
- "shared-change-layermanager-small": "ei käännetty",
97
- "shared-change-layermanager-medium": "ei käännetty",
98
- "shared-change-layermanager-large": "ei käännetty",
99
- "shared-shortcut-left-click": "ei käännetty",
100
- "shared-shortcut-mouse-scroll-timeslider": "ei käännetty",
101
- "shared-shortcut-hold-click": "ei käännetty",
102
- "shared-shortcut-scroll": "ei käännetty",
103
- "shared-shortcut-hover": "ei käännetty",
104
- "shared-shortcut-when-active": "ei käännetty",
105
- "shared-shortcut-home": "ei käännetty",
106
- "shared-shortcut-mouse-scroll": "ei käännetty",
107
- "shared-shortcut-or": "ei käännetty",
108
- "shared-sentry-recording": "ei käännetty",
109
- "shared-sentry-information": "ei käännetty",
110
- "shared-sentry-enable-message": "ei käännetty",
111
- "shared-sentry-disable": "ei käännetty",
112
- "shared-sentry-enable": "ei käännetty",
113
- "shared-sentry-enable-both": "ei käännetty",
114
- "shared-sentry-disable-both": "ei käännetty",
115
- "shared-sentry-cors-wait": "ei käännetty",
116
- "shared-sentry-disclaimer": "ei käännetty"
72
+ "shared-choose-app-mode": "Sovelluksen väriteema",
73
+ "shared-cheat-sheet": "Lunttilappu",
74
+ "shared-save": "Tallenna",
75
+ "shared-viewer": "Katselu",
76
+ "shared-editor": "Muokkain",
77
+ "shared-reload-page": "Lataa sivu uudelleen",
78
+ "shared-search-label": "Etsi palveluista tai lisää palvelun URL-osoite",
79
+ "shared-last-updated": "Päivitetty viimeksi {{time}}",
80
+ "shared-click-to-refresh": "Napsauta päivittääksesi",
81
+ "shared-error-occurred": "Hups, virhe havaittu. Ilmoita ongelmasta eteenpäin ja lataa sivu uudelleen tarvittaessa",
82
+ "shared-confirmation-description": "Oletko varma?",
83
+ "shared-confirmation-cancel": "Palaa takaisin",
84
+ "shared-confirmation-submit": "Lähetä",
85
+ "shared-close-caps": "SULJE",
86
+ "shared-close": "Sulje",
87
+ "shared-search": "Etsi",
88
+ "shared-choose-selected-time": "Valitse valittu aika",
89
+ "shared-move-selected-time": "Liiku ajassa taaksepäin/eteenpäin",
90
+ "shared-move-one-step": "Liiku 1 askel ajassa taaksepäin/eteenpäin",
91
+ "shared-toggle-timeslider": "Kytke TimeSlider näkyville/pois näkyvistä",
92
+ "shared-timeslider-scale": "Muuta TimeSliderin näkyvää aikaväliä",
93
+ "shared-expand-timeslider-scale": "Laajenna/kutista TimeSliderin mittakaavaa (näkyvää aikaväliä)",
94
+ "shared-mouseover-selected-time": "Osoita ja liikuta hiirtä muuttaaksesi valittua aikaa",
95
+ "shared-mouseover-on-off": "Kytke hiiren vaikutus TimeSlideriin päälle/pois päältä",
96
+ "shared-change-timestep-or-speed": "Muuta aika-askelta tai animaation nopeutta",
97
+ "shared-return-to-current-time": "Palaa nykyhetkeen",
98
+ "shared-change-layer-values-scrolling": "Muuta Layer Managerin arvoja vierittämällä hiirtä",
99
+ "shared-change-layermanager-small": "Muuta Layer Managerin kokoa pieneksi",
100
+ "shared-change-layermanager-medium": "Muuta Layer Managerin kokoa keskikokoiseksi",
101
+ "shared-change-layermanager-large": "Muuta Layer Managerin kokoa suureksi",
102
+ "shared-shortcut-left-click": "Napsauta TimeSlider aikajanaa hiiren vasemmalla painikkeella",
103
+ "shared-shortcut-mouse-scroll-timeslider": "Vieritä hiiren rullaa TimeSlider aikajanana päällä",
104
+ "shared-shortcut-hold-click": "Napsauta aikajanaa hiiren vasemmalla painikkeella ja raahaa vasemmalle tai oikealle",
105
+ "shared-shortcut-scroll": "+ vieritä hiiren rullaa TimeSlider aikajanan päällä",
106
+ "shared-shortcut-hover": "Vie hiiri TimeSlider aikajanan tai ajan esittäjän päälle",
107
+ "shared-shortcut-when-active": "kun aikajana on aktiivinen",
108
+ "shared-shortcut-home": "Koti",
109
+ "shared-shortcut-mouse-scroll": "+ hiiren rulla",
110
+ "shared-shortcut-or": "tai",
111
+ "shared-sentry-recording": "Sentry Tallennus",
112
+ "shared-sentry-information": "Geoweb tallentaa tietoja sovelluksen käytöstä monitoroidakseen suorituskykyä, sekä virhetilanteita. Arkaluonteista dataa ei kerätä tai lähetetä.",
113
+ "shared-sentry-enable-message": "Ymmärrän, että laittamalla tallennuksen päälle tallennukseen liittyvää dataa lähetetään Sentryn palvelimille.",
114
+ "shared-sentry-disable": "Laita HTML tallennus pois päältä",
115
+ "shared-sentry-enable": "Laita HTML tallennus päälle",
116
+ "shared-sentry-enable-both": "Laita HTML + Canvas tallennus päälle",
117
+ "shared-sentry-disable-both": "Laita HTML + Canvas tallennus pois päältä",
118
+ "shared-sentry-cors-wait": "Ominaisuus kytketty pois päältä, kunnes sovelluksen latausprosessit tukevat CORS headerien puuttumista.",
119
+ "shared-sentry-disclaimer": "Ymmärrän, että käyttäessäni Canvas-tallennusta ja lisätessäni karttatason, jonka CORS headerit eivät ola kunnosa, sovelluksessa tapahtuu virhe, joka johtaa tallennnuksen epäonnistumiseen. Uuden tallennuksen voi tehdä ilman Canvaksen tallentamista sen jälkeen, kun sovellus on ladattu uudelleen.",
120
+ "shared-clear": "Tyhjennä",
121
+ "shared-light": "Vaalea",
122
+ "shared-dark": "Tumma"
117
123
  };
118
124
  var no = {
119
125
  "shared-choose-app-mode": "Velg din standardmodus",
@@ -163,57 +169,63 @@ var no = {
163
169
  "shared-sentry-enable-both": "Skru av HTML + lerret-opptak",
164
170
  "shared-sentry-disable-both": "Skru på HTML + lerret-opptak",
165
171
  "shared-sentry-cors-wait": "Avskrudd inntil CORS-relaterte headere er implementert",
166
- "shared-sentry-disclaimer": "Jeg forstår at ved å bruke lerretopptak vil opptaket feile dersom jeg legger til et lag uten riktig CORS-headere. Ved å laste inn applikasjonen på nytt kan man starte nytt opptak uten lerret eller lag."
172
+ "shared-sentry-disclaimer": "Jeg forstår at ved å bruke lerretopptak vil opptaket feile dersom jeg legger til et lag uten riktig CORS-headere. Ved å laste inn applikasjonen på nytt kan man starte nytt opptak uten lerret eller lag.",
173
+ "shared-clear": "Tøm",
174
+ "shared-light": "Lys",
175
+ "shared-dark": "Mørk"
167
176
  };
168
177
  var nl = {
169
- "shared-choose-app-mode": "niet vertaald",
170
- "shared-cheat-sheet": "niet vertaald",
171
- "shared-save": "niet vertaald",
172
- "shared-viewer": "niet vertaald",
173
- "shared-editor": "niet vertaald",
174
- "shared-reload-page": "niet vertaald",
175
- "shared-search-label": "niet vertaald",
176
- "shared-last-updated": "niet vertaald",
177
- "shared-click-to-refresh": "niet vertaald",
178
- "shared-error-occurred": "niet vertaald",
179
- "shared-confirmation-description": "niet vertaald",
180
- "shared-confirmation-cancel": "niet vertaald",
181
- "shared-confirmation-submit": "niet vertaald",
182
- "shared-close-caps": "niet vertaald",
183
- "shared-close": "niet vertaald",
184
- "shared-search": "niet vertaald",
185
- "shared-choose-selected-time": "niet vertaald",
186
- "shared-move-selected-time": "niet vertaald",
187
- "shared-move-one-step": "niet vertaald",
188
- "shared-toggle-timeslider": "niet vertaald",
189
- "shared-timeslider-scale": "niet vertaald",
190
- "shared-expand-timeslider-scale": "niet vertaald",
191
- "shared-mouseover-selected-time": "niet vertaald",
192
- "shared-mouseover-on-off": "niet vertaald",
193
- "shared-change-timestep-or-speed": "niet vertaald",
194
- "shared-return-to-current-time": "niet vertaald",
195
- "shared-change-layer-values-scrolling": "niet vertaald",
196
- "shared-change-layermanager-small": "niet vertaald",
197
- "shared-change-layermanager-medium": "niet vertaald",
198
- "shared-change-layermanager-large": "niet vertaald",
199
- "shared-shortcut-left-click": "niet vertaald",
200
- "shared-shortcut-mouse-scroll-timeslider": "niet vertaald",
201
- "shared-shortcut-hold-click": "niet vertaald",
202
- "shared-shortcut-scroll": "niet vertaald",
203
- "shared-shortcut-hover": "niet vertaald",
204
- "shared-shortcut-when-active": "niet vertaald",
205
- "shared-shortcut-home": "niet vertaald",
206
- "shared-shortcut-mouse-scroll": "niet vertaald",
207
- "shared-shortcut-or": "niet vertaald",
208
- "shared-sentry-recording": "niet vertaald",
209
- "shared-sentry-information": "niet vertaald",
210
- "shared-sentry-enable-message": "niet vertaald",
211
- "shared-sentry-disable": "niet vertaald",
212
- "shared-sentry-enable": "niet vertaald",
213
- "shared-sentry-enable-both": "niet vertaald",
214
- "shared-sentry-disable-both": "niet vertaald",
215
- "shared-sentry-cors-wait": "niet vertaald",
216
- "shared-sentry-disclaimer": "niet vertaald"
178
+ "shared-choose-app-mode": "Kies je standaard app-modus",
179
+ "shared-cheat-sheet": "Cheat sheet",
180
+ "shared-save": "Opslaan",
181
+ "shared-viewer": "Kijker",
182
+ "shared-editor": "Bewerker",
183
+ "shared-reload-page": "Pagina vernieuwen",
184
+ "shared-search-label": "Zoek door services of voer een service-URL in",
185
+ "shared-last-updated": "Laatst bijgewerkt {{time}}",
186
+ "shared-click-to-refresh": "Klik om te vernieuwen",
187
+ "shared-error-occurred": "Oeps, er is een fout opgetreden. Rapporteer de onderstaande fout en herlaad de pagina indien nodig.",
188
+ "shared-confirmation-description": "Weet je het zeker?",
189
+ "shared-confirmation-cancel": "Ga terug",
190
+ "shared-confirmation-submit": "Verzenden",
191
+ "shared-close-caps": "SLUITEN",
192
+ "shared-close": "Sluiten",
193
+ "shared-search": "Zoeken",
194
+ "shared-choose-selected-time": "Kies een geselecteerd tijdstip",
195
+ "shared-move-selected-time": "Ga achteruit/vooruit in geselecteerde tijd",
196
+ "shared-move-one-step": "Ga 1 stap achteruit/vooruit in geselecteerde tijd",
197
+ "shared-toggle-timeslider": "Timeslider verbergen/tonen",
198
+ "shared-timeslider-scale": "Timeslider zichtbare periode wijzigen",
199
+ "shared-expand-timeslider-scale": "Timeslider zichtbare periode vergroten/verkleinen",
200
+ "shared-mouseover-selected-time": "Mouseover om de geselecteerde tijd te wijzigen",
201
+ "shared-mouseover-on-off": "Mouseover aan / uit zetten",
202
+ "shared-change-timestep-or-speed": "Wijzig tijdsinterval of animatiesnelheid",
203
+ "shared-return-to-current-time": "Terug naar huidige tijd",
204
+ "shared-change-layer-values-scrolling": "Wijzig de waarde van een laag in de lagen manager door te scrollen",
205
+ "shared-change-layermanager-small": "Verander de grootte van de lagen manager naar klein",
206
+ "shared-change-layermanager-medium": "Verander de grootte van de lagen manager naar middel",
207
+ "shared-change-layermanager-large": "Verander de grootte van de lagen manager naar groot",
208
+ "shared-shortcut-left-click": "Klik met de linkermuisknop op de timeslider",
209
+ "shared-shortcut-mouse-scroll-timeslider": "Scroll over de timeslider",
210
+ "shared-shortcut-hold-click": "Houd de linkermuisknop ingedrukt op de timeslider + sleep naar links of rechts",
211
+ "shared-shortcut-scroll": "+ Scroll timeslider",
212
+ "shared-shortcut-hover": "Hover over de timeslider of tijd indicator",
213
+ "shared-shortcut-when-active": "wanneer slider actief is",
214
+ "shared-shortcut-home": "Home",
215
+ "shared-shortcut-mouse-scroll": "+ Scroll",
216
+ "shared-shortcut-or": "of",
217
+ "shared-sentry-recording": "Sentry Opname",
218
+ "shared-sentry-information": "Om performance en fouten te monitoren, registreert GeoWeb gebruiksinformatie. Tijdens dit proces verlaat geen enkele gevoelige gebruikersinformatie de browser.",
219
+ "shared-sentry-enable-message": "Door opname te starten, ga ik akkoord dat de opnamegerelateerde gegevens ter verwerking naar de servers van Sentry worden verzonden.",
220
+ "shared-sentry-disable": "HTML opname stoppen",
221
+ "shared-sentry-enable": "HTML opname starten",
222
+ "shared-sentry-enable-both": "HTML + Canvas opname stoppen",
223
+ "shared-sentry-disable-both": "HTML + Canvas opname starten",
224
+ "shared-sentry-cors-wait": "Uitgeschakeld totdat het fetching mechanisme met en zonder CORS-headers is geïmplementeerd",
225
+ "shared-sentry-disclaimer": "Ik begrijp dat bij het gebruik van canvasopnamen het toevoegen van een laag zonder de juiste CORS-headers fouten zal veroorzaken en ervoor zal zorgen dat de opname mislukt. Een nieuwe opname zonder het canvas of de laag kan worden gemaakt na het opnieuw laden van de applicatie.",
226
+ "shared-clear": "Wissen",
227
+ "shared-light": "Licht",
228
+ "shared-dark": "Donker"
217
229
  };
218
230
  var sharedTranslations = {
219
231
  en: en,
@@ -2219,35 +2231,16 @@ const CustomDialog = _a => {
2219
2231
  };
2220
2232
 
2221
2233
  const SHARED_NAMESPACE = 'shared';
2222
- const initSharedI18n = () => {
2223
- i18n.use(initReactI18next).init({
2224
- lng: 'en',
2225
- ns: SHARED_NAMESPACE,
2226
- interpolation: {
2227
- escapeValue: false
2228
- },
2229
- resources: {
2230
- en: {
2231
- shared: sharedTranslations.en
2232
- },
2233
- fi: {
2234
- shared: sharedTranslations.fi
2235
- },
2236
- no: {
2237
- shared: sharedTranslations.no
2238
- },
2239
- nl: {
2240
- shared: sharedTranslations.nl
2241
- }
2242
- }
2243
- });
2244
- };
2245
2234
  const translateKeyOutsideComponents = (key, params = undefined) => i18n.t(key, Object.assign({
2246
2235
  ns: SHARED_NAMESPACE
2247
2236
  }, params));
2248
2237
 
2249
2238
  const confirmStyle = {
2250
2239
  width: {
2240
+ xs: '100%',
2241
+ sm: 'auto'
2242
+ },
2243
+ minWidth: {
2251
2244
  xs: '100%',
2252
2245
  sm: '150px'
2253
2246
  },
@@ -4205,17 +4198,42 @@ $$8({ global: true, forced: parseInt !== $parseInt }, {
4205
4198
  });
4206
4199
 
4207
4200
  const isDraggingClassName = 'is-dragging';
4201
+ const useBoundsProps = nodeRef => {
4202
+ const [boundsProps, setBoundsProps] = React__default.useState({});
4203
+ React__default.useEffect(() => {
4204
+ var _a;
4205
+ if (nodeRef) {
4206
+ setBoundsProps({
4207
+ bounds: (_a = nodeRef === null || nodeRef === void 0 ? void 0 : nodeRef.current) === null || _a === void 0 ? void 0 : _a.parentNode,
4208
+ boundsByDirection: true
4209
+ });
4210
+ }
4211
+ // eslint-disable-next-line react-hooks/exhaustive-deps
4212
+ }, []);
4213
+ return boundsProps;
4214
+ };
4208
4215
  const ResizeComponent = _a => {
4209
4216
  var {
4210
4217
  children,
4211
4218
  onResizeStart = () => {},
4212
4219
  onResizeStop = () => {},
4213
4220
  size,
4214
- setSize,
4221
+ setSize = () => {},
4215
4222
  minHeight = 50,
4216
- minWidth = 50
4223
+ minWidth = 50,
4224
+ enable = {
4225
+ top: false,
4226
+ right: false,
4227
+ bottom: false,
4228
+ left: false,
4229
+ topRight: true,
4230
+ bottomRight: true,
4231
+ bottomLeft: true,
4232
+ topLeft: true
4233
+ },
4234
+ nodeRef
4217
4235
  } = _a,
4218
- props = __rest(_a, ["children", "onResizeStart", "onResizeStop", "size", "setSize", "minHeight", "minWidth"]);
4236
+ props = __rest(_a, ["children", "onResizeStart", "onResizeStop", "size", "setSize", "minHeight", "minWidth", "enable", "nodeRef"]);
4219
4237
  const theme = useTheme();
4220
4238
  const onStartResize = React__default.useCallback((event, _direction, node) => {
4221
4239
  event.stopPropagation();
@@ -4235,6 +4253,9 @@ const ResizeComponent = _a => {
4235
4253
  }, [onResizeStart, setSize]);
4236
4254
  const onStopResize = React__default.useCallback((event, direction, node, delta) => {
4237
4255
  node.classList.remove(isDraggingClassName);
4256
+ if (!size) {
4257
+ return;
4258
+ }
4238
4259
  const width = parseInt(size.width, 10) + delta.width;
4239
4260
  const height = parseInt(size.height, 10) + delta.height;
4240
4261
  setSize({
@@ -4243,14 +4264,13 @@ const ResizeComponent = _a => {
4243
4264
  });
4244
4265
  onResizeStop(event, direction, node, delta);
4245
4266
  }, [setSize, onResizeStop, size]);
4246
- return jsx(Resizable
4247
- // TODO: implement bounds https://gitlab.com/opengeoweb/opengeoweb/-/issues/1035
4248
- , Object.assign({
4249
- // TODO: implement bounds https://gitlab.com/opengeoweb/opengeoweb/-/issues/1035
4267
+ const boundsProps = useBoundsProps(nodeRef);
4268
+ return jsx(Resizable, Object.assign({
4250
4269
  minHeight: minHeight,
4251
4270
  minWidth: minWidth,
4252
4271
  size: size,
4253
- onResizeStop: onStopResize,
4272
+ onResizeStop: onStopResize
4273
+ }, boundsProps, {
4254
4274
  handleComponent: {
4255
4275
  bottomRight: jsx(Resize, {
4256
4276
  style: {
@@ -4272,16 +4292,7 @@ const ResizeComponent = _a => {
4272
4292
  className: "resizableHandle"
4273
4293
  })
4274
4294
  },
4275
- enable: {
4276
- top: false,
4277
- right: false,
4278
- bottom: false,
4279
- left: false,
4280
- topRight: true,
4281
- bottomRight: true,
4282
- bottomLeft: true,
4283
- topLeft: true
4284
- },
4295
+ enable: enable,
4285
4296
  onResizeStart: onStartResize
4286
4297
  }, props, {
4287
4298
  children: children
@@ -4732,8 +4743,18 @@ const UserMenu = ({
4732
4743
  }, {
4733
4744
  children: !_isAdmin ? jsx(Avatar, {
4734
4745
  children: initials
4735
- }) : jsx(Admin, {
4736
- children: initials
4746
+ }) : jsxs(Fragment, {
4747
+ children: [jsx(Admin, {}), initials && jsx("div", Object.assign({
4748
+ style: {
4749
+ position: 'absolute',
4750
+ fontSize: '14px',
4751
+ color: '#FFF',
4752
+ fontFamily: 'Roboto',
4753
+ fontWeight: 500
4754
+ }
4755
+ }, {
4756
+ children: initials
4757
+ }))]
4737
4758
  })
4738
4759
  })), _isOpen && jsx(Paper, Object.assign({
4739
4760
  sx: styles$4.container,
@@ -4783,13 +4804,13 @@ const MenuItemTheme = () => {
4783
4804
  control: jsx(Radio, {
4784
4805
  checked: !isDark
4785
4806
  }),
4786
- label: "Light"
4807
+ label: t('shared-light')
4787
4808
  }), jsx(FormControlLabel, {
4788
4809
  value: false,
4789
4810
  control: jsx(Radio, {
4790
4811
  checked: isDark
4791
4812
  }),
4792
- label: "Dark"
4813
+ label: t('shared-dark')
4793
4814
  })]
4794
4815
  }))
4795
4816
  }))]
@@ -5383,7 +5404,8 @@ const DraggableComponent = _a => {
5383
5404
  setSize: setSize,
5384
5405
  onResizeStart: onStartResize,
5385
5406
  onResizeStop: onStopResize,
5386
- onResize: onResize
5407
+ onResize: onResize,
5408
+ nodeRef: nodeRef
5387
5409
  }, {
5388
5410
  children: jsx(ToolContainer, Object.assign({
5389
5411
  maxHeight: initialMaxHeight,
@@ -5477,7 +5499,7 @@ const ShortcutList = ({
5477
5499
  }) => {
5478
5500
  const {
5479
5501
  t
5480
- } = useTranslation();
5502
+ } = useTranslation(SHARED_NAMESPACE);
5481
5503
  const shortcuts = [{
5482
5504
  titleKey: 'shared-choose-selected-time',
5483
5505
  description: jsx(ShortCutSegment, {
@@ -6070,7 +6092,7 @@ const UserMenuItemSentryRecording = ({
6070
6092
  },
6071
6093
  minHeight: 300,
6072
6094
  minWidth: 500,
6073
- title: "Sentry Recording",
6095
+ title: t('shared-sentry-recording'),
6074
6096
  isOpen: true,
6075
6097
  onClose: onClose,
6076
6098
  bounds: "parent"
@@ -6153,13 +6175,13 @@ const UserMenuItemSentryRecording = ({
6153
6175
  item: true,
6154
6176
  justifyContent: "center"
6155
6177
  }, {
6156
- children: jsxs(Typography, Object.assign({
6178
+ children: jsx(Typography, Object.assign({
6157
6179
  sx: {
6158
6180
  paddingTop: '20px',
6159
6181
  textAlign: 'center'
6160
6182
  }
6161
6183
  }, {
6162
- children: [' ', t('shared-sentry-disclaimer')]
6184
+ children: t('shared-sentry-disclaimer')
6163
6185
  }))
6164
6186
  }))]
6165
6187
  }))
@@ -7721,7 +7743,7 @@ const isURL = string => /^https?:\/\//.test(string);
7721
7743
  const ClearButton = ({
7722
7744
  onClick
7723
7745
  }) => jsx(CustomIconButton, Object.assign({
7724
- tooltipTitle: "Clear",
7746
+ tooltipTitle: translateKeyOutsideComponents('shared-clear'),
7725
7747
  sx: buttonStyle,
7726
7748
  onClick: onClick
7727
7749
  }, {
@@ -8383,6 +8405,7 @@ const DATE_FORMAT_YEAR = 'yyyy-MM-dd';
8383
8405
  const DATE_FORMAT_HOURS = 'HH:mm';
8384
8406
  const DATE_FORMAT_NAME_OF_DAY_MONTH = 'eee dd MMM HH:mm';
8385
8407
  const DATE_FORMAT_NAME_OF_MONTH = 'dd MMM yyyy, HH:mm';
8408
+ const DATE_FORMAT_NAME_OF_DAY = 'eee dd/MM/yyyy HH:mm';
8386
8409
 
8387
8410
  /**
8388
8411
  * Parsing date strings with geoweb dateUtils:
@@ -8918,7 +8941,7 @@ const startOfYearUTC = date => {
8918
8941
  const convertNOWFormatToUTC = timeValue => {
8919
8942
  const now = new Date();
8920
8943
  const today = startOfDay(now);
8921
- const regex = /(NOW|TODAY)([\+\-])PT(\d+)H(\d+)M/;
8944
+ const regex = /(NOW|TODAY)([+-])PT(\d+)H(\d+)M/;
8922
8945
  const matches = timeValue.match(regex);
8923
8946
  if (matches) {
8924
8947
  const base = matches[1] === 'NOW' ? now : today;
@@ -8937,7 +8960,7 @@ const convertNOWFormatToUTC = timeValue => {
8937
8960
  const convertNOWandTODAYFormatsToUTC = timeValue => {
8938
8961
  const now = new Date();
8939
8962
  const today = startOfDayUTC(now);
8940
- const regex = /(NOW|TODAY)([\+\-])PT(\d+)H(\d+)M/;
8963
+ const regex = /(NOW|TODAY)([+-])PT(\d+)H(\d+)M/;
8941
8964
  const matches = timeValue.match(regex);
8942
8965
  if (matches) {
8943
8966
  const base = matches[1] === 'NOW' ? now : today;
@@ -8970,6 +8993,7 @@ var index = /*#__PURE__*/Object.freeze({
8970
8993
  __proto__: null,
8971
8994
  DATE_FORMAT_DATEPICKER: DATE_FORMAT_DATEPICKER,
8972
8995
  DATE_FORMAT_HOURS: DATE_FORMAT_HOURS,
8996
+ DATE_FORMAT_NAME_OF_DAY: DATE_FORMAT_NAME_OF_DAY,
8973
8997
  DATE_FORMAT_NAME_OF_DAY_MONTH: DATE_FORMAT_NAME_OF_DAY_MONTH,
8974
8998
  DATE_FORMAT_NAME_OF_MONTH: DATE_FORMAT_NAME_OF_MONTH,
8975
8999
  DATE_FORMAT_UTC: DATE_FORMAT_UTC,
@@ -9111,4 +9135,4 @@ class RenderCounter {
9111
9135
  }
9112
9136
  const renderCounter = new RenderCounter();
9113
9137
 
9114
- export { AlertBanner, AlertIcon, AppHeader, AppLayout, Avatar, CanvasComponent, ConfirmationDialog, ConfirmationServiceProvider, CustomAccordion, CustomDialog, CustomIconButton, CustomSlider, CustomToggleButton, CustomTooltip, DEFAULT_ERROR_MESSAGE, DraggableComponent$1 as Draggable, ErrorBoundary, LastUpdateTime, ResizeComponent as Resizable, SHARED_NAMESPACE, SearchField, SearchFieldButton, SearchHighlight, StatusTag, SwitchButton, ToggleMenu, ToolContainer, DraggableComponent as ToolContainerDraggable, ToolFooter, ToolHeader, TooltipSelect, UserMenu, UserMenuItemCheatSheet, UserMenuItemSentryRecording, MenuItemTheme as UserMenuItemTheme, adjustPosition, calculateDialogSizeAndPosition, calculateStartSize, createMockStoreWithEggs, createMockStoreWithEggsAndMiddleware, createToolkitMockStoreWithEggs, index as dateUtils, defaultDelay, getAxiosErrorMessage, getAxiosWarningMessage, getErrorMessage, getInitials, getLastUpdateTitle, getPosition, getWarningMessage, initSharedI18n, isAxiosAuthError, isAxiosError, pollingIntervalTimeout, renderCounter, sharedTranslations, showPrompt, sliderHeaderStyle, tooltipContainerStyles, translateKeyOutsideComponents, useConfirmationDialog, useControlledTooltip, useDebounce, useDialogActions, useIsMounted, useMakeSureContainerStaysInsideWindow, usePoller, usePreventBrowserClose, usePrevious, useUserMenu, withEggs };
9138
+ export { AlertBanner, AlertIcon, AppHeader, AppLayout, Avatar, CanvasComponent, ConfirmationDialog, ConfirmationServiceProvider, CustomAccordion, CustomDialog, CustomIconButton, CustomSlider, CustomToggleButton, CustomTooltip, DEFAULT_ERROR_MESSAGE, DraggableComponent$1 as Draggable, ErrorBoundary, LastUpdateTime, ResizeComponent as Resizable, SHARED_NAMESPACE, SearchField, SearchFieldButton, SearchHighlight, StatusTag, SwitchButton, ToggleMenu, ToolContainer, DraggableComponent as ToolContainerDraggable, ToolFooter, ToolHeader, TooltipSelect, UserMenu, UserMenuItemCheatSheet, UserMenuItemSentryRecording, MenuItemTheme as UserMenuItemTheme, adjustPosition, calculateDialogSizeAndPosition, calculateStartSize, createMockStoreWithEggs, createMockStoreWithEggsAndMiddleware, createToolkitMockStoreWithEggs, index as dateUtils, defaultDelay, getAxiosErrorMessage, getAxiosWarningMessage, getErrorMessage, getInitials, getLastUpdateTitle, getPosition, getWarningMessage, isAxiosAuthError, isAxiosError, pollingIntervalTimeout, renderCounter, sharedTranslations, showPrompt, sliderHeaderStyle, tooltipContainerStyles, useConfirmationDialog, useControlledTooltip, useDebounce, useDialogActions, useIsMounted, useMakeSureContainerStaysInsideWindow, usePoller, usePreventBrowserClose, usePrevious, useUserMenu, withEggs };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@opengeoweb/shared",
3
- "version": "9.21.0",
3
+ "version": "9.23.1",
4
4
  "description": "GeoWeb shared library with shared components and utils for the opengeoweb project",
5
5
  "license": "Apache-2.0",
6
6
  "repository": {
@@ -8,7 +8,7 @@
8
8
  "url": "git@gitlab.com:opengeoweb/opengeoweb.git"
9
9
  },
10
10
  "dependencies": {
11
- "@mui/material": "~5.15.11",
11
+ "@mui/material": "^5.16.0",
12
12
  "@opengeoweb/theme": "*",
13
13
  "react-draggable": "^4.4.6",
14
14
  "re-resizable": "^6.9.11",
package/src/index.d.ts CHANGED
@@ -3,5 +3,5 @@ export * from './lib/components';
3
3
  export * from './lib/hooks';
4
4
  export * from './lib/utils';
5
5
  export * from './lib/types';
6
- export * from './lib/utils/i18n';
6
+ export { SHARED_NAMESPACE } from './lib/utils/i18n';
7
7
  export { sharedTranslations };
@@ -1,5 +1,10 @@
1
1
  import React from 'react';
2
2
  import { ResizableComponentProps } from './types';
3
3
  export declare const isDraggingClassName = "is-dragging";
4
+ export interface BoundsProps {
5
+ bounds: HTMLElement;
6
+ boundsByDirection: boolean;
7
+ }
8
+ export declare const useBoundsProps: (nodeRef?: React.RefObject<HTMLElement>) => BoundsProps | object;
4
9
  declare const ResizeComponent: React.FC<ResizableComponentProps>;
5
10
  export default ResizeComponent;
@@ -1,5 +1,5 @@
1
- /// <reference types="react" />
2
1
  import { ResizableProps } from 're-resizable';
2
+ import React from 'react';
3
3
  export interface DraggablePosition {
4
4
  x: number;
5
5
  y: number;
@@ -23,4 +23,5 @@ export interface ResizableComponentProps extends Omit<ResizableProps, 'size'> {
23
23
  size?: Size;
24
24
  children: React.ReactNode;
25
25
  onResizeStart?: () => void;
26
+ nodeRef?: React.RefObject<HTMLElement>;
26
27
  }
@@ -4,3 +4,4 @@ export declare const DATE_FORMAT_YEAR = "yyyy-MM-dd";
4
4
  export declare const DATE_FORMAT_HOURS = "HH:mm";
5
5
  export declare const DATE_FORMAT_NAME_OF_DAY_MONTH = "eee dd MMM HH:mm";
6
6
  export declare const DATE_FORMAT_NAME_OF_MONTH = "dd MMM yyyy, HH:mm";
7
+ export declare const DATE_FORMAT_NAME_OF_DAY = "eee dd/MM/yyyy HH:mm";