'use strict';
import { iconNames } from '../../../level2/fd-component-toolbox/icon/Icon.js';
import { crudActions, tableSortDirections } from '../../../fd-toolbox/enums/enums.js';
import { resourceNames } from '../../../fd-toolbox/resources/resource-names.js';
import { createResourceMeta } from '../../../level2/meta/core/resource-meta.js';
import { getEmptyUuid } from '../../../fd-toolbox/uuids.js';
import { resourceDescriptionTypes, getEmptyResourceDescription } from '../../../level2/meta/core/resource-description/resource-description.js';
import { personProps } from '../../../level2/common/dev/props/person-props.js';
import { resourceIds } from '../../../fd-toolbox/constants/resource-id-constants.js';
import { metaPropertyNames } from '../../../level2/meta/server/constants/meta-property-names.js';
import { getPersonPropertyMetas } from './person-property-metas.js';
import { testNames } from '../../constants/test-data/test-names.js';
import { setPermissionCheckerForResource } from '../../../level2/meta/server/auth/permissions/resource-permission-checker-provider.js';

var __defProp=Object['defineProperty'],__name=(_0x14f757,_0x1527d0)=>__defProp(_0x14f757,'name',{'value':_0x1527d0,'configurable':!![]});const testResourceNames={'customPermissionResource':'customPermissionResource'};function pingMeta(){return {...createResourceMeta(),'id':resourceIds['ping'],'resourceName':resourceNames['ping'],'isPersistent':!![],'supportedCrudActions':[crudActions['create']],'display':{'displayName':resourceNames['ping'],'pluralName':testNames['pingPluralName']}};}__name(pingMeta,'pingMeta');async function personMeta(){const _0x50632c={'accessByUserId':!![],'belowLevelAllowedCrudByUserId':[crudActions['create'],crudActions['view'],crudActions['update'],crudActions['delete']],'accessByWorkspaceId':![],'belowLevelAllowedCrudByWorkspaceId':[]};return {...createResourceMeta(),'auth':_0x50632c,'id':resourceIds['person'],'resourceName':resourceNames['person'],'properties':await getPersonPropertyMetas(),'display':{'displayName':resourceNames['person'],'pluralName':'Persons','preferPluralName':void(0x1a94+-0x13df+0x6b5*-0x1),'preferSingularName':void(0xe55+0x2*0xd3d+-0x1*0x28cf)},'orderBys':[getMetaOrderByForPerson(personProps['name'],0x49c+0x1a3+0x63e*-0x1),getMetaOrderByForPerson(personProps['lastName'],0x9ef*-0x1+-0xad0+0x14c1)],'supportedCrudActions':[crudActions['create'],crudActions['view'],crudActions['update'],crudActions['delete']],'description':{'type':resourceDescriptionTypes['default'],'resourceDescriptionProperty':metaPropertyNames['nameConst'],'useImage':!![]},'icon':iconNames['person']};}__name(personMeta,'personMeta');function aiAssistantMeta(){return {...createResourceMeta(),'id':resourceIds['aiAssistant'],'resourceName':resourceNames['aiAssistant'],'isPersistent':!![],'supportedCrudActions':[crudActions['create']],'display':{'displayName':resourceNames['aiAssistant'],'pluralName':testNames['aiAssistantPluralName']}};}__name(aiAssistantMeta,'aiAssistantMeta');function customCheckerResourcesMeta(_0x541675,_0x1e3565=!![]){const _0x402bcd={...createResourceMeta(),'id':getEmptyUuid(),'resourceName':_0x541675,'customPermissionChecker':_0x1e3565};return _0x402bcd;}__name(customCheckerResourcesMeta,'customCheckerResourcesMeta');function createTestInternalResourceMeta(_0x41949f,_0x373666=getEmptyUuid(),_0x19e2d6){const _0x50cead={'id':_0x373666,'name':_0x41949f,'properties':{},'relativePath':'','persistence':{'tableName':_0x41949f},'description':getEmptyResourceDescription()};if(_0x19e2d6)setPermissionCheckerForResource(_0x41949f,_0x19e2d6);return _0x50cead;}__name(createTestInternalResourceMeta,'createTestInternalResourceMeta');function friendMeta(){const _0x5d3b65={...createResourceMeta(),'id':resourceIds['friend'],'resourceName':resourceNames['friend'],'supportedCrudActions':[crudActions['view'],crudActions['update']]};return _0x5d3b65;}__name(friendMeta,'friendMeta');function getMetaOrderByForPerson(_0x534048,_0x55553a){return {'propertyName':_0x534048,'direction':tableSortDirections['asc'],'priority':_0x55553a};}__name(getMetaOrderByForPerson,'getMetaOrderByForPerson');

export { aiAssistantMeta, createTestInternalResourceMeta, customCheckerResourcesMeta, friendMeta, personMeta, pingMeta, testResourceNames };
