r3ui-lib 1.3.10 → 1.3.12

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 (61) hide show
  1. package/CHANGELOG.md +191 -0
  2. package/dist/r3ui-lib.css +1 -1
  3. package/dist/r3ui-lib.es.js +10784 -9303
  4. package/dist/r3ui-lib.umd.js +32 -32
  5. package/dist/types/components/modals/TableFilterModalShell.vue.d.ts +1 -1
  6. package/dist/types/components/modals/TableFilterModalShell.vue.d.ts.map +1 -1
  7. package/dist/types/components/tables/EditTableColumns.vue.d.ts +4 -0
  8. package/dist/types/components/tables/EditTableColumns.vue.d.ts.map +1 -1
  9. package/dist/types/components/tables/Table.vue.d.ts.map +1 -1
  10. package/dist/types/components/tables/TableColumnsButton.vue.d.ts +8 -20
  11. package/dist/types/components/tables/TableColumnsButton.vue.d.ts.map +1 -1
  12. package/dist/types/components/tables/TableColumnsDialog.vue.d.ts +12 -0
  13. package/dist/types/components/tables/TableColumnsDialog.vue.d.ts.map +1 -0
  14. package/dist/types/components/tables/TableColumnsModal.vue.d.ts +8 -20
  15. package/dist/types/components/tables/TableColumnsModal.vue.d.ts.map +1 -1
  16. package/dist/types/components/tables/tableColumnsDialog.types.d.ts +26 -0
  17. package/dist/types/components/tables/tableColumnsDialog.types.d.ts.map +1 -0
  18. package/dist/types/composables/table/createTableCommandScheduler.d.ts +29 -0
  19. package/dist/types/composables/table/createTableCommandScheduler.d.ts.map +1 -0
  20. package/dist/types/composables/table/createTableLifecycle.d.ts +118 -0
  21. package/dist/types/composables/table/createTableLifecycle.d.ts.map +1 -0
  22. package/dist/types/composables/table/createTableRebuildTransaction.d.ts +33 -0
  23. package/dist/types/composables/table/createTableRebuildTransaction.d.ts.map +1 -0
  24. package/dist/types/composables/table/createTableSession.d.ts +17 -0
  25. package/dist/types/composables/table/createTableSession.d.ts.map +1 -0
  26. package/dist/types/composables/table/createTableState.d.ts +109 -0
  27. package/dist/types/composables/table/createTableState.d.ts.map +1 -0
  28. package/dist/types/composables/table/createTabulatorAdapter.d.ts +27 -0
  29. package/dist/types/composables/table/createTabulatorAdapter.d.ts.map +1 -0
  30. package/dist/types/composables/table/useManagedRemoteTable.d.ts +134 -0
  31. package/dist/types/composables/table/useManagedRemoteTable.d.ts.map +1 -0
  32. package/dist/types/composables/table/useRemoteTable.d.ts +52 -27
  33. package/dist/types/composables/table/useRemoteTable.d.ts.map +1 -1
  34. package/dist/types/composables/table/useTableColumnApply.d.ts +11 -0
  35. package/dist/types/composables/table/useTableColumnApply.d.ts.map +1 -0
  36. package/dist/types/composables/table/useTableColumns.d.ts +6 -0
  37. package/dist/types/composables/table/useTableColumns.d.ts.map +1 -1
  38. package/dist/types/composables/table/useTableColumnsEnhanced.d.ts +4 -0
  39. package/dist/types/composables/table/useTableColumnsEnhanced.d.ts.map +1 -1
  40. package/dist/types/composables/table/useTableColumnsIntegration.d.ts +4 -0
  41. package/dist/types/composables/table/useTableColumnsIntegration.d.ts.map +1 -1
  42. package/dist/types/composables/table/useTableDefault.d.ts +26 -19
  43. package/dist/types/composables/table/useTableDefault.d.ts.map +1 -1
  44. package/dist/types/main.d.ts +16 -7
  45. package/dist/types/main.d.ts.map +1 -1
  46. package/dist/types/types/table.d.ts +35 -2
  47. package/dist/types/types/table.d.ts.map +1 -1
  48. package/dist/types/types/tableInjectKeys.d.ts +14 -12
  49. package/dist/types/types/tableInjectKeys.d.ts.map +1 -1
  50. package/dist/types/types/tableInstance.d.ts +10 -0
  51. package/dist/types/types/tableInstance.d.ts.map +1 -0
  52. package/dist/types/utils/tableAdapter.d.ts +64 -4
  53. package/dist/types/utils/tableAdapter.d.ts.map +1 -1
  54. package/dist/types/utils/tableCancellation.d.ts.map +1 -1
  55. package/dist/types/utils/tableColumnStorage.d.ts +16 -0
  56. package/dist/types/utils/tableColumnStorage.d.ts.map +1 -0
  57. package/dist/types/utils/tableLoad.d.ts +14 -8
  58. package/dist/types/utils/tableLoad.d.ts.map +1 -1
  59. package/dist/types/utils/tableOperation.d.ts +43 -0
  60. package/dist/types/utils/tableOperation.d.ts.map +1 -0
  61. package/package.json +1 -1
@@ -6,7 +6,7 @@ type __VLS_Props = {
6
6
  modalTitle?: string;
7
7
  };
8
8
  declare function onReset(): void;
