ode-explorer 1.4.2-develop-pedago.202404181615 → 1.4.2-develop-pedago.202404301615

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/index.js CHANGED
@@ -634,10 +634,7 @@ function pushPath(object, path2, newValue, concat) {
634
634
  k: k2
635
635
  } = getLastOfPath(object, path2, Object);
636
636
  obj[k2] = obj[k2] || [];
637
- if (concat)
638
- obj[k2] = obj[k2].concat(newValue);
639
- if (!concat)
640
- obj[k2].push(newValue);
637
+ obj[k2].push(newValue);
641
638
  }
642
639
  function getPath(object, path2) {
643
640
  const {
@@ -3726,8 +3723,6 @@ function _defineProperties(target, props) {
3726
3723
  function _createClass(Constructor, protoProps, staticProps) {
3727
3724
  if (protoProps)
3728
3725
  _defineProperties(Constructor.prototype, protoProps);
3729
- if (staticProps)
3730
- _defineProperties(Constructor, staticProps);
3731
3726
  Object.defineProperty(Constructor, "prototype", { writable: false });
3732
3727
  return Constructor;
3733
3728
  }
@@ -3749,12 +3744,12 @@ function _toPrimitive(input, hint) {
3749
3744
  return input;
3750
3745
  var prim = input[Symbol.toPrimitive];
3751
3746
  if (prim !== void 0) {
3752
- var res = prim.call(input, hint || "default");
3747
+ var res = prim.call(input, hint);
3753
3748
  if (_typeof(res) !== "object")
3754
3749
  return res;
3755
3750
  throw new TypeError("@@toPrimitive must return a primitive value.");
3756
3751
  }
3757
- return (hint === "string" ? String : Number)(input);
3752
+ return String(input);
3758
3753
  }
3759
3754
  var getDefaults$1 = function getDefaults() {
3760
3755
  return {
@@ -4101,7 +4096,7 @@ class ReportNamespaces {
4101
4096
  const usePrevious = (value, ignore) => {
4102
4097
  const ref2 = reactExports.useRef();
4103
4098
  reactExports.useEffect(() => {
4104
- ref2.current = ignore ? ref2.current : value;
4099
+ ref2.current = value;
4105
4100
  }, [value, ignore]);
4106
4101
  return ref2.current;
4107
4102
  };
@@ -6503,9 +6498,6 @@ var QueryClientContext = reactExports.createContext(
6503
6498
  );
6504
6499
  var useQueryClient = (queryClient2) => {
6505
6500
  const client = reactExports.useContext(QueryClientContext);
6506
- if (queryClient2) {
6507
- return queryClient2;
6508
- }
6509
6501
  if (!client) {
6510
6502
  throw new Error("No QueryClient set, use QueryClientProvider to set one");
6511
6503
  }
@@ -6580,7 +6572,7 @@ var fetchOptimistic = (defaultedOptions, observer, errorResetBoundary) => observ
6580
6572
  errorResetBoundary.clearReset();
6581
6573
  });
6582
6574
  function useBaseQuery(options, Observer2, queryClient2) {
6583
- const client = useQueryClient(queryClient2);
6575
+ const client = useQueryClient();
6584
6576
  const isRestoring = useIsRestoring();
6585
6577
  const errorResetBoundary = useQueryErrorResetBoundary();
6586
6578
  const defaultedOptions = client.defaultQueryOptions(options);
@@ -6624,10 +6616,10 @@ function useBaseQuery(options, Observer2, queryClient2) {
6624
6616
  return !defaultedOptions.notifyOnChangeProps ? observer.trackResult(result) : result;
6625
6617
  }
6626
6618
  function useQuery(options, queryClient2) {
6627
- return useBaseQuery(options, QueryObserver, queryClient2);
6619
+ return useBaseQuery(options, QueryObserver);
6628
6620
  }
6629
6621
  function useMutation(options, queryClient2) {
6630
- const client = useQueryClient(queryClient2);
6622
+ const client = useQueryClient();
6631
6623
  const [observer] = reactExports.useState(
6632
6624
  () => new MutationObserver$1(
6633
6625
  client,
@@ -6662,8 +6654,7 @@ function useInfiniteQuery(options, queryClient2) {
6662
6654
  return useBaseQuery(
6663
6655
  options,
6664
6656
  // eslint-disable-next-line @typescript-eslint/no-unnecessary-type-assertion
6665
- InfiniteQueryObserver,
6666
- queryClient2
6657
+ InfiniteQueryObserver
6667
6658
  );
6668
6659
  }
6669
6660
  var dayjs_min = { exports: {} };
@@ -8513,11 +8504,11 @@ function j$1(e2, t2) {
8513
8504
  let l2 = arguments;
8514
8505
  function a2(n2, o2) {
8515
8506
  let c6 = Object.assign({}, n2), s2 = c6.className || a2.className;
8516
- r2.p = Object.assign({ theme: f$1 && f$1() }, c6), r2.o = / *go\d+/.test(s2), c6.className = u$4.apply(r2, l2) + (s2 ? " " + s2 : ""), t2 && (c6.ref = o2);
8507
+ r2.p = Object.assign({ theme: f$1 && f$1() }, c6), r2.o = / *go\d+/.test(s2), c6.className = u$4.apply(r2, l2) + (s2 ? " " + s2 : "");
8517
8508
  let i2 = e2;
8518
8509
  return e2[0] && (i2 = c6.as || e2, delete c6.as), g$1 && i2[0] && g$1(c6), d$1(i2, c6);
8519
8510
  }
8520
- return t2 ? t2(a2) : a2;
8511
+ return a2;
8521
8512
  };
8522
8513
  }
8523
8514
  var W$2 = (e2) => typeof e2 == "function", T$1 = (e2, t2) => W$2(e2) ? e2(t2) : e2;
@@ -18518,12 +18509,21 @@ function getPaddingObject(padding) {
18518
18509
  };
18519
18510
  }
18520
18511
  function rectToClientRect$1(rect) {
18512
+ const {
18513
+ x: x2,
18514
+ y: y2,
18515
+ width,
18516
+ height
18517
+ } = rect;
18521
18518
  return {
18522
- ...rect,
18523
- top: rect.y,
18524
- left: rect.x,
18525
- right: rect.x + rect.width,
18526
- bottom: rect.y + rect.height
18519
+ width,
18520
+ height,
18521
+ top: y2,
18522
+ left: x2,
18523
+ right: x2 + width,
18524
+ bottom: y2 + height,
18525
+ x: x2,
18526
+ y: y2
18527
18527
  };
18528
18528
  }
18529
18529
  function computeCoordsFromPlacement(_ref, placement, rtl) {
@@ -18694,9 +18694,10 @@ async function detectOverflow$1(state, options) {
18694
18694
  strategy
18695
18695
  }));
18696
18696
  const rect = elementContext === "floating" ? {
18697
- ...rects.floating,
18698
18697
  x: x2,
18699
- y: y2
18698
+ y: y2,
18699
+ width: rects.floating.width,
18700
+ height: rects.floating.height
18700
18701
  } : rects.reference;
18701
18702
  const offsetParent = await (platform2.getOffsetParent == null ? void 0 : platform2.getOffsetParent(elements.floating));
18702
18703
  const offsetScale = await (platform2.isElement == null ? void 0 : platform2.isElement(offsetParent)) ? await (platform2.getScale == null ? void 0 : platform2.getScale(offsetParent)) || {
@@ -18851,7 +18852,7 @@ async function convertValueToCoords(state, options) {
18851
18852
  y: crossAxis * crossAxisMulti
18852
18853
  };
18853
18854
  }
18854
- const offset$2 = function(options) {
18855
+ const offset$3 = function(options) {
18855
18856
  if (options === void 0) {
18856
18857
  options = 0;
18857
18858
  }
@@ -19008,9 +19009,8 @@ function getContainingBlock$1(element) {
19008
19009
  while (isHTMLElement$1(currentNode) && !isLastTraversableNode(currentNode)) {
19009
19010
  if (isContainingBlock(currentNode)) {
19010
19011
  return currentNode;
19011
- } else {
19012
- currentNode = getParentNode$1(currentNode);
19013
19012
  }
19013
+ currentNode = getParentNode$1(currentNode);
19014
19014
  }
19015
19015
  return null;
19016
19016
  }
@@ -19448,12 +19448,14 @@ function getOffsetParent$1(element, polyfill2) {
19448
19448
  const getElementRects = async function(data) {
19449
19449
  const getOffsetParentFn = this.getOffsetParent || getOffsetParent$1;
19450
19450
  const getDimensionsFn = this.getDimensions;
19451
+ const floatingDimensions = await getDimensionsFn(data.floating);
19451
19452
  return {
19452
19453
  reference: getRectRelativeToOffsetParent(data.reference, await getOffsetParentFn(data.floating), data.strategy),
19453
19454
  floating: {
19454
19455
  x: 0,
19455
19456
  y: 0,
19456
- ...await getDimensionsFn(data.floating)
19457
+ width: floatingDimensions.width,
19458
+ height: floatingDimensions.height
19457
19459
  }
19458
19460
  };
19459
19461
  };
@@ -19521,7 +19523,7 @@ function observeMove(element, onMove) {
19521
19523
  if (!ratio) {
19522
19524
  timeoutId = setTimeout(() => {
19523
19525
  refresh(false, 1e-7);
19524
- }, 100);
19526
+ }, 1e3);
19525
19527
  } else {
19526
19528
  refresh(false, ratio);
19527
19529
  }
@@ -19610,6 +19612,7 @@ function autoUpdate(reference2, floating, update2, options) {
19610
19612
  }
19611
19613
  };
19612
19614
  }
19615
+ const offset$2 = offset$3;
19613
19616
  const flip$2 = flip$3;
19614
19617
  const size = size$1;
19615
19618
  const computePosition = (reference2, floating, options) => {
@@ -22900,7 +22903,7 @@ function useSpring(props, deps) {
22900
22903
  const [[values], ref2] = useSprings(
22901
22904
  1,
22902
22905
  isFn ? props : [props],
22903
- isFn ? deps || [] : deps
22906
+ isFn ? [] : deps
22904
22907
  );
22905
22908
  return isFn || arguments.length == 2 ? [values, ref2] : values;
22906
22909
  }
@@ -25848,10 +25851,9 @@ function elementParents(el2, selector) {
25848
25851
  }
25849
25852
  function elementOuterSize(el2, size2, includeMargins) {
25850
25853
  const window2 = getWindow();
25851
- if (includeMargins) {
25854
+ {
25852
25855
  return el2[size2 === "width" ? "offsetWidth" : "offsetHeight"] + parseFloat(window2.getComputedStyle(el2, null).getPropertyValue(size2 === "width" ? "margin-right" : "margin-top")) + parseFloat(window2.getComputedStyle(el2, null).getPropertyValue(size2 === "width" ? "margin-left" : "margin-bottom"));
25853
25856
  }
25854
- return el2.offsetWidth;
25855
25857
  }
25856
25858
  function createElementIfNotDefined(swiper, originalParams, params, checkProps) {
25857
25859
  if (swiper.params.createElements) {
@@ -25992,7 +25994,7 @@ function Pagination(_ref) {
25992
25994
  let lastIndex;
25993
25995
  let midIndex;
25994
25996
  if (params.dynamicBullets) {
25995
- bulletSize = elementOuterSize(bullets[0], swiper.isHorizontal() ? "width" : "height", true);
25997
+ bulletSize = elementOuterSize(bullets[0], swiper.isHorizontal() ? "width" : "height");
25996
25998
  el2.forEach((subEl) => {
25997
25999
  subEl.style[swiper.isHorizontal() ? "width" : "height"] = `${bulletSize * (params.dynamicMainBullets + 4)}px`;
25998
26000
  });
@@ -26805,7 +26807,7 @@ function updateSlides() {
26805
26807
  slide2.style.webkitTransform = "none";
26806
26808
  }
26807
26809
  if (params.roundLengths) {
26808
- slideSize = swiper.isHorizontal() ? elementOuterSize(slide2, "width", true) : elementOuterSize(slide2, "height", true);
26810
+ slideSize = swiper.isHorizontal() ? elementOuterSize(slide2, "width") : elementOuterSize(slide2, "height");
26809
26811
  } else {
26810
26812
  const width = getDirectionPropertyValue(slideStyles, "width");
26811
26813
  const paddingLeft = getDirectionPropertyValue(slideStyles, "padding-left");
@@ -38198,7 +38200,7 @@ var concatty = function concatty2(a2, b2) {
38198
38200
  };
38199
38201
  var slicy = function slicy2(arrLike, offset2) {
38200
38202
  var arr2 = [];
38201
- for (var i2 = offset2 || 0, j2 = 0; i2 < arrLike.length; i2 += 1, j2 += 1) {
38203
+ for (var i2 = offset2, j2 = 0; i2 < arrLike.length; i2 += 1, j2 += 1) {
38202
38204
  arr2[j2] = arrLike[i2];
38203
38205
  }
38204
38206
  return arr2;
@@ -40630,7 +40632,6 @@ function normalizeStringPosix(path2, allowAboveRoot) {
40630
40632
  continue;
40631
40633
  }
40632
40634
  }
40633
- allowAboveRoot && (res.length > 0 ? res += "/.." : res = "..", lastSegmentLength = 2);
40634
40635
  } else
40635
40636
  res.length > 0 ? res += `/${path2.slice(lastSlash + 1, i2)}` : res = path2.slice(lastSlash + 1, i2), lastSegmentLength = i2 - lastSlash - 1;
40636
40637
  lastSlash = i2, dots = 0;
@@ -40717,7 +40718,7 @@ const path = {
40717
40718
  const isAbsolute = path2.startsWith("/");
40718
40719
  this.hasProtocol(path2) && (protocol = this.rootname(path2), path2 = path2.slice(protocol.length));
40719
40720
  const trailingSeparator = path2.endsWith("/");
40720
- return path2 = normalizeStringPosix(path2, false), path2.length > 0 && trailingSeparator && (path2 += "/"), isAbsolute ? `/${path2}` : protocol + path2;
40721
+ return path2 = normalizeStringPosix(path2), path2.length > 0 && trailingSeparator && (path2 += "/"), isAbsolute ? `/${path2}` : protocol + path2;
40721
40722
  },
40722
40723
  /**
40723
40724
  * Determines if path is an absolute path.
@@ -57206,6 +57207,22 @@ class ResizePlugin {
57206
57207
  }
57207
57208
  ResizePlugin.extension = ExtensionType.Application;
57208
57209
  extensions$1.add(ResizePlugin);
57210
+ DisplayObject.prototype.name = null;
57211
+ Container.prototype.getChildByName = function(name, deep) {
57212
+ for (let i2 = 0, j2 = this.children.length; i2 < j2; i2++)
57213
+ if (this.children[i2].name === name)
57214
+ return this.children[i2];
57215
+ if (deep)
57216
+ for (let i2 = 0, j2 = this.children.length; i2 < j2; i2++) {
57217
+ const child = this.children[i2];
57218
+ if (!child.getChildByName)
57219
+ continue;
57220
+ const target = child.getChildByName(name, true);
57221
+ if (target)
57222
+ return target;
57223
+ }
57224
+ return null;
57225
+ };
57209
57226
  const _tempMatrix = new Matrix();
57210
57227
  DisplayObject.prototype._cacheAsBitmap = false;
57211
57228
  DisplayObject.prototype._cacheData = null;
@@ -57336,22 +57353,6 @@ DisplayObject.prototype._destroyCachedDisplayObject = function() {
57336
57353
  DisplayObject.prototype._cacheAsBitmapDestroy = function(options) {
57337
57354
  this.cacheAsBitmap = false, this.destroy(options);
57338
57355
  };
57339
- DisplayObject.prototype.name = null;
57340
- Container.prototype.getChildByName = function(name, deep) {
57341
- for (let i2 = 0, j2 = this.children.length; i2 < j2; i2++)
57342
- if (this.children[i2].name === name)
57343
- return this.children[i2];
57344
- if (deep)
57345
- for (let i2 = 0, j2 = this.children.length; i2 < j2; i2++) {
57346
- const child = this.children[i2];
57347
- if (!child.getChildByName)
57348
- continue;
57349
- const target = child.getChildByName(name, true);
57350
- if (target)
57351
- return target;
57352
- }
57353
- return null;
57354
- };
57355
57356
  DisplayObject.prototype.getGlobalPosition = function(point = new Point(), skipUpdate = false) {
57356
57357
  return this.parent ? this.parent.toGlobal(this.position, point, skipUpdate) : (point.x = this.position.x, point.y = this.position.y), point;
57357
57358
  };
@@ -62270,7 +62271,7 @@ const ActionBar$1 = /* @__PURE__ */ reactExports.forwardRef(({
62270
62271
  } = props, getLoadingIcon = () => {
62271
62272
  let icon;
62272
62273
  return loadingIcon ? icon = loadingIcon : icon = /* @__PURE__ */ jsxRuntimeExports.jsx(SvgLoader$1, { ...restProps, "aria-label": "Loading" }), icon;
62273
- }, classes2 = clsx("loading", {
62274
+ }, classes2 = clsx("loading d-flex align-items-center gap-8", {
62274
62275
  "is-loading": isLoading
62275
62276
  }, className);
62276
62277
  return /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: classes2, role: "status", ref: ref2, children: [
@@ -62646,10 +62647,10 @@ function useClickOutside(handler, events2, nodes) {
62646
62647
  } else
62647
62648
  ref2.current && !ref2.current.contains(target) && handler();
62648
62649
  };
62649
- return (events2 || DEFAULT_EVENTS).forEach((fn2) => {
62650
+ return DEFAULT_EVENTS.forEach((fn2) => {
62650
62651
  document.addEventListener(fn2, listener);
62651
62652
  }), () => {
62652
- (events2 || DEFAULT_EVENTS).forEach((fn2) => {
62653
+ DEFAULT_EVENTS.forEach((fn2) => {
62653
62654
  document.removeEventListener(fn2, listener);
62654
62655
  });
62655
62656
  };
@@ -62660,7 +62661,7 @@ function useDebounce(value, delay) {
62660
62661
  return reactExports.useEffect(() => {
62661
62662
  const timer = setTimeout(() => {
62662
62663
  setDebouncedValue(value);
62663
- }, delay || 500);
62664
+ }, delay);
62664
62665
  return () => {
62665
62666
  clearTimeout(timer);
62666
62667
  };
@@ -63170,7 +63171,8 @@ const Image$1 = /* @__PURE__ */ reactExports.forwardRef(({
63170
63171
  app,
63171
63172
  size: size2 = "24",
63172
63173
  iconFit = "contain",
63173
- variant = "square"
63174
+ variant = "square",
63175
+ className = ""
63174
63176
  }, ref2) => {
63175
63177
  const {
63176
63178
  isIconUrl,
@@ -63188,14 +63190,19 @@ const Image$1 = /* @__PURE__ */ reactExports.forwardRef(({
63188
63190
  }, iconFits = {
63189
63191
  "icon-contain": isContain,
63190
63192
  "icon-ratio": isRatio
63191
- }, icon = typeof app == "string" ? app : (app == null ? void 0 : app.icon) !== void 0 ? app.icon : "placeholder", displayName = typeof app != "string" && (app == null ? void 0 : app.displayName) !== void 0 ? app.displayName : "", code = app ? getIconCode(app) : "", isIconURL = isIconUrl(icon), appCode = code || "placeholder", classes2 = clsx("app-icon", {
63193
+ }, icon = typeof app == "string" ? app : (app == null ? void 0 : app.icon) !== void 0 ? app.icon : "placeholder", displayName = typeof app != "string" && (app == null ? void 0 : app.displayName) !== void 0 ? app.displayName : "", code = app ? getIconCode(app) : "", isIconURL = isIconUrl(icon), appCode = code || "placeholder";
63194
+ if (isIconURL) {
63195
+ const classes22 = clsx("h-full", className);
63196
+ return /* @__PURE__ */ jsxRuntimeExports.jsx(Image$2, { src: icon, alt: displayName, objectFit: "contain", width: size2, height: size2, className: classes22 });
63197
+ }
63198
+ const classes2 = clsx("app-icon", {
63192
63199
  ...iconSizes,
63193
63200
  ...iconVariant,
63194
63201
  ...iconFits,
63195
63202
  [`bg-light-${appCode}`]: appCode && !isContain,
63196
63203
  [`color-app-${appCode}`]: appCode
63197
- });
63198
- return isIconURL ? /* @__PURE__ */ jsxRuntimeExports.jsx(Image$2, { src: icon, alt: displayName, objectFit: "contain", width: size2, height: size2, className: "h-full" }) : /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: classes2, style: {
63204
+ }, className);
63205
+ return /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: classes2, style: {
63199
63206
  width: size2 + "px",
63200
63207
  height: size2 + "px"
63201
63208
  }, children: /* @__PURE__ */ jsxRuntimeExports.jsx("svg", { ref: ref2, width: size2, height: size2, role: "img", fill: "currentColor", xmlns: "http://www.w3.org/2000/svg", "aria-hidden": "true", children: /* @__PURE__ */ jsxRuntimeExports.jsx("use", { xlinkHref: `${iconPath}/apps.svg#${appCode}` }) }) });
@@ -63266,11 +63273,11 @@ const Image$1 = /* @__PURE__ */ reactExports.forwardRef(({
63266
63273
  t: t2
63267
63274
  } = useTranslation();
63268
63275
  return /* @__PURE__ */ jsxRuntimeExports.jsx(BreadcrumbNav$1, { app, ref: ref2, className: "mw-100", children: /* @__PURE__ */ jsxRuntimeExports.jsx(BreadcrumbList$1, { className: "gap-12 mw-100", children: name ? /* @__PURE__ */ jsxRuntimeExports.jsxs(jsxRuntimeExports.Fragment, { children: [
63269
- /* @__PURE__ */ jsxRuntimeExports.jsx(BreadcrumbItem$1, { children: /* @__PURE__ */ jsxRuntimeExports.jsx("a", { href: app == null ? void 0 : app.address, className: "d-flex", children: /* @__PURE__ */ jsxRuntimeExports.jsx(AppIcon$1, { app, size: "40" }) }) }),
63276
+ /* @__PURE__ */ jsxRuntimeExports.jsx(BreadcrumbItem$1, { children: /* @__PURE__ */ jsxRuntimeExports.jsx("a", { href: app == null ? void 0 : app.address, className: "d-flex", "aria-label": t2(app == null ? void 0 : app.displayName), children: /* @__PURE__ */ jsxRuntimeExports.jsx(AppIcon$1, { app, size: "40" }) }) }),
63270
63277
  /* @__PURE__ */ jsxRuntimeExports.jsx(BreadcrumbItem$1, { children: /* @__PURE__ */ jsxRuntimeExports.jsx(SvgRafterRight$1, { color: "var(--edifice-gray-600)", width: 20, height: 20 }) }),
63271
63278
  /* @__PURE__ */ jsxRuntimeExports.jsx(BreadcrumbItem$1, { className: "text-truncate", children: /* @__PURE__ */ jsxRuntimeExports.jsx(Heading$1, { level: "h1", headingStyle: "h3", className: "text-truncate", children: name }) })
63272
63279
  ] }) : /* @__PURE__ */ jsxRuntimeExports.jsxs(BreadcrumbItem$1, { className: "gap-12 d-flex align-items-center", children: [
63273
- /* @__PURE__ */ jsxRuntimeExports.jsx("a", { href: app == null ? void 0 : app.address, className: "d-flex", children: /* @__PURE__ */ jsxRuntimeExports.jsx(AppIcon$1, { app, size: "40" }) }),
63280
+ /* @__PURE__ */ jsxRuntimeExports.jsx("a", { href: app == null ? void 0 : app.address, className: "d-flex", "aria-label": t2(app == null ? void 0 : app.displayName), children: /* @__PURE__ */ jsxRuntimeExports.jsx(AppIcon$1, { app, size: "40" }) }),
63274
63281
  /* @__PURE__ */ jsxRuntimeExports.jsx(Heading$1, { level: "h1", headingStyle: "h3", className: "d-none d-md-flex", children: t2(app == null ? void 0 : app.displayName) })
63275
63282
  ] }) }) });
63276
63283
  }), Breadcrumb$1 = Breadcrumb, CardBody = ({
@@ -63470,7 +63477,7 @@ const Image$1 = /* @__PURE__ */ reactExports.forwardRef(({
63470
63477
  return /* @__PURE__ */ jsxRuntimeExports.jsx("input", { ref: ref2, id: id2, className: classes2, type: type2, placeholder, required: isRequired, readOnly: isReadOnly, ...restProps });
63471
63478
  }), Input$1 = Input, Label = /* @__PURE__ */ reactExports.forwardRef(({
63472
63479
  leftIcon,
63473
- optionalText = "optional",
63480
+ optionalText,
63474
63481
  requiredText = "*",
63475
63482
  children,
63476
63483
  className
@@ -63479,7 +63486,9 @@ const Image$1 = /* @__PURE__ */ reactExports.forwardRef(({
63479
63486
  id: id2,
63480
63487
  isOptional,
63481
63488
  isRequired
63482
- } = useFormControl(), classes2 = clsx("form-label", {
63489
+ } = useFormControl(), {
63490
+ t: t2
63491
+ } = useTranslation(), classes2 = clsx("form-label", {
63483
63492
  "has-icon": leftIcon
63484
63493
  }, className), optionalState = isOptional && !isRequired, requiredState = isRequired && !isOptional;
63485
63494
  return reactExports.useEffect(() => {
@@ -63490,7 +63499,7 @@ const Image$1 = /* @__PURE__ */ reactExports.forwardRef(({
63490
63499
  children,
63491
63500
  optionalState && /* @__PURE__ */ jsxRuntimeExports.jsxs("em", { className: "optional", children: [
63492
63501
  "- ",
63493
- optionalText
63502
+ optionalText ?? t2("explorer.optional")
63494
63503
  ] }),
63495
63504
  requiredState && /* @__PURE__ */ jsxRuntimeExports.jsx("em", { className: "required", children: requiredText })
63496
63505
  ] });
@@ -65328,8 +65337,8 @@ const useSlug = ({
65328
65337
  function onPublicChange(value) {
65329
65338
  setIsPublic(value);
65330
65339
  }
65331
- function onCopyToClipBoard() {
65332
- navigator.clipboard.writeText(`${window.location.origin}${window.location.pathname}/pub/${slug}`), toast2.success(t2("explorer.copy.clipboard"));
65340
+ function onCopyToClipBoard(pathname) {
65341
+ navigator.clipboard.writeText(`${window.location.origin}${pathname || window.location.pathname}/pub/${slug}`), toast2.success(t2("explorer.copy.clipboard"));
65333
65342
  }
65334
65343
  return {
65335
65344
  slug,
@@ -65381,11 +65390,10 @@ const useSlug = ({
65381
65390
  /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "d-flex flex-wrap align-items-center gap-4", children: [
65382
65391
  /* @__PURE__ */ jsxRuntimeExports.jsxs("p", { className: "text-break", children: [
65383
65392
  window.location.origin,
65384
- window.location.pathname,
65385
- "/pub/",
65393
+ "/blog/pub/",
65386
65394
  slug
65387
65395
  ] }),
65388
- /* @__PURE__ */ jsxRuntimeExports.jsx(Button$1, { color: "primary", disabled: !isPublic, onClick: onCopyToClipBoard, type: "button", leftIcon: /* @__PURE__ */ jsxRuntimeExports.jsx(SvgCopy$1, {}), variant: "ghost", className: "text-nowrap", children: t2("explorer.resource.editModal.access.url.button") })
65396
+ /* @__PURE__ */ jsxRuntimeExports.jsx(Button$1, { color: "primary", disabled: !isPublic, onClick: () => onCopyToClipBoard("/blog"), type: "button", leftIcon: /* @__PURE__ */ jsxRuntimeExports.jsx(SvgCopy$1, {}), variant: "ghost", className: "text-nowrap", children: t2("explorer.resource.editModal.access.url.button") })
65389
65397
  ] })
65390
65398
  ] })
65391
65399
  ] });
@@ -65911,7 +65919,7 @@ function ShareResourceModal({
65911
65919
  /* @__PURE__ */ jsxRuntimeExports.jsx(Tooltip$1, { message: "Vos favoris de partage s’affichent en priorité dans votre liste lorsque vous recherchez un groupe ou une personne, vous pouvez les retrouver dans l’annuaire.", placement: "top", children: /* @__PURE__ */ jsxRuntimeExports.jsx(SvgInfoCircle$1, { className: "c-pointer", height: "18" }) })
65912
65920
  ] }),
65913
65921
  /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "row", children: /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "col-10", children: /* @__PURE__ */ jsxRuntimeExports.jsx(Combobox$1, { value: searchInputValue, placeholder: searchPlaceholder, isLoading: showSearchLoading(), noResult: showSearchNoResults(), options: searchResults, searchMinLength: getSearchMinLength(), onSearchInputChange: handleSearchInputChange, onSearchResultsChange: handleSearchResultsChange }) }) }),
65914
- children
65922
+ typeof children == "function" ? children(resource) : children
65915
65923
  ] }),
65916
65924
  /* @__PURE__ */ jsxRuntimeExports.jsxs(Modal$1.Footer, { children: [
65917
65925
  /* @__PURE__ */ jsxRuntimeExports.jsx(Button$1, { type: "button", color: "tertiary", variant: "ghost", onClick: onCancel, children: t2("explorer.cancel") }),
@@ -66337,7 +66345,7 @@ const seen = {};
66337
66345
  const __vitePreload = function preload2(baseModule, deps, importerUrl) {
66338
66346
  let promise2 = Promise.resolve();
66339
66347
  if (deps && deps.length > 0) {
66340
- const links = document.getElementsByTagName("link");
66348
+ document.getElementsByTagName("link");
66341
66349
  promise2 = Promise.all(deps.map((dep) => {
66342
66350
  dep = assetsURL(dep);
66343
66351
  if (dep in seen)
@@ -66345,15 +66353,7 @@ const __vitePreload = function preload2(baseModule, deps, importerUrl) {
66345
66353
  seen[dep] = true;
66346
66354
  const isCss = dep.endsWith(".css");
66347
66355
  const cssSelector = isCss ? '[rel="stylesheet"]' : "";
66348
- const isBaseRelative = !!importerUrl;
66349
- if (isBaseRelative) {
66350
- for (let i2 = links.length - 1; i2 >= 0; i2--) {
66351
- const link2 = links[i2];
66352
- if (link2.href === dep && (!isCss || link2.rel === "stylesheet")) {
66353
- return;
66354
- }
66355
- }
66356
- } else if (document.querySelector(`link[href="${dep}"]${cssSelector}`)) {
66356
+ if (document.querySelector(`link[href="${dep}"]${cssSelector}`)) {
66357
66357
  return;
66358
66358
  }
66359
66359
  const link = document.createElement("link");
@@ -66594,7 +66594,7 @@ const createImpl = (createState) => {
66594
66594
  Object.assign(useBoundStore, api);
66595
66595
  return useBoundStore;
66596
66596
  };
66597
- const create = (createState) => createState ? createImpl(createState) : createImpl;
66597
+ const create = (createState) => createImpl;
66598
66598
  const searchContext = async (searchParams) => {
66599
66599
  const search = await odeServices.resource(searchParams.application).searchContext(searchParams);
66600
66600
  return {
@@ -67995,10 +67995,9 @@ const useCreateResource = () => {
67995
67995
  var _a2, _b2, _c2;
67996
67996
  await queryClient2.cancelQueries({ queryKey });
67997
67997
  const previousData = queryClient2.getQueryData(queryKey);
67998
- const { thumbnail } = variables;
67999
67998
  const newResource = {
68000
67999
  ...variables,
68001
- thumbnail: thumbnail ? URL.createObjectURL(thumbnail) : "",
68000
+ thumbnail: data.thumbnail || "",
68002
68001
  application,
68003
68002
  assetId: data._id || data.entId || "",
68004
68003
  id: data._id || data.entId || "",
@@ -69254,14 +69253,10 @@ function useActionBar() {
69254
69253
  case ACTION.UPD_PROPS:
69255
69254
  case "edit":
69256
69255
  return onEdit();
69257
- case "export":
69258
- if (resourceIds.length > 0) {
69259
- return onExport();
69260
- } else {
69261
- return null;
69262
- }
69263
69256
  case ACTION.SHARE:
69264
69257
  return setOpenedModalName("share");
69258
+ case ACTION.EXPORT:
69259
+ return setOpenedModalName("export");
69265
69260
  default:
69266
69261
  throw Error(`Unknown action: ${action.id}`);
69267
69262
  }
@@ -69333,6 +69328,8 @@ function useActionBar() {
69333
69328
  const onEditResourceCancel = onFinish("edit_resource");
69334
69329
  const onShareResourceSuccess = onFinish("share");
69335
69330
  const onShareResourceCancel = onFinish("share");
69331
+ const onExportCancel = onFinish("export");
69332
+ const onExportSuccess = onFinish("export");
69336
69333
  async function onCopy() {
69337
69334
  if (selectedResources && selectedResources.length > 0) {
69338
69335
  const selectedResource = selectedResources[0];
@@ -69349,12 +69346,6 @@ function useActionBar() {
69349
69346
  setOpenedModalName("edit_folder");
69350
69347
  }
69351
69348
  }
69352
- function onExport() {
69353
- if (resourceIds && resourceIds.length > 0) {
69354
- const selectedResource = selectedResources[0].assetId;
69355
- goToExport({ searchParams, assetId: selectedResource });
69356
- }
69357
- }
69358
69349
  function overrideLabel(action) {
69359
69350
  if (action.id === "edit" && folderIds.length > 0) {
69360
69351
  return "explorer.rename";
@@ -69388,6 +69379,9 @@ function useActionBar() {
69388
69379
  isShareResourceOpen: openedModalName === "share",
69389
69380
  onShareResourceCancel,
69390
69381
  onShareResourceSuccess,
69382
+ isExportModalOpen: openedModalName === "export",
69383
+ onExportCancel,
69384
+ onExportSuccess,
69391
69385
  onClearActionBar
69392
69386
  };
69393
69387
  }
@@ -69437,6 +69431,7 @@ const UpdateModal = reactExports.lazy(
69437
69431
  const DeleteModal$2 = reactExports.lazy(async () => await __vitePreload(() => Promise.resolve().then(() => DeleteModal$1), true ? void 0 : void 0));
69438
69432
  const MoveModal$2 = reactExports.lazy(async () => await __vitePreload(() => Promise.resolve().then(() => MoveModal$1), true ? void 0 : void 0));
69439
69433
  const FolderModal = reactExports.lazy(async () => await __vitePreload(() => Promise.resolve().then(() => FolderModal$2), true ? void 0 : void 0));
69434
+ const ExportModal$2 = reactExports.lazy(async () => await __vitePreload(() => Promise.resolve().then(() => ExportModal$1), true ? void 0 : void 0));
69440
69435
  function ActionBarContainer() {
69441
69436
  const { appCode } = useOdeClient();
69442
69437
  const { t: t2 } = useTranslation();
@@ -69457,6 +69452,9 @@ function ActionBarContainer() {
69457
69452
  isShareResourceOpen,
69458
69453
  onShareResourceCancel,
69459
69454
  onShareResourceSuccess,
69455
+ isExportModalOpen,
69456
+ onExportCancel,
69457
+ onExportSuccess,
69460
69458
  onMoveCancel,
69461
69459
  onMoveSuccess,
69462
69460
  onDeleteCancel,
@@ -69585,6 +69583,14 @@ function ActionBarContainer() {
69585
69583
  }
69586
69584
  ) : null
69587
69585
  }
69586
+ ),
69587
+ isExportModalOpen && selectedResource && /* @__PURE__ */ jsxRuntimeExports.jsx(
69588
+ ExportModal$2,
69589
+ {
69590
+ isOpen: isExportModalOpen,
69591
+ onCancel: onExportCancel,
69592
+ onSuccess: onExportSuccess
69593
+ }
69588
69594
  )
69589
69595
  ] })
69590
69596
  ] });
@@ -69838,6 +69844,69 @@ const MoveModal$1 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineP
69838
69844
  __proto__: null,
69839
69845
  default: MoveModal
69840
69846
  }, Symbol.toStringTag, { value: "Module" }));
69847
+ const useExportModal = (onSuccess) => {
69848
+ const selectedResources = useSelectedResources();
69849
+ const searchParams = useSearchParams();
69850
+ const toast = useToast();
69851
+ const { t: t2 } = useTranslation();
69852
+ const handleExportClick = () => {
69853
+ if (selectedResources.length) {
69854
+ goToExport({ searchParams, assetId: selectedResources[0].assetId });
69855
+ onSuccess();
69856
+ } else {
69857
+ toast.error(t2("explorer.error.noResourceSelected"));
69858
+ }
69859
+ };
69860
+ return { handleExportClick };
69861
+ };
69862
+ function ExportModal({
69863
+ isOpen,
69864
+ onSuccess,
69865
+ onCancel
69866
+ }) {
69867
+ const { handleExportClick } = useExportModal(onSuccess);
69868
+ const { t: t2 } = useTranslation();
69869
+ return reactDomExports.createPortal(
69870
+ /* @__PURE__ */ jsxRuntimeExports.jsxs(Modal$1, { isOpen, onModalClose: onCancel, id: "exportModal", children: [
69871
+ /* @__PURE__ */ jsxRuntimeExports.jsx(Modal$1.Header, { onModalClose: onCancel, children: t2("explorer.export.title") }),
69872
+ /* @__PURE__ */ jsxRuntimeExports.jsxs(Modal$1.Body, { children: [
69873
+ /* @__PURE__ */ jsxRuntimeExports.jsxs("ul", { children: [
69874
+ /* @__PURE__ */ jsxRuntimeExports.jsx("li", { children: t2("explorer.export.body.info.1") }),
69875
+ /* @__PURE__ */ jsxRuntimeExports.jsx("li", { children: t2("explorer.export.body.info.2") }),
69876
+ /* @__PURE__ */ jsxRuntimeExports.jsx("li", { children: t2("explorer.export.body.info.3") })
69877
+ ] }),
69878
+ /* @__PURE__ */ jsxRuntimeExports.jsx(Alert$1, { type: "warning", children: t2("explorer.export.body.warning") })
69879
+ ] }),
69880
+ /* @__PURE__ */ jsxRuntimeExports.jsxs(Modal$1.Footer, { children: [
69881
+ /* @__PURE__ */ jsxRuntimeExports.jsx(
69882
+ Button$1,
69883
+ {
69884
+ color: "tertiary",
69885
+ onClick: onCancel,
69886
+ type: "button",
69887
+ variant: "ghost",
69888
+ children: t2("explorer.cancel")
69889
+ }
69890
+ ),
69891
+ /* @__PURE__ */ jsxRuntimeExports.jsx(
69892
+ Button$1,
69893
+ {
69894
+ color: "primary",
69895
+ onClick: handleExportClick,
69896
+ type: "button",
69897
+ variant: "filled",
69898
+ children: t2("explorer.actions.export")
69899
+ }
69900
+ )
69901
+ ] })
69902
+ ] }),
69903
+ document.getElementById("portal")
69904
+ );
69905
+ }
69906
+ const ExportModal$1 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
69907
+ __proto__: null,
69908
+ default: ExportModal
69909
+ }, Symbol.toStringTag, { value: "Module" }));
69841
69910
  function __vite__mapDeps(indexes) {
69842
69911
  if (!__vite__mapDeps.viteFileDeps) {
69843
69912
  __vite__mapDeps.viteFileDeps = []
package/dist/version.txt CHANGED
@@ -1 +1 @@
1
- ode-explorer=1.0-b2school-SNAPSHOT 18/04/2024 16:16:32
1
+ ode-explorer=1.0-b2school-SNAPSHOT 30/04/2024 16:15:49