@sarafapp/iron_core 1.0.66 → 1.0.67

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.
Files changed (158) hide show
  1. package/dist/core/src/BaseModel.d.ts +45 -0
  2. package/dist/core/src/Utils.d.ts +4 -0
  3. package/dist/core/src/accessHandling/AccessControl.d.ts +10 -0
  4. package/dist/core/src/accessHandling/AccessLevel.d.ts +13 -0
  5. package/dist/core/src/accessHandling/Accessible.d.ts +3 -0
  6. package/dist/core/src/accessHandling/EveryDirectiveAccess.d.ts +4 -0
  7. package/dist/core/src/accessHandling/SSO/AuthorizationDirective.d.ts +17 -0
  8. package/dist/core/src/accessHandling/SSO/AuthorizationService.d.ts +17 -0
  9. package/dist/core/src/accessHandling/SSO/EveryLevelAuthorizationDirective.d.ts +4 -0
  10. package/dist/core/src/accessHandling/SSO/SomeLevelsAuthorizationDirective.d.ts +4 -0
  11. package/dist/core/src/accessHandling/SomeDirectiveAccess.d.ts +4 -0
  12. package/dist/core/src/accessHandling/index.d.ts +9 -0
  13. package/dist/core/src/baseDirective/BeforeMountDirective.d.ts +3 -0
  14. package/dist/core/src/baseDirective/BeforeUnMountDirective.d.ts +3 -0
  15. package/dist/core/src/baseDirective/BeforeUpdateDirective.d.ts +3 -0
  16. package/dist/core/src/baseDirective/CreatedDirective.d.ts +3 -0
  17. package/dist/core/src/baseDirective/MountedDirective.d.ts +3 -0
  18. package/dist/core/src/baseDirective/UnMountedDirective.d.ts +3 -0
  19. package/dist/core/src/baseDirective/UpdateDirective.d.ts +3 -0
  20. package/dist/core/src/baseDirective/index.d.ts +7 -0
  21. package/dist/core/src/baseForm/BaseRequestBodyFilter.d.ts +4 -0
  22. package/dist/core/src/baseForm/FormManager.d.ts +18 -0
  23. package/dist/core/src/baseForm/InputControl.d.ts +40 -0
  24. package/dist/core/src/baseForm/InputControlBuilder.d.ts +16 -0
  25. package/dist/core/src/baseForm/InputControlData.d.ts +15 -0
  26. package/dist/core/src/baseForm/RequestBodyFilter.d.ts +3 -0
  27. package/dist/core/src/baseForm/TouchSensitiveForm.d.ts +9 -0
  28. package/dist/core/src/baseForm/UseForm.d.ts +18 -0
  29. package/dist/core/src/baseForm/index.d.ts +8 -0
  30. package/dist/core/src/baseSchedule/Schedule.d.ts +3 -0
  31. package/dist/core/src/baseSchedule/Scheduler.d.ts +8 -0
  32. package/dist/core/src/baseSchedule/index.d.ts +2 -0
  33. package/dist/core/src/baseTable/BaseTable.d.ts +47 -0
  34. package/dist/core/src/baseTable/Constants.d.ts +13 -0
  35. package/dist/core/src/baseTable/OnDestory.d.ts +3 -0
  36. package/dist/core/src/baseTable/RowActionSource.d.ts +4 -0
  37. package/dist/core/src/baseTable/RowClick.d.ts +3 -0
  38. package/dist/core/src/baseTable/RowDoubleClick.d.ts +3 -0
  39. package/dist/core/src/baseTable/RowMetaClick.d.ts +3 -0
  40. package/dist/core/src/baseTable/SelectableTable.d.ts +19 -0
  41. package/dist/core/src/baseTable/TableAction.d.ts +8 -0
  42. package/dist/core/src/baseTable/TableHeaderSchema.d.ts +27 -0
  43. package/dist/core/src/baseTable/TableLoader.d.ts +3 -0
  44. package/dist/core/src/baseTable/TablePaginate.d.ts +3 -0
  45. package/dist/core/src/baseTable/TableService.d.ts +9 -0
  46. package/dist/core/src/baseTable/TableSort.d.ts +4 -0
  47. package/dist/core/src/baseTable/TableSummarySchema.d.ts +9 -0
  48. package/dist/core/src/baseTable/generator/SelectableTableGenerator.d.ts +14 -0
  49. package/dist/core/src/baseTable/generator/TableCellComponentRegistry.d.ts +7 -0
  50. package/dist/core/src/baseTable/generator/TableConfig.d.ts +7 -0
  51. package/dist/core/src/baseTable/generator/TableGenerator.d.ts +37 -0
  52. package/dist/core/src/baseTable/generator/TableSource.d.ts +24 -0
  53. package/dist/core/src/baseTable/index.d.ts +23 -0
  54. package/dist/core/src/baseTable/moduleConnection/Action.d.ts +3 -0
  55. package/dist/core/src/baseTable/moduleConnection/Column.d.ts +3 -0
  56. package/dist/core/src/baseTable/moduleConnection/Table.d.ts +4 -0
  57. package/dist/core/src/baseTable/moduleConnection/TableDestroy.d.ts +2 -0
  58. package/dist/core/src/baseTable/moduleConnection/TableRowClick.d.ts +2 -0
  59. package/dist/core/src/baseTable/moduleConnection/generator/GColumn.d.ts +2 -0
  60. package/dist/core/src/baseTable/moduleConnection/generator/GTable.d.ts +2 -0
  61. package/dist/core/src/composables/UseCrud.d.ts +10 -0
  62. package/dist/core/src/composables/UseData.d.ts +15 -0
  63. package/dist/core/src/composables/UseLoadingStatus.d.ts +15 -0
  64. package/dist/core/src/composables/UseParams.d.ts +17 -0
  65. package/dist/core/src/composables/UseRepository.d.ts +67 -0
  66. package/dist/core/src/composables/UseState.d.ts +2 -0
  67. package/dist/core/src/composables/UseStaticTableService.d.ts +5 -0
  68. package/dist/core/src/composables/index.d.ts +7 -0
  69. package/dist/core/src/constants/Constants.d.ts +108 -0
  70. package/dist/core/src/constants/index.d.ts +1 -0
  71. package/dist/core/src/crudService/CrudService.d.ts +22 -0
  72. package/dist/core/src/crudService/index.d.ts +1 -0
  73. package/dist/core/src/dateHandling/Constants.d.ts +5 -0
  74. package/dist/core/src/dateHandling/Converter.d.ts +5 -0
  75. package/dist/core/src/dateHandling/JalaliDateSetup.d.ts +1 -0
  76. package/dist/core/src/dateHandling/Model.d.ts +12 -0
  77. package/dist/core/src/dateHandling/Utils.d.ts +8 -0
  78. package/dist/core/src/dateHandling/index.d.ts +5 -0
  79. package/dist/core/src/debounce/DebounceAction.d.ts +4 -0
  80. package/dist/core/src/debounce/DebounceService.d.ts +9 -0
  81. package/dist/core/src/debounce/index.d.ts +2 -0
  82. package/dist/core/src/deviceManagement/Constants.d.ts +4 -0
  83. package/dist/core/src/deviceManagement/Visibility.d.ts +4 -0
  84. package/dist/core/src/deviceManagement/VisibilityManager.d.ts +6 -0
  85. package/dist/core/src/deviceManagement/index.d.ts +3 -0
  86. package/dist/core/src/errorHandling/ErrorHandler.d.ts +3 -0
  87. package/dist/core/src/errorHandling/HandleError.d.ts +2 -0
  88. package/dist/core/src/errorHandling/index.d.ts +2 -0
  89. package/dist/core/src/eventSystem/CustomEventDispatcher.d.ts +5 -0
  90. package/dist/core/src/eventSystem/Model.d.ts +8 -0
  91. package/dist/core/src/eventSystem/OnEvent.d.ts +1 -0
  92. package/dist/core/src/eventSystem/index.d.ts +3 -0
  93. package/dist/core/src/feedbackHandling/FailureFeedback.d.ts +3 -0
  94. package/dist/core/src/feedbackHandling/Feedback.d.ts +11 -0
  95. package/dist/core/src/feedbackHandling/HandleFeedback.d.ts +2 -0
  96. package/dist/core/src/feedbackHandling/InfoFeedback.d.ts +3 -0
  97. package/dist/core/src/feedbackHandling/SuccessFeedback.d.ts +3 -0
  98. package/dist/core/src/feedbackHandling/WarningFeedback.d.ts +3 -0
  99. package/dist/core/src/feedbackHandling/index.d.ts +6 -0
  100. package/dist/core/src/httpClient/ApiBuilder.d.ts +14 -0
  101. package/dist/core/src/httpClient/ErrorHandlerRegistry.d.ts +10 -0
  102. package/dist/core/src/httpClient/HttpClient.d.ts +14 -0
  103. package/dist/core/src/httpClient/Interceptor.d.ts +4 -0
  104. package/dist/core/src/httpClient/index.d.ts +4 -0
  105. package/dist/core/src/initializer/ApplicationInitializer.d.ts +6 -0
  106. package/dist/core/src/initializer/Initializer.d.ts +3 -0
  107. package/dist/core/src/initializer/index.d.ts +2 -0
  108. package/dist/core/src/json/JsonMapper.d.ts +18 -0
  109. package/dist/core/src/json/index.d.ts +1 -0
  110. package/dist/core/src/layout/Constants.d.ts +10 -0
  111. package/dist/core/src/layout/DialogService.d.ts +406 -0
  112. package/dist/core/src/layout/DrawerService.d.ts +14 -0
  113. package/dist/core/src/layout/Toast.d.ts +8 -0
  114. package/dist/core/src/layout/index.d.ts +4 -0
  115. package/dist/core/src/lib/Constants.d.ts +20 -0
  116. package/dist/core/src/lib/Formatter.d.ts +10 -0
  117. package/dist/core/src/lib/Util.d.ts +12 -0
  118. package/dist/core/src/lib/index.d.ts +3 -0
  119. package/dist/core/src/observables/AbstractSubject.d.ts +7 -0
  120. package/dist/core/src/observables/BehaviorSubject.d.ts +16 -0
  121. package/dist/core/src/observables/Observer.d.ts +3 -0
  122. package/dist/core/src/observables/Subject.d.ts +6 -0
  123. package/dist/core/src/observables/index.d.ts +4 -0
  124. package/dist/core/src/process/Proccess.d.ts +9 -0
  125. package/dist/core/src/process/ProcessManager.d.ts +10 -0
  126. package/dist/core/src/process/index.d.ts +2 -0
  127. package/dist/core/src/repository/Params.d.ts +11 -0
  128. package/dist/core/src/repository/Repository.d.ts +38 -0
  129. package/dist/core/src/repository/SyncDetail.d.ts +5 -0
  130. package/dist/core/src/repository/index.d.ts +4 -0
  131. package/dist/core/src/repository/model.d.ts +5 -0
  132. package/dist/core/src/routeGuard/RouteGuard.d.ts +7 -0
  133. package/dist/core/src/routeGuard/index.d.ts +1 -0
  134. package/dist/core/src/search/client/ClientArraySearch.d.ts +4 -0
  135. package/dist/core/src/search/client/ClientSearch.d.ts +3 -0
  136. package/dist/core/src/search/index.d.ts +2 -0
  137. package/dist/core/src/sort/SortDetail.d.ts +6 -0
  138. package/dist/core/src/sort/client/Sorter.d.ts +6 -0
  139. package/dist/core/src/sort/index.d.ts +4 -0
  140. package/dist/core/src/sort/strategies/SimpleSort.d.ts +5 -0
  141. package/dist/core/src/sort/strategies/SortStrategy.d.ts +4 -0
  142. package/dist/core/src/types/Global.d.ts +1 -0
  143. package/dist/core/src/types/index.d.ts +1 -0
  144. package/dist/core/src/validators/Validator.d.ts +4 -0
  145. package/dist/core/src/validators/index.d.ts +1 -0
  146. package/dist/core/src/webSocket/Constants.d.ts +6 -0
  147. package/dist/core/src/webSocket/Model.d.ts +6 -0
  148. package/dist/core/src/webSocket/WebSocketService.d.ts +30 -0
  149. package/dist/core/src/webSocket/index.d.ts +3 -0
  150. package/dist/example-vue/src/AntTableConfig.d.ts +6 -0
  151. package/dist/example-vue/src/TableService.d.ts +12 -0
  152. package/dist/example-vue/src/TextCell.vue.d.ts +5 -0
  153. package/dist/example-vue/src/app/App.vue.d.ts +2 -0
  154. package/dist/example-vue/src/app/router/index.d.ts +1 -0
  155. package/dist/example-vue/src/app/screens/Index.vue.d.ts +2 -0
  156. package/dist/example-vue/src/main.d.ts +0 -0
  157. package/package.json +4 -1
  158. package/index.ts +0 -37
