@saasicat/ui-vue 0.24.2 → 0.26.0
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/README.md +32 -8
- package/dist/{catalog-DJcfm5N2.d.cts → catalog-Dch1Ryw0.d.cts} +353 -69
- package/dist/{catalog-DJcfm5N2.d.ts → catalog-Dch1Ryw0.d.ts} +353 -69
- package/dist/{chunk-F7NRM6KI.js → chunk-BPF2BMCQ.js} +748 -24
- package/dist/{chunk-D74FFCCP.js → chunk-NEXTZZRQ.js} +95 -177
- package/dist/{chunk-TQQMKWN6.js → chunk-O3J3ITF2.js} +119 -7
- package/dist/client/index.cjs +758 -83
- package/dist/client/index.d.cts +414 -9
- package/dist/client/index.d.ts +414 -9
- package/dist/client/index.js +84 -12
- package/dist/index.cjs +1325 -294
- package/dist/index.d.cts +205 -15
- package/dist/index.d.ts +205 -15
- package/dist/index.js +566 -240
- package/dist/quasar/index.cjs +574 -62
- package/dist/quasar/index.d.cts +61 -6
- package/dist/quasar/index.d.ts +61 -6
- package/dist/quasar/index.js +83 -19
- package/dist/{use-sa-theme-OUBlaqgl.d.ts → resource-registry-D7Xjs-5f.d.cts} +157 -7
- package/dist/{use-sa-theme-B5t7oXph.d.cts → resource-registry-TaR7rtq0.d.ts} +157 -7
- package/package.json +4 -3
- package/src/client/admin-error.ts +552 -0
- package/src/client/admin-resource-client.ts +9 -12
- package/src/client/batch-column-fetcher.ts +2 -2
- package/src/client/boot-loader.ts +12 -1
- package/src/client/http/axios-http-client.ts +383 -0
- package/src/client/http/fetch-http-client.ts +89 -0
- package/src/client/http/index.ts +6 -0
- package/src/client/http-json.ts +82 -16
- package/src/client/i18n/messages/discovery.ts +0 -6
- package/src/client/i18n/messages/errors.ts +44 -0
- package/src/client/i18n/messages/marketing.ts +0 -6
- package/src/client/i18n/messages/promos.ts +0 -2
- package/src/client/i18n/messages/shell.ts +12 -0
- package/src/client/i18n/messages.ts +3 -0
- package/src/client/index.ts +6 -0
- package/src/client/manifest-loader.ts +65 -15
- package/src/client/resources/audit.resource.ts +25 -0
- package/src/client/resources/define-resource.ts +166 -0
- package/src/client/resources/index.ts +42 -0
- package/src/client/resources/list-resource.ts +176 -0
- package/src/client/resources/plans.resource.ts +169 -0
- package/src/client/resources/resource-request.ts +117 -0
- package/src/client/resources/tenants.resource.ts +27 -0
- package/src/client/types.ts +10 -3
- package/src/components/BundleVersionPublishDialog.vue +1 -1
- package/src/components/MarketingPromotionsTab.vue +263 -241
- package/src/components/ThemeSwitcher.vue +85 -0
- package/src/components/admin-page/AdminAccordion.vue +125 -0
- package/src/components/bundle-editor/BundleCreatePanel.vue +1 -1
- package/src/components/dialogs/PromoCodeDialogFields.vue +20 -20
- package/src/components/plan/PlanCycleToggle.vue +1 -1
- package/src/components/plan-detail/PlanVersionsPanel.vue +5 -2
- package/src/index.ts +5 -0
- package/src/pages-standard/AdminLayout.vue +57 -0
- package/src/pages-standard/AdminManifestErrorPage.vue +4 -3
- package/src/pages-standard/BundlesPage.vue +5 -35
- package/src/pages-standard/DiscoveryPage.vue +8 -1
- package/src/pages-standard/MarketingCatalogPage.vue +14 -3
- package/src/pages-standard/SuperAdminLoginPage.vue +23 -2
- package/src/pages-standard/SuperAdminSetupWizard.vue +37 -3
- package/src/pages-standard/bundles-page/BundleAccordionList.vue +30 -32
- package/src/pages-standard/discovery-page/DiscoveryFeatureCard.vue +80 -88
- package/src/pages-standard/discovery-page/DiscoveryQuotaCard.vue +73 -79
- package/src/pages-standard/marketing-catalog/MarketingCatalogAdmin.vue +44 -6
- package/src/pages-standard/marketing-catalog/MarketingCatalogPreview.vue +8 -2
- package/src/pages-tenant/PackageSnapshotPanel.vue +31 -2
- package/src/quasar/confirm.ts +83 -0
- package/src/quasar/create-super-admin-app.ts +84 -10
- package/src/quasar/dark-bridge.ts +47 -10
- package/src/quasar/index.ts +1 -0
- package/src/ui/theme/components/accordion.css +118 -0
- package/src/ui/theme/index.css +1 -0
- package/src/vue/create-admin-routes.ts +9 -1
- package/src/vue/platform-loaders.ts +12 -2
- package/src/vue/resource-registry.ts +211 -0
- package/src/vue/super-admin-context.ts +20 -5
- package/src/vue/ui-confirm.ts +76 -0
- package/src/vue/use-api-list.ts +50 -45
- package/src/vue/use-async-action.ts +170 -0
- package/src/vue/use-async-data.ts +83 -0
- package/src/vue/use-bundles.ts +34 -7
- package/src/vue/use-catalog-entries.ts +37 -12
- package/src/vue/use-discovery.ts +27 -6
- package/src/vue/use-marketing-projections.ts +29 -7
- package/src/vue/use-plans.ts +36 -8
- package/src/vue/use-promotions.ts +27 -7
- package/src/vue/use-resource-list.ts +272 -0
- package/src/vue/use-sa-theme.ts +34 -5
- package/src/vue/use-tenant-subscription-bundles.ts +22 -3
package/dist/index.d.cts
CHANGED
|
@@ -1,13 +1,13 @@
|
|
|
1
|
-
import { BootLoaderOptions, ManifestLoaderOptions, BuildRouteEntry, SidebarSection, NavBuilderOptions, BatchColumnData, BatchColumnFetcherOptions, BootLoader, ManifestLoader } from './client/index.cjs';
|
|
2
|
-
export { ADMIN_UI_VERSION, AdminPromoListFilter, AdminPromoListRow, AdminResourceClientOptions, BatchColumnDriftError, BatchColumnFetcher, BatchColumnRow, BatchColumnValue, BootLoadError, CachedManifestEntry, DEFAULT_STANDARD_PAGE_ROUTES, HttpJsonError, IDENTITY_ACCENTS, IDENTITY_ACCENT_VALUES, IDENTITY_NEUTRAL, IDENTITY_NEUTRAL_VALUE, LoginBootProject, LoginBrandFallback, LoginBranding, ManifestLoadError, MessageParams, ParamStyle, PlanCounts, PlanRowLike, PlanVersionLike, ResolvePlansInput, ResolvedPlan, SidebarItem, buildRoutes, buildSidebar, countPlans, createAdminResourceClient, defaultSectionOrder, formatCurrency, formatMessage, getJson, identityAccentAt, identityAccentFor, identityChipStyle, isCurrentlyValid, isExpired, isFutureScheduled, isProductionBoot, postJson, resolveExtension, resolveLoginBranding, resolvePlans, todayIsoDate, trimTrailingSlashes } from './client/index.cjs';
|
|
3
|
-
import { H as HttpClient, e as ActionRegistry, A as ActionHandler, K as KvStore, S as SaLocale } from './catalog-
|
|
4
|
-
export {
|
|
5
|
-
import { A as ActionsMap, a as SuperAdminBrand, b as SuperAdminEndpoints, E as ExtensionsMap, c as SuperAdminLoginAdapter } from './
|
|
6
|
-
export {
|
|
1
|
+
import { AdminError, BootLoaderOptions, ManifestLoaderOptions, BuildRouteEntry, SidebarSection, NavBuilderOptions, BatchColumnData, BatchColumnFetcherOptions, BootLoader, ManifestLoader } from './client/index.cjs';
|
|
2
|
+
export { ADMIN_UI_VERSION, AdminErrorInit, AdminPromoListFilter, AdminPromoListRow, AdminResourceClientOptions, AxiosHttpClientOptions, AxiosLike, AxiosLikeConfig, AxiosLikeResponse, AxiosLikeResponseConfig, AxiosResponseBody, BatchColumnDriftError, BatchColumnFetcher, BatchColumnRow, BatchColumnValue, BootLoadError, CachedManifestEntry, DEFAULT_STANDARD_PAGE_ROUTES, FetchHttpClientOptions, HttpJsonError, IDENTITY_ACCENTS, IDENTITY_ACCENT_VALUES, IDENTITY_NEUTRAL, IDENTITY_NEUTRAL_VALUE, LoginBootProject, LoginBrandFallback, LoginBranding, ManifestLoadError, MessageParams, ParamStyle, PlanCounts, PlanRowLike, PlanVersionLike, ResolvePlansInput, ResolvedPlan, ResourceRequestInit, SidebarItem, adminErrorMessage, buildRoutes, buildSidebar, countPlans, createAdminResourceClient, createAxiosHttpClient, createFetchHttpClient, defaultSectionOrder, formatCurrency, formatMessage, getJson, identityAccentAt, identityAccentFor, identityChipStyle, isAdminError, isAxiosNoResponseError, isCurrentlyValid, isEmptyResponse, isExpired, isFutureScheduled, isPlatformError, isProductionBoot, isTransportFailure, markEmptyResponse, markPlatformError, markTransportFailure, postJson, readErrorCode, readErrorDetail, requestJson, requestJsonBody, requireServerAnswer, resolveExtension, resolveLoginBranding, resolvePlans, toAdminError, todayIsoDate, trimTrailingSlashes } from './client/index.cjs';
|
|
3
|
+
import { H as HttpClient, g as ResourceListPage, e as ResourceOps, P as PlatformResources, h as ActionRegistry, A as ActionHandler, K as KvStore, S as SaLocale } from './catalog-Dch1Ryw0.cjs';
|
|
4
|
+
export { i as ActionDefNotInManifestError, j as AuditListFilter, B as Bound, D as DEFAULT_SA_LOCALE, k as DefineResourceOptions, l as HttpResponse, L as LIST_FIRST_PAGE, m as LIST_PAGE_SIZE_DEFAULT, n as LIST_PAGE_SIZE_MAX, o as LIST_PAGINATION_PARAMS, q as ListFilterOf, r as ListOp, s as ListQuery, M as MessageTree, t as MissingHandlerError, u as PartialMessages, v as PublishPlanVersionOptions, w as ResolvedAction, f as ResourceContext, R as ResourceDef, x as ResourceOp, y as SA_INTL_LOCALES, z as SA_LOCALES, C as SA_LOCALE_LABELS, E as SA_MESSAGES, F as SaBuiltinLocale, G as SaCatalog, I as SaCatalogOptions, c as SaLocaleDefinition, b as SaLocaleOption, a as SaMessages, d as SaMessagesOverrides, T as TenantsListFilter, J as TranslationOf, N as auditResource, O as bindResource, Q as clampListPage, U as clampListPageSize, V as createSaCatalog, W as defaultHttpClient, X as defaultKvStore, Y as defineListOp, Z as defineMessages, _ as defineResource, $ as filterQueryString, a0 as isSaBuiltinLocale, a1 as isSentInQuery, a2 as listUrl, a3 as mergeMessages, a4 as planVersionsResource, a5 as plansResource, p as platformResources, a6 as readListPage, a7 as resolveMessages, a8 as tenantsResource } from './catalog-Dch1Ryw0.cjs';
|
|
5
|
+
import { A as ActionsMap, a as SuperAdminBrand, b as SuperAdminEndpoints, E as ExtensionsMap, c as SuperAdminLoginAdapter, U as UiNotify, j as ResourceMap } from './resource-registry-D7Xjs-5f.cjs';
|
|
6
|
+
export { C as CreateResourceRegistryOptions, k as ExtensionLoader, I as InstallPlugin, O as OpOverride, l as ResourceOverride, R as ResourceOverrides, m as ResourceRegistry, n as SA_COLOR_SCHEMES, o as SA_LOCALE_STORAGE_KEY, p as SA_THEME_KEY, q as SA_THEME_STORAGE_KEY, r as SUPER_ADMIN_ACTIONS_KEY, s as SUPER_ADMIN_BRAND_KEY, t as SUPER_ADMIN_CONFIRM_KEY, u as SUPER_ADMIN_ENDPOINTS_KEY, v as SUPER_ADMIN_EXTENSIONS_KEY, w as SUPER_ADMIN_HTTP_KEY, x as SUPER_ADMIN_I18N_KEY, y as SUPER_ADMIN_LOGIN_ADAPTER_KEY, z as SUPER_ADMIN_MANIFEST_CLEAR_CACHE_KEY, B as SUPER_ADMIN_MANIFEST_KEY, D as SUPER_ADMIN_NOTIFY_KEY, F as SUPER_ADMIN_RESOURCES_KEY, G as SaColorScheme, H as SaResolvedScheme, h as SaTheme, f as SaThemeOptions, J as SuperAdminAuthGuardOptions, S as SuperAdminGuardOptions, g as SuperAdminI18n, e as SuperAdminI18nOptions, K as SuperAdminLoginResult, L as SuperAdminManifestGuardOptions, d as UiConfirm, M as UiConfirmPrompt, i as UiConfirmRequest, N as UiConfirmResult, P as UiConfirmTone, Q as UiNotifyKind, T as UiNotifyOptions, V as buildNavigationGuard, W as createResourceRegistry, X as createSaTheme, Y as createSuperAdminI18n, Z as useResource, _ as useSaMessages, $ as useSaTheme, a0 as useSuperAdminI18n } from './resource-registry-D7Xjs-5f.cjs';
|
|
7
7
|
import { AdminManifest, TenantListFilter, TenantDto, AuditQuery, AuditEntry, FeatureUiRegistry, PromoPreviewResponse, OnboardingSelectionRequest, PublicMarketingBundle, FeatureDef, FeatureKey, PublicBootResponse, DiscoverySnapshot, CapabilityCatalogEntryRow, FeatureCatalogEntryRow, QuotaCatalogEntryRow, ReviewCatalogEntryData, CatalogEntryI18n, UpdateCatalogEntryBaseData, SyncDiscoveryResult, BundleVersionRow, CreateBundleVersionDraftData, BundleVersionMutationResult, UpdateBundleVersionDraftData, BundleRow, CreateBundleData, UpdateBundleData, SubscriptionBundleRecord, MarketingProjectionFilter, MarketingProjectionRow, CreateMarketingProjectionData, UpdateMarketingProjectionData, PromotionRow, CreatePromotionData, UpdatePromotionData, PlanVersionRow, CreatePlanVersionDraftData, PlanVersionMutationResult, UpdatePlanVersionDraftData, PlanRow, CreatePlanData, UpdatePlanData, TenantActionDef } from '@saasicat/types';
|
|
8
8
|
import { RouteRecordRaw, NavigationGuardWithThis } from 'vue-router';
|
|
9
9
|
import * as vue from 'vue';
|
|
10
|
-
import { Ref, ComputedRef, InjectionKey, App } from 'vue';
|
|
10
|
+
import { Ref, ComputedRef, WatchSource, InjectionKey, App } from 'vue';
|
|
11
11
|
import { StoreDefinition } from 'pinia';
|
|
12
12
|
|
|
13
13
|
/** Returns the `extensions:` map registered in `createSuperAdminApp()`. */
|
|
@@ -49,7 +49,15 @@ interface CreateAdminRoutesOptions {
|
|
|
49
49
|
/**
|
|
50
50
|
* Loader for the shared login page. The app passes it through as a
|
|
51
51
|
* package-path import (resolved by the app bundler):
|
|
52
|
-
* `() => import('@saasicat/ui-vue/pages
|
|
52
|
+
* `() => import('@saasicat/ui-vue/pages/SuperAdminLoginPage.vue')`.
|
|
53
|
+
*
|
|
54
|
+
* That subpath has two spellings today: the export map maps both
|
|
55
|
+
* `./pages/*` and `./pages-standard/*` onto `src/pages-standard/`, so the
|
|
56
|
+
* two imports are the same file. The scaffolder template
|
|
57
|
+
* (`create-saasicat-admin`) and `examples/notesapp` spell it `/pages/*`,
|
|
58
|
+
* which is why the example above does; the package README lists the SFC
|
|
59
|
+
* entries under `/pages-standard/*`. Collapsing the pair is a breaking
|
|
60
|
+
* change to the export map and is deliberately not done here.
|
|
53
61
|
*/
|
|
54
62
|
loginPage: RouteComponent;
|
|
55
63
|
/** Layout component for `/admin` (e.g. `() => import('@/layouts/AdminLayout.vue')`). */
|
|
@@ -67,12 +75,14 @@ interface CreateAdminRoutesOptions {
|
|
|
67
75
|
}
|
|
68
76
|
declare function createAdminRoutes(options: CreateAdminRoutesOptions): RouteRecordRaw[];
|
|
69
77
|
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
78
|
+
/**
|
|
79
|
+
* The envelope a list endpoint may answer with.
|
|
80
|
+
*
|
|
81
|
+
* @deprecated Use `ResourceListPage`, which is this shape under the name the
|
|
82
|
+
* resource layer works with. Kept as an alias so an app that typed its own
|
|
83
|
+
* endpoint against it keeps compiling; one shape, one definition.
|
|
84
|
+
*/
|
|
85
|
+
type ApiListResponse<T> = ResourceListPage<T>;
|
|
76
86
|
interface UseApiListOptions<TFilter> {
|
|
77
87
|
endpoint: string;
|
|
78
88
|
/**
|
|
@@ -127,6 +137,154 @@ interface UsePaginationResult<T> {
|
|
|
127
137
|
}
|
|
128
138
|
declare function usePagination<T>(rows: Ref<readonly T[]> | ComputedRef<readonly T[]>, initialRowsPerPage?: number): UsePaginationResult<T>;
|
|
129
139
|
|
|
140
|
+
/**
|
|
141
|
+
* What an action did. `ok` is the branch to read — it answers for a
|
|
142
|
+
* `Promise<void>` action exactly as well as for one that returns a row.
|
|
143
|
+
*/
|
|
144
|
+
type AsyncActionResult<T> = {
|
|
145
|
+
ok: true;
|
|
146
|
+
value: T;
|
|
147
|
+
} | {
|
|
148
|
+
ok: false;
|
|
149
|
+
error: AdminError;
|
|
150
|
+
};
|
|
151
|
+
interface AsyncAction<A extends unknown[], T> {
|
|
152
|
+
/** Runs the action. Never throws; the outcome is in the result. */
|
|
153
|
+
run: (...args: A) => Promise<AsyncActionResult<T>>;
|
|
154
|
+
/** True while the call is in flight — what a submit button disables on. */
|
|
155
|
+
pending: Ref<boolean>;
|
|
156
|
+
/** The last failure, or `null`. Cleared at the start of every run. */
|
|
157
|
+
error: Ref<AdminError | null>;
|
|
158
|
+
/** Clears `error` without running anything. */
|
|
159
|
+
reset: () => void;
|
|
160
|
+
}
|
|
161
|
+
interface UseAsyncActionOptions<T> {
|
|
162
|
+
/**
|
|
163
|
+
* Which outcomes raise a toast. Default `'error'` — a success that changed
|
|
164
|
+
* something visible needs no announcement, a failure always does.
|
|
165
|
+
*/
|
|
166
|
+
notifyOn?: 'error' | 'both' | 'none';
|
|
167
|
+
/** Text for the success toast. Required for `notifyOn: 'both'` to say anything. */
|
|
168
|
+
successMessage?: string | (() => string);
|
|
169
|
+
/**
|
|
170
|
+
* Overrides how a failure is worded.
|
|
171
|
+
*
|
|
172
|
+
* Not decoration: several pages map a status and an error code to a
|
|
173
|
+
* specific sentence — a 422 carrying `STRICT_MODE_VIOLATIONS` reads out the
|
|
174
|
+
* violations, a 401 says the session expired. `AdminError` carries
|
|
175
|
+
* `status`, `code` and `body`, so that mapping is a pure function of the
|
|
176
|
+
* error, and this is where it attaches.
|
|
177
|
+
*/
|
|
178
|
+
errorMessage?: (error: AdminError) => string;
|
|
179
|
+
/** Runs after a successful call, before `run` resolves. */
|
|
180
|
+
onSuccess?: (result: T) => void | Promise<void>;
|
|
181
|
+
/**
|
|
182
|
+
* Notify port to report through. Defaults to the injected one.
|
|
183
|
+
*
|
|
184
|
+
* There is no fallback beyond that: this layer must not import Quasar, so
|
|
185
|
+
* it cannot reach `quasarNotify` the way a page can. Without a bootstrap
|
|
186
|
+
* and without this option, failures are reported through `error` alone.
|
|
187
|
+
*/
|
|
188
|
+
notify?: UiNotify;
|
|
189
|
+
}
|
|
190
|
+
declare function useAsyncAction<A extends unknown[], T>(fn: (...args: A) => Promise<T>, options?: UseAsyncActionOptions<T>): AsyncAction<A, T>;
|
|
191
|
+
|
|
192
|
+
interface AsyncData<T> {
|
|
193
|
+
/** The loaded value, or `initial` before the first load and after a failure. */
|
|
194
|
+
data: Ref<T>;
|
|
195
|
+
/** True while a load is in flight. */
|
|
196
|
+
pending: Ref<boolean>;
|
|
197
|
+
/** The last failure, or `null`. Cleared at the start of every load. */
|
|
198
|
+
error: Ref<AdminError | null>;
|
|
199
|
+
/** Loads again — after a mutation, or from a retry button. */
|
|
200
|
+
reload: () => Promise<void>;
|
|
201
|
+
}
|
|
202
|
+
interface UseAsyncDataOptions<T> {
|
|
203
|
+
/** Value before the first load, and the value restored when one fails. */
|
|
204
|
+
initial: T;
|
|
205
|
+
/** Load once on creation. Default `true`. */
|
|
206
|
+
immediate?: boolean;
|
|
207
|
+
/** Reload whenever any of these changes — a filter, a selected row, a locale. */
|
|
208
|
+
watch?: WatchSource[];
|
|
209
|
+
}
|
|
210
|
+
declare function useAsyncData<T>(fn: () => Promise<T>, options: UseAsyncDataOptions<T>): AsyncData<T>;
|
|
211
|
+
|
|
212
|
+
/** The operations of a resource that answer with one page of a list. */
|
|
213
|
+
type ListOpNames<TOps extends ResourceOps> = {
|
|
214
|
+
[N in keyof TOps]: Awaited<ReturnType<TOps[N]>> extends ResourceListPage<unknown> ? N : never;
|
|
215
|
+
}[keyof TOps];
|
|
216
|
+
/**
|
|
217
|
+
* The resources that have such an operation at all.
|
|
218
|
+
*
|
|
219
|
+
* Without this, `useResourceList('plans')` compiled: `plans.list` answers with
|
|
220
|
+
* a plain `PlanRow[]`, the row type collapsed to `never`, and the first thing
|
|
221
|
+
* to notice was `items.value` being `undefined` at runtime. Derived from the
|
|
222
|
+
* operations rather than listed, so a resource that grows a list operation
|
|
223
|
+
* becomes available here by being written, not by being remembered.
|
|
224
|
+
*/
|
|
225
|
+
type ListResourceKey<TMap extends ResourceMap> = {
|
|
226
|
+
[K in keyof TMap]: [ListOpNames<TMap[K]['ops']>] extends [never] ? never : K;
|
|
227
|
+
}[keyof TMap];
|
|
228
|
+
/**
|
|
229
|
+
* The row type a named list operation yields — read off the operation, not
|
|
230
|
+
* declared next to it. A hand-maintained map of resource to row is the same
|
|
231
|
+
* defect one level up: it can be right today and silently wrong tomorrow.
|
|
232
|
+
*/
|
|
233
|
+
type RowOf<TOps extends ResourceOps, N extends keyof TOps> = Awaited<ReturnType<TOps[N]>> extends ResourceListPage<infer TRow> ? TRow : never;
|
|
234
|
+
/** A paginated read: what a standard admin list binds its table to. */
|
|
235
|
+
interface AsyncList<T> {
|
|
236
|
+
/** The rows of the current page. */
|
|
237
|
+
items: ComputedRef<T[]>;
|
|
238
|
+
/**
|
|
239
|
+
* Rows matching the filter when the endpoint reports a total, and rows on
|
|
240
|
+
* this page when it does not. Several admin controllers answer with a bare
|
|
241
|
+
* array, and there is no honest way to tell the two apart afterwards — see
|
|
242
|
+
* `ResourceListPage.total`.
|
|
243
|
+
*/
|
|
244
|
+
total: ComputedRef<number>;
|
|
245
|
+
/** 1-based. Moved by `goToPage`, and reset to 1 by a filter change. */
|
|
246
|
+
page: Ref<number>;
|
|
247
|
+
pageSize: Ref<number>;
|
|
248
|
+
/**
|
|
249
|
+
* True while a load is in flight. Named as in `useAsyncData` and
|
|
250
|
+
* `useAsyncAction`, whose flag this is — `useApiList` calls its own
|
|
251
|
+
* `loading`.
|
|
252
|
+
*/
|
|
253
|
+
pending: Ref<boolean>;
|
|
254
|
+
/** The last failure, or `null`. Cleared at the start of every load. */
|
|
255
|
+
error: Ref<AdminError | null>;
|
|
256
|
+
/** Loads the current page again — after a mutation, or from a retry button. */
|
|
257
|
+
reload: () => Promise<void>;
|
|
258
|
+
/** Jumps to a page (1-based, clamped) and loads. */
|
|
259
|
+
goToPage: (page: number) => Promise<void>;
|
|
260
|
+
/** Changes the page size, returns to page 1, and loads. */
|
|
261
|
+
setPageSize: (size: number) => Promise<void>;
|
|
262
|
+
}
|
|
263
|
+
interface UseResourceListOptions<TOps extends ResourceOps, N extends ListOpNames<TOps>> {
|
|
264
|
+
/** Which operation to page through. Defaults to `list`. */
|
|
265
|
+
op?: N;
|
|
266
|
+
/**
|
|
267
|
+
* Reactive filter. A change returns to page 1 and reloads — a filter that
|
|
268
|
+
* narrows the list while the operator is on page 4 would otherwise ask for
|
|
269
|
+
* a page that no longer exists and render nothing.
|
|
270
|
+
*
|
|
271
|
+
* `page` and `pageSize` are not filter keys; see the guard below.
|
|
272
|
+
*/
|
|
273
|
+
filter?: Ref<Record<string, unknown>>;
|
|
274
|
+
/**
|
|
275
|
+
* Rows per page to start with. Defaults to `LIST_PAGE_SIZE_DEFAULT`.
|
|
276
|
+
*
|
|
277
|
+
* Here rather than through `setPageSize` after construction, which is what
|
|
278
|
+
* a page with a `pageSize` prop had to do: `setPageSize` loads, and the
|
|
279
|
+
* first load was already queued, so the list fetched the same rows twice on
|
|
280
|
+
* every mount.
|
|
281
|
+
*/
|
|
282
|
+
pageSize?: number;
|
|
283
|
+
/** Load once on creation. Default `true`. */
|
|
284
|
+
immediate?: boolean;
|
|
285
|
+
}
|
|
286
|
+
declare function useResourceList<K extends ListResourceKey<TMap> & keyof TMap & string, TMap extends ResourceMap = PlatformResources, N extends ListOpNames<TMap[K]['ops']> = ListOpNames<TMap[K]['ops']>>(key: K, opts?: UseResourceListOptions<TMap[K]['ops'], N>): AsyncList<RowOf<TMap[K]['ops'], N>>;
|
|
287
|
+
|
|
130
288
|
interface UseTenantsOptions {
|
|
131
289
|
/**
|
|
132
290
|
* Fully qualified tenants-list endpoint including the app globalPrefix
|
|
@@ -768,6 +926,12 @@ interface UseDiscoveryOptions {
|
|
|
768
926
|
*/
|
|
769
927
|
autoLoad?: boolean;
|
|
770
928
|
}
|
|
929
|
+
/**
|
|
930
|
+
* The discovery endpoint could not be read. Its `message` is a diagnostic for
|
|
931
|
+
* the log, in English like every other developer-facing string in the
|
|
932
|
+
* repository — the sentence a user is shown comes from the `errors` catalog
|
|
933
|
+
* through `adminErrorMessage`, in whichever language the shell speaks.
|
|
934
|
+
*/
|
|
771
935
|
declare class DiscoveryLoadError extends Error {
|
|
772
936
|
readonly status: number;
|
|
773
937
|
constructor(status: number, message: string);
|
|
@@ -805,6 +969,12 @@ interface UseCatalogEntriesOptions {
|
|
|
805
969
|
projectKey: string;
|
|
806
970
|
autoLoad?: boolean;
|
|
807
971
|
}
|
|
972
|
+
/**
|
|
973
|
+
* A catalog-entries call failed. Its `message` is a diagnostic for the log, in
|
|
974
|
+
* English like every other developer-facing string in the repository — the
|
|
975
|
+
* sentence a user is shown comes from the `errors` catalog through
|
|
976
|
+
* `adminErrorMessage`, in whichever language the shell speaks.
|
|
977
|
+
*/
|
|
808
978
|
declare class CatalogEntriesApiError extends Error {
|
|
809
979
|
readonly status: number;
|
|
810
980
|
readonly body: unknown;
|
|
@@ -946,6 +1116,12 @@ interface UseMarketingProjectionsOptions {
|
|
|
946
1116
|
filter: MarketingProjectionFilter;
|
|
947
1117
|
autoLoad?: boolean;
|
|
948
1118
|
}
|
|
1119
|
+
/**
|
|
1120
|
+
* A marketing-projections call failed. Its `message` is a diagnostic for the
|
|
1121
|
+
* log, in English like every other developer-facing string in the repository —
|
|
1122
|
+
* the sentence a user is shown comes from the `errors` catalog through
|
|
1123
|
+
* `adminErrorMessage`, in whichever language the shell speaks.
|
|
1124
|
+
*/
|
|
949
1125
|
declare class MarketingProjectionsApiError extends Error {
|
|
950
1126
|
readonly status: number;
|
|
951
1127
|
readonly body: unknown;
|
|
@@ -972,6 +1148,12 @@ interface UsePromotionsOptions {
|
|
|
972
1148
|
projectKey: string;
|
|
973
1149
|
autoLoad?: boolean;
|
|
974
1150
|
}
|
|
1151
|
+
/**
|
|
1152
|
+
* A promotions call failed. Its `message` is a diagnostic for the log, in
|
|
1153
|
+
* English like every other developer-facing string in the repository — the
|
|
1154
|
+
* sentence a user is shown comes from the `errors` catalog through
|
|
1155
|
+
* `adminErrorMessage`, in whichever language the shell speaks.
|
|
1156
|
+
*/
|
|
975
1157
|
declare class PromotionsApiError extends Error {
|
|
976
1158
|
readonly status: number;
|
|
977
1159
|
readonly body: unknown;
|
|
@@ -1323,6 +1505,14 @@ interface PlatformLoaders {
|
|
|
1323
1505
|
bootLoader: BootLoader;
|
|
1324
1506
|
manifestLoader: ManifestLoader;
|
|
1325
1507
|
}
|
|
1508
|
+
/**
|
|
1509
|
+
* Fills in what an app left out.
|
|
1510
|
+
*
|
|
1511
|
+
* Exported because the bootstrap needs the same answer, and two copies of a
|
|
1512
|
+
* default are two places for it to drift — which is how `projectKey` was
|
|
1513
|
+
* added to one of them and not the other.
|
|
1514
|
+
*/
|
|
1515
|
+
declare function resolveSuperAdminEndpoints(endpoints: SuperAdminEndpoints): Required<SuperAdminEndpoints>;
|
|
1326
1516
|
/**
|
|
1327
1517
|
* Builds `BootLoader` + `ManifestLoader` from a single endpoint constant.
|
|
1328
1518
|
* Apps use the same constant for `createSuperAdminApp({ endpoints })`.
|
|
@@ -1841,4 +2031,4 @@ interface PlanChangeWizardI18n {
|
|
|
1841
2031
|
*/
|
|
1842
2032
|
declare function planChangeWizardI18n(i18n: TenantPlanSectionI18n): PlanChangeWizardI18n;
|
|
1843
2033
|
|
|
1844
|
-
export { ALL_ROWS, ActionHandler, ActionRegistry, ActionsMap, type ApiListResponse, BatchColumnData, BatchColumnFetcherOptions, type BillingCycleStr, BootLoader, BootLoaderOptions, BuildRouteEntry, type BulkItemKind, type BulkItemStatus, type BulkPublishItem, type BundleAddPreviewShape, type BundleCancelPreviewShape, type BundlePreviewIssueShape, type BundlePreviewShape, type BundlePreviewSnapshotShape, BundlesApiError, CATALOG_DEFAULT_LOCALE, type CatalogBundle, CatalogEntriesApiError, type CatalogPlan, type ConfirmDialogState, type CreateAdminRoutesOptions, type CreateManifestStoreOptions, type CreatePlatformLoadersOptions, DEFAULT_I18N_DE, DEFAULT_I18N_EN, DEFAULT_ROWS_PER_PAGE, DEFAULT_YEARLY_FACTOR, DiscoveryLoadError, type DraftPricing, ENTITLEMENT_INJECTION_KEY, type EmailHistoryDetail, type EmailHistoryFilter, type EmailHistoryListResult, type EmailHistoryResendResult, type EmailHistoryRow, type EmailHistoryStatus, type EntitlementSnapshotShape, ExtensionsMap, type FeatureRegistryEntry, type FeatureRouterGuardOptions, type FeatureRowMarkers, HttpClient, KvStore, ManifestLoader, ManifestLoaderOptions, type ManifestStoreActions, type ManifestStoreDefinition, type ManifestStoreState, MarketingProjectionsApiError, type MfaDialogState, NavBuilderOptions, PAGE_SIZE_OPTIONS, type PackageSnapshotShape, type PilotCopy, type PilotCreatePayload, type PilotCreateResult, type PilotEditPayload, type PilotEditResult, type PlanChangePreviewShape, type PlanChangeWizardI18n, type PlanSnapshotShape, PlannedOnlyFeatureError, PlansApiError, type PlatformEmailProvider, type PlatformEmailTestInput, type PlatformEmailTestResult, type PlatformEmailWriteInput, type PlatformLoaders, type PlatformTenantActionRow, type PlatformTenantActionTone, type PlatformTenantActionsOptions, type PlatformTenantActionsResult, type PriceLineItem, ProjectPageHost, type PromoCodeCreatePayload, type PromoCodeDurationType, type PromoCodePlanOption, type PromoCodeUpdatePayload, type PromoCodeValueType, type PromoState, type PromoStatus, PromotionsApiError, type QuotaMeta, type RedundantFeatureHintShape, type ResolvedTenantAction, SERVER_PAGE_SIZE_OPTIONS, SaLocale, SidebarSection, type SubscriptionBundleShape, type SubscriptionDraft, SuperAdminBrand, SuperAdminEndpoints, SuperAdminLoginAdapter, type TenantActionFlowProviders, type TenantActionInput, type TenantManifestNavItem, type TenantManifestShape, type TenantPlanSectionI18n, type TenantRowLike, TenantSubscriptionBundlesApiError, type UsageSnapshotShape, type UseActionsResult, type UseApiListOptions, type UseApiListResult, type UseAuditEntriesOptions, type UseAuditEntriesResult, type UseBatchColumnsResult, type UseBulkPublishOptions, type UseBulkPublishResult, type UseBundleVersionsMapOptions, type UseBundleVersionsMapResult, type UseBundleVersionsOptions, type UseBundleVersionsResult, type UseBundlesOptions, type UseBundlesResult, type UseCatalogEntriesOptions, type UseCatalogEntriesResult, type UseDiscoveryOptions, type UseDiscoveryResult, type UseEntitlementOptions, type UseEntitlementResult, type UseLivePlanVersionsOptions, type UseLivePlanVersionsResult, type UseManifestResult, type UseMarketingProjectionsOptions, type UseMarketingProjectionsResult, type UseNavResult, type UsePaginationResult, type UsePlanEditorOptions, type UsePlanEditorResult, type UsePlanVersionsOptions, type UsePlanVersionsResult, type UsePlansOptions, type UsePlansResult, type UsePromotionsOptions, type UsePromotionsResult, type UsePublicBootResult, type UseSubscriptionDraftOptions, type UseTenantActionFlowResult, type UseTenantBillingCatalogOptions, type UseTenantBillingCatalogResult, type UseTenantBillingOptions, type UseTenantBillingResult, type UseTenantManifestOptions, type UseTenantManifestResult, type UseTenantSubscriptionBundlesOptions, type UseTenantSubscriptionBundlesResult, type UseTenantsOptions, type UseTenantsResult, buildFeatureRegistry, buildFeatureRouterGuard, buildQuotaRegistry, createAdminRoutes, createManifestStore, createPlatformLoaders, createProjectPageHostRoute, defaultIconForActionKey, defaultTenantPlanSectionI18n, defaultToneForActionKey, planChangeWizardI18n, provideEntitlement, useActions, useApiList, useAuditEntries, useBatchColumns, useBulkPublish, useBundleVersions, useBundleVersionsMap, useBundles, useCatalogEntries, useDiscovery, useEntitlement, useInjectedEntitlement, useLivePlanVersions, useManifest, useMarketingProjections, useNav, usePagination, usePlanEditor, usePlanVersions, usePlans, usePlatformTenantActions, usePromotions, usePublicBoot, useSubscriptionDraft, useSuperAdminActions, useSuperAdminBrand, useSuperAdminEndpoints, useSuperAdminExtensions, useSuperAdminHttp, useSuperAdminLoginAdapter, useSuperAdminManifest, useTenantActionFlow, useTenantBilling, useTenantBillingCatalog, useTenantManifest, useTenantSubscriptionBundles, useTenants };
|
|
2034
|
+
export { ALL_ROWS, ActionHandler, ActionRegistry, ActionsMap, AdminError, type ApiListResponse, type AsyncAction, type AsyncActionResult, type AsyncData, type AsyncList, BatchColumnData, BatchColumnFetcherOptions, type BillingCycleStr, BootLoader, BootLoaderOptions, BuildRouteEntry, type BulkItemKind, type BulkItemStatus, type BulkPublishItem, type BundleAddPreviewShape, type BundleCancelPreviewShape, type BundlePreviewIssueShape, type BundlePreviewShape, type BundlePreviewSnapshotShape, BundlesApiError, CATALOG_DEFAULT_LOCALE, type CatalogBundle, CatalogEntriesApiError, type CatalogPlan, type ConfirmDialogState, type CreateAdminRoutesOptions, type CreateManifestStoreOptions, type CreatePlatformLoadersOptions, DEFAULT_I18N_DE, DEFAULT_I18N_EN, DEFAULT_ROWS_PER_PAGE, DEFAULT_YEARLY_FACTOR, DiscoveryLoadError, type DraftPricing, ENTITLEMENT_INJECTION_KEY, type EmailHistoryDetail, type EmailHistoryFilter, type EmailHistoryListResult, type EmailHistoryResendResult, type EmailHistoryRow, type EmailHistoryStatus, type EntitlementSnapshotShape, ExtensionsMap, type FeatureRegistryEntry, type FeatureRouterGuardOptions, type FeatureRowMarkers, HttpClient, KvStore, type ListOpNames, type ListResourceKey, ManifestLoader, ManifestLoaderOptions, type ManifestStoreActions, type ManifestStoreDefinition, type ManifestStoreState, MarketingProjectionsApiError, type MfaDialogState, NavBuilderOptions, PAGE_SIZE_OPTIONS, type PackageSnapshotShape, type PilotCopy, type PilotCreatePayload, type PilotCreateResult, type PilotEditPayload, type PilotEditResult, type PlanChangePreviewShape, type PlanChangeWizardI18n, type PlanSnapshotShape, PlannedOnlyFeatureError, PlansApiError, type PlatformEmailProvider, type PlatformEmailTestInput, type PlatformEmailTestResult, type PlatformEmailWriteInput, type PlatformLoaders, PlatformResources, type PlatformTenantActionRow, type PlatformTenantActionTone, type PlatformTenantActionsOptions, type PlatformTenantActionsResult, type PriceLineItem, ProjectPageHost, type PromoCodeCreatePayload, type PromoCodeDurationType, type PromoCodePlanOption, type PromoCodeUpdatePayload, type PromoCodeValueType, type PromoState, type PromoStatus, PromotionsApiError, type QuotaMeta, type RedundantFeatureHintShape, type ResolvedTenantAction, ResourceListPage, ResourceMap, ResourceOps, type RowOf, SERVER_PAGE_SIZE_OPTIONS, SaLocale, SidebarSection, type SubscriptionBundleShape, type SubscriptionDraft, SuperAdminBrand, SuperAdminEndpoints, SuperAdminLoginAdapter, type TenantActionFlowProviders, type TenantActionInput, type TenantManifestNavItem, type TenantManifestShape, type TenantPlanSectionI18n, type TenantRowLike, TenantSubscriptionBundlesApiError, UiNotify, type UsageSnapshotShape, type UseActionsResult, type UseApiListOptions, type UseApiListResult, type UseAsyncActionOptions, type UseAsyncDataOptions, type UseAuditEntriesOptions, type UseAuditEntriesResult, type UseBatchColumnsResult, type UseBulkPublishOptions, type UseBulkPublishResult, type UseBundleVersionsMapOptions, type UseBundleVersionsMapResult, type UseBundleVersionsOptions, type UseBundleVersionsResult, type UseBundlesOptions, type UseBundlesResult, type UseCatalogEntriesOptions, type UseCatalogEntriesResult, type UseDiscoveryOptions, type UseDiscoveryResult, type UseEntitlementOptions, type UseEntitlementResult, type UseLivePlanVersionsOptions, type UseLivePlanVersionsResult, type UseManifestResult, type UseMarketingProjectionsOptions, type UseMarketingProjectionsResult, type UseNavResult, type UsePaginationResult, type UsePlanEditorOptions, type UsePlanEditorResult, type UsePlanVersionsOptions, type UsePlanVersionsResult, type UsePlansOptions, type UsePlansResult, type UsePromotionsOptions, type UsePromotionsResult, type UsePublicBootResult, type UseResourceListOptions, type UseSubscriptionDraftOptions, type UseTenantActionFlowResult, type UseTenantBillingCatalogOptions, type UseTenantBillingCatalogResult, type UseTenantBillingOptions, type UseTenantBillingResult, type UseTenantManifestOptions, type UseTenantManifestResult, type UseTenantSubscriptionBundlesOptions, type UseTenantSubscriptionBundlesResult, type UseTenantsOptions, type UseTenantsResult, buildFeatureRegistry, buildFeatureRouterGuard, buildQuotaRegistry, createAdminRoutes, createManifestStore, createPlatformLoaders, createProjectPageHostRoute, defaultIconForActionKey, defaultTenantPlanSectionI18n, defaultToneForActionKey, planChangeWizardI18n, provideEntitlement, resolveSuperAdminEndpoints, useActions, useApiList, useAsyncAction, useAsyncData, useAuditEntries, useBatchColumns, useBulkPublish, useBundleVersions, useBundleVersionsMap, useBundles, useCatalogEntries, useDiscovery, useEntitlement, useInjectedEntitlement, useLivePlanVersions, useManifest, useMarketingProjections, useNav, usePagination, usePlanEditor, usePlanVersions, usePlans, usePlatformTenantActions, usePromotions, usePublicBoot, useResourceList, useSubscriptionDraft, useSuperAdminActions, useSuperAdminBrand, useSuperAdminEndpoints, useSuperAdminExtensions, useSuperAdminHttp, useSuperAdminLoginAdapter, useSuperAdminManifest, useTenantActionFlow, useTenantBilling, useTenantBillingCatalog, useTenantManifest, useTenantSubscriptionBundles, useTenants };
|
package/dist/index.d.ts
CHANGED
|
@@ -1,13 +1,13 @@
|
|
|
1
|
-
import { BootLoaderOptions, ManifestLoaderOptions, BuildRouteEntry, SidebarSection, NavBuilderOptions, BatchColumnData, BatchColumnFetcherOptions, BootLoader, ManifestLoader } from './client/index.js';
|
|
2
|
-
export { ADMIN_UI_VERSION, AdminPromoListFilter, AdminPromoListRow, AdminResourceClientOptions, BatchColumnDriftError, BatchColumnFetcher, BatchColumnRow, BatchColumnValue, BootLoadError, CachedManifestEntry, DEFAULT_STANDARD_PAGE_ROUTES, HttpJsonError, IDENTITY_ACCENTS, IDENTITY_ACCENT_VALUES, IDENTITY_NEUTRAL, IDENTITY_NEUTRAL_VALUE, LoginBootProject, LoginBrandFallback, LoginBranding, ManifestLoadError, MessageParams, ParamStyle, PlanCounts, PlanRowLike, PlanVersionLike, ResolvePlansInput, ResolvedPlan, SidebarItem, buildRoutes, buildSidebar, countPlans, createAdminResourceClient, defaultSectionOrder, formatCurrency, formatMessage, getJson, identityAccentAt, identityAccentFor, identityChipStyle, isCurrentlyValid, isExpired, isFutureScheduled, isProductionBoot, postJson, resolveExtension, resolveLoginBranding, resolvePlans, todayIsoDate, trimTrailingSlashes } from './client/index.js';
|
|
3
|
-
import { H as HttpClient, e as ActionRegistry, A as ActionHandler, K as KvStore, S as SaLocale } from './catalog-
|
|
4
|
-
export {
|
|
5
|
-
import { A as ActionsMap, a as SuperAdminBrand, b as SuperAdminEndpoints, E as ExtensionsMap, c as SuperAdminLoginAdapter } from './
|
|
6
|
-
export {
|
|
1
|
+
import { AdminError, BootLoaderOptions, ManifestLoaderOptions, BuildRouteEntry, SidebarSection, NavBuilderOptions, BatchColumnData, BatchColumnFetcherOptions, BootLoader, ManifestLoader } from './client/index.js';
|
|
2
|
+
export { ADMIN_UI_VERSION, AdminErrorInit, AdminPromoListFilter, AdminPromoListRow, AdminResourceClientOptions, AxiosHttpClientOptions, AxiosLike, AxiosLikeConfig, AxiosLikeResponse, AxiosLikeResponseConfig, AxiosResponseBody, BatchColumnDriftError, BatchColumnFetcher, BatchColumnRow, BatchColumnValue, BootLoadError, CachedManifestEntry, DEFAULT_STANDARD_PAGE_ROUTES, FetchHttpClientOptions, HttpJsonError, IDENTITY_ACCENTS, IDENTITY_ACCENT_VALUES, IDENTITY_NEUTRAL, IDENTITY_NEUTRAL_VALUE, LoginBootProject, LoginBrandFallback, LoginBranding, ManifestLoadError, MessageParams, ParamStyle, PlanCounts, PlanRowLike, PlanVersionLike, ResolvePlansInput, ResolvedPlan, ResourceRequestInit, SidebarItem, adminErrorMessage, buildRoutes, buildSidebar, countPlans, createAdminResourceClient, createAxiosHttpClient, createFetchHttpClient, defaultSectionOrder, formatCurrency, formatMessage, getJson, identityAccentAt, identityAccentFor, identityChipStyle, isAdminError, isAxiosNoResponseError, isCurrentlyValid, isEmptyResponse, isExpired, isFutureScheduled, isPlatformError, isProductionBoot, isTransportFailure, markEmptyResponse, markPlatformError, markTransportFailure, postJson, readErrorCode, readErrorDetail, requestJson, requestJsonBody, requireServerAnswer, resolveExtension, resolveLoginBranding, resolvePlans, toAdminError, todayIsoDate, trimTrailingSlashes } from './client/index.js';
|
|
3
|
+
import { H as HttpClient, g as ResourceListPage, e as ResourceOps, P as PlatformResources, h as ActionRegistry, A as ActionHandler, K as KvStore, S as SaLocale } from './catalog-Dch1Ryw0.js';
|
|
4
|
+
export { i as ActionDefNotInManifestError, j as AuditListFilter, B as Bound, D as DEFAULT_SA_LOCALE, k as DefineResourceOptions, l as HttpResponse, L as LIST_FIRST_PAGE, m as LIST_PAGE_SIZE_DEFAULT, n as LIST_PAGE_SIZE_MAX, o as LIST_PAGINATION_PARAMS, q as ListFilterOf, r as ListOp, s as ListQuery, M as MessageTree, t as MissingHandlerError, u as PartialMessages, v as PublishPlanVersionOptions, w as ResolvedAction, f as ResourceContext, R as ResourceDef, x as ResourceOp, y as SA_INTL_LOCALES, z as SA_LOCALES, C as SA_LOCALE_LABELS, E as SA_MESSAGES, F as SaBuiltinLocale, G as SaCatalog, I as SaCatalogOptions, c as SaLocaleDefinition, b as SaLocaleOption, a as SaMessages, d as SaMessagesOverrides, T as TenantsListFilter, J as TranslationOf, N as auditResource, O as bindResource, Q as clampListPage, U as clampListPageSize, V as createSaCatalog, W as defaultHttpClient, X as defaultKvStore, Y as defineListOp, Z as defineMessages, _ as defineResource, $ as filterQueryString, a0 as isSaBuiltinLocale, a1 as isSentInQuery, a2 as listUrl, a3 as mergeMessages, a4 as planVersionsResource, a5 as plansResource, p as platformResources, a6 as readListPage, a7 as resolveMessages, a8 as tenantsResource } from './catalog-Dch1Ryw0.js';
|
|
5
|
+
import { A as ActionsMap, a as SuperAdminBrand, b as SuperAdminEndpoints, E as ExtensionsMap, c as SuperAdminLoginAdapter, U as UiNotify, j as ResourceMap } from './resource-registry-TaR7rtq0.js';
|
|
6
|
+
export { C as CreateResourceRegistryOptions, k as ExtensionLoader, I as InstallPlugin, O as OpOverride, l as ResourceOverride, R as ResourceOverrides, m as ResourceRegistry, n as SA_COLOR_SCHEMES, o as SA_LOCALE_STORAGE_KEY, p as SA_THEME_KEY, q as SA_THEME_STORAGE_KEY, r as SUPER_ADMIN_ACTIONS_KEY, s as SUPER_ADMIN_BRAND_KEY, t as SUPER_ADMIN_CONFIRM_KEY, u as SUPER_ADMIN_ENDPOINTS_KEY, v as SUPER_ADMIN_EXTENSIONS_KEY, w as SUPER_ADMIN_HTTP_KEY, x as SUPER_ADMIN_I18N_KEY, y as SUPER_ADMIN_LOGIN_ADAPTER_KEY, z as SUPER_ADMIN_MANIFEST_CLEAR_CACHE_KEY, B as SUPER_ADMIN_MANIFEST_KEY, D as SUPER_ADMIN_NOTIFY_KEY, F as SUPER_ADMIN_RESOURCES_KEY, G as SaColorScheme, H as SaResolvedScheme, h as SaTheme, f as SaThemeOptions, J as SuperAdminAuthGuardOptions, S as SuperAdminGuardOptions, g as SuperAdminI18n, e as SuperAdminI18nOptions, K as SuperAdminLoginResult, L as SuperAdminManifestGuardOptions, d as UiConfirm, M as UiConfirmPrompt, i as UiConfirmRequest, N as UiConfirmResult, P as UiConfirmTone, Q as UiNotifyKind, T as UiNotifyOptions, V as buildNavigationGuard, W as createResourceRegistry, X as createSaTheme, Y as createSuperAdminI18n, Z as useResource, _ as useSaMessages, $ as useSaTheme, a0 as useSuperAdminI18n } from './resource-registry-TaR7rtq0.js';
|
|
7
7
|
import { AdminManifest, TenantListFilter, TenantDto, AuditQuery, AuditEntry, FeatureUiRegistry, PromoPreviewResponse, OnboardingSelectionRequest, PublicMarketingBundle, FeatureDef, FeatureKey, PublicBootResponse, DiscoverySnapshot, CapabilityCatalogEntryRow, FeatureCatalogEntryRow, QuotaCatalogEntryRow, ReviewCatalogEntryData, CatalogEntryI18n, UpdateCatalogEntryBaseData, SyncDiscoveryResult, BundleVersionRow, CreateBundleVersionDraftData, BundleVersionMutationResult, UpdateBundleVersionDraftData, BundleRow, CreateBundleData, UpdateBundleData, SubscriptionBundleRecord, MarketingProjectionFilter, MarketingProjectionRow, CreateMarketingProjectionData, UpdateMarketingProjectionData, PromotionRow, CreatePromotionData, UpdatePromotionData, PlanVersionRow, CreatePlanVersionDraftData, PlanVersionMutationResult, UpdatePlanVersionDraftData, PlanRow, CreatePlanData, UpdatePlanData, TenantActionDef } from '@saasicat/types';
|
|
8
8
|
import { RouteRecordRaw, NavigationGuardWithThis } from 'vue-router';
|
|
9
9
|
import * as vue from 'vue';
|
|
10
|
-
import { Ref, ComputedRef, InjectionKey, App } from 'vue';
|
|
10
|
+
import { Ref, ComputedRef, WatchSource, InjectionKey, App } from 'vue';
|
|
11
11
|
import { StoreDefinition } from 'pinia';
|
|
12
12
|
|
|
13
13
|
/** Returns the `extensions:` map registered in `createSuperAdminApp()`. */
|
|
@@ -49,7 +49,15 @@ interface CreateAdminRoutesOptions {
|
|
|
49
49
|
/**
|
|
50
50
|
* Loader for the shared login page. The app passes it through as a
|
|
51
51
|
* package-path import (resolved by the app bundler):
|
|
52
|
-
* `() => import('@saasicat/ui-vue/pages
|
|
52
|
+
* `() => import('@saasicat/ui-vue/pages/SuperAdminLoginPage.vue')`.
|
|
53
|
+
*
|
|
54
|
+
* That subpath has two spellings today: the export map maps both
|
|
55
|
+
* `./pages/*` and `./pages-standard/*` onto `src/pages-standard/`, so the
|
|
56
|
+
* two imports are the same file. The scaffolder template
|
|
57
|
+
* (`create-saasicat-admin`) and `examples/notesapp` spell it `/pages/*`,
|
|
58
|
+
* which is why the example above does; the package README lists the SFC
|
|
59
|
+
* entries under `/pages-standard/*`. Collapsing the pair is a breaking
|
|
60
|
+
* change to the export map and is deliberately not done here.
|
|
53
61
|
*/
|
|
54
62
|
loginPage: RouteComponent;
|
|
55
63
|
/** Layout component for `/admin` (e.g. `() => import('@/layouts/AdminLayout.vue')`). */
|
|
@@ -67,12 +75,14 @@ interface CreateAdminRoutesOptions {
|
|
|
67
75
|
}
|
|
68
76
|
declare function createAdminRoutes(options: CreateAdminRoutesOptions): RouteRecordRaw[];
|
|
69
77
|
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
78
|
+
/**
|
|
79
|
+
* The envelope a list endpoint may answer with.
|
|
80
|
+
*
|
|
81
|
+
* @deprecated Use `ResourceListPage`, which is this shape under the name the
|
|
82
|
+
* resource layer works with. Kept as an alias so an app that typed its own
|
|
83
|
+
* endpoint against it keeps compiling; one shape, one definition.
|
|
84
|
+
*/
|
|
85
|
+
type ApiListResponse<T> = ResourceListPage<T>;
|
|
76
86
|
interface UseApiListOptions<TFilter> {
|
|
77
87
|
endpoint: string;
|
|
78
88
|
/**
|
|
@@ -127,6 +137,154 @@ interface UsePaginationResult<T> {
|
|
|
127
137
|
}
|
|
128
138
|
declare function usePagination<T>(rows: Ref<readonly T[]> | ComputedRef<readonly T[]>, initialRowsPerPage?: number): UsePaginationResult<T>;
|
|
129
139
|
|
|
140
|
+
/**
|
|
141
|
+
* What an action did. `ok` is the branch to read — it answers for a
|
|
142
|
+
* `Promise<void>` action exactly as well as for one that returns a row.
|
|
143
|
+
*/
|
|
144
|
+
type AsyncActionResult<T> = {
|
|
145
|
+
ok: true;
|
|
146
|
+
value: T;
|
|
147
|
+
} | {
|
|
148
|
+
ok: false;
|
|
149
|
+
error: AdminError;
|
|
150
|
+
};
|
|
151
|
+
interface AsyncAction<A extends unknown[], T> {
|
|
152
|
+
/** Runs the action. Never throws; the outcome is in the result. */
|
|
153
|
+
run: (...args: A) => Promise<AsyncActionResult<T>>;
|
|
154
|
+
/** True while the call is in flight — what a submit button disables on. */
|
|
155
|
+
pending: Ref<boolean>;
|
|
156
|
+
/** The last failure, or `null`. Cleared at the start of every run. */
|
|
157
|
+
error: Ref<AdminError | null>;
|
|
158
|
+
/** Clears `error` without running anything. */
|
|
159
|
+
reset: () => void;
|
|
160
|
+
}
|
|
161
|
+
interface UseAsyncActionOptions<T> {
|
|
162
|
+
/**
|
|
163
|
+
* Which outcomes raise a toast. Default `'error'` — a success that changed
|
|
164
|
+
* something visible needs no announcement, a failure always does.
|
|
165
|
+
*/
|
|
166
|
+
notifyOn?: 'error' | 'both' | 'none';
|
|
167
|
+
/** Text for the success toast. Required for `notifyOn: 'both'` to say anything. */
|
|
168
|
+
successMessage?: string | (() => string);
|
|
169
|
+
/**
|
|
170
|
+
* Overrides how a failure is worded.
|
|
171
|
+
*
|
|
172
|
+
* Not decoration: several pages map a status and an error code to a
|
|
173
|
+
* specific sentence — a 422 carrying `STRICT_MODE_VIOLATIONS` reads out the
|
|
174
|
+
* violations, a 401 says the session expired. `AdminError` carries
|
|
175
|
+
* `status`, `code` and `body`, so that mapping is a pure function of the
|
|
176
|
+
* error, and this is where it attaches.
|
|
177
|
+
*/
|
|
178
|
+
errorMessage?: (error: AdminError) => string;
|
|
179
|
+
/** Runs after a successful call, before `run` resolves. */
|
|
180
|
+
onSuccess?: (result: T) => void | Promise<void>;
|
|
181
|
+
/**
|
|
182
|
+
* Notify port to report through. Defaults to the injected one.
|
|
183
|
+
*
|
|
184
|
+
* There is no fallback beyond that: this layer must not import Quasar, so
|
|
185
|
+
* it cannot reach `quasarNotify` the way a page can. Without a bootstrap
|
|
186
|
+
* and without this option, failures are reported through `error` alone.
|
|
187
|
+
*/
|
|
188
|
+
notify?: UiNotify;
|
|
189
|
+
}
|
|
190
|
+
declare function useAsyncAction<A extends unknown[], T>(fn: (...args: A) => Promise<T>, options?: UseAsyncActionOptions<T>): AsyncAction<A, T>;
|
|
191
|
+
|
|
192
|
+
interface AsyncData<T> {
|
|
193
|
+
/** The loaded value, or `initial` before the first load and after a failure. */
|
|
194
|
+
data: Ref<T>;
|
|
195
|
+
/** True while a load is in flight. */
|
|
196
|
+
pending: Ref<boolean>;
|
|
197
|
+
/** The last failure, or `null`. Cleared at the start of every load. */
|
|
198
|
+
error: Ref<AdminError | null>;
|
|
199
|
+
/** Loads again — after a mutation, or from a retry button. */
|
|
200
|
+
reload: () => Promise<void>;
|
|
201
|
+
}
|
|
202
|
+
interface UseAsyncDataOptions<T> {
|
|
203
|
+
/** Value before the first load, and the value restored when one fails. */
|
|
204
|
+
initial: T;
|
|
205
|
+
/** Load once on creation. Default `true`. */
|
|
206
|
+
immediate?: boolean;
|
|
207
|
+
/** Reload whenever any of these changes — a filter, a selected row, a locale. */
|
|
208
|
+
watch?: WatchSource[];
|
|
209
|
+
}
|
|
210
|
+
declare function useAsyncData<T>(fn: () => Promise<T>, options: UseAsyncDataOptions<T>): AsyncData<T>;
|
|
211
|
+
|
|
212
|
+
/** The operations of a resource that answer with one page of a list. */
|
|
213
|
+
type ListOpNames<TOps extends ResourceOps> = {
|
|
214
|
+
[N in keyof TOps]: Awaited<ReturnType<TOps[N]>> extends ResourceListPage<unknown> ? N : never;
|
|
215
|
+
}[keyof TOps];
|
|
216
|
+
/**
|
|
217
|
+
* The resources that have such an operation at all.
|
|
218
|
+
*
|
|
219
|
+
* Without this, `useResourceList('plans')` compiled: `plans.list` answers with
|
|
220
|
+
* a plain `PlanRow[]`, the row type collapsed to `never`, and the first thing
|
|
221
|
+
* to notice was `items.value` being `undefined` at runtime. Derived from the
|
|
222
|
+
* operations rather than listed, so a resource that grows a list operation
|
|
223
|
+
* becomes available here by being written, not by being remembered.
|
|
224
|
+
*/
|
|
225
|
+
type ListResourceKey<TMap extends ResourceMap> = {
|
|
226
|
+
[K in keyof TMap]: [ListOpNames<TMap[K]['ops']>] extends [never] ? never : K;
|
|
227
|
+
}[keyof TMap];
|
|
228
|
+
/**
|
|
229
|
+
* The row type a named list operation yields — read off the operation, not
|
|
230
|
+
* declared next to it. A hand-maintained map of resource to row is the same
|
|
231
|
+
* defect one level up: it can be right today and silently wrong tomorrow.
|
|
232
|
+
*/
|
|
233
|
+
type RowOf<TOps extends ResourceOps, N extends keyof TOps> = Awaited<ReturnType<TOps[N]>> extends ResourceListPage<infer TRow> ? TRow : never;
|
|
234
|
+
/** A paginated read: what a standard admin list binds its table to. */
|
|
235
|
+
interface AsyncList<T> {
|
|
236
|
+
/** The rows of the current page. */
|
|
237
|
+
items: ComputedRef<T[]>;
|
|
238
|
+
/**
|
|
239
|
+
* Rows matching the filter when the endpoint reports a total, and rows on
|
|
240
|
+
* this page when it does not. Several admin controllers answer with a bare
|
|
241
|
+
* array, and there is no honest way to tell the two apart afterwards — see
|
|
242
|
+
* `ResourceListPage.total`.
|
|
243
|
+
*/
|
|
244
|
+
total: ComputedRef<number>;
|
|
245
|
+
/** 1-based. Moved by `goToPage`, and reset to 1 by a filter change. */
|
|
246
|
+
page: Ref<number>;
|
|
247
|
+
pageSize: Ref<number>;
|
|
248
|
+
/**
|
|
249
|
+
* True while a load is in flight. Named as in `useAsyncData` and
|
|
250
|
+
* `useAsyncAction`, whose flag this is — `useApiList` calls its own
|
|
251
|
+
* `loading`.
|
|
252
|
+
*/
|
|
253
|
+
pending: Ref<boolean>;
|
|
254
|
+
/** The last failure, or `null`. Cleared at the start of every load. */
|
|
255
|
+
error: Ref<AdminError | null>;
|
|
256
|
+
/** Loads the current page again — after a mutation, or from a retry button. */
|
|
257
|
+
reload: () => Promise<void>;
|
|
258
|
+
/** Jumps to a page (1-based, clamped) and loads. */
|
|
259
|
+
goToPage: (page: number) => Promise<void>;
|
|
260
|
+
/** Changes the page size, returns to page 1, and loads. */
|
|
261
|
+
setPageSize: (size: number) => Promise<void>;
|
|
262
|
+
}
|
|
263
|
+
interface UseResourceListOptions<TOps extends ResourceOps, N extends ListOpNames<TOps>> {
|
|
264
|
+
/** Which operation to page through. Defaults to `list`. */
|
|
265
|
+
op?: N;
|
|
266
|
+
/**
|
|
267
|
+
* Reactive filter. A change returns to page 1 and reloads — a filter that
|
|
268
|
+
* narrows the list while the operator is on page 4 would otherwise ask for
|
|
269
|
+
* a page that no longer exists and render nothing.
|
|
270
|
+
*
|
|
271
|
+
* `page` and `pageSize` are not filter keys; see the guard below.
|
|
272
|
+
*/
|
|
273
|
+
filter?: Ref<Record<string, unknown>>;
|
|
274
|
+
/**
|
|
275
|
+
* Rows per page to start with. Defaults to `LIST_PAGE_SIZE_DEFAULT`.
|
|
276
|
+
*
|
|
277
|
+
* Here rather than through `setPageSize` after construction, which is what
|
|
278
|
+
* a page with a `pageSize` prop had to do: `setPageSize` loads, and the
|
|
279
|
+
* first load was already queued, so the list fetched the same rows twice on
|
|
280
|
+
* every mount.
|
|
281
|
+
*/
|
|
282
|
+
pageSize?: number;
|
|
283
|
+
/** Load once on creation. Default `true`. */
|
|
284
|
+
immediate?: boolean;
|
|
285
|
+
}
|
|
286
|
+
declare function useResourceList<K extends ListResourceKey<TMap> & keyof TMap & string, TMap extends ResourceMap = PlatformResources, N extends ListOpNames<TMap[K]['ops']> = ListOpNames<TMap[K]['ops']>>(key: K, opts?: UseResourceListOptions<TMap[K]['ops'], N>): AsyncList<RowOf<TMap[K]['ops'], N>>;
|
|
287
|
+
|
|
130
288
|
interface UseTenantsOptions {
|
|
131
289
|
/**
|
|
132
290
|
* Fully qualified tenants-list endpoint including the app globalPrefix
|
|
@@ -768,6 +926,12 @@ interface UseDiscoveryOptions {
|
|
|
768
926
|
*/
|
|
769
927
|
autoLoad?: boolean;
|
|
770
928
|
}
|
|
929
|
+
/**
|
|
930
|
+
* The discovery endpoint could not be read. Its `message` is a diagnostic for
|
|
931
|
+
* the log, in English like every other developer-facing string in the
|
|
932
|
+
* repository — the sentence a user is shown comes from the `errors` catalog
|
|
933
|
+
* through `adminErrorMessage`, in whichever language the shell speaks.
|
|
934
|
+
*/
|
|
771
935
|
declare class DiscoveryLoadError extends Error {
|
|
772
936
|
readonly status: number;
|
|
773
937
|
constructor(status: number, message: string);
|
|
@@ -805,6 +969,12 @@ interface UseCatalogEntriesOptions {
|
|
|
805
969
|
projectKey: string;
|
|
806
970
|
autoLoad?: boolean;
|
|
807
971
|
}
|
|
972
|
+
/**
|
|
973
|
+
* A catalog-entries call failed. Its `message` is a diagnostic for the log, in
|
|
974
|
+
* English like every other developer-facing string in the repository — the
|
|
975
|
+
* sentence a user is shown comes from the `errors` catalog through
|
|
976
|
+
* `adminErrorMessage`, in whichever language the shell speaks.
|
|
977
|
+
*/
|
|
808
978
|
declare class CatalogEntriesApiError extends Error {
|
|
809
979
|
readonly status: number;
|
|
810
980
|
readonly body: unknown;
|
|
@@ -946,6 +1116,12 @@ interface UseMarketingProjectionsOptions {
|
|
|
946
1116
|
filter: MarketingProjectionFilter;
|
|
947
1117
|
autoLoad?: boolean;
|
|
948
1118
|
}
|
|
1119
|
+
/**
|
|
1120
|
+
* A marketing-projections call failed. Its `message` is a diagnostic for the
|
|
1121
|
+
* log, in English like every other developer-facing string in the repository —
|
|
1122
|
+
* the sentence a user is shown comes from the `errors` catalog through
|
|
1123
|
+
* `adminErrorMessage`, in whichever language the shell speaks.
|
|
1124
|
+
*/
|
|
949
1125
|
declare class MarketingProjectionsApiError extends Error {
|
|
950
1126
|
readonly status: number;
|
|
951
1127
|
readonly body: unknown;
|
|
@@ -972,6 +1148,12 @@ interface UsePromotionsOptions {
|
|
|
972
1148
|
projectKey: string;
|
|
973
1149
|
autoLoad?: boolean;
|
|
974
1150
|
}
|
|
1151
|
+
/**
|
|
1152
|
+
* A promotions call failed. Its `message` is a diagnostic for the log, in
|
|
1153
|
+
* English like every other developer-facing string in the repository — the
|
|
1154
|
+
* sentence a user is shown comes from the `errors` catalog through
|
|
1155
|
+
* `adminErrorMessage`, in whichever language the shell speaks.
|
|
1156
|
+
*/
|
|
975
1157
|
declare class PromotionsApiError extends Error {
|
|
976
1158
|
readonly status: number;
|
|
977
1159
|
readonly body: unknown;
|
|
@@ -1323,6 +1505,14 @@ interface PlatformLoaders {
|
|
|
1323
1505
|
bootLoader: BootLoader;
|
|
1324
1506
|
manifestLoader: ManifestLoader;
|
|
1325
1507
|
}
|
|
1508
|
+
/**
|
|
1509
|
+
* Fills in what an app left out.
|
|
1510
|
+
*
|
|
1511
|
+
* Exported because the bootstrap needs the same answer, and two copies of a
|
|
1512
|
+
* default are two places for it to drift — which is how `projectKey` was
|
|
1513
|
+
* added to one of them and not the other.
|
|
1514
|
+
*/
|
|
1515
|
+
declare function resolveSuperAdminEndpoints(endpoints: SuperAdminEndpoints): Required<SuperAdminEndpoints>;
|
|
1326
1516
|
/**
|
|
1327
1517
|
* Builds `BootLoader` + `ManifestLoader` from a single endpoint constant.
|
|
1328
1518
|
* Apps use the same constant for `createSuperAdminApp({ endpoints })`.
|
|
@@ -1841,4 +2031,4 @@ interface PlanChangeWizardI18n {
|
|
|
1841
2031
|
*/
|
|
1842
2032
|
declare function planChangeWizardI18n(i18n: TenantPlanSectionI18n): PlanChangeWizardI18n;
|
|
1843
2033
|
|
|
1844
|
-
export { ALL_ROWS, ActionHandler, ActionRegistry, ActionsMap, type ApiListResponse, BatchColumnData, BatchColumnFetcherOptions, type BillingCycleStr, BootLoader, BootLoaderOptions, BuildRouteEntry, type BulkItemKind, type BulkItemStatus, type BulkPublishItem, type BundleAddPreviewShape, type BundleCancelPreviewShape, type BundlePreviewIssueShape, type BundlePreviewShape, type BundlePreviewSnapshotShape, BundlesApiError, CATALOG_DEFAULT_LOCALE, type CatalogBundle, CatalogEntriesApiError, type CatalogPlan, type ConfirmDialogState, type CreateAdminRoutesOptions, type CreateManifestStoreOptions, type CreatePlatformLoadersOptions, DEFAULT_I18N_DE, DEFAULT_I18N_EN, DEFAULT_ROWS_PER_PAGE, DEFAULT_YEARLY_FACTOR, DiscoveryLoadError, type DraftPricing, ENTITLEMENT_INJECTION_KEY, type EmailHistoryDetail, type EmailHistoryFilter, type EmailHistoryListResult, type EmailHistoryResendResult, type EmailHistoryRow, type EmailHistoryStatus, type EntitlementSnapshotShape, ExtensionsMap, type FeatureRegistryEntry, type FeatureRouterGuardOptions, type FeatureRowMarkers, HttpClient, KvStore, ManifestLoader, ManifestLoaderOptions, type ManifestStoreActions, type ManifestStoreDefinition, type ManifestStoreState, MarketingProjectionsApiError, type MfaDialogState, NavBuilderOptions, PAGE_SIZE_OPTIONS, type PackageSnapshotShape, type PilotCopy, type PilotCreatePayload, type PilotCreateResult, type PilotEditPayload, type PilotEditResult, type PlanChangePreviewShape, type PlanChangeWizardI18n, type PlanSnapshotShape, PlannedOnlyFeatureError, PlansApiError, type PlatformEmailProvider, type PlatformEmailTestInput, type PlatformEmailTestResult, type PlatformEmailWriteInput, type PlatformLoaders, type PlatformTenantActionRow, type PlatformTenantActionTone, type PlatformTenantActionsOptions, type PlatformTenantActionsResult, type PriceLineItem, ProjectPageHost, type PromoCodeCreatePayload, type PromoCodeDurationType, type PromoCodePlanOption, type PromoCodeUpdatePayload, type PromoCodeValueType, type PromoState, type PromoStatus, PromotionsApiError, type QuotaMeta, type RedundantFeatureHintShape, type ResolvedTenantAction, SERVER_PAGE_SIZE_OPTIONS, SaLocale, SidebarSection, type SubscriptionBundleShape, type SubscriptionDraft, SuperAdminBrand, SuperAdminEndpoints, SuperAdminLoginAdapter, type TenantActionFlowProviders, type TenantActionInput, type TenantManifestNavItem, type TenantManifestShape, type TenantPlanSectionI18n, type TenantRowLike, TenantSubscriptionBundlesApiError, type UsageSnapshotShape, type UseActionsResult, type UseApiListOptions, type UseApiListResult, type UseAuditEntriesOptions, type UseAuditEntriesResult, type UseBatchColumnsResult, type UseBulkPublishOptions, type UseBulkPublishResult, type UseBundleVersionsMapOptions, type UseBundleVersionsMapResult, type UseBundleVersionsOptions, type UseBundleVersionsResult, type UseBundlesOptions, type UseBundlesResult, type UseCatalogEntriesOptions, type UseCatalogEntriesResult, type UseDiscoveryOptions, type UseDiscoveryResult, type UseEntitlementOptions, type UseEntitlementResult, type UseLivePlanVersionsOptions, type UseLivePlanVersionsResult, type UseManifestResult, type UseMarketingProjectionsOptions, type UseMarketingProjectionsResult, type UseNavResult, type UsePaginationResult, type UsePlanEditorOptions, type UsePlanEditorResult, type UsePlanVersionsOptions, type UsePlanVersionsResult, type UsePlansOptions, type UsePlansResult, type UsePromotionsOptions, type UsePromotionsResult, type UsePublicBootResult, type UseSubscriptionDraftOptions, type UseTenantActionFlowResult, type UseTenantBillingCatalogOptions, type UseTenantBillingCatalogResult, type UseTenantBillingOptions, type UseTenantBillingResult, type UseTenantManifestOptions, type UseTenantManifestResult, type UseTenantSubscriptionBundlesOptions, type UseTenantSubscriptionBundlesResult, type UseTenantsOptions, type UseTenantsResult, buildFeatureRegistry, buildFeatureRouterGuard, buildQuotaRegistry, createAdminRoutes, createManifestStore, createPlatformLoaders, createProjectPageHostRoute, defaultIconForActionKey, defaultTenantPlanSectionI18n, defaultToneForActionKey, planChangeWizardI18n, provideEntitlement, useActions, useApiList, useAuditEntries, useBatchColumns, useBulkPublish, useBundleVersions, useBundleVersionsMap, useBundles, useCatalogEntries, useDiscovery, useEntitlement, useInjectedEntitlement, useLivePlanVersions, useManifest, useMarketingProjections, useNav, usePagination, usePlanEditor, usePlanVersions, usePlans, usePlatformTenantActions, usePromotions, usePublicBoot, useSubscriptionDraft, useSuperAdminActions, useSuperAdminBrand, useSuperAdminEndpoints, useSuperAdminExtensions, useSuperAdminHttp, useSuperAdminLoginAdapter, useSuperAdminManifest, useTenantActionFlow, useTenantBilling, useTenantBillingCatalog, useTenantManifest, useTenantSubscriptionBundles, useTenants };
|
|
2034
|
+
export { ALL_ROWS, ActionHandler, ActionRegistry, ActionsMap, AdminError, type ApiListResponse, type AsyncAction, type AsyncActionResult, type AsyncData, type AsyncList, BatchColumnData, BatchColumnFetcherOptions, type BillingCycleStr, BootLoader, BootLoaderOptions, BuildRouteEntry, type BulkItemKind, type BulkItemStatus, type BulkPublishItem, type BundleAddPreviewShape, type BundleCancelPreviewShape, type BundlePreviewIssueShape, type BundlePreviewShape, type BundlePreviewSnapshotShape, BundlesApiError, CATALOG_DEFAULT_LOCALE, type CatalogBundle, CatalogEntriesApiError, type CatalogPlan, type ConfirmDialogState, type CreateAdminRoutesOptions, type CreateManifestStoreOptions, type CreatePlatformLoadersOptions, DEFAULT_I18N_DE, DEFAULT_I18N_EN, DEFAULT_ROWS_PER_PAGE, DEFAULT_YEARLY_FACTOR, DiscoveryLoadError, type DraftPricing, ENTITLEMENT_INJECTION_KEY, type EmailHistoryDetail, type EmailHistoryFilter, type EmailHistoryListResult, type EmailHistoryResendResult, type EmailHistoryRow, type EmailHistoryStatus, type EntitlementSnapshotShape, ExtensionsMap, type FeatureRegistryEntry, type FeatureRouterGuardOptions, type FeatureRowMarkers, HttpClient, KvStore, type ListOpNames, type ListResourceKey, ManifestLoader, ManifestLoaderOptions, type ManifestStoreActions, type ManifestStoreDefinition, type ManifestStoreState, MarketingProjectionsApiError, type MfaDialogState, NavBuilderOptions, PAGE_SIZE_OPTIONS, type PackageSnapshotShape, type PilotCopy, type PilotCreatePayload, type PilotCreateResult, type PilotEditPayload, type PilotEditResult, type PlanChangePreviewShape, type PlanChangeWizardI18n, type PlanSnapshotShape, PlannedOnlyFeatureError, PlansApiError, type PlatformEmailProvider, type PlatformEmailTestInput, type PlatformEmailTestResult, type PlatformEmailWriteInput, type PlatformLoaders, PlatformResources, type PlatformTenantActionRow, type PlatformTenantActionTone, type PlatformTenantActionsOptions, type PlatformTenantActionsResult, type PriceLineItem, ProjectPageHost, type PromoCodeCreatePayload, type PromoCodeDurationType, type PromoCodePlanOption, type PromoCodeUpdatePayload, type PromoCodeValueType, type PromoState, type PromoStatus, PromotionsApiError, type QuotaMeta, type RedundantFeatureHintShape, type ResolvedTenantAction, ResourceListPage, ResourceMap, ResourceOps, type RowOf, SERVER_PAGE_SIZE_OPTIONS, SaLocale, SidebarSection, type SubscriptionBundleShape, type SubscriptionDraft, SuperAdminBrand, SuperAdminEndpoints, SuperAdminLoginAdapter, type TenantActionFlowProviders, type TenantActionInput, type TenantManifestNavItem, type TenantManifestShape, type TenantPlanSectionI18n, type TenantRowLike, TenantSubscriptionBundlesApiError, UiNotify, type UsageSnapshotShape, type UseActionsResult, type UseApiListOptions, type UseApiListResult, type UseAsyncActionOptions, type UseAsyncDataOptions, type UseAuditEntriesOptions, type UseAuditEntriesResult, type UseBatchColumnsResult, type UseBulkPublishOptions, type UseBulkPublishResult, type UseBundleVersionsMapOptions, type UseBundleVersionsMapResult, type UseBundleVersionsOptions, type UseBundleVersionsResult, type UseBundlesOptions, type UseBundlesResult, type UseCatalogEntriesOptions, type UseCatalogEntriesResult, type UseDiscoveryOptions, type UseDiscoveryResult, type UseEntitlementOptions, type UseEntitlementResult, type UseLivePlanVersionsOptions, type UseLivePlanVersionsResult, type UseManifestResult, type UseMarketingProjectionsOptions, type UseMarketingProjectionsResult, type UseNavResult, type UsePaginationResult, type UsePlanEditorOptions, type UsePlanEditorResult, type UsePlanVersionsOptions, type UsePlanVersionsResult, type UsePlansOptions, type UsePlansResult, type UsePromotionsOptions, type UsePromotionsResult, type UsePublicBootResult, type UseResourceListOptions, type UseSubscriptionDraftOptions, type UseTenantActionFlowResult, type UseTenantBillingCatalogOptions, type UseTenantBillingCatalogResult, type UseTenantBillingOptions, type UseTenantBillingResult, type UseTenantManifestOptions, type UseTenantManifestResult, type UseTenantSubscriptionBundlesOptions, type UseTenantSubscriptionBundlesResult, type UseTenantsOptions, type UseTenantsResult, buildFeatureRegistry, buildFeatureRouterGuard, buildQuotaRegistry, createAdminRoutes, createManifestStore, createPlatformLoaders, createProjectPageHostRoute, defaultIconForActionKey, defaultTenantPlanSectionI18n, defaultToneForActionKey, planChangeWizardI18n, provideEntitlement, resolveSuperAdminEndpoints, useActions, useApiList, useAsyncAction, useAsyncData, useAuditEntries, useBatchColumns, useBulkPublish, useBundleVersions, useBundleVersionsMap, useBundles, useCatalogEntries, useDiscovery, useEntitlement, useInjectedEntitlement, useLivePlanVersions, useManifest, useMarketingProjections, useNav, usePagination, usePlanEditor, usePlanVersions, usePlans, usePlatformTenantActions, usePromotions, usePublicBoot, useResourceList, useSubscriptionDraft, useSuperAdminActions, useSuperAdminBrand, useSuperAdminEndpoints, useSuperAdminExtensions, useSuperAdminHttp, useSuperAdminLoginAdapter, useSuperAdminManifest, useTenantActionFlow, useTenantBilling, useTenantBillingCatalog, useTenantManifest, useTenantSubscriptionBundles, useTenants };
|