@things-factory/lite-menu 8.0.0-beta.5 → 8.0.0-beta.7
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.
|
@@ -39,19 +39,22 @@ let LiteMenuQuery = class LiteMenuQuery {
|
|
|
39
39
|
const roles = me.roles
|
|
40
40
|
.filter(role => role.domainId === domain.id || (domain.parentId && role.domainId === domain.parentId))
|
|
41
41
|
.map(role => role.id);
|
|
42
|
-
const
|
|
42
|
+
const queryBuilder = (0, shell_1.getQueryBuilderFromListParams)({
|
|
43
43
|
repository: (0, shell_1.getRepository)(lite_menu_1.LiteMenu),
|
|
44
44
|
params,
|
|
45
45
|
domain,
|
|
46
46
|
alias: 'menu',
|
|
47
47
|
searchables: ['name', 'description']
|
|
48
|
-
})
|
|
49
|
-
|
|
50
|
-
.andWhere(new typeorm_1.Brackets(qb => {
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
48
|
+
}).andWhere('menu.active = :active', { active: true });
|
|
49
|
+
if (roles.length > 0) {
|
|
50
|
+
queryBuilder.andWhere(new typeorm_1.Brackets(qb => {
|
|
51
|
+
qb.where('menu.role IN (:...roles)', { roles }).orWhere('menu.role is null');
|
|
52
|
+
}));
|
|
53
|
+
}
|
|
54
|
+
else {
|
|
55
|
+
queryBuilder.andWhere('menu.role is null');
|
|
56
|
+
}
|
|
57
|
+
const [items, total] = await queryBuilder.getManyAndCount();
|
|
55
58
|
return { items, total };
|
|
56
59
|
}
|
|
57
60
|
async label(liteMenu, context) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"lite-menu-query.js","sourceRoot":"","sources":["../../../server/service/lite-menu/lite-menu-query.ts"],"names":[],"mappings":";;;;AAAA,qCAAsC;AACtC,+CAAmF;AAEnF,iDAAuG;AACvG,yDAAsD;AACtD,iEAAqD;AAErD,2CAAsC;AACtC,qDAA+C;AAGxC,IAAM,aAAa,GAAnB,MAAM,aAAa;IAElB,AAAN,KAAK,CAAC,QAAQ,CAAY,EAAU,EAAS,OAAwB;QACnE,MAAM,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,KAAK,CAAA;QAChC,MAAM,UAAU,GAAG,IAAA,qBAAa,EAAC,oBAAQ,CAAC,CAAA;QAE1C,IAAI,QAAQ,GAAQ,UAAU,CAAC,OAAO,CAAC;YACrC,KAAK,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,EAAE,IAAA,YAAE,EAAC,CAAC,MAAM,CAAC,EAAE,EAAE,MAAM,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,EAAE,EAAE,EAAE,EAAE;YAC/E,SAAS,EAAE,CAAC,QAAQ,EAAE,SAAS,EAAE,SAAS,CAAC;SAC5C,CAAC,CAAA;QAEF,OAAO,QAAQ,CAAA;IACjB,CAAC;IAGK,AAAN,KAAK,CAAC,SAAS,CAA0B,MAAiB,EAAS,OAAwB;QACzF,MAAM,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,KAAK,CAAA;QAEhC,MAAM,YAAY,GAAG,IAAA,qCAA6B,EAAC;YACjD,UAAU,EAAE,IAAA,qBAAa,EAAC,oBAAQ,CAAC;YACnC,MAAM;YACN,MAAM;YACN,WAAW,EAAE,CAAC,MAAM,EAAE,aAAa,CAAC;SACrC,CAAC,CAAA;QACF,IAAI,CAAC,KAAK,EAAE,KAAK,CAAC,GAAG,MAAM,YAAY,CAAC,eAAe,EAAE,CAAA;QAEzD,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,CAAA;IACzB,CAAC;IAGK,AAAN,KAAK,CAAC,WAAW,CACU,MAAiB,EACnC,OAAwB;QAE/B,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,OAAO,CAAC,KAAK,CAAA;QAEtC,MAAM,EAAE,GAAG,MAAM,IAAA,qBAAa,EAAC,gBAAI,CAAC,CAAC,OAAO,CAAC;YAC3C,KAAK,EAAE,EAAE,EAAE,EAAE,IAAI,CAAC,EAAE,EAAE;YACtB,SAAS,EAAE,CAAC,OAAO,CAAC;SACrB,CAAC,CAAA;QAEF,MAAM,KAAK,GAAG,EAAE,CAAC,KAAK;aACnB,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,QAAQ,KAAK,MAAM,CAAC,EAAE,IAAI,CAAC,MAAM,CAAC,QAAQ,IAAI,IAAI,CAAC,QAAQ,KAAK,MAAM,CAAC,QAAQ,CAAC,CAAC;aACrG,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;QAEvB,MAAM,
|
|
1
|
+
{"version":3,"file":"lite-menu-query.js","sourceRoot":"","sources":["../../../server/service/lite-menu/lite-menu-query.ts"],"names":[],"mappings":"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","sourcesContent":["import { In, Brackets } from 'typeorm'\nimport { Arg, Args, Ctx, FieldResolver, Query, Resolver, Root } from 'type-graphql'\n\nimport { Domain, getQueryBuilderFromListParams, getRepository, ListParam } from '@things-factory/shell'\nimport { User, Role } from '@things-factory/auth-base'\nimport { Board } from '@things-factory/board-service'\n\nimport { LiteMenu } from './lite-menu'\nimport { LiteMenuList } from './lite-menu-type'\n\n@Resolver(LiteMenu)\nexport class LiteMenuQuery {\n @Query(returns => LiteMenu, { description: 'To fetch a LiteMenu' })\n async liteMenu(@Arg('id') id: string, @Ctx() context: ResolverContext): Promise<LiteMenu> {\n const { domain } = context.state\n const repository = getRepository(LiteMenu)\n\n var liteMenu: any = repository.findOne({\n where: { domain: { id: In([domain.id, domain.parentId].filter(Boolean)) }, id },\n relations: ['domain', 'creator', 'updater']\n })\n\n return liteMenu\n }\n\n @Query(returns => LiteMenuList, { description: 'To fetch multiple LiteMenus' })\n async liteMenus(@Args(type => ListParam) params: ListParam, @Ctx() context: ResolverContext): Promise<LiteMenuList> {\n const { domain } = context.state\n\n const queryBuilder = getQueryBuilderFromListParams({\n repository: getRepository(LiteMenu),\n params,\n domain,\n searchables: ['name', 'description']\n })\n var [items, total] = await queryBuilder.getManyAndCount()\n\n return { items, total }\n }\n\n @Query(returns => LiteMenuList, { description: 'To fetch my own LiteMenus' })\n async myLiteMenus(\n @Args(type => ListParam) params: ListParam,\n @Ctx() context: ResolverContext\n ): Promise<LiteMenuList> {\n const { domain, user } = context.state\n\n const me = await getRepository(User).findOne({\n where: { id: user.id },\n relations: ['roles']\n })\n\n const roles = me.roles\n .filter(role => role.domainId === domain.id || (domain.parentId && role.domainId === domain.parentId))\n .map(role => role.id)\n\n const queryBuilder = getQueryBuilderFromListParams({\n repository: getRepository(LiteMenu),\n params,\n domain,\n alias: 'menu',\n searchables: ['name', 'description']\n }).andWhere('menu.active = :active', { active: true })\n\n if (roles.length > 0) {\n queryBuilder.andWhere(\n new Brackets(qb => {\n qb.where('menu.role IN (:...roles)', { roles }).orWhere('menu.role is null')\n })\n )\n } else {\n queryBuilder.andWhere('menu.role is null')\n }\n\n const [items, total] = await queryBuilder.getManyAndCount()\n\n return { items, total }\n }\n\n @FieldResolver(type => String)\n async label(@Root() liteMenu: LiteMenu, @Ctx() context: ResolverContext): Promise<String> {\n const { lng } = context.state\n const { labels, name } = liteMenu\n\n return (lng && labels && labels[lng]) || name\n }\n\n @FieldResolver(type => Board)\n async board(@Root() liteMenu: LiteMenu) {\n if ((liteMenu.type === 'board' || liteMenu.type === 'interactive-board') && liteMenu.value) {\n return await getRepository(Board).findOneBy({ id: liteMenu.value })\n }\n }\n\n @FieldResolver(type => Role)\n async role(@Root() liteMenu: LiteMenu) {\n return liteMenu.roleId && (await getRepository(Role).findOneBy({ id: liteMenu.roleId }))\n }\n\n @FieldResolver(type => Domain)\n async domain(@Root() liteMenu: LiteMenu) {\n return liteMenu.domainId && (await getRepository(Domain).findOneBy({ id: liteMenu.domainId }))\n }\n\n @FieldResolver(type => User)\n async updater(@Root() liteMenu: LiteMenu): Promise<User> {\n return liteMenu.updaterId && (await getRepository(User).findOneBy({ id: liteMenu.updaterId }))\n }\n\n @FieldResolver(type => User)\n async creator(@Root() liteMenu: LiteMenu): Promise<User> {\n return liteMenu.creatorId && (await getRepository(User).findOneBy({ id: liteMenu.creatorId }))\n }\n}\n"]}
|