9
- declare function onApply(): void;
9
+ declare function onApply(): void | Promise<void>;
10
10
  declare var __VLS_16: {}, __VLS_23: {
11
11
  reset: typeof onReset;
12
12
  apply: typeof onApply;
@@ -1 +1 @@
1
- {"version":3,"file":"TableFilterModalShell.vue.d.ts","sourceRoot":"","sources":["../../../../src/components/modals/TableFilterModalShell.vue"],"names":[],"mappings":"AA8GA,KAAK,WAAW,GAAG;IACf,sBAAsB,CAAC,EAAE,MAAM,CAAC;IAChC,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB,CAAC;AAmBJ,iBAAS,OAAO,SAIf;AAMD,iBAAS,OAAO,SAef;AAwJD,QAAA,IAAI,QAAQ,IAAW,EAAE,QAAQ;;;CAAY,CAAE;AAC/C,KAAK,WAAW,GAAG,EAAE,GACnB;IAAE,MAAM,CAAC,EAAE,CAAC,KAAK,EAAE,OAAO,QAAQ,KAAK,GAAG,CAAA;CAAE,GAC5C;IAAE,MAAM,CAAC,EAAE,CAAC,KAAK,EAAE,OAAO,QAAQ,KAAK,GAAG,CAAA;CAAE,CAAC;AA0B/C,QAAA,MAAM,eAAe;;;;;iBArOH,MAAM;gBACP,MAAM;gBACN,MAAM;gBACN,MAAM;6EAsOrB,CAAC;wBACkB,eAAe,CAAC,OAAO,eAAe,EAAE,WAAW,CAAC;AAAzE,wBAA0E;AAY1E,KAAK,eAAe,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,GAAG;IAChC,QAAO;QACN,MAAM,EAAE,CAAC,CAAC;KAEV,CAAA;CACD,CAAC"}
1
+ {"version":3,"file":"TableFilterModalShell.vue.d.ts","sourceRoot":"","sources":["../../../../src/components/modals/TableFilterModalShell.vue"],"names":[],"mappings":"AAmHA,KAAK,WAAW,GAAG;IACf,sBAAsB,CAAC,EAAE,MAAM,CAAC;IAChC,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB,CAAC;AAmBJ,iBAAS,OAAO,SAIf;AAUD,iBAAS,OAAO,yBAgBf;AAwJD,QAAA,IAAI,QAAQ,IAAW,EAAE,QAAQ;;;CAAY,CAAE;AAC/C,KAAK,WAAW,GAAG,EAAE,GACnB;IAAE,MAAM,CAAC,EAAE,CAAC,KAAK,EAAE,OAAO,QAAQ,KAAK,GAAG,CAAA;CAAE,GAC5C;IAAE,MAAM,CAAC,EAAE,CAAC,KAAK,EAAE,OAAO,QAAQ,KAAK,GAAG,CAAA;CAAE,CAAC;AA0B/C,QAAA,MAAM,eAAe;;;;;iBA1OH,MAAM;gBACP,MAAM;gBACN,MAAM;gBACN,MAAM;6EA2OrB,CAAC;wBACkB,eAAe,CAAC,OAAO,eAAe,EAAE,WAAW,CAAC;AAAzE,wBAA0E;AAY1E,KAAK,eAAe,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,GAAG;IAChC,QAAO;QACN,MAAM,EAAE,CAAC,CAAC;KAEV,CAAA;CACD,CAAC"}
@@ -7,6 +7,8 @@ interface Props {
7
7
  title?: string;
8
8
  modalVisibility: boolean;
9
9
  columns: Column[];
10
+ applying?: boolean;
11
+ errorText?: string;
10
12
  applyText?: string;
11
13
  selectAllText?: string;
12
14
  unselectAllText?: string;
@@ -27,6 +29,8 @@ declare const _default: import("vue").DefineComponent<Props, {}, {}, {}, {}, imp
27
29
  title: string;
28
30
  modalVisibility: boolean;
29
31
  columns: Column[];
32
+ applying: boolean;
33
+ errorText: string;
30
34
  applyText: string;
31
35
  selectAllText: string;
32
36
  unselectAllText: string;
@@ -1 +1 @@
1
- {"version":3,"file":"EditTableColumns.vue.d.ts","sourceRoot":"","sources":["../../../../src/components/tables/EditTableColumns.vue"],"names":[],"mappings":"AAuKA,UAAU,MAAM;IACd,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,OAAO,CAAC;CAClB;AAED,UAAU,KAAK;IACb,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,eAAe,EAAE,OAAO,CAAC;IACzB,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,eAAe,CAAC,EAAE,MAAM,CAAC;CAC1B;;;;;;;;;;;;;;WANS,MAAM;qBACG,OAAO;aACf,MAAM,EAAE;eACL,MAAM;mBACF,MAAM;qBACJ,MAAM;;AAoR1B,wBAIG"}
1
+ {"version":3,"file":"EditTableColumns.vue.d.ts","sourceRoot":"","sources":["../../../../src/components/tables/EditTableColumns.vue"],"names":[],"mappings":"AA0LA,UAAU,MAAM;IACd,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,OAAO,CAAC;CAClB;AAED,UAAU,KAAK;IACb,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,eAAe,EAAE,OAAO,CAAC;IACzB,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,eAAe,CAAC,EAAE,MAAM,CAAC;CAC1B;;;;;;;;;;;;;;WARS,MAAM;qBACG,OAAO;aACf,MAAM,EAAE;cACN,OAAO;eACN,MAAM;eACN,MAAM;mBACF,MAAM;qBACJ,MAAM;;AA0R1B,wBAIG"}
@@ -1 +1 @@
1
- {"version":3,"file":"Table.vue.d.ts","sourceRoot":"","sources":["../../../../src/components/tables/Table.vue"],"names":[],"mappings":"AA6+BA,OAAO,EAIL,KAAK,OAAO,EAEb,MAAM,kBAAkB,CAAC;AAC1B,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,KAAK,CAAC;AAGpC,UAAU,YAAY;IACpB,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAC;CACpB;AAgmCD,QAAA,IAAI,OAAO,IAAW,CAAE;AACxB,KAAK,WAAW,GAAG,EAAE,GACnB;IAAE,mBAAmB,CAAC,EAAE,CAAC,KAAK,EAAE,OAAO,OAAO,KAAK,GAAG,CAAA;CAAE,CAAC;AA6D3D,QAAA,MAAM,eAAe;;cAGM,QAAQ,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;;;;;;;;;;;;;;;;;;;;;;;;cAOjC,QAAQ,CAAC,OAAO,CAAC;;;;;cAKE,QAAQ,CAAC,OAAO,CAAC,eAAe,CAAC,CAAC;;;;cAG3C,QAAQ,CAAC,YAAY,EAAE,CAAC;;;;;;;;;;;;cAGd,QAAQ,CAAC,GAAG,EAAE,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;cAlB5B,QAAQ,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;;;;;;;;;;;;;;;;;;;;;;;;cAOjC,QAAQ,CAAC,OAAO,CAAC;;;;;cAKE,QAAQ,CAAC,OAAO,CAAC,eAAe,CAAC,CAAC;;;;cAG3C,QAAQ,CAAC,YAAY,EAAE,CAAC;;;;;;;;;;;;cAGd,QAAQ,CAAC,GAAG,EAAE,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4EASrD,CAAC;wBACkB,eAAe,CAAC,OAAO,eAAe,EAAE,WAAW,CAAC;AAAzE,wBAA0E;AAE1E,KAAK,eAAe,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,GAAG;IAChC,QAAO;QACN,MAAM,EAAE,CAAC,CAAC;KAEV,CAAA;CACD,CAAC"}
1
+ {"version":3,"file":"Table.vue.d.ts","sourceRoot":"","sources":["../../../../src/components/tables/Table.vue"],"names":[],"mappings":"AAy/BA,OAAO,EAIL,KAAK,OAAO,EAEb,MAAM,kBAAkB,CAAC;AAC1B,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,KAAK,CAAC;AAGpC,UAAU,YAAY;IACpB,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAC;CACpB;AA4mCD,QAAA,IAAI,OAAO,IAAW,CAAE;AACxB,KAAK,WAAW,GAAG,EAAE,GACnB;IAAE,mBAAmB,CAAC,EAAE,CAAC,KAAK,EAAE,OAAO,OAAO,KAAK,GAAG,CAAA;CAAE,CAAC;AA6D3D,QAAA,MAAM,eAAe;;cAGM,QAAQ,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;;;;;;;;;;;;;;;;;;;;;;;;cAOjC,QAAQ,CAAC,OAAO,CAAC;;;;;cAKE,QAAQ,CAAC,OAAO,CAAC,eAAe,CAAC,CAAC;;;;cAG3C,QAAQ,CAAC,YAAY,EAAE,CAAC;;;;;;;;;;;;cAGd,QAAQ,CAAC,GAAG,EAAE,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;cAlB5B,QAAQ,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;;;;;;;;;;;;;;;;;;;;;;;;cAOjC,QAAQ,CAAC,OAAO,CAAC;;;;;cAKE,QAAQ,CAAC,OAAO,CAAC,eAAe,CAAC,CAAC;;;;cAG3C,QAAQ,CAAC,YAAY,EAAE,CAAC;;;;;;;;;;;;cAGd,QAAQ,CAAC,GAAG,EAAE,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4EASrD,CAAC;wBACkB,eAAe,CAAC,OAAO,eAAe,EAAE,WAAW,CAAC;AAAzE,wBAA0E;AAE1E,KAAK,eAAe,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,GAAG;IAChC,QAAO;QACN,MAAM,EAAE,CAAC,CAAC;KAEV,CAAA;CACD,CAAC"}
@@ -1,30 +1,18 @@
1
- import { type Ref } from 'vue';
2
- import type { TableColumn, TableOptions } from '../../types/table';
3
- interface Props {
4
- /** Колонки таблицы */
5
- columns: TableColumn[];
6
- /** Опции таблицы для прямого обновления */
7
- tableOptions?: Ref<TableOptions>;
8
- /** Заголовок модального окна */
9
- title?: string;
10
- /** Текст кнопки "Применить" */
11
- applyText?: string;
12
- /** Текст кнопки "Выбрать все" */
13
- selectAllText?: string;
14
- /** Текст кнопки "Снять все" */
15
- unselectAllText?: string;
16
- }
17
- declare const _default: import("vue").DefineComponent<Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
1
+ import type { TableColumnsDialogProps } from "./tableColumnsDialog.types";
2
+ declare const _default: import("vue").DefineComponent<TableColumnsDialogProps, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
18
3
  apply: () => any;
19
- "columns-changed": (columns: TableColumn[]) => any;
20
- }, string, import("vue").PublicProps, Readonly<Props> & Readonly<{
4
+ "columns-changed": (columns: import("../../main.js").TableColumn[]) => any;
5
+ "apply-error": (error: unknown) => any;
6
+ }, string, import("vue").PublicProps, Readonly<TableColumnsDialogProps> & Readonly<{
21
7
  onApply?: (() => any) | undefined;
22
- "onColumns-changed"?: ((columns: TableColumn[]) => any) | undefined;
8
+ "onColumns-changed"?: ((columns: import("../../main.js").TableColumn[]) => any) | undefined;
9
+ "onApply-error"?: ((error: unknown) => any) | undefined;
23
10
  }>, {
24
11
  title: string;
25
12
  applyText: string;
26
13
  selectAllText: string;
27
14
  unselectAllText: string;
15
+ applyErrorText: string;
28
16
  }, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
29
17
  export default _default;
30
18
  //# sourceMappingURL=TableColumnsButton.vue.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"TableColumnsButton.vue.d.ts","sourceRoot":"","sources":["../../../../src/components/tables/TableColumnsButton.vue"],"names":[],"mappings":"AAsFA,OAAO,EAAS,KAAK,GAAG,EAAE,MAAM,KAAK,CAAA;AAIrC,OAAO,KAAK,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAA;AAElE,UAAU,KAAK;IACX,sBAAsB;IACtB,OAAO,EAAE,WAAW,EAAE,CAAA;IACtB,2CAA2C;IAC3C,YAAY,CAAC,EAAE,GAAG,CAAC,YAAY,CAAC,CAAA;IAChC,gCAAgC;IAChC,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,+BAA+B;IAC/B,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,iCAAiC;IACjC,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB,+BAA+B;IAC/B,eAAe,CAAC,EAAE,MAAM,CAAA;CAC3B;;;;;;;;WAPW,MAAM;eAEF,MAAM;mBAEF,MAAM;qBAEJ,MAAM;;AAsK5B,wBAIG"}
1
+ {"version":3,"file":"TableColumnsButton.vue.d.ts","sourceRoot":"","sources":["../../../../src/components/tables/TableColumnsButton.vue"],"names":[],"mappings":"AA6BA,OAAO,KAAK,EACV,uBAAuB,EAExB,MAAM,4BAA4B,CAAC;;;;;;;;;;;;;;;;AAyFpC,wBAIG"}
@@ -0,0 +1,12 @@
1
+ import type { TableColumnsDialogProps } from "./tableColumnsDialog.types";
2
+ declare const _default: import("vue").DefineComponent<TableColumnsDialogProps, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
3
+ apply: () => any;
4
+ "columns-changed": (columns: import("../../main.js").TableColumn[]) => any;
5
+ "apply-error": (error: unknown) => any;
6
+ }, string, import("vue").PublicProps, Readonly<TableColumnsDialogProps> & Readonly<{
7
+ onApply?: (() => any) | undefined;
8
+ "onColumns-changed"?: ((columns: import("../../main.js").TableColumn[]) => any) | undefined;
9
+ "onApply-error"?: ((error: unknown) => any) | undefined;
10
+ }>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
11
+ export default _default;
12
+ //# sourceMappingURL=TableColumnsDialog.vue.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TableColumnsDialog.vue.d.ts","sourceRoot":"","sources":["../../../../src/components/tables/TableColumnsDialog.vue"],"names":[],"mappings":"AA6EA,OAAO,KAAK,EACV,uBAAuB,EAExB,MAAM,4BAA4B,CAAC;;;;;;;;;;AAwIpC,wBAGG"}
@@ -1,30 +1,18 @@
1
- import { type Ref } from 'vue';
2
- import type { TableColumn, TableOptions } from '../../types/table';
3
- interface Props {
4
- /** Колонки таблицы */
5
- columns: TableColumn[];
6
- /** Опции таблицы для прямого обновления */
7
- tableOptions?: Ref<TableOptions>;
8
- /** Заголовок модального окна */
9
- title?: string;
10
- /** Текст кнопки "Применить" */
11
- applyText?: string;
12
- /** Текст кнопки "Выбрать все" */
13
- selectAllText?: string;
14
- /** Текст кнопки "Снять все" */
15
- unselectAllText?: string;
16
- }
17
- declare const _default: import("vue").DefineComponent<Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
1
+ import type { TableColumnsDialogProps } from "./tableColumnsDialog.types";
2
+ declare const _default: import("vue").DefineComponent<TableColumnsDialogProps, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
18
3
  apply: () => any;
