1
1
import type { UmbBlockManagerContext , UmbBlockWorkspaceOriginData } from '../index.js' ;
2
- import type { UmbBlockLayoutBaseModel , UmbBlockDataModel , UmbBlockDataType , UmbBlockExposeModel } from '../types.js' ;
2
+ import type {
3
+ UmbBlockLayoutBaseModel ,
4
+ UmbBlockDataModel ,
5
+ UmbBlockDataType ,
6
+ UmbBlockExposeModel ,
7
+ UmbBlockDataValueModel ,
8
+ } from '../types.js' ;
3
9
import type { UmbBlockEntriesContext } from './block-entries.context.js' ;
4
10
import type { UmbContextToken } from '@umbraco-cms/backoffice/context-api' ;
5
11
import { UmbContextBase } from '@umbraco-cms/backoffice/class-api' ;
@@ -238,17 +244,7 @@ export abstract class UmbBlockEntryContext<
238
244
if ( ! this . #contentValuesObservable) {
239
245
this . #contentValuesObservable = mergeObservables (
240
246
[ this . _contentValueArray , this . #contentStructure! . contentTypeProperties , this . _variantId ] ,
241
- ( [ propertyValues , properties , variantId ] ) => {
242
- if ( ! propertyValues || ! properties || ! variantId ) return ;
243
-
244
- return properties . reduce ( ( acc , property ) => {
245
- const propertyVariantId = this . #createPropertyVariantId( property , variantId ) ;
246
- acc [ property . alias ] = propertyValues . find (
247
- ( x ) => x . alias === property . alias && propertyVariantId . compare ( x ) ,
248
- ) ?. value ;
249
- return acc ;
250
- } , { } as UmbBlockDataType ) ;
251
- } ,
247
+ this . #propertyValuesToObjectCallback,
252
248
) ;
253
249
}
254
250
return this . #contentValuesObservable;
@@ -274,21 +270,28 @@ export abstract class UmbBlockEntryContext<
274
270
if ( ! this . #settingsValuesObservable) {
275
271
this . #settingsValuesObservable = mergeObservables (
276
272
[ this . _settingsValueArray , this . #settingsStructure! . contentTypeProperties , this . _variantId ] ,
277
- ( [ propertyValues , properties , variantId ] ) => {
278
- if ( ! propertyValues || ! properties || ! variantId ) return ;
279
-
280
- return properties . reduce ( ( acc , property ) => {
281
- acc [ property . alias ] = propertyValues . find ( ( x ) =>
282
- this . #createPropertyVariantId( property , variantId ) . compare ( x ) ,
283
- ) ?. value ;
284
- return acc ;
285
- } , { } as UmbBlockDataType ) ;
286
- } ,
273
+ this . #propertyValuesToObjectCallback,
287
274
) ;
288
275
}
289
276
return this . #settingsValuesObservable;
290
277
}
291
278
279
+ #propertyValuesToObjectCallback = ( [ propertyValues , properties , variantId ] : [
280
+ UmbBlockDataValueModel < unknown > [ ] | undefined ,
281
+ UmbPropertyTypeModel [ ] ,
282
+ UmbVariantId | undefined ,
283
+ ] ) => {
284
+ if ( ! propertyValues || ! properties || ! variantId ) return ;
285
+
286
+ return properties . reduce ( ( acc , property ) => {
287
+ const propertyVariantId = this . #createPropertyVariantId( property , variantId ) ;
288
+ acc [ property . alias ] = propertyValues . find (
289
+ ( x ) => x . alias === property . alias && propertyVariantId . compare ( x ) ,
290
+ ) ?. value ;
291
+ return acc ;
292
+ } , { } as UmbBlockDataType ) ;
293
+ } ;
294
+
292
295
/**
293
296
* Get the settings of the block.
294
297
* @returns {UmbBlockDataModel | undefined } - the settings of the block.
0 commit comments