@@ -0,0 +1,45 @@
1
+ export declare class Amount {
2
+ value: string;
3
+ symbol: string;
4
+ get tradeValueInNumber(): number;
5
+ get truncatedValue(): string;
6
+ }
7
+ export declare class BaseModel {
8
+ id: number | string;
9
+ protected getTable<Table>(): Table;
10
+ }
11
+ export declare class MinifiedSymbolModel extends BaseModel {
12
+ symbol: string;
13
+ enName: string;
14
+ faName: string;
15
+ image: string;
16
+ }
17
+ export declare class TradeDate {
18
+ requestedDate: number;
19
+ executedDate: number;
20
+ constructor(requestedDate: number, executedDate: number);
21
+ get requestedDateInJalali(): string;
22
+ get requestedTime(): string;
23
+ get executedDateInJalali(): string;
24
+ get executedDateTime(): string;
25
+ }
26
+ export declare class TradeAmount {
27
+ requestedAmount: Amount;
28
+ executedAmount: Amount;
29
+ constructor(requestedAmount: Amount, executedAmount: Amount);
30
+ }
31
+ export declare class SymbolPriceInTrade {
32
+ symobl: string;
33
+ symbolPrice: number;
34
+ USDTPrice: number;
35
+ symbolImage: string;
36
+ USDTImage: string;
37
+ constructor(symbolPrice: number, USDTPrice: number, symbol: string, symbolImage: string, USDTImage: string);
38
+ get truncatedSymbolPrice(): string;
39
+ get truncatedUSDTPrice(): string;
40
+ }
41
+ export declare class SymbolInTrade {
42
+ soldSymbol: MinifiedSymbolModel;
43
+ buySymbol: MinifiedSymbolModel;
44
+ constructor(soldSymbol: MinifiedSymbolModel, buySymbol: MinifiedSymbolModel);
45
+ }
@@ -0,0 +1,4 @@
1
+ export declare function isOnlyOneItem(total: number): boolean;
2
+ export declare function isLastItem(total: number, index: number): boolean;
3
+ export declare function isEmpty(value: unknown): boolean;
4
+ export declare function setupStore(initializer: () => void): void;
@@ -0,0 +1,10 @@
1
+ import { DirectiveBinding } from 'vue';
2
+ import { MountedDirective, UpdateDirective } from '../baseDirective';
3
+ export declare abstract class AccessControl implements MountedDirective, UpdateDirective {
4
+ protected accessService: any;
5
+ constructor();
6
+ mounted: (element: HTMLElement, binding: DirectiveBinding<string[]>) => void;
7
+ updated: (element: HTMLElement, binding: DirectiveBinding<string[]>) => void;
8
+ private checkAccess;
9
+ protected abstract hasAccess(accessLevels: string[]): boolean;
10
+ }
@@ -0,0 +1,13 @@
1
+ import { Initializer } from '../initializer/Initializer';
2
+ export declare class AccessLevel implements Initializer {
3
+ private static Instance;
4
+ private availableAccesses;
5
+ private constructor();
6
+ setAvailableAccesses(accessToAdd: string[]): void;
7
+ private setAccessListToStorage;
8
+ everyAccess(accessesToCheck: string[]): boolean;
9
+ someAccess(accessesToCheck: string[]): boolean;
10
+ clearAvailableAccesses(): void;
11
+ initialize(): void;
12
+ static GetInstance(): AccessLevel;
13
+ }
@@ -0,0 +1,3 @@
1
+ export interface Accessible {
2
+ hasAccess(): boolean;
3
+ }
@@ -0,0 +1,4 @@
1
+ import { AccessControl } from './AccessControl';
2
+ export declare class EveryAccess extends AccessControl {
3
+ protected hasAccess(accessLevels: string[]): boolean;
4
+ }
@@ -0,0 +1,17 @@
1
+ import { MountedDirective, UpdateDirective } from '../../baseDirective';
2
+ import { AuthorizationService } from './AuthorizationService';
3
+ export declare abstract class AuthorizationDirective implements MountedDirective, UpdateDirective {
4
+ protected _authorizationService: AuthorizationService;
5
+ constructor();
6
+ mounted(element: HTMLElement, binding: {
7
+ arg: string;
8
+ modifiers: Record<PropertyKey, boolean>;
9
+ }, _vnode: unknown): void;
10
+ updated(element: HTMLElement, binding: {
11
+ arg: string;
12
+ modifiers: Record<PropertyKey, boolean>;
13
+ }, _vnode: unknown): void;
14
+ private manageElement;
15
+ private getAccessLevels;
16
+ protected abstract hasAccess(scope: string, levels: string[]): boolean;
17
+ }
@@ -0,0 +1,17 @@
1
+ import { Initializer } from '../../initializer/Initializer';
2
+ export declare class AuthorizationService implements Initializer {
3
+ private static _instance;
4
+ private _accessLevels;
5
+ private constructor();
6
+ initialize(): void;
7
+ setAccessLevels(levels: Record<PropertyKey, string[]>): void;
8
+ private setAccessLevelsToStorage;
9
+ private getAccessLevelsFromStorage;
10
+ getAccessLevelsOfScope(scope: string): Set<string>;
11
+ private setAccessLevelFromStorage;
12
+ everyAccess(scope: string, levels: string[]): boolean;
13
+ someAccess(scope: string, levels: string[]): boolean;
14
+ hasScope(scope: string): boolean;
15
+ clear(): void;
16
+ static GetInstance(): AuthorizationService;
17
+ }
@@ -0,0 +1,4 @@
1
+ import { AuthorizationDirective } from './AuthorizationDirective';
2
+ export declare class EveryLevelAuthorizationDirective extends AuthorizationDirective {
3
+ protected hasAccess(scope: string, levels: string[]): boolean;
4
+ }
@@ -0,0 +1,4 @@
1
+ import { AuthorizationDirective } from './AuthorizationDirective';
2
+ export declare class SomeLevelsAuthorizationDirective extends AuthorizationDirective {
3
+ protected hasAccess(scope: string, levels: string[]): boolean;
4
+ }
@@ -0,0 +1,4 @@
1
+ import { AccessControl } from './AccessControl';
2
+ export declare class SomeAccess extends AccessControl {
3
+ protected hasAccess(accessLevels: string[]): boolean;
4
+ }
@@ -0,0 +1,9 @@
1
+ export { AccessLevel } from './AccessLevel';
2
+ export { AccessControl } from './AccessControl';
3
+ export type { Accessible } from './Accessible';
4
+ export { EveryAccess } from './EveryDirectiveAccess';
5
+ export { SomeAccess } from './SomeDirectiveAccess';
6
+ export * from './SSO/AuthorizationDirective';
7
+ export * from './SSO/AuthorizationService';
8
+ export * from './SSO/EveryLevelAuthorizationDirective';
9
+ export * from './SSO/SomeLevelsAuthorizationDirective';
@@ -0,0 +1,3 @@
1
+ export interface BeforeMountDirective {
2
+ beforeMount(el: unknown, binding: unknown, vnode: unknown): void;
3
+ }
@@ -0,0 +1,3 @@
1
+ export interface BeforeUnMountDirective {
2
+ beforeUnMount(element: unknown, binding: unknown, vnode: unknown): void;
3
+ }
@@ -0,0 +1,3 @@
1
+ export interface BeforeUpdateDirective {
2
+ beforeUpdate(element: unknown, binding: unknown, vnode: unknown): void;
3
+ }
@@ -0,0 +1,3 @@
1
+ export interface CreatedDirective {
2
+ created(element: unknown, binding: unknown, vnode: unknown): void;
3
+ }
@@ -0,0 +1,3 @@
1
+ export interface MountedDirective {
2
+ mounted(element: unknown, binding: unknown, vnode: unknown): void;
3
+ }
@@ -0,0 +1,3 @@
1
+ export interface UnMountedDirective {
2
+ unMounted(element: unknown, binding: unknown, vnode: unknown): void;
3
+ }
@@ -0,0 +1,3 @@
1
+ export interface UpdateDirective {
2
+ updated(element: unknown, binding: unknown, vnode: unknown): void;
3
+ }
@@ -0,0 +1,7 @@
1
+ export type { BeforeMountDirective } from './BeforeMountDirective';
2
+ export type { BeforeUnMountDirective } from './BeforeUnMountDirective';
3
+ export type { BeforeUpdateDirective } from './BeforeUpdateDirective';
4
+ export type { CreatedDirective } from './CreatedDirective';
5
+ export type { MountedDirective } from './MountedDirective';
6
+ export type { UnMountedDirective } from './UnMountedDirective';
7
+ export type { UpdateDirective } from './UpdateDirective';
@@ -0,0 +1,4 @@
1
+ import { RequestBodyFilter } from './RequestBodyFilter';
2
+ export declare class BaseRequestBodyFilter implements RequestBodyFilter<unknown> {
3
+ shouldBeInRequestBody(_value: unknown): boolean;
4
+ }
@@ -0,0 +1,18 @@
1
+ import { InputControl } from './InputControl';
2
+ import { BaseRequestBodyFilter } from './BaseRequestBodyFilter';
3
+ export declare class FormManager {
4
+ private _inputControls;
5
+ private _isValid;
6
+ private _id;
7
+ getInputControlsAsArray(): InputControl<unknown>[];
8
+ runValidation(shouldValidateInputControls?: boolean): Promise<void>;
9
+ addInputControls(inputControls: InputControl<unknown>[]): void;
10
+ getInputControl<T>(inputControlName: string): InputControl<T>;
11
+ resetControls(inputControlNames: string[]): void;
12
+ resetAll(): void;
13
+ createRequestBody<T>(requestBodyFilter?: BaseRequestBodyFilter): T;
14
+ setIsValid(isValid: boolean): void;
15
+ getIsValid(): boolean;
16
+ setId(id: number): void;
17
+ getId(): number;
18
+ }
@@ -0,0 +1,40 @@
1
+ import { Nullable } from '../types';
2
+ import { Validator } from '../validators';
3
+ export declare class InputControl<T> {
4
+ private initialData;
5
+ private data;
6
+ private _validators;
7
+ private _id;
8
+ constructor(name: string, value: Nullable<T>);
9
+ private shouldRunValidation;
10
+ runValidation(isBlur?: boolean): Promise<void>;
11
+ private setFormToInvalidState;
12
+ private setFormToValidState;
13
+ reset(): void;
14
+ markAsInitial(): void;
15
+ setValidators(validators: Validator<T>[]): void;
16
+ getChangeSensitive(): boolean;
17
+ setChangeSensitive(isChangeSensitive: boolean): void;
18
+ getIsBlurSensitive(): boolean;
19
+ setIsBlurSensitive(isBlurSensitive: boolean): void;
20
+ getIsRequired(): boolean;
21
+ setIsRequired(isRequired: boolean): void;
22
+ getIsValid(): boolean;
23
+ setIsValid(isValid: boolean): void;
24
+ getIsIncludeInRequestBody(): boolean;
25
+ setIsIncludeInRequestBody(isIncludeInRequestBody: boolean): void;
26
+ getNotValidMessage(): string;
27
+ setNotValidMessage(notValidMessage: string): void;
28
+ getName(): string;
29
+ setName(name: string): void;
30
+ setId(id: number): void;
31
+ getId(): number;
32
+ getIsEmptySensitive(): boolean;
33
+ setIsEmptySensitive(value: boolean): void;
34
+ setHasCustomValidationCheck(hasCustomCheck: boolean): void;
35
+ setShouldRemoveValidationOnInteract(value: boolean): void;
36
+ getShouldRemoveValidationOnInteract(): boolean;
37
+ hasCustomValidationCheck(): boolean;
38
+ set value(value: Nullable<T>);
39
+ get value(): Nullable<T>;
40
+ }
@@ -0,0 +1,16 @@
1
+ import { InputControl } from './InputControl';
2
+ import { Validator } from '../validators';
3
+ export declare class InputControlBuilder<T> {
4
+ private _inputControl;
5
+ constructor(inputControl: InputControl<T>);
6
+ setValidators(validators: Validator<T>[]): this;
7
+ setChangeSensitive(): this;
8
+ setRequired(): this;
9
+ setValid(): this;
10
+ setBlurSensitive(): this;
11
+ setId(id: number): this;
12
+ removeEmptySensitive(): this;
13
+ setHasCustomValidationCheck(): this;
14
+ removeErrorOnInteract(): this;
15
+ build(): InputControl<T>;
16
+ }
@@ -0,0 +1,15 @@
1
+ import { Nullable } from '../types';
2
+ export declare class InputControlData<T> {
3
+ value: Nullable<T>;
4
+ initialValue: Nullable<T>;
5
+ name: string;
6
+ isValid: boolean;
7
+ isBlurSensitive: boolean;
8
+ isRequired: boolean;
9
+ isIncludeInRequestBody: boolean;
10
+ isChangeSensitive: boolean;
11
+ notValidMessage: string;
12
+ isEmptySensitive: boolean;
13
+ hasCustomValidationCheck: boolean;
14
+ shouldRemoveValidationMessageOnInteract: boolean;
15
+ }
@@ -0,0 +1,3 @@
1
+ export interface RequestBodyFilter<T> {
2
+ shouldBeInRequestBody(value: T): boolean;
3
+ }
@@ -0,0 +1,9 @@
1
+ import { DirectiveBinding } from 'vue';
2
+ import { MountedDirective, BeforeUnMountDirective } from '../baseDirective';
3
+ import { InputControl } from './InputControl';
4
+ export declare class TouchSensitiveControl implements MountedDirective, BeforeUnMountDirective {
5
+ mounted: (element: HTMLInputElement, binding: DirectiveBinding<InputControl<unknown>>) => void;
6
+ beforeUnMount: (element: HTMLInputElement, binding: DirectiveBinding<InputControl<unknown>>) => void;
7
+ private handleBlur;
8
+ private handleFocus;
9
+ }
@@ -0,0 +1,18 @@
1
+ import { FormManager } from './FormManager';
2
+ import { FormValidationStatus } from '../constants';
3
+ export declare function useForm(form: FormManager, hasCustomValidation?: boolean): {
4
+ reactiveForm: {
5
+ getInputControlsAsArray: () => import('./InputControl').InputControl<unknown>[];
6
+ runValidation: (shouldValidateInputControls?: boolean) => Promise<void>;
7
+ addInputControls: (inputControls: import('./InputControl').InputControl<unknown>[]) => void;
8
+ getInputControl: <T>(inputControlName: string) => import('./InputControl').InputControl<T>;
9
+ resetControls: (inputControlNames: string[]) => void;
10
+ resetAll: () => void;
11
+ createRequestBody: <T>(requestBodyFilter?: import('./BaseRequestBodyFilter').BaseRequestBodyFilter) => T;
12
+ setIsValid: (isValid: boolean) => void;
13
+ getIsValid: () => boolean;
14
+ setId: (id: number) => void;
15
+ getId: () => number;
16
+ };
17
+ validationStatus: import('vue').Ref<FormValidationStatus, FormValidationStatus>;
18
+ };
@@ -0,0 +1,8 @@
1
+ export { InputControl } from './InputControl';
2
+ export { InputControlBuilder } from './InputControlBuilder';
3
+ export { InputControlData } from './InputControlData';
4
+ export { TouchSensitiveControl } from './TouchSensitiveForm';
5
+ export { FormManager } from './FormManager';
6
+ export { useForm } from './UseForm';
7
+ export { BaseRequestBodyFilter } from './BaseRequestBodyFilter';
8
+ export { type RequestBodyFilter } from './RequestBodyFilter';
@@ -0,0 +1,3 @@
1
+ export interface Schedule {
2
+ runAction: () => Promise<unknown>;
3
+ }
@@ -0,0 +1,8 @@
1
+ import { Schedule } from './Schedule';
2
+ export declare class Scheduler {
3
+ private timerId;
4
+ private readonly schedule;
5
+ constructor(scheduler: Schedule);
6
+ setupInterval(intervalInMilliseconds: number): void;
7
+ clearInterval(): void;
8
+ }
@@ -0,0 +1,2 @@
1
+ export { type Schedule } from './Schedule';
2
+ export { Scheduler } from './Scheduler';
@@ -0,0 +1,47 @@
1
+ import { SortDetail } from '../sort';
2
+ import { BaseModel } from '../BaseModel';
3
+ import { LoadingStatus } from '../constants';
4
+ import { Accessible } from '../accessHandling';
5
+ import { TableHeaderSchema } from './TableHeaderSchema';
6
+ import { TableService } from './TableService';
7
+ import { TableAction } from './TableAction';
8
+ import { Nullable } from '../types';
9
+ import { TableSummarySchema } from './TableSummarySchema.ts';
10
+ export declare abstract class BaseTable<Model extends BaseModel> {
11
+ protected service: TableService<Model>;
12
+ private accessService;
13
+ protected currentPage: number;
14
+ protected currentPageSize: number;
15
+ private currentSortDetail;
16
+ protected loadedRows: Model[];
17
+ headerSchema: TableHeaderSchema<Model>[];
18
+ protected constructor(service: TableService<Model>);
19
+ addHeader(schema: TableHeaderSchema<Model>): void;
20
+ load(): Promise<void>;
21
+ protected filterItemsBaseOnAccessLevel<T>(items: Accessible[]): T[];
22
+ sort(sortDetail: SortDetail<Model>): Promise<void>;
23
+ private shouldSendSortRequest;
24
+ paginate(nextPage: number, pageSize: number): Promise<void>;
25
+ private shouldSendPaginationRequest;
26
+ protected loadRows(): Promise<Model[]>;
27
+ getData(): import('./TableHeaderSchema').TableRenderingData<Model>;
28
+ protected handleSort(sortDetail: SortDetail<Model>): Promise<import('../repository').FetchListResponse<Model>>;
29
+ protected handlePagination(nextPage: number, pageSize: number): Promise<import('../repository').FetchListResponse<Model>>;
30
+ getItemCountPerPage(): number;
31
+ isLoading(): boolean;
32
+ protected getLoadingStatuses(): Set<LoadingStatus>;
33
+ hasAnyAction(): boolean;
34
+ getAccessedActions(row: Model): TableAction<Model>[];
35
+ protected getActions(row: Model): TableAction<Model>[];
36
+ getScrollDetail(): Nullable<boolean | {
37
+ x?: number;
38
+ y?: number;
39
+ }>;
40
+ isExpandable(): boolean;
41
+ handleClick(row: Model): Promise<void>;
42
+ handleMetaClick(row: Model): Promise<void>;
43
+ handleDoubleClick(row: Model): Promise<void>;
44
+ onDestroy(): Promise<void>;
45
+ loadHeader(): Promise<TableHeaderSchema<Model>[]>;
46
+ loadSummarySchema(): TableSummarySchema;
47
+ }
@@ -0,0 +1,13 @@
1
+ import { TableHeaderSchema } from './TableHeaderSchema';
2
+ import { BaseModel } from '../BaseModel';
3
+ import { CellType, HeaderType, TableHeaderAlign } from '../constants';
4
+ export declare const TABLE_COLUMN_DEFAULT_WIDTH = "150px";
5
+ export declare const TABLE_COLUMN_DEFAULT_COLSPAN = 2;
6
+ export declare const TABLE_ACTION_COLUMN: TableHeaderSchema<BaseModel>;
7
+ export declare const TABLE_COLUMN_DEFAULT_VALUES: {
8
+ width: string;
9
+ align: TableHeaderAlign;
10
+ headerType: HeaderType;
11
+ cellType: CellType;
12
+ colspan: number;
13
+ };
@@ -0,0 +1,3 @@
1
+ export interface Destroy {
2
+ onDestroy(): Promise<void>;
3
+ }
@@ -0,0 +1,4 @@
1
+ import { TableAction } from './TableAction';
2
+ export interface RowActionSource<Model, A> {
3
+ getActions(): TableAction<Model, A>[];
4
+ }
@@ -0,0 +1,3 @@
1
+ export interface RowClick<Model> {
2
+ handleClick(row: Model): Promise<void>;
3
+ }
@@ -0,0 +1,3 @@
1
+ export interface RowDoubleClick<Model> {
2
+ handleDoubleClick(row: Model): Promise<void>;
3
+ }
@@ -0,0 +1,3 @@
1
+ export interface RowMetaClick<Model> {
2
+ handleMetaClick(row: Model): Promise<void>;
3
+ }
@@ -0,0 +1,19 @@
1
+ import { BaseTable } from './BaseTable';
2
+ import { BehaviorSubject } from '../observables/BehaviorSubject';
3
+ import { SortDetail } from '../sort';
4
+ import { BaseModel } from '../BaseModel';
5
+ import { TableService } from './TableService';
6
+ export declare abstract class SelectableTable<Model extends BaseModel> extends BaseTable<Model> {
7
+ selectedRows: BehaviorSubject<Map<number, Model>>;
8
+ constructor(service: TableService<Model>);
9
+ rowSelect(row: Model): void;
10
+ selectAll(): void;
11
+ private isEveryRowSelected;
12
+ protected handlePagination(nextPage: number, pageSize: number): Promise<import('../repository').FetchListResponse<Model>>;
13
+ protected handleSort(sortDetail: SortDetail<Model>): Promise<import('../repository').FetchListResponse<Model>>;
14
+ clearAllSelectedItems(): void;
15
+ getSelectedRows(): BehaviorSubject<Map<number, Model>>;
16
+ getSelectedRowsAsArray(): Model[];
17
+ getSelectedRowIds(): number[];
18
+ getSelectedRowsValue(): Map<number, Model>;
19
+ }
@@ -0,0 +1,8 @@
1
+ import { Accessible } from '../accessHandling';
2
+ export interface TableAction<Model> extends Accessible {
3
+ readonly actionName: string;
4
+ handler(row: Model): Promise<void>;
5
+ }
6
+ export interface ActionDecorator<Model> extends TableAction<Model> {
7
+ isAvailable(model: Model): boolean;
8
+ }
@@ -0,0 +1,27 @@
1
+ import { CellType, HeaderType, LoadingStatus, SortOrder, TableHeaderAlign } from '../constants';
2
+ import { Accessible } from '../accessHandling';
3
+ export interface TableHeaderSchema<Model> extends Accessible {
4
+ path?: keyof Model;
5
+ title: string;
6
+ getProps?: (row: Model) => Record<string, unknown>;
7
+ key: keyof Model;
8
+ cellType?: CellType | string;
9
+ align?: TableHeaderAlign;
10
+ headerType?: HeaderType;
11
+ colspan?: number;
12
+ width?: string | number;
13
+ ellipsis?: boolean;
14
+ maxWidth?: number;
15
+ minWidth?: number;
16
+ resizable?: boolean;
17
+ sortOrder?: SortOrder;
18
+ sorter?: boolean;
19
+ }
20
+ export interface TableRenderingData<Model> {
21
+ totalItems: number;
22
+ currentPage: number;
23
+ rows: Model[];
24
+ loadingStatus: Set<LoadingStatus>;
25
+ currentPageItems: Model[];
26
+ }
27
+ export declare function generateHeader<Model>(header: TableHeaderSchema<Model>): TableHeaderSchema<Model>;
@@ -0,0 +1,3 @@
1
+ export interface TableLoader<Model> {
2
+ loadRows(): Promise<Model>;
3
+ }
@@ -0,0 +1,3 @@
1
+ export interface TablePaginate {
2
+ handlePagination(nextPage: number, pageSize: number): Promise<void>;
3
+ }
@@ -0,0 +1,9 @@
1
+ import { SortDetail } from '../sort';
2
+ import { FetchListResponse } from '../repository/model';
3
+ import { TableRenderingData } from './TableHeaderSchema';
4
+ export interface TableService<Model> {
5
+ fetchRows(): Promise<FetchListResponse<Model>>;
6
+ paginate(nextPage: number, pageSize: number): Promise<FetchListResponse<Model>>;
7
+ sort(sortDetail: SortDetail<Model>): Promise<FetchListResponse<Model>>;
8
+ getData(): TableRenderingData<Model>;
9
+ }
@@ -0,0 +1,4 @@
1
+ import { SortDetail } from '../sort';
2
+ export interface TableSort<Model> {
3
+ handleSort(sortDetail: SortDetail<Model>): Promise<void>;
4
+ }
@@ -0,0 +1,9 @@
1
+ import { TableHeaderAlign } from '../constants';
2
+ export interface TableSummaryItem {
3
+ data: string | number;
4
+ align: TableHeaderAlign;
5
+ }
6
+ export interface TableSummarySchema {
7
+ summaryTitle: string;
8
+ summaryItems: TableSummaryItem[];
9
+ }
@@ -0,0 +1,14 @@
1
+ import { TableGenerator } from './TableGenerator';
2
+ import { TableSource } from './TableSource';
3
+ import { BehaviorSubject } from '../../observables';
4
+ export declare class SelectableTableGenerator<T> extends TableGenerator<T> {
5
+ selectedRows: BehaviorSubject<Map<number, T>>;
6
+ constructor(tableSource: TableSource<T>);
7
+ selectRow(row: T): void;
8
+ selectAll(): void;
9
+ private isEveryRowSelected;
10
+ clearAllSelectedItems(): void;
11
+ getSelectedRows(): Map<number, T>;
12
+ getSelectedRowsAsArray(): T[];
13
+ getSelectedRowIds(): number[];
14
+ }
@@ -0,0 +1,7 @@
1
+ import { Initializer } from '../../initializer';
2
+ export declare abstract class TableCellComponentRegistry implements Initializer {
3
+ private registeredComponents;
4
+ initialize(): void;
5
+ protected abstract registerComponents(): void;
6
+ getRegisteredComponents(): Map<string, unknown>;
7
+ }
@@ -0,0 +1,7 @@
1
+ import { TableCellComponentRegistry } from './TableCellComponentRegistry';
2
+ export declare class TableConfig {
3
+ private cellComponentRegistry;
4
+ constructor();
5
+ setCellComponentRegistry(registry: TableCellComponentRegistry): void;
6
+ getCellComponentRegistry(): TableCellComponentRegistry;
7
+ }
@@ -0,0 +1,37 @@
1
+ import { BehaviorSubject } from '../../observables';
2
+ import { SortDetail } from '../../sort';
3
+ import { TableHeaderSchema } from '../TableHeaderSchema';
4
+ import { Nullable } from '../../types';
5
+ import { TableSummarySchema } from '../TableSummarySchema';
6
+ import { TableSource } from './TableSource';
7
+ import { AccessLevel } from '../../accessHandling';
8
+ import { TableAction } from '../TableAction';
9
+ export declare class TableGenerator<T> {
10
+ rows: BehaviorSubject<T[]>;
11
+ headerSchema: BehaviorSubject<TableHeaderSchema<T>[]>;
12
+ currentPage: BehaviorSubject<number>;
13
+ currentPageSize: BehaviorSubject<number>;
14
+ totalItems: BehaviorSubject<number>;
15
+ protected currentSortDetail: BehaviorSubject<SortDetail<T>>;
16
+ scrollDetail: BehaviorSubject<Nullable<boolean | {
17
+ x?: number;
18
+ y?: number;
19
+ }>>;
20
+ isExpandable: BehaviorSubject<boolean>;
21
+ protected tableSource: TableSource<T>;
22
+ protected accessService: AccessLevel;
23
+ constructor(tableSource: TableSource<T>);
24
+ load(): Promise<void>;
25
+ paginate(nextPage: number, pageSize: number): Promise<void>;
26
+ private shouldSendPaginationRequest;
27
+ sort(sortDetail: SortDetail<T>): Promise<void>;
28
+ private shouldSendSortRequest;
29
+ handleClick(row: T): Promise<void>;
30
+ handleMetaClick(row: T): Promise<void>;
31
+ handleDoubleClick(row: T): Promise<void>;
32
+ hasAnyAction(): boolean;
33
+ getRowActions(row: T): TableAction<T>[];
34
+ loadSummarySchema(): TableSummarySchema;
35
+ private filterItemsBaseOnAccessLevel;
36
+ onDestroy(): Promise<void>;
37
+ }