19
- "columns-changed": (columns: TableColumn[]) => any;
20
- }, string, import("vue").PublicProps, Readonly<Props> & Readonly<{
4
+ "columns-changed": (columns: import("../../main.js").TableColumn[]) => any;
5
+ "apply-error": (error: unknown) => any;
6
+ }, string, import("vue").PublicProps, Readonly<TableColumnsDialogProps> & Readonly<{
21
7
  onApply?: (() => any) | undefined;
22
- "onColumns-changed"?: ((columns: TableColumn[]) => any) | undefined;
8
+ "onColumns-changed"?: ((columns: import("../../main.js").TableColumn[]) => any) | undefined;
9
+ "onApply-error"?: ((error: unknown) => any) | undefined;
23
10
  }>, {
24
11
  title: string;
25
12
  applyText: string;
26
13
  selectAllText: string;
27
14
  unselectAllText: string;
15
+ applyErrorText: string;
28
16
  }, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
29
17
  export default _default;
30
18
  //# sourceMappingURL=TableColumnsModal.vue.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"TableColumnsModal.vue.d.ts","sourceRoot":"","sources":["../../../../src/components/tables/TableColumnsModal.vue"],"names":[],"mappings":"AAiFA,OAAO,EAAS,KAAK,GAAG,EAAE,MAAM,KAAK,CAAA;AAIrC,OAAO,KAAK,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAA;AAElE,UAAU,KAAK;IACX,sBAAsB;IACtB,OAAO,EAAE,WAAW,EAAE,CAAA;IACtB,2CAA2C;IAC3C,YAAY,CAAC,EAAE,GAAG,CAAC,YAAY,CAAC,CAAA;IAChC,gCAAgC;IAChC,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,+BAA+B;IAC/B,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,iCAAiC;IACjC,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB,+BAA+B;IAC/B,eAAe,CAAC,EAAE,MAAM,CAAA;CAC3B;;;;;;;;WAPW,MAAM;eAEF,MAAM;mBAEF,MAAM;qBAEJ,MAAM;;AAoK5B,wBAIG"}
