@novely/core 0.40.0 → 0.40.2

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
@@ -148,15 +148,20 @@ loadImageFormatsSupport();
148
148
 
149
149
  // src/asset.ts
150
150
  import { memoize, once } from "es-toolkit/function";
151
- var getType = memoize((extensions) => {
152
- if (extensions.every((extension) => HOWLER_SUPPORTED_FILE_FORMATS.has(extension))) {
153
- return "audio";
154
- }
155
- if (extensions.every((extension) => SUPPORTED_IMAGE_FILE_FORMATS.has(extension))) {
156
- return "image";
151
+ var getType = memoize(
152
+ (extensions) => {
153
+ if (extensions.every((extension) => HOWLER_SUPPORTED_FILE_FORMATS.has(extension))) {
154
+ return "audio";
155
+ }
156
+ if (extensions.every((extension) => SUPPORTED_IMAGE_FILE_FORMATS.has(extension))) {
157
+ return "image";
158
+ }
159
+ throw extensions;
160
+ },
161
+ {
162
+ getCacheKey: (extensions) => extensions.join("~")
157
163
  }
158
- throw extensions;
159
- });
164
+ );
160
165
  var SUPPORT_MAPS = {
161
166
  "image": supportsMap2,
162
167
  "audio": supportsMap
@@ -890,7 +895,7 @@ var getCustomActionHolder = (ctx, fn) => {
890
895
  CUSTOM_ACTION_MAP.set(ctx.id + fn.key, holder);
891
896
  return holder;
892
897
  };
893
- var handleCustomAction = (ctx, fn, { lang, state, setMountElement, setClear, remove: renderersRemove }) => {
898
+ var handleCustomAction = (ctx, fn, { lang, state, setMountElement, setClear, remove: renderersRemove, getStack: getStack2 }) => {
894
899
  const holder = getCustomActionHolder(ctx, fn);
895
900
  const flags = {
896
901
  ...ctx.meta
@@ -928,6 +933,10 @@ var handleCustomAction = (ctx, fn, { lang, state, setMountElement, setClear, rem
928
933
  holder.cleanup();
929
934
  renderersRemove();
930
935
  };
936
+ const stack = getStack2(ctx);
937
+ const getPath = () => {
938
+ return stack.value[0];
939
+ };
931
940
  return fn({
932
941
  flags,
933
942
  lang,
@@ -936,7 +945,8 @@ var handleCustomAction = (ctx, fn, { lang, state, setMountElement, setClear, rem
936
945
  clear,
937
946
  remove,
938
947
  rendererContext: ctx,
939
- getDomNodes
948
+ getDomNodes,
949
+ getPath
940
950
  });
941
951
  };
942
952
 
@@ -1778,7 +1788,8 @@ var novely = ({
1778
1788
  const result = handleCustomAction(ctx, fn, {
1779
1789
  ...ctx.custom(fn),
1780
1790
  state,
1781
- lang
1791
+ lang,
1792
+ getStack: useStack
1782
1793
  });
1783
1794
  const next2 = () => {
1784
1795
  if (fn.requireUserAction && !ctx.meta.preview) {