ublo-lib 1.19.33 → 1.19.35

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.
@@ -6,8 +6,7 @@ import * as Ripple from "dt-design-system/es/ripple";
6
6
  import * as Utils from "./utils";
7
7
  import css from "./calendar-date.module.css";
8
8
  import { jsx as _jsx } from "react/jsx-runtime";
9
- export default React.memo(CalendarDate);
10
- function CalendarDate({
9
+ export default function CalendarDate({
11
10
  date,
12
11
  month,
13
12
  year,
@@ -9,12 +9,11 @@ import * as Utils from "./utils";
9
9
  import css from "./calendar.module.css";
10
10
  import { jsx as _jsx } from "react/jsx-runtime";
11
11
  import { jsxs as _jsxs } from "react/jsx-runtime";
12
- export default React.forwardRef(Calendar);
13
- function Calendar({
12
+ export default function Calendar({
14
13
  lang = "fr",
15
14
  format,
16
15
  className
17
- }, ref) {
16
+ }) {
18
17
  const locale = lang || (typeof navigator !== "undefined" && navigator.language) === "fr" ? "fr" : "en";
19
18
  const [presets, setPresets] = React.useState(format.presets);
20
19
  React.useEffect(() => {
@@ -65,7 +64,6 @@ function Calendar({
65
64
  };
66
65
  const classes = classnames(css.root, className);
67
66
  return _jsx("div", {
68
- ref: ref,
69
67
  className: classes,
70
68
  "data-cms-remove": "",
71
69
  children: _jsxs("div", {
@@ -9,27 +9,30 @@ const Calendar = dynamic(() => import("./calendar"), {
9
9
  export default function EditableCalendar() {
10
10
  const {
11
11
  lang,
12
- path
12
+ path,
13
+ cmsMode
13
14
  } = useUbloContext();
14
15
  const [formats, setFormats] = React.useState([]);
15
16
  const refreshFormats = React.useCallback(() => {
16
17
  setFormats([]);
17
- const elements = document.querySelectorAll("section.editable-calendar");
18
- if (elements.length) {
19
- const formats = Array.from(elements).map(element => {
20
- const storedPresets = element.dataset.presets;
21
- const presets = storedPresets ? JSON.parse(storedPresets) : {};
22
- return {
23
- element,
24
- presets
25
- };
26
- });
27
- setFormats(formats);
28
- }
18
+ window.requestAnimationFrame(() => setTimeout(() => {
19
+ const elements = document.querySelectorAll("section.editable-calendar");
20
+ if (elements.length) {
21
+ const formats = Array.from(elements).map(element => {
22
+ const storedPresets = element.dataset.presets;
23
+ const presets = storedPresets ? JSON.parse(storedPresets) : {};
24
+ return {
25
+ element,
26
+ presets
27
+ };
28
+ });
29
+ setFormats(formats);
30
+ }
31
+ }, 1000));
29
32
  }, []);
30
33
  React.useEffect(() => {
31
34
  refreshFormats();
32
- }, [lang, path, refreshFormats]);
35
+ }, [lang, path, cmsMode, refreshFormats]);
33
36
  React.useEffect(() => {
34
37
  const zones = Array.from(document.querySelectorAll(".cms"));
35
38
  zones.forEach(zone => {
@@ -1 +1 @@
1
- {"version":3,"file":"editor-dialog.d.ts","sourceRoot":"","sources":["../../../../src/common/components/msem-preset-editor/editor-dialog.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAO/B,KAAK,KAAK,GAAG;IACX,IAAI,EAAE,IAAI,GAAG,IAAI,CAAC;IAClB,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,IAAI,CAAC,EAAE;QACL,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,SAAS,CAAC,EAAE;YAAE,MAAM,EAAE,MAAM,CAAC;YAAC,MAAM,EAAE,MAAM,CAAA;SAAE,CAAC;QAC/C,QAAQ,CAAC,EAAE;YAAE,MAAM,EAAE,MAAM,CAAC;YAAC,MAAM,EAAE,MAAM,CAAA;SAAE,CAAC;KAC/C,CAAC;IACF,MAAM,EAAE,WAAW,GAAG,IAAI,CAAC;IAC3B,YAAY,EAAE,CAAC,MAAM,EAAE,GAAG,KAAK,GAAG,CAAC;IACnC,WAAW,EAAE,MAAM,IAAI,CAAC;IACxB,oBAAoB,EAAE,MAAM,IAAI,CAAC;IACjC,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;CAC5B,CAAC;AAEF,MAAM,CAAC,OAAO,UAAU,YAAY,CAAC,EACnC,IAAI,EACJ,OAAO,EACP,IAAI,EACJ,MAAM,EACN,YAAY,EACZ,WAAW,EACX,oBAAoB,EACpB,aAAa,EACb,QAAQ,GACT,EAAE,KAAK,2CAsDP"}
1
+ {"version":3,"file":"editor-dialog.d.ts","sourceRoot":"","sources":["../../../../src/common/components/msem-preset-editor/editor-dialog.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAO/B,KAAK,KAAK,GAAG;IACX,IAAI,EAAE,IAAI,GAAG,IAAI,CAAC;IAClB,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,IAAI,CAAC,EAAE;QACL,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,SAAS,CAAC,EAAE;YAAE,MAAM,EAAE,MAAM,CAAC;YAAC,MAAM,EAAE,MAAM,CAAA;SAAE,CAAC;QAC/C,QAAQ,CAAC,EAAE;YAAE,MAAM,EAAE,MAAM,CAAC;YAAC,MAAM,EAAE,MAAM,CAAA;SAAE,CAAC;KAC/C,CAAC;IACF,MAAM,EAAE,WAAW,GAAG,IAAI,CAAC;IAC3B,YAAY,EAAE,CAAC,MAAM,EAAE,GAAG,KAAK,GAAG,CAAC;IACnC,WAAW,EAAE,MAAM,IAAI,CAAC;IACxB,oBAAoB,EAAE,MAAM,IAAI,CAAC;IACjC,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;CAC5B,CAAC;AAEF,MAAM,CAAC,OAAO,UAAU,YAAY,CAAC,EACnC,IAAI,EACJ,OAAO,EACP,IAAI,EACJ,MAAM,EACN,YAAY,EACZ,WAAW,EACX,oBAAoB,EACpB,aAAa,EACb,QAAQ,GACT,EAAE,KAAK,2CA4DP"}
@@ -9,6 +9,11 @@ export default function EditorDialog({ lang, options, urls, target, updatePreset
9
9
  const selectedPreset = target?.getAttribute("data-msem-preset");
10
10
  const [preset, setPreset] = React.useState(selectedPreset ? JSON.parse(selectedPreset) : null);
11
11
  const hasObsoletePreset = target?.hasAttribute("data-config");
12
+ React.useEffect(() => {
13
+ if (selectedPreset) {
14
+ setPreset(JSON.parse(selectedPreset));
15
+ }
16
+ }, [selectedPreset]);
12
17
  const updateNewPreset = React.useCallback(() => {
13
18
  updatePreset(preset);
14
19
  }, [preset, updatePreset]);
@@ -1 +1 @@
1
- {"version":3,"file":"msem-preset-editor.d.ts","sourceRoot":"","sources":["../../../../src/common/components/msem-preset-editor/msem-preset-editor.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAqB/B,KAAK,KAAK,GAAG;IACX,IAAI,EAAE,IAAI,GAAG,IAAI,CAAC;IAClB,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,IAAI,CAAC,EAAE;QACL,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,SAAS,CAAC,EAAE;YAAE,MAAM,EAAE,MAAM,CAAC;YAAC,MAAM,EAAE,MAAM,CAAA;SAAE,CAAC;QAC/C,QAAQ,CAAC,EAAE;YAAE,MAAM,EAAE,MAAM,CAAC;YAAC,MAAM,EAAE,MAAM,CAAA;SAAE,CAAC;KAC/C,CAAC;IACF,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;IACxD,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;CAC5B,CAAC;AAEF,MAAM,CAAC,OAAO,UAAU,gBAAgB,CAAC,EACvC,IAAI,EACJ,OAAO,EACP,IAAI,EACJ,cAAc,EACd,QAAQ,EACR,aAAa,EACb,QAAQ,GACT,EAAE,KAAK,kDAkMP"}
1
+ {"version":3,"file":"msem-preset-editor.d.ts","sourceRoot":"","sources":["../../../../src/common/components/msem-preset-editor/msem-preset-editor.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAqB/B,KAAK,KAAK,GAAG;IACX,IAAI,EAAE,IAAI,GAAG,IAAI,CAAC;IAClB,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,IAAI,CAAC,EAAE;QACL,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,SAAS,CAAC,EAAE;YAAE,MAAM,EAAE,MAAM,CAAC;YAAC,MAAM,EAAE,MAAM,CAAA;SAAE,CAAC;QAC/C,QAAQ,CAAC,EAAE;YAAE,MAAM,EAAE,MAAM,CAAC;YAAC,MAAM,EAAE,MAAM,CAAA;SAAE,CAAC;KAC/C,CAAC;IACF,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;IACxD,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;CAC5B,CAAC;AAEF,MAAM,CAAC,OAAO,UAAU,gBAAgB,CAAC,EACvC,IAAI,EACJ,OAAO,EACP,IAAI,EACJ,cAAc,EACd,QAAQ,EACR,aAAa,EACb,QAAQ,GACT,EAAE,KAAK,kDAuMP"}
@@ -89,12 +89,16 @@ export default function MseMPresetEditor({ lang, options, urls, selectedPreset,
89
89
  };
90
90
  React.useEffect(() => {
91
91
  if (stay?.from && stay?.to) {
92
- setPreset((current = {}) => ({
93
- ...current,
94
- presets: { ...(current?.presets || {}), stay },
95
- }));
92
+ setPreset((current = {}) => {
93
+ const newPreset = {
94
+ ...current,
95
+ presets: { ...(current?.presets || {}), stay },
96
+ };
97
+ onChange?.(newPreset);
98
+ return newPreset;
99
+ });
96
100
  }
97
- }, [stay]);
101
+ }, [onChange, stay]);
98
102
  React.useEffect(() => {
99
103
  if (preset && baseUrl) {
100
104
  const url = UrlParams.getPresetUrl(lang, preset, baseUrl);
@@ -1 +1 @@
1
- {"version":3,"file":"use-msem-presets.d.ts","sourceRoot":"","sources":["../../../../../src/common/components/msem-preset-linker/hooks/use-msem-presets.ts"],"names":[],"mappings":"AAOA,MAAM,CAAC,OAAO,UAAU,cAAc,CAAC,EAAE,IAAI,EAAE;;CAAA,QAoC9C"}
1
+ {"version":3,"file":"use-msem-presets.d.ts","sourceRoot":"","sources":["../../../../../src/common/components/msem-preset-linker/hooks/use-msem-presets.ts"],"names":[],"mappings":"AAOA,MAAM,CAAC,OAAO,UAAU,cAAc,CAAC,EAAE,IAAI,EAAE;;CAAA,QAuC9C"}
@@ -9,27 +9,29 @@ export default function useMsemPresets({ mode }) {
9
9
  const isEnabled = cmsMode !== "editing" && cmsMode !== "info" && mode !== MODES.EDITING;
10
10
  const handleSectionClick = React.useCallback((e) => {
11
11
  const target = e.target;
12
- const preset = target
13
- .closest(`section[${PRESET_ATTRIBUTE}]`)
14
- ?.getAttribute(PRESET_ATTRIBUTE);
12
+ const section = target.closest(`section[${PRESET_ATTRIBUTE}]`);
13
+ const preset = section?.getAttribute(PRESET_ATTRIBUTE);
14
+ const anchor = section?.querySelector("a");
15
15
  if (!preset)
16
16
  return;
17
17
  const { widget, options, presets, url } = JSON.parse(preset);
18
- if (url) {
18
+ const destination = anchor?.getAttribute("href") || url;
19
+ e.preventDefault();
20
+ e.stopPropagation();
21
+ if (destination) {
19
22
  const params = UrlParams.build({ options, presets });
20
- const endpoint = url.concat(params);
23
+ const endpoint = destination.concat(params);
21
24
  window.open(endpoint, "_blank");
22
25
  return;
23
26
  }
24
- e.preventDefault();
25
- e.stopPropagation();
26
27
  MseM.loadWidget(widget, options, presets);
27
28
  }, []);
28
29
  React.useEffect(() => {
29
- if (isEnabled) {
30
- document.addEventListener("click", handleSectionClick);
30
+ const container = document.getElementById("__next");
31
+ if (isEnabled && container) {
32
+ container.addEventListener("click", handleSectionClick);
31
33
  return () => {
32
- document.removeEventListener("click", handleSectionClick);
34
+ container.removeEventListener("click", handleSectionClick);
33
35
  };
34
36
  }
35
37
  }, [lang, handleSectionClick, isEnabled, path]);
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "ublo-lib",
3
- "version": "1.19.33",
3
+ "version": "1.19.35",
4
4
  "peerDependencies": {
5
5
  "dt-design-system": "^3.1.5",
6
6
  "leaflet": "^1.9.1",