Skip to content

Commit d988fe7

Browse files
feat(entities): add additionMessageForEmptyState (#1226)
1 parent 3e1c41c commit d988fe7

File tree

27 files changed

+99
-16
lines changed

27 files changed

+99
-16
lines changed

packages/entities/entities-certificates/docs/ca-certificate-list.md

+6
Original file line numberDiff line numberDiff line change
@@ -66,6 +66,12 @@ A table component for ca-certificates.
6666
- required: `true`
6767
- default: `undefined`
6868
- A function that returns the route for editing a route.
69+
70+
- `additionMessageForEmptyState`:
71+
- type: `string`
72+
- required: `false`
73+
- default: `undefined`
74+
- Additional message to show when there are no records.
6975

7076
- `workspace`:
7177
- type: `string`

packages/entities/entities-certificates/docs/certificate-list.md

+6
Original file line numberDiff line numberDiff line change
@@ -73,6 +73,12 @@ A table component for certificates.
7373
- default: `undefined`
7474
- A function that returns the route for adding an SNI with certificate specified.
7575

76+
- `additionMessageForEmptyState`:
77+
- type: `string`
78+
- required: `false`
79+
- default: `undefined`
80+
- Additional message to show when there are no records.
81+
7682
- `workspace`:
7783
- type: `string`
7884
- required: `true`

packages/entities/entities-certificates/src/components/CACertificateList.vue

+1-1
Original file line numberDiff line numberDiff line change
@@ -462,7 +462,7 @@ watch(fetcherState, (state) => {
462462
const emptyStateOptions = ref<EmptyStateOptions>({
463463
ctaPath: props.config.createRoute,
464464
ctaText: undefined,
465-
message: t('ca-certificates.list.empty_state.description'),
465+
message: `${t('ca-certificates.list.empty_state.description')}${props.config.additionMessageForEmptyState ? ` ${props.config.additionMessageForEmptyState}` : ''}`,
466466
title: t('ca-certificates.title'),
467467
})
468468

packages/entities/entities-certificates/src/components/CertificateList.vue

+1-1
Original file line numberDiff line numberDiff line change
@@ -509,7 +509,7 @@ watch(fetcherState, (state) => {
509509
const emptyStateOptions = ref<EmptyStateOptions>({
510510
ctaPath: props.config.createRoute,
511511
ctaText: undefined,
512-
message: t('certificates.list.empty_state.description'),
512+
message: `${t('certificates.list.empty_state.description')}${props.config.additionMessageForEmptyState ? ` ${props.config.additionMessageForEmptyState}` : ''}`,
513513
title: t('certificates.title'),
514514
})
515515

packages/entities/entities-consumer-groups/docs/consumer-group-list.md

+6
Original file line numberDiff line numberDiff line change
@@ -85,6 +85,12 @@ A table component for consumer groups.
8585
- default: `null`
8686
- A boolean to indicate if the paginated endpoint is used when `consumerId` is provided.
8787

88+
- `additionMessageForEmptyState`:
89+
- type: `string`
90+
- required: `false`
91+
- default: `undefined`
92+
- Additional message to show when there are no records.
93+
8894
- `workspace`:
8995
- type: `string`
9096
- required: `true`

packages/entities/entities-consumer-groups/src/components/ConsumerGroupList.vue

+1-1
Original file line numberDiff line numberDiff line change
@@ -592,7 +592,7 @@ watch(fetcherState, (state) => {
592592
const emptyStateOptions = ref<EmptyStateOptions>({
593593
ctaPath: isConsumerPage.value ? undefined : props.config.createRoute,
594594
ctaText: undefined,
595-
message: t('consumer_groups.list.empty_state.description'),
595+
message: `${t('consumer_groups.list.empty_state.description')}${props.config.additionMessageForEmptyState ? ` ${props.config.additionMessageForEmptyState}` : ''}`,
596596
title: t('consumer_groups.title'),
597597
})
598598

packages/entities/entities-consumers/docs/consumer-list.md

+6
Original file line numberDiff line numberDiff line change
@@ -85,6 +85,12 @@ A table component for consumers.
8585
- default: `null`
8686
- A boolean to indicate if the paginated endpoint is used when `consumerGroupId` is provided.
8787

88+
- `additionMessageForEmptyState`:
89+
- type: `string`
90+
- required: `false`
91+
- default: `undefined`
92+
- Additional message to show when there are no records.
93+
8894
- `workspace`:
8995
- type: `string`
9096
- required: `true`

packages/entities/entities-consumers/src/components/ConsumerList.vue

+1-1
Original file line numberDiff line numberDiff line change
@@ -602,7 +602,7 @@ watch(fetcherState, (state) => {
602602
const emptyStateOptions = ref<EmptyStateOptions>({
603603
ctaPath: isConsumerGroupPage.value ? undefined : props.config.createRoute,
604604
ctaText: undefined,
605-
message: t('consumers.list.empty_state.description'),
605+
message: `${t('consumers.list.empty_state.description')}${props.config.additionMessageForEmptyState ? ` ${props.config.additionMessageForEmptyState}` : ''}`,
606606
title: t('consumers.title'),
607607
})
608608

packages/entities/entities-gateway-services/docs/gateway-service-list.md

+6
Original file line numberDiff line numberDiff line change
@@ -67,6 +67,12 @@ A table component for gateway services.
6767
- default: `undefined`
6868
- A function that returns the route for editing a gateway service.
6969

70+
- `additionMessageForEmptyState`:
71+
- type: `string`
72+
- required: `false`
73+
- default: `undefined`
74+
- Additional message to show when there are no records.
75+
7076
- `getControlPlaneRoute`:
7177
- type: `(id: string) => RouteLocationRaw`
7278
- required: `false`

packages/entities/entities-gateway-services/src/components/GatewayServiceList.vue

+1-1
Original file line numberDiff line numberDiff line change
@@ -341,7 +341,7 @@ const emptyStateOptions = computed((): EmptyStateOptions => {
341341
return {
342342
ctaPath: props.config.createRoute,
343343
ctaText: userCanCreate.value ? t('actions.create') : undefined,
344-
message: t('gateway_services.list.empty_state.description'),
344+
message: `${t('gateway_services.list.empty_state.description')}${props.config.additionMessageForEmptyState ? ` ${props.config.additionMessageForEmptyState}` : ''}`,
345345
title: userCanCreate.value ? t('gateway_services.list.empty_state.title') : t('gateway_services.title'),
346346
}
347347
})

packages/entities/entities-key-sets/docs/key-set-list.md

+6
Original file line numberDiff line numberDiff line change
@@ -61,6 +61,12 @@ A table component for key sets.
6161
- default: `undefined`
6262
- A function that returns the route for editing a key set.
6363

64+
- `additionMessageForEmptyState`:
65+
- type: `string`
66+
- required: `false`
67+
- default: `undefined`
68+
- Additional message to show when there are no records.
69+
6470
- `workspace`:
6571
- type: `string`
6672
- required: `true`

packages/entities/entities-key-sets/src/components/KeySetList.vue

+1-1
Original file line numberDiff line numberDiff line change
@@ -453,7 +453,7 @@ watch(fetcherState, (state) => {
453453
const emptyStateOptions = ref<EmptyStateOptions>({
454454
ctaPath: props.config.createRoute,
455455
ctaText: undefined,
456-
message: t('keySets.list.empty_state.description'),
456+
message: `${t('keySets.list.empty_state.description')}${props.config.additionMessageForEmptyState ? ` ${props.config.additionMessageForEmptyState}` : ''}`,
457457
title: t('keySets.title'),
458458
})
459459

packages/entities/entities-keys/docs/key-list.md

+6
Original file line numberDiff line numberDiff line change
@@ -67,6 +67,12 @@ A table component for keys.
6767
- default: `null`
6868
- Current key set id if the KeyList in nested in the keys tab on a key set detail page.
6969

70+
- `additionMessageForEmptyState`:
71+
- type: `string`
72+
- required: `false`
73+
- default: `undefined`
74+
- Additional message to show when there are no records.
75+
7076
- `workspace`:
7177
- type: `string`
7278
- required: `true`

packages/entities/entities-keys/src/components/KeyList.vue

+1-1
Original file line numberDiff line numberDiff line change
@@ -460,7 +460,7 @@ watch(fetcherState, (state) => {
460460
const emptyStateOptions = ref<EmptyStateOptions>({
461461
ctaPath: props.config.createRoute,
462462
ctaText: undefined,
463-
message: t('keys.list.empty_state.description'),
463+
message: `${t('keys.list.empty_state.description')}${props.config.additionMessageForEmptyState ? ` ${props.config.additionMessageForEmptyState}` : ''}`,
464464
title: t('keys.title'),
465465
})
466466

packages/entities/entities-plugins/docs/plugin-list.md

+6
Original file line numberDiff line numberDiff line change
@@ -83,6 +83,12 @@ A table component for plugins.
8383
- default: `() => null`,
8484
- A synchronous function, that returns a string for a entity row, will be displayed on the switch hover tooltip. A null return will not make tooltip displayed. Please note it's a synchronous function.
8585

86+
- `additionMessageForEmptyState`:
87+
- type: `string`
88+
- required: `false`
89+
- default: `undefined`
90+
- Additional message to show when there are no records.
91+
8692
- `workspace`:
8793
- type: `string`
8894
- required: `true`

packages/entities/entities-plugins/src/components/PluginList.vue

+1-1
Original file line numberDiff line numberDiff line change
@@ -751,7 +751,7 @@ watch(fetcherState, (state) => {
751751
const emptyStateOptions = ref<EmptyStateOptions>({
752752
ctaPath: props.config.createRoute,
753753
ctaText: undefined,
754-
message: t('plugins.list.empty_state.description'),
754+
message: `${t('plugins.list.empty_state.description')}${props.config.additionMessageForEmptyState ? ` ${props.config.additionMessageForEmptyState}` : ''}`,
755755
title: t('plugins.title'),
756756
})
757757

packages/entities/entities-routes/docs/route-list.md

+6
Original file line numberDiff line numberDiff line change
@@ -77,6 +77,12 @@ A table component for routes.
7777
- default: `null`
7878
- Current service id if the RouteList is nested in the routes tab on a service detail page.
7979

80+
- `additionMessageForEmptyState`:
81+
- type: `string`
82+
- required: `false`
83+
- default: `undefined`
84+
- Additional message to show when there are no records.
85+
8086
- `workspace`:
8187
- type: `string`
8288
- required: `true`

packages/entities/entities-routes/src/components/RouteList.vue

+1-1
Original file line numberDiff line numberDiff line change
@@ -521,7 +521,7 @@ watch(fetcherState, (state) => {
521521
const emptyStateOptions = ref<EmptyStateOptions>({
522522
ctaPath: props.config.createRoute,
523523
ctaText: undefined,
524-
message: t('routes.list.empty_state.description'),
524+
message: `${t('routes.list.empty_state.description')}${props.config.additionMessageForEmptyState ? ` ${props.config.additionMessageForEmptyState}` : ''}`,
525525
title: t('routes.title'),
526526
})
527527

packages/entities/entities-shared/src/types/entity-base-table.ts

+8-3
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,18 @@
11
import type { RouteLocationRaw } from 'vue-router'
22
import type { Field, KongManagerConfig, KonnectConfig } from './index'
33

4-
export interface KonnectBaseTableConfig extends KonnectConfig {}
4+
export interface KonnectBaseTableConfig extends KonnectConfig {
5+
/** Additional message to show when there are no records */
6+
additionMessageForEmptyState?: string
7+
}
58

69
export interface KongManagerBaseTableConfig extends KongManagerConfig {
10+
/** Additional message to show when there are no records */
11+
additionMessageForEmptyState?: string
712
/** Whether to use exact match or not */
8-
isExactMatch?: boolean;
13+
isExactMatch?: boolean
914
/** Whether to disable table sorting */
10-
disableSorting?: boolean;
15+
disableSorting?: boolean
1116
}
1217

1318
export interface BaseTableHeaders {

packages/entities/entities-snis/docs/sni-list.md

+6
Original file line numberDiff line numberDiff line change
@@ -67,6 +67,12 @@ A table component for SNIs.
6767
- default: `undefined`
6868
- A function that returns the route for editing an SNI.
6969

70+
- `additionMessageForEmptyState`:
71+
- type: `string`
72+
- required: `false`
73+
- default: `undefined`
74+
- Additional message to show when there are no records.
75+
7076
- `workspace`:
7177
- type: `string`
7278
- required: `true`

packages/entities/entities-snis/src/components/SniList.vue

+1-1
Original file line numberDiff line numberDiff line change
@@ -307,7 +307,7 @@ const errorMessage = ref<TableErrorMessage>(null)
307307
const emptyStateOptions = ref<EmptyStateOptions>({
308308
ctaPath: props.config.createRoute,
309309
ctaText: undefined,
310-
message: t('snis.list.empty_state.description'),
310+
message: `${t('snis.list.empty_state.description')}${props.config.additionMessageForEmptyState ? ` ${props.config.additionMessageForEmptyState}` : ''}`,
311311
title: t('snis.title'),
312312
})
313313

packages/entities/entities-upstreams-targets/docs/targets-list.md

+6
Original file line numberDiff line numberDiff line change
@@ -58,6 +58,12 @@ A table component for targets. Includes target create/edit form modal out of the
5858
- Route for creating a target.
5959
- Optional because a form could open in a modal or in a new page.
6060

61+
- `additionMessageForEmptyState`:
62+
- type: `string`
63+
- required: `false`
64+
- default: `undefined`
65+
- Additional message to show when there are no records.
66+
6167
- `workspace`:
6268
- type: `string`
6369
- required: `true`

packages/entities/entities-upstreams-targets/docs/upstreams-list.md

+6
Original file line numberDiff line numberDiff line change
@@ -68,6 +68,12 @@ A table component for upstreams.
6868
- default: `undefined`
6969
- A function that returns the route for editing an upstream.
7070

71+
- `additionMessageForEmptyState`:
72+
- type: `string`
73+
- required: `false`
74+
- default: `undefined`
75+
- Additional message to show when there are no records.
76+
7177
- `workspace`:
7278
- type: `string`
7379
- required: `true`

packages/entities/entities-upstreams-targets/src/components/TargetsList.vue

+1-1
Original file line numberDiff line numberDiff line change
@@ -433,7 +433,7 @@ watch(fetcherState, (state) => {
433433
// IMPORTANT: you must initialize this object assuming the user does **NOT** have create permissions so that the onBeforeMount hook can properly evaluate the props.canCreate function.
434434
const emptyStateOptions = ref<EmptyStateOptions>({
435435
ctaText: undefined,
436-
message: t('targets.list.empty_state.description'),
436+
message: `${t('targets.list.empty_state.description')}${props.config.additionMessageForEmptyState ? ` ${props.config.additionMessageForEmptyState}` : ''}`,
437437
title: t('targets.title'),
438438
...(props.config.createRoute && {
439439
// If `createRoute` provided in config, add a `ctaPath` to empty state CTA button so it becomes a link

packages/entities/entities-upstreams-targets/src/components/UpstreamsList.vue

+1-1
Original file line numberDiff line numberDiff line change
@@ -444,7 +444,7 @@ watch(fetcherState, (state) => {
444444
const emptyStateOptions = ref<EmptyStateOptions>({
445445
ctaPath: props.config.createRoute,
446446
ctaText: undefined,
447-
message: t('upstreams.list.empty_state.description'),
447+
message: `${t('upstreams.list.empty_state.description')}${props.config.additionMessageForEmptyState ? ` ${props.config.additionMessageForEmptyState}` : ''}`,
448448
title: t('upstreams.title'),
449449
})
450450

packages/entities/entities-vaults/docs/vault-list.md

+6
Original file line numberDiff line numberDiff line change
@@ -65,6 +65,12 @@ A table component for vaults.
6565
- default: `undefined`
6666
- A function that returns the route for editing a vault.
6767

68+
- `additionMessageForEmptyState`:
69+
- type: `string`
70+
- required: `false`
71+
- default: `undefined`
72+
- Additional message to show when there are no records.
73+
6874
- `workspace`:
6975
- type: `string`
7076
- required: `true`

packages/entities/entities-vaults/src/components/VaultList.vue

+1-1
Original file line numberDiff line numberDiff line change
@@ -462,7 +462,7 @@ watch(fetcherState, (state) => {
462462
const emptyStateOptions = ref<EmptyStateOptions>({
463463
ctaPath: props.config.createRoute,
464464
ctaText: undefined,
465-
message: t('vaults.list.empty_state.description'),
465+
message: `${t('vaults.list.empty_state.description')}${props.config.additionMessageForEmptyState ? ` ${props.config.additionMessageForEmptyState}` : ''}`,
466466
title: t('vaults.title'),
467467
})
468468

0 commit comments

Comments
 (0)