ublo-lib 1.38.0 → 1.38.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.
@@ -4,19 +4,15 @@ type Resort = {
4
4
  };
5
5
  type Props = {
6
6
  lang: "fr" | "en";
7
+ channel: string;
8
+ resort: string;
7
9
  msemServicesUrl: string;
8
- options: {
9
- channel: string;
10
- resort: string;
11
- cartUrl?: string;
12
- analytics?: () => void;
13
- };
14
10
  urlOverride?: string;
15
11
  resorts?: Resort[];
16
12
  target: HTMLElement | null;
17
13
  updatePreset: (preset: any) => any;
18
14
  closeEditor: () => void;
19
15
  };
20
- export default function EditorDialog({ lang, msemServicesUrl, options, urlOverride, resorts, target, updatePreset, closeEditor, }: Props): import("react/jsx-runtime").JSX.Element;
16
+ export default function EditorDialog({ lang, channel, resort, msemServicesUrl, urlOverride, resorts, target, updatePreset, closeEditor, }: Props): import("react/jsx-runtime").JSX.Element;
21
17
  export {};
22
18
  //# sourceMappingURL=editor-dialog.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"editor-dialog.d.ts","sourceRoot":"","sources":["../../../../src/future/components/msem-preset-editor/editor-dialog.tsx"],"names":[],"mappings":"AAMA,KAAK,MAAM,GAAG;IACZ,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;CACf,CAAC;AAEF,KAAK,KAAK,GAAG;IACX,IAAI,EAAE,IAAI,GAAG,IAAI,CAAC;IAClB,eAAe,EAAE,MAAM,CAAC;IACxB,OAAO,EAAE;QACP,OAAO,EAAE,MAAM,CAAC;QAChB,MAAM,EAAE,MAAM,CAAC;QACf,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,SAAS,CAAC,EAAE,MAAM,IAAI,CAAC;KACxB,CAAC;IACF,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;IACnB,MAAM,EAAE,WAAW,GAAG,IAAI,CAAC;IAC3B,YAAY,EAAE,CAAC,MAAM,EAAE,GAAG,KAAK,GAAG,CAAC;IACnC,WAAW,EAAE,MAAM,IAAI,CAAC;CACzB,CAAC;AAEF,MAAM,CAAC,OAAO,UAAU,YAAY,CAAC,EACnC,IAAI,EACJ,eAAe,EACf,OAAO,EACP,WAAW,EACX,OAAO,EACP,MAAM,EACN,YAAY,EACZ,WAAW,GACZ,EAAE,KAAK,2CAqDP"}
1
+ {"version":3,"file":"editor-dialog.d.ts","sourceRoot":"","sources":["../../../../src/future/components/msem-preset-editor/editor-dialog.tsx"],"names":[],"mappings":"AAMA,KAAK,MAAM,GAAG;IACZ,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;CACf,CAAC;AAEF,KAAK,KAAK,GAAG;IACX,IAAI,EAAE,IAAI,GAAG,IAAI,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;IACf,eAAe,EAAE,MAAM,CAAC;IACxB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;IACnB,MAAM,EAAE,WAAW,GAAG,IAAI,CAAC;IAC3B,YAAY,EAAE,CAAC,MAAM,EAAE,GAAG,KAAK,GAAG,CAAC;IACnC,WAAW,EAAE,MAAM,IAAI,CAAC;CACzB,CAAC;AAEF,MAAM,CAAC,OAAO,UAAU,YAAY,CAAC,EACnC,IAAI,EACJ,OAAO,EACP,MAAM,EACN,eAAe,EACf,WAAW,EACX,OAAO,EACP,MAAM,EACN,YAAY,EACZ,WAAW,GACZ,EAAE,KAAK,2CAsDP"}
@@ -4,7 +4,7 @@ import Dialog from "dt-design-system/es/dialog";
4
4
  import Button from "dt-design-system/es/button";
5
5
  import MseMPresetEditor from "./msem-preset-editor";
6
6
  import css from "./editor-dialog.module.css";
