@linagora/linid-im-front-corelib 0.0.45 → 0.0.47
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/dist/core-lib.es.js +104 -98
- package/dist/core-lib.umd.js +1 -1
- package/dist/package.json +1 -1
- package/dist/tsconfig.lib.tsbuildinfo +1 -1
- package/dist/types/src/index.d.ts +2 -2
- package/dist/types/src/types/module.d.ts +29 -0
- package/dist/types/src/types/uiDesign.d.ts +11 -3
- package/package.json +1 -1
|
@@ -24,9 +24,9 @@ export type { LinidZoneEntry } from './types/linidZone';
|
|
|
24
24
|
export type { LinidRoute, LinidRoutes } from './types/linidRoute';
|
|
25
25
|
export type { Page, Pagination, QTableRequestEvent, QuasarPagination, QueryFilter, } from './types/page';
|
|
26
26
|
export type { AttributeInputType, LinidApiEndpointConfiguration, LinidAttributeConfiguration, LinidEntityConfiguration, } from './types/linidConfiguration';
|
|
27
|
-
export type { FederatedModule, ModuleHostConfig, RemoteModule, } from './types/module';
|
|
27
|
+
export type { FederatedModule, ModuleHostConfig, RemoteModule, ModuleZoneDefinition, } from './types/module';
|
|
28
28
|
export type { ModuleLifecycleHooks, ModuleLifecycleResult, } from './types/moduleLifecycle';
|
|
29
|
-
export type { LinidQAvatarProps, LinidQBadgeProps, LinidQBtnProps, LinidQBtnDropdownProps, LinidQCardActionsProps, LinidQCardProps, LinidQDateProps, LinidQDialogProps, LinidQFileProps, LinidQHeaderProps, LinidQIconProps, LinidQImgProps, LinidQInputProps, LinidQItemProps, LinidQItemLabelProps, LinidQItemSectionProps, LinidQListProps, LinidQRouteTabProps, LinidQSelectProps, LinidQSpinnerProps, LinidQTableProps, LinidQTabsProps, LinidQToggleProps, LinidQToolbarProps, LinidQToolbarTitleProps, UiDesign, UiDesignNamespace, UiDesignValue, } from './types/uiDesign';
|
|
29
|
+
export type { LinidQAvatarProps, LinidQBadgeProps, LinidQBtnProps, LinidQBtnDropdownProps, LinidQCardActionsProps, LinidQCardProps, LinidQDateProps, LinidQDialogProps, LinidQFileProps, LinidQFormProps, LinidQHeaderProps, LinidQIconProps, LinidQImgProps, LinidQInputProps, LinidQItemProps, LinidQItemLabelProps, LinidQItemSectionProps, LinidQListProps, LinidQRouteTabProps, LinidQSelectProps, LinidQSpinnerProps, LinidQTableProps, LinidQTabsProps, LinidQToggleProps, LinidQToolbarProps, LinidQToolbarTitleProps, UiDesign, UiDesignNamespace, UiDesignValue, } from './types/uiDesign';
|
|
30
30
|
export type { NavigationMenuItem } from './types/linidUi';
|
|
31
31
|
export { ModuleLifecyclePhase } from './types/moduleLifecycle';
|
|
32
32
|
export { BasicRemoteModule } from './lifecycle/skeleton';
|
|
@@ -64,6 +64,12 @@ export interface ModuleHostConfig<T> {
|
|
|
64
64
|
* Used to mount the module at a specific route.
|
|
65
65
|
*/
|
|
66
66
|
basePath: string;
|
|
67
|
+
/**
|
|
68
|
+
* Definitions of the zones where the module will render exposed elements in other modules.
|
|
69
|
+
*
|
|
70
|
+
* Zones should always be set (empty array [] when no zones).
|
|
71
|
+
*/
|
|
72
|
+
zones: ModuleZoneDefinition[];
|
|
67
73
|
/**
|
|
68
74
|
* Module-specific options provided in the host configuration.
|
|
69
75
|
* These options are passed to the module during configuration.
|
|
@@ -88,3 +94,26 @@ export interface FederatedModule<T> {
|
|
|
88
94
|
*/
|
|
89
95
|
default: T;
|
|
90
96
|
}
|
|
97
|
+
/**
|
|
98
|
+
* Definition of a UI zone injection.
|
|
99
|
+
*
|
|
100
|
+
* Allows a module to declare that one of its exposed elements through module
|
|
101
|
+
* federation should be rendered inside a named zone exposed by another module,
|
|
102
|
+
* optionally with props.
|
|
103
|
+
* @template T Props type for the injected element.
|
|
104
|
+
*/
|
|
105
|
+
export interface ModuleZoneDefinition<T = Record<string, unknown>> {
|
|
106
|
+
/**
|
|
107
|
+
* Name of the target zone exposed by another module where the element will be rendered.
|
|
108
|
+
*/
|
|
109
|
+
zone: string;
|
|
110
|
+
/**
|
|
111
|
+
* Name of the exposed element to render in the zone.
|
|
112
|
+
*/
|
|
113
|
+
plugin: string;
|
|
114
|
+
/**
|
|
115
|
+
* Optional props to pass to the exposed element rendered in this zone.
|
|
116
|
+
* The module can define the structure of these props as needed.
|
|
117
|
+
*/
|
|
118
|
+
props?: T;
|
|
119
|
+
}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { NamedColor, QAvatarProps, QBadgeProps, QBtnDropdownProps, QBtnProps, QCardActionsProps, QCardProps, QDateProps, QDialogProps, QFileProps, QHeaderProps, QIconProps, QImgProps, QInputProps, QItemLabelProps, QItemProps, QItemSectionProps, QListProps, QRouteTabProps, QSelectProps, QSpinnerProps, QTableProps, QTabsProps, QToggleProps, QToolbarProps, QToolbarTitleProps, VueClassProp, VueStyleObjectProp, VueStyleProp } from 'quasar';
|
|
1
|
+
import type { NamedColor, QAvatarProps, QBadgeProps, QBtnDropdownProps, QBtnProps, QCardActionsProps, QCardProps, QDateProps, QDialogProps, QFileProps, QFormProps, QHeaderProps, QIconProps, QImgProps, QInputProps, QItemLabelProps, QItemProps, QItemSectionProps, QListProps, QRouteTabProps, QSelectProps, QSpinnerProps, QTableProps, QTabsProps, QToggleProps, QToolbarProps, QToolbarTitleProps, VueClassProp, VueStyleObjectProp, VueStyleProp } from 'quasar';
|
|
2
2
|
/**
|
|
3
3
|
* Represents a single primitive value in the UI configuration.
|
|
4
4
|
*/
|
|
@@ -120,6 +120,10 @@ declare const Q_ITEM_PROPS: readonly ["insetLevel", "tag", "activeClass", "exact
|
|
|
120
120
|
* List of QItemSectionProps keys for type-safe UI design retrieval.
|
|
121
121
|
*/
|
|
122
122
|
declare const Q_ITEM_SECTION_PROPS: readonly ["avatar", "thumbnail", "side", "top", "noWrap"];
|
|
123
|
+
/**
|
|
124
|
+
* List of QFormProps keys for type-safe UI design retrieval.
|
|
125
|
+
*/
|
|
126
|
+
declare const Q_FORM_PROPS: readonly ["autofocus", "noErrorFocus", "noResetFocus", "greedy"];
|
|
123
127
|
/**
|
|
124
128
|
* List of QItemLabelProps keys for type-safe UI design retrieval.
|
|
125
129
|
*/
|
|
@@ -196,6 +200,10 @@ export type LinidQImgProps = Pick<QImgProps, (typeof Q_IMG_PROPS)[number]>;
|
|
|
196
200
|
* Subset of QFile props supported in UI design configuration.
|
|
197
201
|
*/
|
|
198
202
|
export type LinidQFileProps = Pick<QFileProps, (typeof Q_FILE_PROPS)[number]>;
|
|
203
|
+
/**
|
|
204
|
+
* Subset of QForm props supported in UI design configuration.
|
|
205
|
+
*/
|
|
206
|
+
export type LinidQFormProps = Pick<QFormProps, (typeof Q_FORM_PROPS)[number]>;
|
|
199
207
|
/**
|
|
200
208
|
* Subset of QSelect props supported in UI design configuration.
|
|
201
209
|
*/
|
|
@@ -231,9 +239,9 @@ export type LinidQItemLabelProps = Pick<QItemLabelProps, (typeof Q_ITEM_LABEL_PR
|
|
|
231
239
|
/**
|
|
232
240
|
* Union type of all supported Quasar component props subsets.
|
|
233
241
|
*/
|
|
234
|
-
export type LinidQComponentProps =
|
|
242
|
+
export type LinidQComponentProps = LinidQAvatarProps | LinidQBadgeProps | LinidQBtnDropdownProps | LinidQBtnProps | LinidQCardActionsProps | LinidQCardProps | LinidQDateProps | LinidQDialogProps | LinidQFileProps | LinidQFormProps | LinidQHeaderProps | LinidQIconProps | LinidQImgProps | LinidQInputProps | LinidQItemLabelProps | LinidQItemProps | LinidQItemSectionProps | LinidQListProps | LinidQRouteTabProps | LinidQSelectProps | LinidQSpinnerProps | LinidQTableProps | LinidQTabsProps | LinidQToggleProps | LinidQToolbarProps | LinidQToolbarTitleProps;
|
|
235
243
|
/**
|
|
236
244
|
* Valid Quasar component names for type-safe UI design retrieval.
|
|
237
245
|
*/
|
|
238
|
-
export type QComponentName = 'q-
|
|
246
|
+
export type QComponentName = 'q-avatar' | 'q-badge' | 'q-btn' | 'q-btn-dropdown' | 'q-card' | 'q-card-actions' | 'q-date' | 'q-dialog' | 'q-file' | 'q-form' | 'q-header' | 'q-icon' | 'q-img' | 'q-input' | 'q-item' | 'q-item-label' | 'q-item-section' | 'q-list' | 'q-route-tab' | 'q-select' | 'q-spinner' | 'q-table' | 'q-tabs' | 'q-toggle' | 'q-toolbar' | 'q-toolbar-title';
|
|
239
247
|
export {};
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@linagora/linid-im-front-corelib",
|
|
3
|
-
"version": "0.0.
|
|
3
|
+
"version": "0.0.47",
|
|
4
4
|
"description": "Core library of the LinID Identity Manager project. Provides shared types, services, components, and utilities for front-end and plugin, enabling consistent integration across the LinID ecosystem.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"files": [
|