1
+ {"version":3,"file":"TableColumnsModal.vue.d.ts","sourceRoot":"","sources":["../../../../src/components/tables/TableColumnsModal.vue"],"names":[],"mappings":"AA6BA,OAAO,KAAK,EACV,uBAAuB,EAExB,MAAM,4BAA4B,CAAC;;;;;;;;;;;;;;;;AAyFpC,wBAIG"}
@@ -0,0 +1,26 @@
1
+ import type { TableColumn, ApplyTableColumns } from "../../types/table";
2
+ export interface TableColumnsDialogProps {
3
+ /** Колонки таблицы */
4
+ columns: TableColumn[];
5
+ /** Владелец сохраняет и применяет настройки; ошибка сохраняет черновик. */
6
+ applyColumns: ApplyTableColumns;
7
+ /** Устойчивый ключ языка и контекста таблицы; не ссылка на массив колонок. */
8
+ applyContext?: string | number;
9
+ applyErrorText?: string;
10
+ /** Заголовок модального окна */
11
+ title?: string;
12
+ /** Текст кнопки "Применить" */
13
+ applyText?: string;
14
+ /** Текст кнопки "Выбрать все" */
15
+ selectAllText?: string;
16
+ /** Текст кнопки "Снять все" */
17
+ unselectAllText?: string;
18
+ }
19
+ export interface TableColumnsDialogEvents {
20
+ /** Событие изменения колонок */
21
+ "columns-changed": [columns: TableColumn[]];
22
+ /** Событие применения изменений */
23
+ apply: [];
24
+ "apply-error": [error: unknown];
25
+ }
26
+ //# sourceMappingURL=tableColumnsDialog.types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tableColumnsDialog.types.d.ts","sourceRoot":"","sources":["../../../../src/components/tables/tableColumnsDialog.types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AAExE,MAAM,WAAW,uBAAuB;IACtC,sBAAsB;IACtB,OAAO,EAAE,WAAW,EAAE,CAAC;IACvB,2EAA2E;IAC3E,YAAY,EAAE,iBAAiB,CAAC;IAChC,8EAA8E;IAC9E,YAAY,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAC/B,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,gCAAgC;IAChC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,+BAA+B;IAC/B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,iCAAiC;IACjC,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,+BAA+B;IAC/B,eAAe,CAAC,EAAE,MAAM,CAAC;CAC1B;AAED,MAAM,WAAW,wBAAwB;IACvC,gCAAgC;IAChC,iBAAiB,EAAE,CAAC,OAAO,EAAE,WAAW,EAAE,CAAC,CAAC;IAC5C,mCAAmC;IACnC,KAAK,EAAE,EAAE,CAAC;IACV,aAAa,EAAE,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;CACjC"}
@@ -0,0 +1,29 @@
1
+ import { type TableOperation, type TableOperationGuard, type TableOperationKind, type TableOperationResult } from "../../utils/tableOperation";
2
+ type CommandPhase = "queued" | "running" | "settled";
3
+ export interface TableCommand<Context> {
4
+ readonly operation: TableOperation<Context>;
5
+ readonly result: Promise<TableOperationResult>;
6
+ readonly phase: CommandPhase;
7
+ start(): boolean;
8
+ finish(result: TableOperationResult): void;
9
+ fail(error: unknown): void;
10
+ }
11
+ /** Одна текущая команда; результат и подписки завершаются ровно один раз независимо от исполнителя. */
12
+ export declare function createTableCommandScheduler<Context>(): {
13
+ schedule: (options: {
14
+ kind: TableOperationKind;
15
+ generation: number;
16
+ revision: number;
17
+ context?: Context;
18
+ external?: TableOperationGuard;
19
+ signal?: AbortSignal;
20
+ signals?: readonly AbortSignal[];
21
+ isCurrent(): boolean;
22
+ }) => TableCommand<Context>;
23
+ invalidate: (reason?: "cancelled" | "superseded") => void;
24
+ pause(): void;
25
+ resume(): void;
26
+ dispose(): void;
27
+ };
28
+ export {};
29
+ //# sourceMappingURL=createTableCommandScheduler.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"createTableCommandScheduler.d.ts","sourceRoot":"","sources":["../../../../src/composables/table/createTableCommandScheduler.ts"],"names":[],"mappings":"AAAA,OAAO,EAGL,KAAK,cAAc,EACnB,KAAK,mBAAmB,EACxB,KAAK,kBAAkB,EACvB,KAAK,oBAAoB,EAC1B,MAAM,4BAA4B,CAAC;AAEpC,KAAK,YAAY,GAAG,QAAQ,GAAG,SAAS,GAAG,SAAS,CAAC;AACrD,MAAM,WAAW,YAAY,CAAC,OAAO;IACnC,QAAQ,CAAC,SAAS,EAAE,cAAc,CAAC,OAAO,CAAC,CAAC;IAC5C,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC,oBAAoB,CAAC,CAAC;IAC/C,QAAQ,CAAC,KAAK,EAAE,YAAY,CAAC;IAC7B,KAAK,IAAI,OAAO,CAAC;IACjB,MAAM,CAAC,MAAM,EAAE,oBAAoB,GAAG,IAAI,CAAC;IAC3C,IAAI,CAAC,KAAK,EAAE,OAAO,GAAG,IAAI,CAAC;CAC5B;AAED,uGAAuG;AACvG,wBAAgB,2BAA2B,CAAC,OAAO;wBAQtB;QACzB,IAAI,EAAE,kBAAkB,CAAC;QACzB,UAAU,EAAE,MAAM,CAAC;QACnB,QAAQ,EAAE,MAAM,CAAC;QACjB,OAAO,CAAC,EAAE,OAAO,CAAC;QAClB,QAAQ,CAAC,EAAE,mBAAmB,CAAC;QAC/B,MAAM,CAAC,EAAE,WAAW,CAAC;QACrB,OAAO,CAAC,EAAE,SAAS,WAAW,EAAE,CAAC;QACjC,SAAS,IAAI,OAAO,CAAC;KACtB,KAAG,YAAY,CAAC,OAAO,CAAC;0BAZG,WAAW,GAAG,YAAY;;;;EA4FvD"}
@@ -0,0 +1,118 @@
1
+ import type { TableLoadBoundary } from "../../utils/tableLoad";
2
+ import { type TableFailure } from "./createTableState";
3
+ import { type Ref } from "vue";
4
+ import { type R3uiTableInstance } from "../../types/tableInstance";
5
+ import type { TableColumnDefinition, TableColumnOptions, TableFilterApplyOperation, TableColumnApplyOperation } from "../../types/table";
6
+ import { type TableSnapshot } from "../../utils/tableAdapter";
7
+ import type { createTableAjaxRequestFunc } from "../../utils/tableAjaxRequest";
8
+ import { type TableOperation, type TableOperationResult } from "../../utils/tableOperation";
9
+ type TableRequest = (...args: [
10
+ ...Parameters<ReturnType<typeof createTableAjaxRequestFunc>>,
11
+ operation?: TableOperation
12
+ ]) => Promise<unknown>;
13
+ export type TableLifecycleSnapshot<Context = undefined> = Omit<TableSnapshot, "selected"> & {
14
+ selected?: TableSnapshot["selected"];
15
+ url?: string;
16
+ context?: Context;
17
+ };
18
+ export interface TableLifecycleRemote {
19
+ table: Ref<R3uiTableInstance | null>;
20
+ tableKey: Ref<number>;
21
+ isInitDone: Ref<boolean>;
22
+ tableOptions: Ref<TableColumnOptions>;
23
+ tableDefault: {
24
+ fetchData(operation?: {
25
+ isCurrent(): boolean;
26
+ }): Promise<void>;
27
+ applyFilters(instance?: unknown, operation?: TableFilterApplyOperation): Promise<void>;
28
+ applyFiltersOperation?(instance?: unknown, operation?: TableFilterApplyOperation): Promise<TableOperationResult>;
29
+ captureFilterDialogClose?(): () => void;
30
+ };
31
+ }
32
+ export interface TableLifecycleOptions<Context> {
33
+ remote: TableLifecycleRemote;
34
+ getColumns(): TableColumnDefinition[];
35
+ getAjaxUrl(): string;
36
+ createRequest(version: number): TableRequest;
37
+ presentError(error: unknown): void;
38
+ resetErrors?(): void;
39
+ refreshLabels?(isCurrent: () => boolean): Promise<void>;
40
+ captureContext?(): Context;
41
+ initialContext?: Context;
42
+ onContextApplied?(context: Context): void;
43
+ /** Первоначальная загрузка через очередь фильтров либо непосредственно после подготовки. */
44
+ initialLoad?: "apply" | "replace";
45
+ applyOnReady?: boolean;
46
+ includeSelection?: boolean;
47
+ columns?: {
48
+ commit(columns: TableColumnDefinition[]): void;
49
+ changed(): void;
50
+ titledOnly?: boolean;
51
+ };
52
+ initializationFailure?(): {
53
+ error: unknown;
54
+ } | undefined;
55
+ }
56
+ /** Восстановление уступает новому пользовательскому запросу; один запрос каждой фазы принадлежит владельцу. */
57
+ export declare function createTableRestoreOperation(isSameContext: () => boolean, getRequestSequence: () => number, { deferUntilRequest, owner, }?: {
58
+ deferUntilRequest?: boolean;
59
+ owner?: TableOperation;
60
+ }): {
61
+ signal: AbortSignal | undefined;
62
+ owner: TableOperation<unknown> | undefined;
63
+ isSupersededByRequest: () => boolean;
64
+ isCurrent: () => boolean;
65
+ beforeRequest(): void;
66
+ };
67
+ /** Отмена освобождает ожидание; поздний reject исходного Promise остаётся обработанным. */
68
+ export declare function waitForTablePreparation(loading: Promise<void> | undefined, signal: AbortSignal): Promise<"ready" | "superseded">;
69
+ /** Общий владелец контекста, запросов, очереди применений и снимка. Привязка к Vue lifecycle остаётся у адаптера. */
70
+ export declare function createTableLifecycle<Context = undefined>(options: TableLifecycleOptions<Context>): {
71
+ status: import("vue").ComputedRef<"ready" | "loading" | "columns" | "failed" | "building" | "idle" | "preparing" | "awaiting-instance" | "restoring" | "disposed">;
72
+ error: import("vue").ComputedRef<TableFailure | undefined>;
73
+ canRetry: import("vue").ComputedRef<boolean>;
74
+ retry: () => Promise<TableOperationResult>;
75
+ canApplyColumns: import("vue").ComputedRef<boolean>;
76
+ columnsApplying: Readonly<Ref<boolean, boolean>>;
77
+ applyColumns: (draft: readonly {
78
+ field: string;
79
+ visible: boolean;
80
+ }[], external?: TableColumnApplyOperation, saved?: () => void) => Promise<TableOperationResult>;
81
+ active: Readonly<Ref<boolean, boolean>>;
82
+ disposed: Readonly<Ref<boolean, boolean>>;
83
+ phase: Readonly<Ref<"building" | "idle" | "restoring" | "disposed", "building" | "idle" | "restoring" | "disposed">>;
84
+ preparing: Readonly<Ref<boolean, boolean>>;
85
+ rebuilding: import("vue").ComputedRef<boolean>;
86
+ pending: import("vue").WritableComputedRef<TableLifecycleSnapshot<Context> | undefined, TableLifecycleSnapshot<Context> | undefined>;
87
+ superseded: symbol;
88
+ readonly generation: number;
89
+ readonly revision: number;
90
+ readonly requestSequence: number;
91
+ readonly acceptedUrl: string | undefined;
92
+ beginRequest: (version: number, parent?: TableOperation<Context>, signal?: AbortSignal | null, boundary?: TableLoadBoundary) => TableOperation<Context> | undefined;
93
+ requestFailed: (ticket: TableOperation<Context>, cause: unknown) => void;
94
+ requestStopped: (ticket: TableOperation<Context>) => void;
95
+ acceptResponse: (response: unknown, ticket: TableOperation<Context>) => unknown;
96
+ isResponseCurrent: (response: unknown) => boolean;
97
+ responseApplied: (response: unknown) => void;
98
+ responseTransformed: (response: unknown, cancelled?: boolean) => void;
99
+ responseFailed(response: unknown, cause: unknown): void;
100
+ isTrackedResponse: (response: unknown) => boolean;
101
+ rebuild: () => Promise<void>;
102
+ localeChanged: () => Promise<void> | undefined;
103
+ quickFilterChanged: () => Promise<void> | undefined;
104
+ tableKeyChanged: () => void;
105
+ startReady: () => Promise<void>;
106
+ tableReady: (instance: unknown) => Promise<void>;
107
+ apply: (instance: unknown, acceptedUrl?: string) => Promise<void>;
108
+ executeFilters: (instance: unknown, external?: TableFilterApplyOperation) => Promise<TableOperationResult>;
109
+ deactivate: () => void;
110
+ activate: () => Promise<void>;
111
+ dispose: () => void;
112
+ trackRestore: (state: TableLifecycleSnapshot<Context>, isSameContext: () => boolean, operation: {
113
+ isSupersededByRequest: () => boolean;
114
+ }) => () => void;
115
+ invalidateRequests(): void;
116
+ };
117
+ export {};
118
+ //# sourceMappingURL=createTableLifecycle.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"createTableLifecycle.d.ts","sourceRoot":"","sources":["../../../../src/composables/table/createTableLifecycle.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,33 @@
1
+ import type { TableSession } from "./createTableSession";
2
+ import { type TableOperationResult } from "../../utils/tableOperation";
3
+ /** Один владелец подготовки, снимка и передачи между сессиями; ожидающие операции используют тот же сигнал. */
4
+ export declare function createTableRebuildTransaction<State>(options: {
5
+ source: TableSession;
6
+ generation: number;
7
+ revision: number;
8
+ isCurrent(): boolean;
9
+ }): {
10
+ operation: {
11
+ signal: AbortSignal;
12
+ isCurrent: () => boolean;
13
+ };
14
+ generation: number;
15
+ revision: number;
16
+ source: TableSession;
17
+ readonly stage: "failed" | "preparing" | "awaiting-instance" | "restoring" | "settled";
18
+ readonly snapshot: State | undefined;
19
+ readonly result: TableOperationResult | undefined;
20
+ wait<T>(action: () => T | PromiseLike<T>): Promise<{
21
+ status: "cancelled" | "superseded";
22
+ } | {
23
+ status: "applied";
24
+ value: T;
25
+ }>;
26
+ transfer(state: State): boolean;
27
+ restore(target: TableSession): boolean;
28
+ release(): void;
29
+ finish: (value: TableOperationResult) => void;
30
+ fail(): void;
31
+ cancel: (reason?: "cancelled" | "superseded") => void;
32
+ };
33
+ //# sourceMappingURL=createTableRebuildTransaction.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"createTableRebuildTransaction.d.ts","sourceRoot":"","sources":["../../../../src/composables/table/createTableRebuildTransaction.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACzD,OAAO,EAGL,KAAK,oBAAoB,EAC1B,MAAM,4BAA4B,CAAC;AAEpC,+GAA+G;AAC/G,wBAAgB,6BAA6B,CAAC,KAAK,EAAE,OAAO,EAAE;IAC5D,MAAM,EAAE,YAAY,CAAC;IACrB,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,IAAI,OAAO,CAAC;CACtB;;;;;;;;;;;SA2DQ,CAAC,UAAU,MAAM,CAAC,GAAG,WAAW,CAAC,CAAC,CAAC;;;;;;oBAGxB,KAAK;oBAOL,YAAY;;oBAlDP,oBAAoB;;sBAMnB,WAAW,GAAG,YAAY;EA0EnD"}
@@ -0,0 +1,17 @@
1
+ import { type R3uiTableInstance } from "../../types/tableInstance";
2
+ import { createTabulatorAdapter } from "./createTabulatorAdapter";
3
+ export interface TableSession {
4
+ readonly id: number;
5
+ readonly instance: R3uiTableInstance;
6
+ readonly signal: AbortSignal;
7
+ readonly engine: ReturnType<typeof createTabulatorAdapter>;
8
+ isCurrent(): boolean;
9
+ }
10
+ /** Владение экземпляром независимо от поколения локализации и revision данных. */
11
+ export declare function createTableSessionOwner(isActive: () => boolean): {
12
+ readonly current: TableSession | undefined;
13
+ matches(instance: unknown): boolean;
14
+ attach(value: unknown): TableSession;
15
+ detach: (reason?: "cancelled" | "superseded") => void;
16
+ };
17
+ //# sourceMappingURL=createTableSession.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"createTableSession.d.ts","sourceRoot":"","sources":["../../../../src/composables/table/createTableSession.ts"],"names":[],"mappings":"AACA,OAAO,EAEL,KAAK,iBAAiB,EACvB,MAAM,2BAA2B,CAAC;AACnC,OAAO,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AAClE,MAAM,WAAW,YAAY;IAC3B,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,QAAQ,EAAE,iBAAiB,CAAC;IACrC,QAAQ,CAAC,MAAM,EAAE,WAAW,CAAC;IAC7B,QAAQ,CAAC,MAAM,EAAE,UAAU,CAAC,OAAO,sBAAsB,CAAC,CAAC;IAC3D,SAAS,IAAI,OAAO,CAAC;CACtB;AAED,kFAAkF;AAClF,wBAAgB,uBAAuB,CAAC,QAAQ,EAAE,MAAM,OAAO;;sBAczC,OAAO;kBAGX,OAAO,GAAG,YAAY;sBAbd,WAAW,GAAG,YAAY;EAmCnD"}
@@ -0,0 +1,109 @@
1
+ export type TableStatus = "idle" | "preparing" | "building" | "awaiting-instance" | "restoring" | "loading" | "columns" | "ready" | "failed" | "disposed";
2
+ export type TableFailure = {
3
+ readonly kind: "rebuild" | "restore" | "filters" | "columns";
4
+ readonly cause: unknown;
5
+ };
6
+ type Desired<Context> = {
7
+ intent?: "context" | "apply";
8
+ url?: string;
9
+ context?: Context;
10
+ };
11
+ type State<Snapshot, Context> = {
12
+ active: boolean;
13
+ snapshot?: Snapshot;
14
+ desired: Desired<Context>;
15
+ requestedContext?: Context;
16
+ appliedContext?: Context;
17
+ startedGeneration: number;
18
+ owner?: object;
19
+ } & ({
20
+ status: Exclude<TableStatus, "failed">;
21
+ failure?: undefined;
22
+ } | {
23
+ status: "failed";
24
+ failure: TableFailure;
25
+ });
26
+ /** Единый снимок состояния; завершить переход может только его текущий владелец. */
27
+ export declare function createTableState<Snapshot, Context>(initialContext?: Context): {
28
+ state: Readonly<import("vue").Ref<{
29
+ readonly active: boolean;
30
+ readonly snapshot?: import("vue").DeepReadonly<Snapshot> | undefined;
31
+ readonly desired: {
32
+ readonly intent?: "context" | "apply" | undefined;
33
+ readonly url?: string | undefined;
34
+ readonly context?: import("vue").DeepReadonly<Context> | undefined;
35
+ };
36
+ readonly requestedContext?: import("vue").DeepReadonly<Context> | undefined;
37
+ readonly appliedContext?: import("vue").DeepReadonly<Context> | undefined;
38
+ readonly startedGeneration: number;
39
+ readonly owner?: object | undefined;
40
+ readonly status: Exclude<TableStatus, "failed">;
41
+ readonly failure?: undefined | undefined;
42
+ } | {
43
+ readonly active: boolean;
44
+ readonly snapshot?: import("vue").DeepReadonly<Snapshot> | undefined;
45
+ readonly desired: {
46
+ readonly intent?: "context" | "apply" | undefined;
47
+ readonly url?: string | undefined;
48
+ readonly context?: import("vue").DeepReadonly<Context> | undefined;
49
+ };
50
+ readonly requestedContext?: import("vue").DeepReadonly<Context> | undefined;
51
+ readonly appliedContext?: import("vue").DeepReadonly<Context> | undefined;
52
+ readonly startedGeneration: number;
53
+ readonly owner?: object | undefined;
54
+ readonly status: "failed";
55
+ readonly failure: {
56
+ readonly kind: "rebuild" | "restore" | "filters" | "columns";
57
+ readonly cause: Readonly<unknown>;
58
+ };
59
+ }, {
60
+ readonly active: boolean;
61
+ readonly snapshot?: import("vue").DeepReadonly<Snapshot> | undefined;
62
+ readonly desired: {
63
+ readonly intent?: "context" | "apply" | undefined;
64
+ readonly url?: string | undefined;
65
+ readonly context?: import("vue").DeepReadonly<Context> | undefined;
66
+ };
67
+ readonly requestedContext?: import("vue").DeepReadonly<Context> | undefined;
68
+ readonly appliedContext?: import("vue").DeepReadonly<Context> | undefined;
69
+ readonly startedGeneration: number;
70
+ readonly owner?: object | undefined;
71
+ readonly status: Exclude<TableStatus, "failed">;
72
+ readonly failure?: undefined | undefined;
73
+ } | {
74
+ readonly active: boolean;
75
+ readonly snapshot?: import("vue").DeepReadonly<Snapshot> | undefined;
76
+ readonly desired: {
77
+ readonly intent?: "context" | "apply" | undefined;
78
+ readonly url?: string | undefined;
79
+ readonly context?: import("vue").DeepReadonly<Context> | undefined;
80
+ };
81
+ readonly requestedContext?: import("vue").DeepReadonly<Context> | undefined;
82
+ readonly appliedContext?: import("vue").DeepReadonly<Context> | undefined;
83
+ readonly startedGeneration: number;
84
+ readonly owner?: object | undefined;
85
+ readonly status: "failed";
86
+ readonly failure: {
87
+ readonly kind: "rebuild" | "restore" | "filters" | "columns";
88
+ readonly cause: Readonly<unknown>;
89
+ };
90
+ }>>;
91
+ readonly value: State<Snapshot, Context>;
92
+ begin(status: Exclude<TableStatus, "failed" | "disposed">): {};
93
+ move(owner: object, status: Exclude<TableStatus, "failed" | "disposed">): void;
94
+ finish(owner: object, applied: boolean): void;
95
+ fail(owner: object, kind: TableFailure["kind"], cause: unknown, snapshot?: Snapshot | undefined): void;
96
+ cancelled(owner: object, previousSnapshot: Snapshot | undefined, failure?: TableFailure): void;
97
+ applied(owner: object, previousSnapshot: Snapshot | undefined, appliedContext: Context | undefined): void;
98
+ stop(preserveSnapshot: boolean, status?: "idle" | "awaiting-instance"): void;
99
+ setSnapshot(snapshot: Snapshot | undefined): void;
100
+ desire(intent: "context" | "apply", url: string, context?: Context): void;
101
+ setIntent(intent: Desired<Context>["intent"]): void;
102
+ setRequestedContext(requestedContext: Context | undefined): void;
103
+ setAppliedContext(appliedContext: Context | undefined): void;
104
+ markStarted(startedGeneration: number): void;
105
+ setActive(active: boolean): void;
106
+ dispose(): void;
107
+ };
108
+ export {};
109
+ //# sourceMappingURL=createTableState.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"createTableState.d.ts","sourceRoot":"","sources":["../../../../src/composables/table/createTableState.ts"],"names":[],"mappings":"AAEA,MAAM,MAAM,WAAW,GACnB,MAAM,GACN,WAAW,GACX,UAAU,GACV,mBAAmB,GACnB,WAAW,GACX,SAAS,GACT,SAAS,GACT,OAAO,GACP,QAAQ,GACR,UAAU,CAAC;AACf,MAAM,MAAM,YAAY,GAAG;IACzB,QAAQ,CAAC,IAAI,EAAE,SAAS,GAAG,SAAS,GAAG,SAAS,GAAG,SAAS,CAAC;IAC7D,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAC;CACzB,CAAC;AACF,KAAK,OAAO,CAAC,OAAO,IAAI;IACtB,MAAM,CAAC,EAAE,SAAS,GAAG,OAAO,CAAC;IAC7B,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB,CAAC;AACF,KAAK,KAAK,CAAC,QAAQ,EAAE,OAAO,IAAI;IAC9B,MAAM,EAAE,OAAO,CAAC;IAChB,QAAQ,CAAC,EAAE,QAAQ,CAAC;IACpB,OAAO,EAAE,OAAO,CAAC,OAAO,CAAC,CAAC;IAC1B,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB,GAAG,CACA;IAAE,MAAM,EAAE,OAAO,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAC;IAAC,OAAO,CAAC,EAAE,SAAS,CAAA;CAAE,GAC/D;IAAE,MAAM,EAAE,QAAQ,CAAC;IAAC,OAAO,EAAE,YAAY,CAAA;CAAE,CAC9C,CAAC;AAEF,oFAAoF;AACpF,wBAAgB,gBAAgB,CAAC,QAAQ,EAAE,OAAO,EAAE,cAAc,CAAC,EAAE,OAAO;;yBAblE,OAAO;;;8BALN,SAAS,GAAG,OAAO;2BACtB,MAAM;;;;;oCASO,MAAM;yBACjB,MAAM;yBAEF,OAAO,CAAC,WAAW,EAAE,QAAQ,CAAC;2BAAY,SAAS;;yBARvD,OAAO;;;8BALN,SAAS,GAAG,OAAO;2BACtB,MAAM;;;;;oCASO,MAAM;yBACjB,MAAM;yBAGF,QAAQ;;2BAlBL,SAAS,GAAG,SAAS,GAAG,SAAS,GAAG,SAAS;;;;yBASpD,OAAO;;;8BALN,SAAS,GAAG,OAAO;2BACtB,MAAM;;;;;oCASO,MAAM;yBACjB,MAAM;yBAEF,OAAO,CAAC,WAAW,EAAE,QAAQ,CAAC;2BAAY,SAAS;;yBARvD,OAAO;;;8BALN,SAAS,GAAG,OAAO;2BACtB,MAAM;;;;;oCASO,MAAM;yBACjB,MAAM;yBAGF,QAAQ;;2BAlBL,SAAS,GAAG,SAAS,GAAG,SAAS,GAAG,SAAS;;;;;kBAwC5C,OAAO,CAAC,WAAW,EAAE,QAAQ,GAAG,UAAU,CAAC;gBAK7C,MAAM,UAAU,OAAO,CAAC,WAAW,EAAE,QAAQ,GAAG,UAAU,CAAC;kBAGzD,MAAM,WAAW,OAAO;gBAK7B,MAAM,QACP,YAAY,CAAC,MAAM,CAAC,SACnB,OAAO;qBAaP,MAAM,oBACK,QAAQ,GAAG,SAAS,YAC5B,YAAY;mBAsBf,MAAM,oBACK,QAAQ,GAAG,SAAS,kBACtB,OAAO,GAAG,SAAS;2BAejB,OAAO,WACjB,MAAM,GAAG,mBAAmB;0BAUhB,QAAQ,GAAG,SAAS;mBAG3B,SAAS,GAAG,OAAO,OAAO,MAAM,YAAY,OAAO;sBAGhD,OAAO,CAAC,OAAO,CAAC,CAAC,QAAQ,CAAC;0CAGN,OAAO,GAAG,SAAS;sCAGvB,OAAO,GAAG,SAAS;mCAGtB,MAAM;sBAGnB,OAAO;;EAe5B"}
@@ -0,0 +1,27 @@
1
+ import type { R3uiTableInstance } from "../../types/tableInstance";
2
+ import type { TableColumnDefinition } from "../../types/table";
3
+ import { captureTableSnapshot, type TableSnapshot, type TableRestoreOperation } from "../../utils/tableAdapter";
4
+ import type { TableOperationGuard } from "../../utils/tableOperation";
5
+ /** Все обращения контроллера к движку проходят через живую сессию экземпляра. */
6
+ export declare function createTabulatorAdapter(instance: R3uiTableInstance, session: TableOperationGuard): {
7
+ capture(options: Parameters<typeof captureTableSnapshot>[1]): TableSnapshot;
8
+ url(fallback: () => string): string;
9
+ setUrl(url: string, operation: {
10
+ isCurrent(): boolean;
11
+ }): void;
12
+ setColumns(columns: TableColumnDefinition[], operation: {
13
+ isCurrent(): boolean;
14
+ }): void;
15
+ restoreView(state: Pick<TableSnapshot, "filters" | "sort">, operation: {
16
+ isCurrent(): boolean;
17
+ }): void;
18
+ select(ids: Array<string | number> | undefined, operation: {
19
+ isCurrent(): boolean;
20
+ }): void;
21
+ restore(state: {
22
+ page: number;
23
+ size: number;
24
+ }, url: string, operation: TableRestoreOperation): Promise<"cancelled" | "superseded" | "restored">;
25
+ load(url: string, size: unknown, operation: TableRestoreOperation): Promise<import("../../utils/tableLoad").TableLoadOutcome>;
26
+ };
27
+ //# sourceMappingURL=createTabulatorAdapter.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"createTabulatorAdapter.d.ts","sourceRoot":"","sources":["../../../../src/composables/table/createTabulatorAdapter.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAC;AACnE,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,mBAAmB,CAAC;AAC/D,OAAO,EACL,oBAAoB,EAEpB,KAAK,aAAa,EAClB,KAAK,qBAAqB,EAC3B,MAAM,0BAA0B,CAAC;AAElC,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAC;AAEtE,iFAAiF;AACjF,wBAAgB,sBAAsB,CACpC,QAAQ,EAAE,iBAAiB,EAC3B,OAAO,EAAE,mBAAmB;qBAOT,UAAU,CAAC,OAAO,oBAAoB,CAAC,CAAC,CAAC,CAAC;kBAI7C,MAAM,MAAM;gBAMd,MAAM,aAAa;QAAE,SAAS,IAAI,OAAO,CAAA;KAAE;wBAK5C,qBAAqB,EAAE,aACrB;QAAE,SAAS,IAAI,OAAO,CAAA;KAAE;uBAY5B,IAAI,CAAC,aAAa,EAAE,SAAS,GAAG,MAAM,CAAC,aACnC;QAAE,SAAS,IAAI,OAAO,CAAA;KAAE;gBAe9B,KAAK,CAAC,MAAM,GAAG,MAAM,CAAC,GAAG,SAAS,aAC5B;QAAE,SAAS,IAAI,OAAO,CAAA;KAAE;mBAM5B;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,OAChC,MAAM,aACA,qBAAqB;cAKxB,MAAM,QAAQ,OAAO,aAAa,qBAAqB;EAepE"}