7
- export default function EditorDialog({ lang, msemServicesUrl, options, urlOverride, resorts, target, updatePreset, closeEditor, }) {
7
+ export default function EditorDialog({ lang, channel, resort, msemServicesUrl, urlOverride, resorts, target, updatePreset, closeEditor, }) {
8
8
  const selectedPreset = target?.getAttribute("data-msem-preset");
9
9
  const [preset, setPreset] = React.useState(selectedPreset ? JSON.parse(selectedPreset) : null);
10
10
  React.useEffect(() => {
@@ -21,5 +21,5 @@ export default function EditorDialog({ lang, msemServicesUrl, options, urlOverri
21
21
  }
22
22
  updatePreset(preset);
23
23
  }, [preset, updatePreset, target]);
24
- return (_jsxs(Dialog, { className: css.dialog, isOpened: !!target, close: closeEditor, closeOnBackdropClick: false, showAsModal: false, children: [_jsx("div", { className: css.title, children: "Choisissez un widget" }), _jsx("div", { className: css.subtitle, children: "Ce dernier s'ouvrira au clic sur l'\u00E9l\u00E9ment s\u00E9lectionn\u00E9." }), _jsx(MseMPresetEditor, { lang: lang, msemServicesUrl: msemServicesUrl, options: options, urlOverride: urlOverride, resorts: resorts, selectedPreset: selectedPreset, onChange: setPreset }), _jsxs("div", { className: css.buttons, children: [_jsx(Button, { variant: "secondary", onClick: closeEditor, children: "Annuler" }), _jsx(Button, { variant: "primary", onClick: updateNewPreset, children: "Valider" })] })] }));
24
+ return (_jsxs(Dialog, { className: css.dialog, isOpened: !!target, close: closeEditor, closeOnBackdropClick: false, showAsModal: false, children: [_jsx("div", { className: css.title, children: "Choisissez un widget" }), _jsx("div", { className: css.subtitle, children: "Ce dernier s'ouvrira au clic sur l'\u00E9l\u00E9ment s\u00E9lectionn\u00E9." }), _jsx(MseMPresetEditor, { lang: lang, channel: channel, resort: resort, msemServicesUrl: msemServicesUrl, urlOverride: urlOverride, resorts: resorts, selectedPreset: selectedPreset, onChange: setPreset }), _jsxs("div", { className: css.buttons, children: [_jsx(Button, { variant: "secondary", onClick: closeEditor, children: "Annuler" }), _jsx(Button, { variant: "primary", onClick: updateNewPreset, children: "Valider" })] })] }));
25
25
  }
@@ -4,18 +4,14 @@ type Resort = {
4
4
  };
5
5
  type Props = {
6
6
  lang: "fr" | "en";
7
+ channel: string;
8
+ resort: string;
7
9
  msemServicesUrl: string;
8
- options: {
9
- channel: string;
10
- resort?: string | number;
11
- cartUrl?: string;
12
- analytics?: () => void;
13
- };
14
10
  urlOverride?: string;
15
11
  resorts?: Resort[];
16
12
  selectedPreset?: string | null;
17
13
  onChange?: (preset: Record<string, any> | null) => void;
18
14
  };
19
- export default function MseMPresetEditor({ lang, msemServicesUrl, options, urlOverride, resorts, selectedPreset, onChange, }: Props): import("react/jsx-runtime").JSX.Element;
15
+ export default function MseMPresetEditor({ lang, channel, resort, msemServicesUrl, urlOverride, resorts, selectedPreset, onChange, }: Props): import("react/jsx-runtime").JSX.Element;
20
16
  export {};
21
17
  //# sourceMappingURL=msem-preset-editor.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"msem-preset-editor.d.ts","sourceRoot":"","sources":["../../../../src/future/components/msem-preset-editor/msem-preset-editor.tsx"],"names":[],"mappings":"AAmBA,KAAK,MAAM,GAAG;IACZ,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;CACf,CAAC;AAEF,KAAK,KAAK,GAAG;IACX,IAAI,EAAE,IAAI,GAAG,IAAI,CAAC;IAClB,eAAe,EAAE,MAAM,CAAC;IACxB,OAAO,EAAE;QACP,OAAO,EAAE,MAAM,CAAC;QAChB,MAAM,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;QACzB,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,SAAS,CAAC,EAAE,MAAM,IAAI,CAAC;KACxB,CAAC;IACF,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;IACnB,cAAc,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/B,QAAQ,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,IAAI,KAAK,IAAI,CAAC;CACzD,CAAC;AAEF,MAAM,CAAC,OAAO,UAAU,gBAAgB,CAAC,EACvC,IAAI,EACJ,eAAe,EACf,OAAO,EACP,WAAW,EACX,OAAO,EACP,cAAc,EACd,QAAQ,GACT,EAAE,KAAK,2CAyNP"}
1
+ {"version":3,"file":"msem-preset-editor.d.ts","sourceRoot":"","sources":["../../../../src/future/components/msem-preset-editor/msem-preset-editor.tsx"],"names":[],"mappings":"AAmBA,KAAK,MAAM,GAAG;IACZ,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;CACf,CAAC;AAEF,KAAK,KAAK,GAAG;IACX,IAAI,EAAE,IAAI,GAAG,IAAI,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;IACf,eAAe,EAAE,MAAM,CAAC;IACxB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;IACnB,cAAc,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/B,QAAQ,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,IAAI,KAAK,IAAI,CAAC;CACzD,CAAC;AAEF,MAAM,CAAC,OAAO,UAAU,gBAAgB,CAAC,EACvC,IAAI,EACJ,OAAO,EACP,MAAM,EACN,eAAe,EACf,WAAW,EACX,OAAO,EACP,cAAc,EACd,QAAQ,GACT,EAAE,KAAK,2CAwNP"}
@@ -15,18 +15,18 @@ import Editors from "./editors";
15
15
  import * as UrlParams from "./services/url-params";
16
16
  import * as Preset from "./services/preset";
17
17
  import css from "./msem-preset-editor.module.css";
18
- export default function MseMPresetEditor({ lang, msemServicesUrl, options, urlOverride, resorts, selectedPreset, onChange, }) {
18
+ export default function MseMPresetEditor({ lang, channel, resort, msemServicesUrl, urlOverride, resorts, selectedPreset, onChange, }) {
19
19
  const currentPreset = selectedPreset ? JSON.parse(selectedPreset) : undefined;
20
- const defaultResort = Number(currentPreset ? currentPreset.options.resort : options.resort);
20
+ const defaultResort = Number(currentPreset ? currentPreset.options.resort : resort);
21
21
  const [facet, setFacet] = React.useState(currentPreset?.options?.facet?.toString() || "");
22
22
  const [stay, setStay] = React.useState(currentPreset?.presets?.stay || { from: "", to: "" });
23
23
  const [preset, setPreset] = React.useState(currentPreset || null);
24
24
  const [error, setError] = React.useState(null);
25
25
  const [showPresetDialog, setShowPresetDialog] = React.useState(false);
26
26
  const [presetUrl, setPresetUrl] = React.useState("");
27
- const [resort, setResort] = React.useState(defaultResort);
27
+ const [selectedResort, setSelectedResort] = React.useState(defaultResort);
28
28
  const initialRender = React.useRef(true);
29
- const showWidgetList = resort && facet !== "";
29
+ const showWidgetList = selectedResort && facet !== "";
30
30
  const updatePreset = React.useCallback((item, subPreset) => {
31
31
  let { name, options: itemOptions, presets: itemPresets } = item;
32
32
  const widget = subPreset?.widget || item.widget;
@@ -45,8 +45,7 @@ export default function MseMPresetEditor({ lang, msemServicesUrl, options, urlOv
45
45
  const allOptions = {
46
46
  facet: Number(facet),
47
47
  ...itemOptions,
48
- ...options,
49
- resort,
48
+ resort: selectedResort,
50
49
  };
51
50
  const newPreset = {
52
51
  name,
@@ -57,7 +56,7 @@ export default function MseMPresetEditor({ lang, msemServicesUrl, options, urlOv
57
56
  };
58
57
  onChange?.(newPreset);
59
58
  setPreset(newPreset);
60
- }, [facet, onChange, options, resort, stay, urlOverride]);
59
+ }, [facet, onChange, selectedResort, stay, urlOverride]);
61
60
  const removePreset = React.useCallback(() => {
62
61
  onChange?.(null);
63
62
  setPreset(null);
@@ -111,15 +110,15 @@ export default function MseMPresetEditor({ lang, msemServicesUrl, options, urlOv
111
110
  else {
112
111
  removePreset();
113
112
  }
114
- }, [removePreset, resort]);
115
- if (!resort)
113
+ }, [removePreset, selectedResort]);
114
+ if (!selectedResort)
116
115
  return null;
117
116
  const CurrentEditor = preset?.widget && Editors[preset.widget];
118
117
  const showPresetUrl = Boolean(preset?.widget && presetUrl !== "");
119
118
  const footerClasses = classNames(css.footer, {
120
119
  [css.footerButtonOnly]: !showPresetUrl,
121
120
  });
122
- return (_jsxs("div", { className: css.editor, children: [resorts && (_jsx(ResortSelector, { resorts: resorts, resort: resort, setResort: setResort })), _jsx(FacetSelector, { facet: facet, setFacet: setFacet, setPreset: setPreset }), _jsx(StayPicker, { stay: stay, setStay: setStay, setPreset: setPreset }), showWidgetList && (_jsx(WidgetList, { lang: lang, msemServicesUrl: msemServicesUrl, resort: resort, channel: options.channel, facet: facet, preset: preset, updatePreset: updatePreset, removePreset: removePreset, error: error, setError: setError, setShowPresetDialog: setShowPresetDialog })), _jsx(Dialog, { isOpened: showPresetDialog, close: () => setShowPresetDialog(false), container: null, showAsModal: false, children: showPresetDialog && (_jsx(CurrentEditor, { stay: stay, facet: facet, preset: preset, setPreset: setPreset, setShowPresetDialog: setShowPresetDialog, testPreset: testPreset, onChange: onChange, urlOverride: urlOverride })) }), error && _jsx("div", { className: css.error, children: error }), _jsxs("div", { className: footerClasses, children: [showPresetUrl ? (_jsx(Tooltip, { content: "Tester dans le widget MseM", children: _jsx(Button, { variant: "secondary", disabled: !preset?.widget, className: css.testButton, onClick: testPreset, children: _jsx(Icons.OpenInBrowser, {}) }) })) : (_jsxs(Button, { variant: "secondary", disabled: !preset?.widget, className: css.testButton, onClick: testPreset, children: [_jsx(Icons.OpenInBrowser, {}), "Tester dans le widget MseM"] })), showPresetUrl && (_jsx(Input, { type: "text", className: css.url, value: presetUrl, onClick: copyUrl, placeholder: !preset
121
+ return (_jsxs("div", { className: css.editor, children: [resorts && (_jsx(ResortSelector, { resorts: resorts, resort: selectedResort, setResort: setSelectedResort })), _jsx(FacetSelector, { facet: facet, setFacet: setFacet, setPreset: setPreset }), _jsx(StayPicker, { stay: stay, setStay: setStay, setPreset: setPreset }), showWidgetList && (_jsx(WidgetList, { lang: lang, msemServicesUrl: msemServicesUrl, resort: selectedResort, channel: channel, facet: facet, preset: preset, updatePreset: updatePreset, removePreset: removePreset, error: error, setError: setError, setShowPresetDialog: setShowPresetDialog })), _jsx(Dialog, { isOpened: showPresetDialog, close: () => setShowPresetDialog(false), container: null, showAsModal: false, children: showPresetDialog && (_jsx(CurrentEditor, { stay: stay, facet: facet, preset: preset, setPreset: setPreset, setShowPresetDialog: setShowPresetDialog, testPreset: testPreset, onChange: onChange, urlOverride: urlOverride })) }), error && _jsx("div", { className: css.error, children: error }), _jsxs("div", { className: footerClasses, children: [showPresetUrl ? (_jsx(Tooltip, { content: "Tester dans le widget MseM", children: _jsx(Button, { variant: "secondary", disabled: !preset?.widget, className: css.testButton, onClick: testPreset, children: _jsx(Icons.OpenInBrowser, {}) }) })) : (_jsxs(Button, { variant: "secondary", disabled: !preset?.widget, className: css.testButton, onClick: testPreset, children: [_jsx(Icons.OpenInBrowser, {}), "Tester dans le widget MseM"] })), showPresetUrl && (_jsx(Input, { type: "text", className: css.url, value: presetUrl, onClick: copyUrl, placeholder: !preset
123
122
  ? "Aucun preset sélectionné"
124
123
  : "Preset incompatible au format URL", readOnly: true }))] })] }));
125
124
  }
@@ -4,16 +4,12 @@ type Resort = {
4
4
  };
5
5
  type Props = {
6
6
  lang: "fr" | "en";
7
+ channel: string;
8
+ resort: string;
7
9
  msemServicesUrl: string;
8
10
  target: HTMLElement | null;
9
- options: {
10
- channel: string;
11
- resort: string;
12
- cartUrl?: string;
13
- analytics?: () => void;
14
- };
15
11
  resorts?: Resort[];
16
12
  };
17
- export default function MseMPresetLinker({ lang, msemServicesUrl, target, options, resorts, }: Props): import("react/jsx-runtime").JSX.Element;
13
+ export default function MseMPresetLinker({ lang, channel, resort, msemServicesUrl, target, resorts, }: Props): import("react/jsx-runtime").JSX.Element;
18
14
  export {};
19
15
  //# sourceMappingURL=msem-preset-linker.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"msem-preset-linker.d.ts","sourceRoot":"","sources":["../../../../src/future/components/msem-preset-linker/msem-preset-linker.tsx"],"names":[],"mappings":"AAGA,KAAK,MAAM,GAAG;IACZ,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;CACf,CAAC;AAEF,KAAK,KAAK,GAAG;IACX,IAAI,EAAE,IAAI,GAAG,IAAI,CAAC;IAClB,eAAe,EAAE,MAAM,CAAC;IACxB,MAAM,EAAE,WAAW,GAAG,IAAI,CAAC;IAC3B,OAAO,EAAE;QACP,OAAO,EAAE,MAAM,CAAC;QAChB,MAAM,EAAE,MAAM,CAAC;QACf,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,SAAS,CAAC,EAAE,MAAM,IAAI,CAAC;KACxB,CAAC;IAEF,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;CACpB,CAAC;AAIF,MAAM,CAAC,OAAO,UAAU,gBAAgB,CAAC,EACvC,IAAI,EACJ,eAAe,EACf,MAAM,EACN,OAAO,EACP,OAAO,GACR,EAAE,KAAK,2CA0BP"}
1
+ {"version":3,"file":"msem-preset-linker.d.ts","sourceRoot":"","sources":["../../../../src/future/components/msem-preset-linker/msem-preset-linker.tsx"],"names":[],"mappings":"AAGA,KAAK,MAAM,GAAG;IACZ,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;CACf,CAAC;AAEF,KAAK,KAAK,GAAG;IACX,IAAI,EAAE,IAAI,GAAG,IAAI,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;IACf,eAAe,EAAE,MAAM,CAAC;IACxB,MAAM,EAAE,WAAW,GAAG,IAAI,CAAC;IAC3B,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;CACpB,CAAC;AAIF,MAAM,CAAC,OAAO,UAAU,gBAAgB,CAAC,EACvC,IAAI,EACJ,OAAO,EACP,MAAM,EACN,eAAe,EACf,MAAM,EACN,OAAO,GACR,EAAE,KAAK,2CA2BP"}
@@ -1,7 +1,7 @@
1
1
  import { jsx as _jsx } from "react/jsx-runtime";
2
2
  import EditorDialog from "../msem-preset-editor/editor-dialog";
3
3
  const PRESET_ATTRIBUTE = "data-msem-preset";
4
- export default function MseMPresetLinker({ lang, msemServicesUrl, target, options, resorts, }) {
4
+ export default function MseMPresetLinker({ lang, channel, resort, msemServicesUrl, target, resorts, }) {
5
5
  const link = target?.querySelector(":scope > a");
6
6
  const urlOverride = link?.getAttribute("href") || undefined;
7
7
  const updatePreset = (newPreset) => {
@@ -13,5 +13,5 @@ export default function MseMPresetLinker({ lang, msemServicesUrl, target, option
13
13
  }
14
14
  };
15
15
  const closeEditor = () => { };
16
- return (_jsx(EditorDialog, { lang: lang, msemServicesUrl: msemServicesUrl, options: options, target: target, updatePreset: updatePreset, closeEditor: closeEditor, urlOverride: urlOverride, resorts: resorts }));
16
+ return (_jsx(EditorDialog, { lang: lang, channel: channel, resort: resort, msemServicesUrl: msemServicesUrl, target: target, updatePreset: updatePreset, closeEditor: closeEditor, urlOverride: urlOverride, resorts: resorts }));
17
17
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "ublo-lib",
3
- "version": "1.38.0",
3
+ "version": "1.38.1",
4
4
  "peerDependencies": {
5
5
  "dt-design-system": "^3.9.9",
6
6
  "leaflet": "^1.9.1",