@zealicsolutions/web-ui 1.1.24 → 1.1.26
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/cjs/containers/Container.d.ts +2 -0
- package/dist/cjs/containers/ReplicatorContainer/ReplicatorContainer.d.ts +1 -2
- package/dist/cjs/containers/ReplicatorContainer/ReplicatorFormSetup.d.ts +3 -3
- package/dist/cjs/containers/hooks/useEmptyStateFiltering.d.ts +1 -1
- package/dist/cjs/containers/hooks/useEmptyStateVisibility.d.ts +6 -2
- package/dist/cjs/containers/types/types.d.ts +5 -0
- package/dist/cjs/contexts/ReplicatorFormContext/types.d.ts +2 -2
- package/dist/cjs/contexts/ReplicatorRegistryContext/types.d.ts +8 -7
- package/dist/cjs/index.js +93 -93
- package/dist/cjs/index.js.map +1 -1
- package/dist/esm/containers/Container.d.ts +2 -0
- package/dist/esm/containers/Container.js +11 -11
- package/dist/esm/containers/Container.js.map +1 -1
- package/dist/esm/containers/ReplicatorContainer/ReplicatorContainer.d.ts +1 -2
- package/dist/esm/containers/ReplicatorContainer/ReplicatorContainer.js +1 -1
- package/dist/esm/containers/ReplicatorContainer/ReplicatorContainer.js.map +1 -1
- package/dist/esm/containers/ReplicatorContainer/ReplicatorFormSetup.d.ts +3 -3
- package/dist/esm/containers/ReplicatorContainer/ReplicatorFormSetup.js +1 -1
- package/dist/esm/containers/ReplicatorContainer/ReplicatorFormSetup.js.map +1 -1
- package/dist/esm/containers/hooks/useEmptyStateFiltering.d.ts +1 -1
- package/dist/esm/containers/hooks/useEmptyStateFiltering.js +1 -1
- package/dist/esm/containers/hooks/useEmptyStateFiltering.js.map +1 -1
- package/dist/esm/containers/hooks/useEmptyStateVisibility.d.ts +6 -2
- package/dist/esm/containers/types/types.d.ts +5 -0
- package/dist/esm/containers/utils/dataPathUtils.js +1 -1
- package/dist/esm/containers/utils/dataPathUtils.js.map +1 -1
- package/dist/esm/contexts/ReplicatorFormContext/types.d.ts +2 -2
- package/dist/esm/contexts/ReplicatorRegistryContext/ReplicatorRegistryContextProvider.js +1 -1
- package/dist/esm/contexts/ReplicatorRegistryContext/ReplicatorRegistryContextProvider.js.map +1 -1
- package/dist/esm/contexts/ReplicatorRegistryContext/types.d.ts +8 -7
- package/dist/esm/molecules/BaseMolecule.js +1 -1
- package/dist/esm/molecules/BaseMolecule.js.map +1 -1
- package/dist/esm/molecules/Button/hooks/useButtonAction.js +1 -1
- package/dist/esm/molecules/Button/hooks/useButtonAction.js.map +1 -1
- package/package.json +1 -1
|
@@ -5,7 +5,9 @@ import { StyleVariantConfig } from './ReplicatorContainer/types';
|
|
|
5
5
|
export declare const Container: FC<PropsWithChildren<ContainerProps & {
|
|
6
6
|
id: string;
|
|
7
7
|
nestedPathSegments?: PathSegment[];
|
|
8
|
+
/** @deprecated Use sourceDataPointerId instead */
|
|
8
9
|
targetRwoId?: DmfId;
|
|
10
|
+
/** @deprecated Use sourceDataPointerId instead */
|
|
9
11
|
replicatorFieldId?: DmfId;
|
|
10
12
|
sourceDataPointerId?: string;
|
|
11
13
|
parentStyleVariantConfig?: StyleVariantConfig;
|
|
@@ -1,21 +1,21 @@
|
|
|
1
|
-
import{jsx as e,Fragment as t}from"../node_modules/@emotion/react/jsx-runtime/dist/emotion-react-jsx-runtime.esm.js";import{css as o}from"../node_modules/@emotion/react/dist/emotion-react.esm.js";import"../contexts/AccountButtonContext/AccountButtonContext.js";import{memo as n,useMemo as r,Children as i,isValidElement as a,cloneElement as s}from"react";import"../contexts/ApiContext/ApiContext.js";import{useContainerRuntime as l}from"../contexts/ContainerRuntimeContext/ContainerRuntimeContext.js";import"../contexts/FormStepContext/FormStepContext.js";import{useFormContext as d}from"../node_modules/react-hook-form/dist/index.esm.mjs.js";import"../contexts/LayoutContext/LayoutContext.js";import"../theme/theme.js";import"../theme/provider.js";import"../theme/toastStyles.js";import{useMediaQuery as
|
|
1
|
+
import{jsx as e,Fragment as t}from"../node_modules/@emotion/react/jsx-runtime/dist/emotion-react-jsx-runtime.esm.js";import{css as o}from"../node_modules/@emotion/react/dist/emotion-react.esm.js";import"../contexts/AccountButtonContext/AccountButtonContext.js";import{memo as n,useMemo as r,Children as i,isValidElement as a,cloneElement as s}from"react";import"../contexts/ApiContext/ApiContext.js";import{useContainerRuntime as l}from"../contexts/ContainerRuntimeContext/ContainerRuntimeContext.js";import"../contexts/FormStepContext/FormStepContext.js";import{useFormContext as d}from"../node_modules/react-hook-form/dist/index.esm.mjs.js";import"../contexts/LayoutContext/LayoutContext.js";import"../theme/theme.js";import"../theme/provider.js";import"../theme/toastStyles.js";import{useMediaQuery as c}from"../theme/useMediaQuery.js";import"../contexts/MlrRichTextViewerContext/MlrRichTextViewerContext.js";import"../contexts/OrganismContext/OrganismContext.js";import{useOrganismContext as m}from"../contexts/OrganismContext/useOrganismContext.js";import"../contexts/PopupContext/PopupContext.js";import"../contexts/ReplicatorFormContext/ReplicatorFormContext.js";import"../contexts/ReplicatorRegistryContext/ReplicatorRegistryContext.js";import"../contexts/StateContext/StateContext.js";import"../contexts/WebpageContext/WebpageContext.js";import p from"../node_modules/react-slick/lib/index.js";import{useResolveData as u}from"../helpers/useDataResolution.js";import{FilterContainer as f}from"./FilterContainer.js";import{FormContainer as g}from"./FormContainer.js";import{FormStepContainer as x}from"./FormStepContainer.js";import{resolveActiveVariant as C,getVariantContainerStyles as y,ReplicatorContainer as h}from"./ReplicatorContainer/ReplicatorContainer.js";import{ReplicatorFormSetup as b}from"./ReplicatorContainer/ReplicatorFormSetup.js";import{getBackgroundImageStyles as j}from"./helpers.js";import{getConfigurationWrapperStyle as v,slickStyles as I}from"./styles.js";import{u as S}from"../node_modules/@emotion/react/dist/emotion-element-d59e098f.esm.js";const P={dots:!0,infinite:!1,autoplay:!1,autoplaySpeed:5e3,arrows:!0,slidesToShow:1,slidesToScroll:1,adaptiveHeight:!0,swipeToSlide:!0},k=n(({id:n,type:k,name:F,config:R,children:w,metadata:_,isMobile:D,properties:$,nestedPathSegments:V=[],sourceDataPointerId:M,parentStyleVariantConfig:B,parentContainerWithVariantsId:T,parentContainerActiveVariant:z})=>{const A=S(),{props:O,wide:W,compact:N}=R||{},L=M||O?.sourceDataPointerId,{isConfigurationMode:E,onConfigurationItemClicked:H,selectedConfigurationItemId:Q,currentStyleProperties:q,currentContentProperties:G,formId:J,localState:K,organismInfo:U}=m(),X=l(),{activeVariant:Y,containerId:Z}=X,ee=d(),te=Boolean(J&&ee),oe=r(()=>{if("replicator"===k)return;const e=$?.styleVariantConfig,t=e&&"object"==typeof e&&"data"in e?e.data:e;if(!t?.enabled)return;return("data_model"===(t.nature||(t.sourceDataModelFieldId?"data_model":"variable"))?Boolean(t.sourceDataModelFieldId):Boolean(t.variableName))?t:void 0},[k,$]),ne=r(()=>{if(!oe)return"";return"data_model"===(oe.nature||(oe.sourceDataModelFieldId?"data_model":"variable"))?oe.sourceDataModelFieldId||"":oe.variableName||""},[oe]),re=r(()=>{if(!ne)return"";if(!te)return"";return"data_model"!==(oe?.nature||(oe?.sourceDataModelFieldId?"data_model":"variable"))?"":(e=X.nestedPathSegments||V,t=ne,e&&0!==e.length?[...e.map(e=>{const t=e.sourceDataPointerId||e.dmfId;return void 0!==e.index?`${t}.${e.index}`:t}),t].filter(Boolean).join("."):t);var e,t},[ne,oe?.nature,oe?.sourceDataModelFieldId,te,X.nestedPathSegments,V]);re&&ee?.watch?.(re);const ie=u(ne),ae=r(()=>{if(!ne||!oe)return null;if(null!=ie){let e=null;if("string"==typeof ie||"number"==typeof ie)e={id:String(ie),value:ie};else if(ie&&"object"==typeof ie){const t=ie,o=t.value??null,n=void 0!==t.id&&null!==t.id?String(t.id):null!==o?String(o):null;null!==n&&(e={id:n,value:o})}if(!e)return null;const t=C(oe,{[ne]:e});if(t)return t}return null},[oe,ne,ie]),se=B,le=ae??(z??Y??null),de=(oe&&oe.enabled?n:T)||Z||null,ce=r(()=>{const e=oe&&oe.enabled,t=e?oe:se,o=le,r=(e?n:T)||n;return void 0!==t||null!==o||void 0!==T?i.map(w,e=>a(e)?s(e,{...e.props,parentStyleVariantConfig:t,parentContainerWithVariantsId:r,parentContainerActiveVariant:o,sourceDataPointerId:L,nestedPathSegments:V}):e):w},[w,oe,le,se,n,T]),me=Q===n,pe=me?{backgroundImage:G?.backgroundImage??$?.backgroundImage??{imageFile:{url:""}}}:$,{containerProps:ue={},containerStyle:fe={}}=W||{};let ge={...fe};const{containerProps:xe={},containerStyle:Ce={}}=N||{};let ye={...Ce};q&&me&&(ye={...Ce,...q},ge={...fe,...q});const he=c("xs"),be=D??he;let je=be?ye:ge;if(le&&R){const e=y(R,le,be?"compact":"wide");Object.keys(e).length>0&&(je={...je,...e})}const ve=be?xe:ue,Ie={...O,...ve,enableBackgroundImage:je?.enableBackgroundImage},Se=r(()=>({entityId:n,entityType:k,entityName:F,entity:"container",organismType:U?.type,organismSubtype:U?.subtype,libraryEntityId:_?.containerLibraryId||void 0,activeStyleVariant:le,parentReplicatorWithVariants:de,parentStyleVariantConfig:oe&&oe.enabled?oe:se}),[k,F,n,_,le,de,oe,se]),Pe=E?{onClick:e=>{e&&e.stopPropagation(),H(Se,!1)},onDoubleClick:e=>{e?.stopPropagation(),H(Se,!0)}}:{},ke=`${n}.${be?"mobile":"desktop"}`,Fe=o`
|
|
2
2
|
display: flex;
|
|
3
3
|
position: relative; /* default containing block for absolute children */
|
|
4
4
|
overflow: visible; /* allow positioned children to overflow */
|
|
5
5
|
box-sizing: border-box; /* normalize across environments */
|
|
6
|
-
${
|
|
7
|
-
${
|
|
8
|
-
${
|
|
9
|
-
`;if("slider"===
|
|
10
|
-
${
|
|
11
|
-
${
|
|
12
|
-
`,...P,...
|
|
6
|
+
${je}; /* explicit containerStyle (can override position when needed) */
|
|
7
|
+
${j(Ie?.enableBackgroundImage,pe?.backgroundImage?.imageFile?.url)}
|
|
8
|
+
${E?v({theme:A,selected:me}):void 0}
|
|
9
|
+
`;if("slider"===k||"journey_driven"===k)return e("div",{className:"slider-container",style:{width:"inherit",height:"inherit",display:"block",position:"relative"},...Pe,children:e(p,{"data-configuration-id":n,fade:"journey_driven"===k,css:o`
|
|
10
|
+
${Fe};
|
|
11
|
+
${I};
|
|
12
|
+
`,...P,...ve,children:w})},ke);const Re=e(h,{containerId:n,sourceDataPointerId:L,nestedPathSegments:V,properties:$,config:R,renderWrapper:(t,r,i)=>{const a=y(R,i,be?"compact":"wide"),s=i&&Object.keys(a).length>0?{...je,...a}:je,l=o`
|
|
13
13
|
display: flex;
|
|
14
14
|
position: relative;
|
|
15
15
|
overflow: visible;
|
|
16
16
|
box-sizing: border-box;
|
|
17
17
|
${s};
|
|
18
|
-
${
|
|
19
|
-
${
|
|
20
|
-
`;return e("div",{id:`${n}-${void 0!==t?t:"single"}`,css:l,...
|
|
18
|
+
${j(Ie?.enableBackgroundImage,pe?.backgroundImage?.imageFile?.url)}
|
|
19
|
+
${E?v({theme:A,selected:me}):void 0}
|
|
20
|
+
`;return e("div",{id:`${n}-${void 0!==t?t:"single"}`,css:l,...E?{"data-configuration-id":n}:{},...Pe,children:r})},children:w}),we={form:e(g,{...O?.formProps,containerType:"form",children:ce}),filter:e(f,{containerType:"filter",children:ce}),form_step:e(x,{id:n,...O?.formStepProps,metadata:_,containerProps:Ie,children:ce}),replicator:te&&L?e(b,{sourceDataPointerId:L,nestedPathSegments:V,minInstances:O?.minInstances,maxInstances:O?.maxInstances,children:Re}):Re};if("replicator"===k)return e(t,{children:we.replicator});return e("div",{id:n,className:"empty_state"===k?"zeal-container zeal-empty-state":"zeal-container",css:Fe,...E?{"data-configuration-id":n}:{},...Pe,children:we[k]||ce},ke)});export{k as Container};
|
|
21
21
|
//# sourceMappingURL=Container.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Container.js","sources":["../../../../src/containers/Container.tsx"],"sourcesContent":[null],"names":["sliderSettings","dots","infinite","autoplay","autoplaySpeed","arrows","slidesToShow","slidesToScroll","adaptiveHeight","swipeToSlide","Container","memo","id","type","name","config","children","metadata","isMobile","properties","nestedPathSegments","
|
|
1
|
+
{"version":3,"file":"Container.js","sources":["../../../../src/containers/Container.tsx"],"sourcesContent":[null],"names":["sliderSettings","dots","infinite","autoplay","autoplaySpeed","arrows","slidesToShow","slidesToScroll","adaptiveHeight","swipeToSlide","Container","memo","id","type","name","config","children","metadata","isMobile","properties","nestedPathSegments","sourceDataPointerId","parentStyleVariantConfig","parentContainerWithVariantsId","parentContainerActiveVariant","theme","useTheme","props","wide","compact","containerSourceDataPointerId","isConfigurationMode","onConfigurationItemClicked","selectedConfigurationItemId","currentStyleProperties","currentContentProperties","formId","localState","organismInfo","useOrganismContext","containerRuntime","useContainerRuntime","activeVariant","runtimeParentVariant","containerId","parentContainerId","formContext","useFormContext","isFormMode","Boolean","containerStyleVariantConfig","useMemo","propsSvc","styleVariantConfig","svcData","data","enabled","nature","sourceDataModelFieldId","variableName","undefined","variantSourceField","formPath","segments","fieldName","length","map","seg","pathId","dmfId","index","filter","join","watch","resolvedContainerVariantValue","useResolveData","containerOwnVariant","normalized","String","value","obj","resolved","resolveActiveVariant","inheritedVariantConfig","containerWithVariantsId","childrenWithVariantProps","hasOwnConfig","variantConfigToPass","activeVariantToPass","variantsContainerId","Children","child","isValidElement","cloneElement","selected","mergedProperties","backgroundImage","imageFile","url","containerProps","wideContainerProps","containerStyle","savedWideContainerStyles","wideContainerStyles","compactContainerProps","savedCompactContainerStyles","compactContainerStyles","isXs","useMediaQuery","isMobileProp","styles","variantStyles","getVariantContainerStyles","Object","keys","mergedContainerProps","enableBackgroundImage","configurationItemData","entityId","entityType","entityName","entity","organismType","organismSubtype","subtype","libraryEntityId","containerLibraryId","activeStyleVariant","parentReplicatorWithVariants","configurationsItemInfo","onClick","e","stopPropagation","onDoubleClick","key","containerCss","css","getBackgroundImageStyles","getConfigurationWrapperStyle","_jsx","className","style","width","height","display","position","Slider","fade","slickStyles","replicatorContent","ReplicatorContainer","renderWrapper","iterationIndex","innerChildren","renderActiveVariant","mergedStyles","variantContainerCss","containersMap","form","FormContainer","formProps","containerType","FilterContainer","form_step","FormStepContainer","formStepProps","replicator","ReplicatorFormSetup","minInstances","maxInstances","_Fragment"],"mappings":"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"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
|
-
import {
|
|
2
|
+
import { PathSegment } from '../../contexts/ContainerRuntimeContext/types';
|
|
3
3
|
import { StyleVariantConfig, VariantContainerConfig, VariantContainerProperties } from './types';
|
|
4
4
|
/**
|
|
5
5
|
* Resolve the active variant from scoped data using the variant field configuration.
|
|
@@ -21,7 +21,6 @@ export declare const getVariantContainerStyles: (config: VariantContainerConfig
|
|
|
21
21
|
export type ReplicatorContainerProps = {
|
|
22
22
|
/** The actual container UUID (passed from parent Container) for variant lookup */
|
|
23
23
|
containerId?: string;
|
|
24
|
-
targetRwoId?: DmfId;
|
|
25
24
|
/** Points to specific query result from webpage context */
|
|
26
25
|
sourceDataPointerId?: string;
|
|
27
26
|
nestedPathSegments?: PathSegment[];
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{jsx as t,Fragment as e}from"../../node_modules/@emotion/react/jsx-runtime/dist/emotion-react-jsx-runtime.esm.js";import{memo as o,useMemo as
|
|
1
|
+
import{jsx as t,Fragment as e}from"../../node_modules/@emotion/react/jsx-runtime/dist/emotion-react-jsx-runtime.esm.js";import{memo as o,useMemo as r}from"react";import"../../contexts/AccountButtonContext/AccountButtonContext.js";import"../../contexts/ApiContext/ApiContext.js";import{useContainerRuntime as n}from"../../contexts/ContainerRuntimeContext/ContainerRuntimeContext.js";import{ContainerRuntimeContextProvider as a}from"../../contexts/ContainerRuntimeContext/ContainerRuntimeContextProvider.js";import"../../contexts/FormStepContext/FormStepContext.js";import"../../contexts/LayoutContext/LayoutContext.js";import"../../theme/theme.js";import"../../theme/provider.js";import"../../theme/toastStyles.js";import"../../contexts/MlrRichTextViewerContext/MlrRichTextViewerContext.js";import"../../contexts/OrganismContext/OrganismContext.js";import{useOrganismContext as i}from"../../contexts/OrganismContext/useOrganismContext.js";import"../../contexts/PopupContext/PopupContext.js";import{useReplicatorForm as d}from"../../contexts/ReplicatorFormContext/ReplicatorFormContext.js";import"../../contexts/ReplicatorRegistryContext/ReplicatorRegistryContext.js";import"../../contexts/StateContext/StateContext.js";import{useWebpageContextSafe as s}from"../../contexts/WebpageContext/useWebpageContext.js";import"../../contexts/WebpageContext/WebpageContext.js";import{useResolveDataResolverRaw as l,useResolveData as c}from"../../helpers/useDataResolution.js";const m=t=>Object.entries(t).reduce((t,[e,o])=>(t[e]=(t=>t&&"object"==typeof t&&"value"in t&&!Array.isArray(t)?t.value:t)(o),t),{}),u=(t,e)=>{if(!t?.enabled)return null;const o="data_model"===(t.nature||(t.sourceDataModelFieldId?"data_model":"variable"))?t.sourceDataModelFieldId:t.variableName;if(!o)return null;if(!e)return null;const r=e[o];if(null==r)return null;let n=null;if("string"==typeof r)n=r;else if("object"==typeof r&&null!==r){const t=r;void 0!==t.id&&null!==t.id&&"string"==typeof t.id?n=t.id:void 0!==t.value&&null!==t.value&&(n=String(t.value))}return n},p=(t,e,o)=>{if(!t)return{};if(e){const r=t[e];if(r&&"object"==typeof r&&o in r){const t=r[o];if(t&&"object"==typeof t){const{containerStyle:e}=t;return e&&"object"==typeof e?e:t}}}const r=t[o];if(r&&"object"==typeof r){const{containerStyle:t}=r;return t&&"object"==typeof t?t:r}return{}},f=o(({containerId:o,sourceDataPointerId:p,nestedPathSegments:f=[],children:x,properties:I,config:y,renderWrapper:D})=>{const{formId:v}=i(),C=s(),g=n(),j=d(),b=l(),h=p||g?.sourceDataPointerId,P=h||"default",R=h&&C?.queryResults?C.queryResults[h]?.isLoading??C.isSingleRecordLoading??!1:C?.isSingleRecordLoading??!1,S=I?.styleVariantConfig||y?.styleVariantConfig,A=r(()=>{if(!S)return"";return"data_model"===(S.nature||(S.sourceDataModelFieldId?"data_model":"variable"))?S.sourceDataModelFieldId||"":S.variableName||""},[S]),B=A?c(A):void 0;if(Boolean(v&&j)&&j){const{fieldArrayMethods:{fields:r}}=j;return t(e,{children:r.map((e,r)=>{const n=[...f,{dmfId:P,index:r,sourceDataPointerId:h}],i=e;let d=i;"variable"===(S?.nature||(S?.sourceDataModelFieldId?"data_model":"variable"))&&A&&void 0!==B&&(d={...i,[A]:B});const s=u(S,d),l={containerId:o||`replicator-${P}-${r}`,nestedPathSegments:n,itemIndex:r,itemDataByDmfId:i,rawItemDataByDmfId:i,activeVariant:s,isLoading:R,sourceDataPointerId:p||g?.sourceDataPointerId},c=D?D(r,x,s):x;return t("div",{"data-replicator-instance":`${P}-${r}`,children:t(a,{value:l,children:c})},e.id)})})}if(R)return t(e,{children:Array.from({length:3}).map((e,r)=>{const n=[...f,{dmfId:P,index:r,sourceDataPointerId:h}];return t(a,{value:{containerId:o||`replicator-${P}-${r}`,nestedPathSegments:n,itemIndex:r,itemDataByDmfId:{},rawItemDataByDmfId:{},activeVariant:null,isLoading:R,sourceDataPointerId:h},children:D?D(r,x,null):x},`${P}-loading-${r}`)})});const $=h?b(h):void 0;let F;if(h&&g?.itemDataByDmfId&&(F=g.itemDataByDmfId[h]),void 0===F&&h&&(F=$),F&&"object"==typeof F&&!Array.isArray(F)&&h&&h in F){const t=F[h];Array.isArray(t)&&(F=t)}if(!F||"object"!=typeof F){const e=[...f,{dmfId:P,sourceDataPointerId:h}];return t(a,{value:{containerId:o||`replicator-${P}`,nestedPathSegments:e,itemDataByDmfId:{},activeVariant:null,isLoading:!1,sourceDataPointerId:h},children:D?D(void 0,x,null):x})}if(Array.isArray(F))return t(e,{children:F.map((e,r)=>{const n=[...f,{dmfId:P,index:r,sourceDataPointerId:h}],i=m(e);let d=e;"variable"===(S?.nature||(S?.sourceDataModelFieldId?"data_model":"variable"))&&A&&void 0!==B&&(d={...d,[A]:B});const s=u(S,d);return t(a,{value:{containerId:o||`replicator-${P}-${r}`,nestedPathSegments:n,itemIndex:r,itemDataByDmfId:i,rawItemDataByDmfId:e,activeVariant:s,isLoading:R,sourceDataPointerId:h},children:D?D(r,x,s):x},`${P}-${r}`)})});const L=[...f,{dmfId:P,sourceDataPointerId:h}],M=m(F);let V=F;"variable"===(S?.nature||(S?.sourceDataModelFieldId?"data_model":"variable"))&&A&&void 0!==B&&(V={...V,[A]:B});const _=u(S,V);return t(a,{value:{containerId:o||`replicator-${P}`,nestedPathSegments:L,itemDataByDmfId:M,rawItemDataByDmfId:F,activeVariant:_,isLoading:R,sourceDataPointerId:h},children:D?D(void 0,x,_):x})});export{f as ReplicatorContainer,p as getVariantContainerStyles,u as resolveActiveVariant};
|
|
2
2
|
//# sourceMappingURL=ReplicatorContainer.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ReplicatorContainer.js","sources":["../../../../../src/containers/ReplicatorContainer/ReplicatorContainer.tsx"],"sourcesContent":[null],"names":["unwrapDmfData","data","Object","entries","reduce","unwrapped","key","value","Array","isArray","unwrapScalarValue","resolveActiveVariant","styleVariantConfig","scopedData","enabled","sourceField","nature","sourceDataModelFieldId","variableName","fieldValue","normalizedValue","obj","undefined","id","String","getVariantContainerStyles","config","activeVariant","presentation","variantConfig","presentationConfig","containerStyle","defaultConfig","ReplicatorContainer","memo","containerId","containerIdProp","
|
|
1
|
+
{"version":3,"file":"ReplicatorContainer.js","sources":["../../../../../src/containers/ReplicatorContainer/ReplicatorContainer.tsx"],"sourcesContent":[null],"names":["unwrapDmfData","data","Object","entries","reduce","unwrapped","key","value","Array","isArray","unwrapScalarValue","resolveActiveVariant","styleVariantConfig","scopedData","enabled","sourceField","nature","sourceDataModelFieldId","variableName","fieldValue","normalizedValue","obj","undefined","id","String","getVariantContainerStyles","config","activeVariant","presentation","variantConfig","presentationConfig","containerStyle","defaultConfig","ReplicatorContainer","memo","containerId","containerIdProp","sourceDataPointerId","nestedPathSegments","children","properties","renderWrapper","formId","useOrganismContext","webpageContext","useWebpageContextSafe","parentContext","useContainerRuntime","replicatorFormContext","useReplicatorForm","resolveDataValue","useResolveDataResolverRaw","replicatorDataPointerId","replicatorKey","isLoadingData","queryResults","isLoading","isSingleRecordLoading","variantSourceField","useMemo","containerLevelVariantValue","useResolveData","Boolean","fieldArrayMethods","fields","_jsx","_Fragment","map","field","index","newPathSegments","dmfId","fieldData","variantData","contextValue","itemIndex","itemDataByDmfId","rawItemDataByDmfId","instanceContent","ContainerRuntimeContextProvider","from","length","_","resolvedSourceData","inner","item","unwrappedItem","unwrappedValue"],"mappings":"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"}
|
|
@@ -3,8 +3,8 @@ import { PathSegment } from '../../contexts/ContainerRuntimeContext/types';
|
|
|
3
3
|
/** Default maximum number of replicator instances to prevent performance issues */
|
|
4
4
|
export declare const DEFAULT_MAX_REPLICATOR_INSTANCES = 50;
|
|
5
5
|
export interface ReplicatorFormSetupProps {
|
|
6
|
-
/**
|
|
7
|
-
|
|
6
|
+
/** Source data pointer ID - used as the field array name */
|
|
7
|
+
sourceDataPointerId: string;
|
|
8
8
|
/** Current nested path segments from parent containers */
|
|
9
9
|
nestedPathSegments?: PathSegment[];
|
|
10
10
|
/** Minimum instances allowed (defaults to 1 to ensure at least one instance is shown) */
|
|
@@ -36,7 +36,7 @@ export interface ReplicatorFormSetupProps {
|
|
|
36
36
|
* @usage
|
|
37
37
|
* Wrap a replicator Container in form organisms:
|
|
38
38
|
* ```tsx
|
|
39
|
-
* <ReplicatorFormSetup
|
|
39
|
+
* <ReplicatorFormSetup sourceDataPointerId="query-visits">
|
|
40
40
|
* <Container type="replicator" ... />
|
|
41
41
|
* </ReplicatorFormSetup>
|
|
42
42
|
* ```
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{jsx as e}from"../../node_modules/@emotion/react/jsx-runtime/dist/emotion-react-jsx-runtime.esm.js";import{useRef as r,useEffect as t}from"react";import{useFormContext as o,useFieldArray as n}from"../../node_modules/react-hook-form/dist/index.esm.mjs.js";import{useOrganismContext as l}from"../../contexts/OrganismContext/useOrganismContext.js";import"../../contexts/ReplicatorFormContext/ReplicatorFormContext.js";import{ReplicatorFormContextProvider as
|
|
1
|
+
import{jsx as e}from"../../node_modules/@emotion/react/jsx-runtime/dist/emotion-react-jsx-runtime.esm.js";import{useRef as r,useEffect as t}from"react";import{useFormContext as o,useFieldArray as n}from"../../node_modules/react-hook-form/dist/index.esm.mjs.js";import{useOrganismContext as l}from"../../contexts/OrganismContext/useOrganismContext.js";import"../../contexts/ReplicatorFormContext/ReplicatorFormContext.js";import{ReplicatorFormContextProvider as i}from"../../contexts/ReplicatorFormContext/ReplicatorFormContextProvider.js";import{useReplicatorRegistry as s}from"../../contexts/ReplicatorRegistryContext/ReplicatorRegistryContext.js";const a=50,c=({sourceDataPointerId:a,nestedPathSegments:c=[],minInstances:m=1,maxInstances:d=50,children:g})=>{const p=o(),{control:f,getValues:u}=p||{},h=s(),{prefillData:x}=l(),y=r(!1),A=c.map(e=>{const r=e.sourceDataPointerId||e.dmfId;return void 0!==e.index?`${r}.${e.index}`:r}).filter(Boolean).join(".");const j=A?`${A}.${a}`:a,I=n({control:f,name:j}),{fields:F,append:R,replace:C}=I,P=((e,r)=>{if(e&&r)return r.split(".").reduce((e,r)=>{if(e&&"object"==typeof e)return e[r]},e)})(x,j),S=Array.isArray(P)&&P.length>0;return t(()=>{if(y.current)return;y.current=!0;const e=u?.(j),r=Array.isArray(e)&&e.length>0;if(!(S||r||F.length>0)&&m>0){Array.from({length:m},()=>({})).forEach(e=>{R(e,{shouldFocus:!1})})}},[]),t(()=>{S&&(console.group("🟡 [ReplicatorFormSetup] Syncing Prefill Array Data"),console.log("📋 Field Array Name:",j),console.log("📦 Prefill Array Value:",JSON.stringify(P,null,2)),console.log("🔢 Current Fields Length:",F.length),console.log("🔢 Prefill Array Length:",P.length),F.length!==P.length?(console.log("🔄 Replacing field array with prefill data"),C(P),console.log("✅ Field array replaced")):console.log("⏭️ Skipping replace - lengths match"),console.groupEnd())},[S,P,F.length,C,j]),t(()=>{if(h)return h.register({replicatorId:a,fieldArrayName:j,fieldArrayMethods:I,minInstances:m,maxInstances:d}),()=>{h.unregister(a)}},[h,a,j,I,m,d]),e(i,{replicatorFieldId:a,fieldArrayName:j,fieldArrayMethods:I,minInstances:m,maxInstances:d,children:g})};export{a as DEFAULT_MAX_REPLICATOR_INSTANCES,c as ReplicatorFormSetup};
|
|
2
2
|
//# sourceMappingURL=ReplicatorFormSetup.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ReplicatorFormSetup.js","sources":["../../../../../src/containers/ReplicatorContainer/ReplicatorFormSetup.tsx"],"sourcesContent":[null],"names":["DEFAULT_MAX_REPLICATOR_INSTANCES","ReplicatorFormSetup","
|
|
1
|
+
{"version":3,"file":"ReplicatorFormSetup.js","sources":["../../../../../src/containers/ReplicatorContainer/ReplicatorFormSetup.tsx"],"sourcesContent":[null],"names":["DEFAULT_MAX_REPLICATOR_INSTANCES","ReplicatorFormSetup","sourceDataPointerId","nestedPathSegments","minInstances","maxInstances","children","formContext","useFormContext","control","getValues","registry","useReplicatorRegistry","prefillData","useOrganismContext","initializedRef","useRef","currentPath","map","seg","pathId","dmfId","undefined","index","filter","Boolean","join","fieldArrayName","fieldArrayMethods","useFieldArray","name","fields","append","replace","prefillArrayValue","data","path","split","reduce","acc","segment","getValueByPath","hasPrefillData","Array","isArray","length","useEffect","current","currentFormValue","hasFormValue","from","forEach","instance","shouldFocus","console","group","log","JSON","stringify","groupEnd","register","replicatorId","unregister","_jsx","ReplicatorFormContextProvider","replicatorFieldId"],"mappings":"yoBAQO,MAAMA,EAAmC,GA8EnCC,EAAuE,EAClFC,sBACAC,qBAAqB,GACrBC,eAAe,EACfC,eAlF8C,GAmF9CC,eAEA,MAAMC,EAAcC,KACdC,QAAEA,EAAOC,UAAEA,GAAcH,GAAe,CAAA,EACxCI,EAAWC,KACXC,YAAEA,GAAgBC,IAClBC,EAAiBC,GAAO,GAGxBC,EAA8Bd,EArEjCe,IAAKC,IAEJ,MAAMC,EAASD,EAAIjB,qBAAuBiB,EAAIE,MAE9C,YAAkBC,IAAdH,EAAII,MACC,GAAGH,KAAUD,EAAII,QAEnBH,IAERI,OAAOC,SACPC,KAAK,KA4DR,MAAMC,EAAiBV,EACnB,GAAGA,KAAef,IAClBA,EAEE0B,EAAoBC,EAAc,CACtCpB,UACAqB,KAAMH,KAGFI,OAAEA,EAAMC,OAAEA,EAAMC,QAAEA,GAAYL,EAI9BM,EAtEe,EACrBC,EACAC,KAEA,GAAKD,GAASC,EACd,OAAOA,EAAKC,MAAM,KAAKC,OAAO,CAACC,EAAKC,KAClC,GAAID,GAAsB,iBAARA,EAChB,OAAQA,EAAgCC,IAGzCL,IA4DuBM,CACxB5B,EACAc,GAEIe,EAAiBC,MAAMC,QAAQV,IAAsBA,EAAkBW,OAAS,EAgEtF,OA5DAC,EAAU,KACR,GAAI/B,EAAegC,QAAS,OAC5BhC,EAAegC,SAAU,EAEzB,MAAMC,EAAmBtC,IAAYiB,GAC/BsB,EAAeN,MAAMC,QAAQI,IAAqBA,EAAiBH,OAAS,EAGlF,KAAIH,GAAkBO,GAAgBlB,EAAOc,OAAS,IAKlDzC,EAAe,EAAG,CACKuC,MAAMO,KAAK,CAAEL,OAAQzC,GAAgB,MAAS,IACtD+C,QAASC,IACxBpB,EAAOoB,EAAU,CAAEC,aAAa,KAEnC,GACA,IAIHP,EAAU,KACHJ,IAELY,QAAQC,MAAM,uDACdD,QAAQE,IAAI,uBAAwB7B,GACpC2B,QAAQE,IAAI,0BAA2BC,KAAKC,UAAUxB,EAAmB,KAAM,IAC/EoB,QAAQE,IAAI,4BAA6BzB,EAAOc,QAChDS,QAAQE,IAAI,2BAA4BtB,EAAkBW,QAGtDd,EAAOc,SAAWX,EAAkBW,QACtCS,QAAQE,IAAI,8CACZvB,EAAQC,GACRoB,QAAQE,IAAI,2BAEZF,QAAQE,IAAI,uCAEdF,QAAQK,aACP,CAACjB,EAAgBR,EAAmBH,EAAOc,OAAQZ,EAASN,IAG/DmB,EAAU,KACR,GAAInC,EASF,OARAA,EAASiD,SAAS,CAChBC,aAAc3D,EACdyB,iBACAC,oBACAxB,eACAC,iBAGK,KACLM,EAASmD,WAAW5D,KAGvB,CAACS,EAAUT,EAAqByB,EAAgBC,EAAmBxB,EAAcC,IAGlF0D,EAACC,EACC,CAAAC,kBAAmB/D,EACnByB,eAAgBA,EAChBC,kBAAmBA,EACnBxB,aAAcA,EACdC,aAAcA,EAEbC,SAAAA"}
|
|
@@ -5,7 +5,7 @@ import { ContainerComponentProps, Molecule } from '../types/types';
|
|
|
5
5
|
*/
|
|
6
6
|
export declare const isEmptyStateContainer: (item: ContainerComponentProps | Molecule) => boolean;
|
|
7
7
|
/**
|
|
8
|
-
* Gets the
|
|
8
|
+
* Gets the field identifier for empty-state checks (sourceDataPointerId preferred).
|
|
9
9
|
*/
|
|
10
10
|
export declare const getReplicatorFieldId: (item: ContainerComponentProps | Molecule) => DmfId | undefined;
|
|
11
11
|
/**
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{useMemo as e}from"react";import{useOrganismContext as t}from"../../contexts/OrganismContext/useOrganismContext.js";import{useContainerDataScope as r}from"./useContainerDataScope.js";const n=e=>"container"===e.instance&&"empty_state"===e.type,i=e=>{if("container"!==e.instance)return;const t=e;return t.targetRwoId||t.config?.props?.targetRwoId||t.replicatorFieldId},s=(e,t)=>{if(!e)return!0;if(Array.isArray(e))return 0===e.length;return(e=>null==e||Array.isArray(e)&&0===e.length||"object"==typeof e&&!Array.isArray(e)&&0===Object.keys(e).length)(e[t])},
|
|
1
|
+
import{useMemo as e}from"react";import{useOrganismContext as t}from"../../contexts/OrganismContext/useOrganismContext.js";import{useContainerDataScope as r}from"./useContainerDataScope.js";const n=e=>"container"===e.instance&&"empty_state"===e.type,i=e=>{if("container"!==e.instance)return;const t=e;return t.sourceDataPointerId||t.config?.props?.sourceDataPointerId||t.targetRwoId||t.config?.props?.targetRwoId||t.replicatorFieldId},s=(e,t)=>{if(!e)return!0;if(Array.isArray(e))return 0===e.length;return(e=>null==e||Array.isArray(e)&&0===e.length||"object"==typeof e&&!Array.isArray(e)&&0===Object.keys(e).length)(e[t])},o=({containerItems:o,visibleItems:a,nestedPathSegments:m})=>{const{isLoadingData:l,isEmptyDataState:f,forceEmptyStatePreview:d,previewingEmptyStates:g,isConfigurationMode:p}=t(),c=r({nestedPathSegments:m});return e(()=>{if(!o||0===o.length)return{filteredItems:a,showingEmptyStateForFields:new Set,showOrganismLevelEmptyState:!1};const e=o.filter(n);if(0===e.length)return{filteredItems:a,showingEmptyStateForFields:new Set,showOrganismLevelEmptyState:!1};const t=g&&g.length>0;if(p&&!d&&!t)return{filteredItems:a,showingEmptyStateForFields:new Set,showOrganismLevelEmptyState:!1};if(l&&!d&&!t){return{filteredItems:a.filter(e=>!n(e)),showingEmptyStateForFields:new Set,showOrganismLevelEmptyState:!1}}const r=new Set;let m=!1;if(e.forEach(e=>{const t=i(e);if(d)return void(t?r.add(t):m=!0);if(t?g?.includes(t):g?.includes("__organism__"))t?r.add(t):m=!0;else if(!p)if(t){s(c,t)&&r.add(t)}else f&&(m=!0)}),!m&&0===r.size){return{filteredItems:a.filter(e=>!n(e)),showingEmptyStateForFields:new Set,showOrganismLevelEmptyState:!1}}return{filteredItems:a.filter(e=>{if(n(e)){const t=i(e);return t?r.has(t):m}return!1}),showingEmptyStateForFields:r,showOrganismLevelEmptyState:m}},[o,a,c,l,f,d,g,p])};export{i as getReplicatorFieldId,n as isEmptyStateContainer,s as isFieldEmptyAtScope,o as useEmptyStateFiltering};
|
|
2
2
|
//# sourceMappingURL=useEmptyStateFiltering.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useEmptyStateFiltering.js","sources":["../../../../../src/containers/hooks/useEmptyStateFiltering.ts"],"sourcesContent":[null],"names":["isEmptyStateContainer","item","instance","type","getReplicatorFieldId","container","
|
|
1
|
+
{"version":3,"file":"useEmptyStateFiltering.js","sources":["../../../../../src/containers/hooks/useEmptyStateFiltering.ts"],"sourcesContent":[null],"names":["isEmptyStateContainer","item","instance","type","getReplicatorFieldId","container","sourceDataPointerId","config","props","targetRwoId","replicatorFieldId","isFieldEmptyAtScope","scope","fieldId","Array","isArray","length","value","Object","keys","isEmptyValue","useEmptyStateFiltering","containerItems","visibleItems","nestedPathSegments","isLoadingData","isEmptyDataState","forceEmptyStatePreview","previewingEmptyStates","isConfigurationMode","useOrganismContext","currentScope","useContainerDataScope","useMemo","filteredItems","showingEmptyStateForFields","Set","showOrganismLevelEmptyState","emptyStateContainers","filter","hasActivePreview","forEach","emptyState","add","includes","size","itemFieldId","has"],"mappings":"6LASa,MAAAA,EAAyBC,GACX,cAAlBA,EAAKC,UAAuE,gBAA1CD,EAAiCE,KAM/DC,EACXH,IAEA,GAAsB,cAAlBA,EAAKC,SAA0B,OACnC,MAAMG,EAAYJ,EAClB,OACEI,EAAUC,qBACVD,EAAUE,QAAQC,OAAOF,qBACzBD,EAAUI,aACVJ,EAAUE,QAAQC,OAAOC,aACzBJ,EAAUK,mBAwBDC,EAAsB,CACjCC,EACAC,KAEA,IAAKD,EAAO,OAAO,EAGnB,GAAIE,MAAMC,QAAQH,GAChB,OAAwB,IAAjBA,EAAMI,OAKf,MA9BmB,CAACC,GAElBA,SAECH,MAAMC,QAAQE,IAA2B,IAAjBA,EAAMD,QACb,iBAAVC,IACLH,MAAMC,QAAQE,IACyB,IAAxCC,OAAOC,KAAKF,GAAiBD,OAuB1BI,CADOR,EAAMC,KAoDTQ,EAAyB,EACpCC,iBACAC,eACAC,yBAEA,MAAMC,cACJA,EAAaC,iBACbA,EAAgBC,uBAChBA,EAAsBC,sBACtBA,EAAqBC,oBACrBA,GACEC,IAGEC,EAAeC,EAAsB,CAAER,uBA2I7C,OAzIeS,EAAgC,KAE7C,IAAKX,GAA4C,IAA1BA,EAAeN,OACpC,MAAO,CACLkB,cAAeX,EACfY,2BAA4B,IAAIC,IAChCC,6BAA6B,GAKjC,MAAMC,EAAuBhB,EAAeiB,OAAOvC,GAGnD,GAAoC,IAAhCsC,EAAqBtB,OACvB,MAAO,CACLkB,cAAeX,EACfY,2BAA4B,IAAIC,IAChCC,6BAA6B,GAKjC,MAAMG,EAAmBZ,GAAyBA,EAAsBZ,OAAS,EACjF,GAAIa,IAAwBF,IAA2Ba,EACrD,MAAO,CACLN,cAAeX,EACfY,2BAA4B,IAAIC,IAChCC,6BAA6B,GAMjC,GAAIZ,IAAkBE,IAA2Ba,EAAkB,CAEjE,MAAO,CACLN,cAF6BX,EAAagB,OAAQtC,IAAUD,EAAsBC,IAGlFkC,2BAA4B,IAAIC,IAChCC,6BAA6B,EAEhC,CAGD,MAAMF,EAA6B,IAAIC,IACvC,IAAIC,GAA8B,EA8ClC,GA3CAC,EAAqBG,QAASC,IAC5B,MAAM7B,EAAUT,EAAqBsC,GAGrC,GAAIf,EAMF,YALId,EACFsB,EAA2BQ,IAAI9B,GAE/BwB,GAA8B,GAUlC,GAJyBxB,EACrBe,GAAuBgB,SAAS/B,GAChCe,GAAuBgB,SAAS,gBAG9B/B,EACFsB,EAA2BQ,IAAI9B,GAE/BwB,GAA8B,OAMlC,IAAKR,EACH,GAAIhB,EAAS,CAEKF,EAAoBoB,EAAclB,IAEhDsB,EAA2BQ,IAAI9B,EAElC,MAAUa,IAETW,GAA8B,MAM/BA,GAAmE,IAApCF,EAA2BU,KAAY,CAEzE,MAAO,CACLX,cAF6BX,EAAagB,OAAQtC,IAAUD,EAAsBC,IAGlFkC,2BAA4B,IAAIC,IAChCC,6BAA6B,EAEhC,CAuBD,MAAO,CACLH,cAlBoBX,EAAagB,OAAQtC,IAEzC,GAAID,EAAsBC,GAAO,CAC/B,MAAM6C,EAAc1C,EAAqBH,GACzC,OAAI6C,EACKX,EAA2BY,IAAID,GAEjCT,CACR,CAGD,OAAO,IAQPF,6BACAE,gCAED,CACDf,EACAC,EACAQ,EACAN,EACAC,EACAC,EACAC,EACAC"}
|
|
@@ -5,6 +5,10 @@ export type EmptyStateConfig = {
|
|
|
5
5
|
* If undefined, applies to entire organism data.
|
|
6
6
|
*/
|
|
7
7
|
targetRwoId?: DmfId;
|
|
8
|
+
/**
|
|
9
|
+
* Source data pointer ID to use instead of targetRwoId.
|
|
10
|
+
*/
|
|
11
|
+
sourceDataPointerId?: string;
|
|
8
12
|
/**
|
|
9
13
|
* Current nested path segments from the container context.
|
|
10
14
|
*/
|
|
@@ -17,7 +21,7 @@ export type EmptyStateConfig = {
|
|
|
17
21
|
* - If targetRwoId is NOT set → check if entire organism data is empty
|
|
18
22
|
* - If targetRwoId IS set → check if that specific array field is empty at current path
|
|
19
23
|
*
|
|
20
|
-
* @param config - Configuration with targetRwoId and nestedPathSegments
|
|
24
|
+
* @param config - Configuration with targetRwoId/sourceDataPointerId and nestedPathSegments
|
|
21
25
|
* @returns Object with visibility info and preview state management
|
|
22
26
|
*/
|
|
23
27
|
export declare const useEmptyStateVisibility: (config: EmptyStateConfig) => {
|
|
@@ -34,4 +38,4 @@ export declare const useEmptyStateVisibility: (config: EmptyStateConfig) => {
|
|
|
34
38
|
* Check if a specific array field is empty at the given path.
|
|
35
39
|
* Non-hook version for use outside React components.
|
|
36
40
|
*/
|
|
37
|
-
export declare const isArrayFieldEmpty: (dataRoot: Record<string, unknown>, nestedPathSegments: PathSegment[],
|
|
41
|
+
export declare const isArrayFieldEmpty: (dataRoot: Record<string, unknown>, nestedPathSegments: PathSegment[], fieldId: DmfId) => boolean;
|
|
@@ -81,6 +81,7 @@ export type ContainerPropsType = Partial<{
|
|
|
81
81
|
activeOrganismIds: string[];
|
|
82
82
|
padding: Padding;
|
|
83
83
|
enableBackgroundImage: boolean;
|
|
84
|
+
/** @deprecated Use sourceDataPointerId instead */
|
|
84
85
|
targetRwoId?: DmfId;
|
|
85
86
|
sourceDataPointerId?: string;
|
|
86
87
|
minInstances?: number;
|
|
@@ -110,7 +111,11 @@ export type ContainerComponentProps = {
|
|
|
110
111
|
instance: 'container';
|
|
111
112
|
type: ContainerType;
|
|
112
113
|
/** Replicator field id from backend payloads */
|
|
114
|
+
/** @deprecated Use sourceDataPointerId instead */
|
|
113
115
|
replicatorFieldId?: DmfId;
|
|
116
|
+
/** Source data pointer ID used for replicator data resolution */
|
|
117
|
+
sourceDataPointerId?: string;
|
|
118
|
+
/** @deprecated Use sourceDataPointerId instead */
|
|
114
119
|
targetRwoId?: DmfId;
|
|
115
120
|
items: (ContainerComponentProps | Molecule)[];
|
|
116
121
|
config: Partial<{
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
const r=(r,n)=>{if(!r)return null;let t=r;for(const e of n){if(!t||"object"!=typeof t)return null;const{dmfId:r,index:n}=e;if(t=t[r],void 0===t)return null;if(void 0!==n){if(!Array.isArray(t))return null;if(t=t[n],void 0===t)return null}}return t&&"object"==typeof t?t:null};export{r as getDataByPath};
|
|
1
|
+
const r=(r,n)=>{if(!r)return null;let t=r;for(const e of n){if(!t||"object"!=typeof t)return null;const{dmfId:r,index:n,sourceDataPointerId:o}=e;if(t=t[o||r],void 0===t)return null;if(void 0!==n){if(!Array.isArray(t))return null;if(t=t[n],void 0===t)return null}}return t&&"object"==typeof t?t:null};export{r as getDataByPath};
|
|
2
2
|
//# sourceMappingURL=dataPathUtils.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dataPathUtils.js","sources":["../../../../../src/containers/utils/dataPathUtils.ts"],"sourcesContent":[null],"names":["getDataByPath","data","segments","current","segment","dmfId","index","undefined","Array","isArray"],"mappings":"MAKaA,EAAgB,CAC3BC,EACAC,KAEA,IAAKD,EAAM,OAAO,KAElB,IAAIE,EAA6CF,EAEjD,IAAK,MAAMG,KAAWF,EAAU,CAC9B,IAAKC,GAA8B,iBAAZA,EAAsB,OAAO,KAEpD,MAAME,MAAEA,EAAKC,MAAEA,
|
|
1
|
+
{"version":3,"file":"dataPathUtils.js","sources":["../../../../../src/containers/utils/dataPathUtils.ts"],"sourcesContent":[null],"names":["getDataByPath","data","segments","current","segment","dmfId","index","sourceDataPointerId","undefined","Array","isArray"],"mappings":"MAKaA,EAAgB,CAC3BC,EACAC,KAEA,IAAKD,EAAM,OAAO,KAElB,IAAIE,EAA6CF,EAEjD,IAAK,MAAMG,KAAWF,EAAU,CAC9B,IAAKC,GAA8B,iBAAZA,EAAsB,OAAO,KAEpD,MAAME,MAAEA,EAAKC,MAAEA,EAAKC,oBAAEA,GAAwBH,EAM9C,GAFAD,EAAWA,EADKI,GAAuBF,QAGvBG,IAAZL,EAAuB,OAAO,KAGlC,QAAcK,IAAVF,EAAqB,CACvB,IAAKG,MAAMC,QAAQP,GAAU,OAAO,KAEpC,GADAA,EAAUA,EAAQG,QACFE,IAAZL,EAAuB,OAAO,IACnC,CACF,CAED,OAAOA,GAA8B,iBAAZA,EAAwBA,EAAsC"}
|
|
@@ -7,7 +7,7 @@ import { UseFieldArrayReturn } from 'react-hook-form';
|
|
|
7
7
|
* and needs to support add/remove operations on array fields.
|
|
8
8
|
*/
|
|
9
9
|
export interface ReplicatorFormContextValue {
|
|
10
|
-
/**
|
|
10
|
+
/** Source data pointer ID - used as the field array key */
|
|
11
11
|
replicatorFieldId: string;
|
|
12
12
|
/** Full nested path for useFieldArray (e.g., "visits" or "visits.0.medications") */
|
|
13
13
|
fieldArrayName: string;
|
|
@@ -23,7 +23,7 @@ export interface ReplicatorFormContextValue {
|
|
|
23
23
|
maxInstances?: number;
|
|
24
24
|
}
|
|
25
25
|
export interface ReplicatorFormContextProviderProps {
|
|
26
|
-
/**
|
|
26
|
+
/** Source data pointer ID - used as the field array key */
|
|
27
27
|
replicatorFieldId: string;
|
|
28
28
|
/** Full nested path for useFieldArray (e.g., "visits.0.medications") */
|
|
29
29
|
fieldArrayName: string;
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{jsx as e}from"../../node_modules/@emotion/react/jsx-runtime/dist/emotion-react-jsx-runtime.esm.js";import{useRef as r,useCallback as t,useMemo as n}from"react";import{ReplicatorRegistryContext as o}from"./ReplicatorRegistryContext.js";const s=({children:s})=>{const i=r(new Map),c=t(e=>{i.current.set(e.
|
|
1
|
+
import{jsx as e}from"../../node_modules/@emotion/react/jsx-runtime/dist/emotion-react-jsx-runtime.esm.js";import{useRef as r,useCallback as t,useMemo as n}from"react";import{ReplicatorRegistryContext as o}from"./ReplicatorRegistryContext.js";const s=({children:s})=>{const i=r(new Map),c=t(e=>{i.current.set(e.replicatorId,e)},[]),d=t(e=>{i.current.delete(e)},[]),l=t(e=>i.current.get(e),[]),a=t(e=>{const r=i.current.get(e);if(!r)return!1;const{maxInstances:t,fieldArrayMethods:n}=r;return!t||n.fields.length<t},[]),u=t(e=>{const r=i.current.get(e);if(!r)return!1;const{minInstances:t,fieldArrayMethods:n}=r;return n.fields.length>t},[]),f=t((e,r={})=>{const t=i.current.get(e);if(!t)return void console.error(`[ReplicatorRegistry] Replicator "${e}" not found`);const{maxInstances:n,fieldArrayMethods:o}=t;n&&o.fields.length>=n||o.append(r)},[]),m=t((e,r)=>{const t=i.current.get(e);if(!t)return void console.error(`[ReplicatorRegistry] Replicator "${e}" not found`);const{minInstances:n,fieldArrayMethods:o}=t;if(o.fields.length<=n)return;const s=r??o.fields.length-1;o.remove(s)},[]),g=n(()=>({registry:i.current,register:c,unregister:d,getReplicator:l,canAdd:a,canRemove:u,append:f,remove:m}),[c,d,l,a,u,f,m]);return e(o.Provider,{value:g,children:s})};export{s as ReplicatorRegistryContextProvider};
|
|
2
2
|
//# sourceMappingURL=ReplicatorRegistryContextProvider.js.map
|
package/dist/esm/contexts/ReplicatorRegistryContext/ReplicatorRegistryContextProvider.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ReplicatorRegistryContextProvider.js","sources":["../../../../../src/contexts/ReplicatorRegistryContext/ReplicatorRegistryContextProvider.tsx"],"sourcesContent":[null],"names":["ReplicatorRegistryContextProvider","children","registryRef","useRef","Map","register","useCallback","entry","current","set","
|
|
1
|
+
{"version":3,"file":"ReplicatorRegistryContextProvider.js","sources":["../../../../../src/contexts/ReplicatorRegistryContext/ReplicatorRegistryContextProvider.tsx"],"sourcesContent":[null],"names":["ReplicatorRegistryContextProvider","children","registryRef","useRef","Map","register","useCallback","entry","current","set","replicatorId","unregister","delete","getReplicator","get","canAdd","maxInstances","fieldArrayMethods","fields","length","canRemove","minInstances","append","value","console","error","remove","index","indexToRemove","useMemo","registry","_jsx","ReplicatorRegistryContext","Provider"],"mappings":"wPAIaA,EAA2D,EAAGC,eAEzE,MAAMC,EAAcC,EAA6C,IAAIC,KAE/DC,EAAWC,EAAaC,IAC5BL,EAAYM,QAAQC,IAAIF,EAAMG,aAAcH,IAC3C,IAEGI,EAAaL,EAAaI,IAC9BR,EAAYM,QAAQI,OAAOF,IAC1B,IAEGG,EAAgBP,EAAaI,GAC1BR,EAAYM,QAAQM,IAAIJ,GAC9B,IAEGK,EAAST,EAAaI,IAC1B,MAAMH,EAAQL,EAAYM,QAAQM,IAAIJ,GACtC,IAAKH,EAAO,OAAO,EACnB,MAAMS,aAAEA,EAAYC,kBAAEA,GAAsBV,EAC5C,OAAQS,GAAgBC,EAAkBC,OAAOC,OAASH,GACzD,IAEGI,EAAYd,EAAaI,IAC7B,MAAMH,EAAQL,EAAYM,QAAQM,IAAIJ,GACtC,IAAKH,EAAO,OAAO,EACnB,MAAMc,aAAEA,EAAYJ,kBAAEA,GAAsBV,EAC5C,OAAOU,EAAkBC,OAAOC,OAASE,GACxC,IAEGC,EAAShB,EAAY,CAACI,EAAsBa,EAAiC,CAAA,KACjF,MAAMhB,EAAQL,EAAYM,QAAQM,IAAIJ,GACtC,IAAKH,EAEH,YADAiB,QAAQC,MAAM,oCAAoCf,gBAIpD,MAAMM,aAAEA,EAAYC,kBAAEA,GAAsBV,EACxCS,GAAgBC,EAAkBC,OAAOC,QAAUH,GAQvDC,EAAkBK,OAAOC,IACxB,IAEGG,EAASpB,EAAY,CAACI,EAAsBiB,KAChD,MAAMpB,EAAQL,EAAYM,QAAQM,IAAIJ,GACtC,IAAKH,EAEH,YADAiB,QAAQC,MAAM,oCAAoCf,gBAIpD,MAAMW,aAAEA,EAAYJ,kBAAEA,GAAsBV,EAC5C,GAAIU,EAAkBC,OAAOC,QAAUE,EAKrC,OAIF,MAAMO,EAAgBD,GAASV,EAAkBC,OAAOC,OAAS,EACjEF,EAAkBS,OAAOE,IACxB,IAEGL,EAAQM,EACZ,KAAO,CACLC,SAAU5B,EAAYM,QACtBH,WACAM,aACAE,gBACAE,SACAK,YACAE,SACAI,WAEF,CAACrB,EAAUM,EAAYE,EAAeE,EAAQK,EAAWE,EAAQI,IAGnE,OACEK,EAACC,EAA0BC,SAAQ,CAACV,MAAOA,EAAKtB,SAC7CA"}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { UseFieldArrayReturn } from 'react-hook-form';
|
|
2
2
|
export interface ReplicatorRegistryEntry {
|
|
3
|
-
|
|
3
|
+
/** Source data pointer ID used to identify this replicator */
|
|
4
|
+
replicatorId: string;
|
|
4
5
|
fieldArrayName: string;
|
|
5
6
|
fieldArrayMethods: UseFieldArrayReturn;
|
|
6
7
|
minInstances: number;
|
|
@@ -9,10 +10,10 @@ export interface ReplicatorRegistryEntry {
|
|
|
9
10
|
export interface ReplicatorRegistryContextValue {
|
|
10
11
|
registry: Map<string, ReplicatorRegistryEntry>;
|
|
11
12
|
register: (entry: ReplicatorRegistryEntry) => void;
|
|
12
|
-
unregister: (
|
|
13
|
-
getReplicator: (
|
|
14
|
-
canAdd: (
|
|
15
|
-
canRemove: (
|
|
16
|
-
append: (
|
|
17
|
-
remove: (
|
|
13
|
+
unregister: (replicatorId: string) => void;
|
|
14
|
+
getReplicator: (replicatorId: string) => ReplicatorRegistryEntry | undefined;
|
|
15
|
+
canAdd: (replicatorId: string) => boolean;
|
|
16
|
+
canRemove: (replicatorId: string) => boolean;
|
|
17
|
+
append: (replicatorId: string, value?: Record<string, unknown>) => void;
|
|
18
|
+
remove: (replicatorId: string, index?: number) => void;
|
|
18
19
|
}
|