@gtkx/react 0.18.9 → 0.19.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.
Files changed (174) hide show
  1. package/dist/generated/internal.d.ts +6 -0
  2. package/dist/generated/internal.d.ts.map +1 -1
  3. package/dist/generated/internal.js +331 -44
  4. package/dist/generated/internal.js.map +1 -1
  5. package/dist/generated/jsx.d.ts +178 -2
  6. package/dist/generated/jsx.d.ts.map +1 -1
  7. package/dist/generated/jsx.js.map +1 -1
  8. package/dist/host-config.d.ts.map +1 -1
  9. package/dist/host-config.js +46 -10
  10. package/dist/host-config.js.map +1 -1
  11. package/dist/jsx.d.ts +133 -13
  12. package/dist/jsx.d.ts.map +1 -1
  13. package/dist/jsx.js +41 -2
  14. package/dist/jsx.js.map +1 -1
  15. package/dist/metadata.d.ts +1 -0
  16. package/dist/metadata.d.ts.map +1 -1
  17. package/dist/metadata.js +3 -1
  18. package/dist/metadata.js.map +1 -1
  19. package/dist/node.d.ts +2 -0
  20. package/dist/node.d.ts.map +1 -1
  21. package/dist/node.js +22 -6
  22. package/dist/node.js.map +1 -1
  23. package/dist/nodes/column-view-column.d.ts +4 -1
  24. package/dist/nodes/column-view-column.d.ts.map +1 -1
  25. package/dist/nodes/column-view-column.js +29 -8
  26. package/dist/nodes/column-view-column.js.map +1 -1
  27. package/dist/nodes/column-view.d.ts +4 -3
  28. package/dist/nodes/column-view.d.ts.map +1 -1
  29. package/dist/nodes/column-view.js +44 -14
  30. package/dist/nodes/column-view.js.map +1 -1
  31. package/dist/nodes/drop-down.d.ts +12 -2
  32. package/dist/nodes/drop-down.d.ts.map +1 -1
  33. package/dist/nodes/drop-down.js +151 -5
  34. package/dist/nodes/drop-down.js.map +1 -1
  35. package/dist/nodes/event-controller.d.ts +1 -0
  36. package/dist/nodes/event-controller.d.ts.map +1 -1
  37. package/dist/nodes/event-controller.js +11 -3
  38. package/dist/nodes/event-controller.js.map +1 -1
  39. package/dist/nodes/fixed-child.d.ts +1 -2
  40. package/dist/nodes/fixed-child.d.ts.map +1 -1
  41. package/dist/nodes/fixed-child.js +21 -21
  42. package/dist/nodes/fixed-child.js.map +1 -1
  43. package/dist/nodes/font-dialog-button.d.ts +1 -1
  44. package/dist/nodes/font-dialog-button.d.ts.map +1 -1
  45. package/dist/nodes/font-dialog-button.js +8 -0
  46. package/dist/nodes/font-dialog-button.js.map +1 -1
  47. package/dist/nodes/grid-view.d.ts +6 -5
  48. package/dist/nodes/grid-view.d.ts.map +1 -1
  49. package/dist/nodes/grid-view.js +23 -18
  50. package/dist/nodes/grid-view.js.map +1 -1
  51. package/dist/nodes/internal/accessible.d.ts +5 -0
  52. package/dist/nodes/internal/accessible.d.ts.map +1 -0
  53. package/dist/nodes/internal/accessible.js +119 -0
  54. package/dist/nodes/internal/accessible.js.map +1 -0
  55. package/dist/nodes/internal/base-item-renderer.d.ts.map +1 -1
  56. package/dist/nodes/internal/base-item-renderer.js +0 -1
  57. package/dist/nodes/internal/base-item-renderer.js.map +1 -1
  58. package/dist/nodes/internal/construct.d.ts +10 -0
  59. package/dist/nodes/internal/construct.d.ts.map +1 -0
  60. package/dist/nodes/internal/construct.js +68 -0
  61. package/dist/nodes/internal/construct.js.map +1 -0
  62. package/dist/nodes/internal/header-item-renderer.d.ts +23 -0
  63. package/dist/nodes/internal/header-item-renderer.d.ts.map +1 -0
  64. package/dist/nodes/internal/header-item-renderer.js +87 -0
  65. package/dist/nodes/internal/header-item-renderer.js.map +1 -0
  66. package/dist/nodes/internal/header-renderer-manager.d.ts +13 -0
  67. package/dist/nodes/internal/header-renderer-manager.d.ts.map +1 -0
  68. package/dist/nodes/internal/header-renderer-manager.js +20 -0
  69. package/dist/nodes/internal/header-renderer-manager.js.map +1 -0
  70. package/dist/nodes/internal/list-store.d.ts +10 -11
  71. package/dist/nodes/internal/list-store.d.ts.map +1 -1
  72. package/dist/nodes/internal/list-store.js +28 -29
  73. package/dist/nodes/internal/list-store.js.map +1 -1
  74. package/dist/nodes/internal/sectioned-list-store.d.ts +50 -0
  75. package/dist/nodes/internal/sectioned-list-store.d.ts.map +1 -0
  76. package/dist/nodes/internal/sectioned-list-store.js +250 -0
  77. package/dist/nodes/internal/sectioned-list-store.js.map +1 -0
  78. package/dist/nodes/internal/selection-helpers.d.ts +12 -0
  79. package/dist/nodes/internal/selection-helpers.d.ts.map +1 -0
  80. package/dist/nodes/internal/selection-helpers.js +25 -0
  81. package/dist/nodes/internal/selection-helpers.js.map +1 -0
  82. package/dist/nodes/internal/selection-model-controller.d.ts.map +1 -1
  83. package/dist/nodes/internal/selection-model-controller.js +3 -0
  84. package/dist/nodes/internal/selection-model-controller.js.map +1 -1
  85. package/dist/nodes/internal/simple-list-store.d.ts +7 -12
  86. package/dist/nodes/internal/simple-list-store.d.ts.map +1 -1
  87. package/dist/nodes/internal/simple-list-store.js +58 -35
  88. package/dist/nodes/internal/simple-list-store.js.map +1 -1
  89. package/dist/nodes/internal/text-buffer-controller.d.ts +4 -0
  90. package/dist/nodes/internal/text-buffer-controller.d.ts.map +1 -1
  91. package/dist/nodes/internal/text-buffer-controller.js +49 -9
  92. package/dist/nodes/internal/text-buffer-controller.js.map +1 -1
  93. package/dist/nodes/internal/tree-store.d.ts +3 -0
  94. package/dist/nodes/internal/tree-store.d.ts.map +1 -1
  95. package/dist/nodes/internal/tree-store.js +55 -10
  96. package/dist/nodes/internal/tree-store.js.map +1 -1
  97. package/dist/nodes/list-section.d.ts +27 -0
  98. package/dist/nodes/list-section.d.ts.map +1 -0
  99. package/dist/nodes/list-section.js +43 -0
  100. package/dist/nodes/list-section.js.map +1 -0
  101. package/dist/nodes/list-view.d.ts +6 -3
  102. package/dist/nodes/list-view.d.ts.map +1 -1
  103. package/dist/nodes/list-view.js +54 -14
  104. package/dist/nodes/list-view.js.map +1 -1
  105. package/dist/nodes/models/list.d.ts +13 -5
  106. package/dist/nodes/models/list.d.ts.map +1 -1
  107. package/dist/nodes/models/list.js +135 -21
  108. package/dist/nodes/models/list.js.map +1 -1
  109. package/dist/nodes/shortcut.d.ts +3 -2
  110. package/dist/nodes/shortcut.d.ts.map +1 -1
  111. package/dist/nodes/shortcut.js +19 -4
  112. package/dist/nodes/shortcut.js.map +1 -1
  113. package/dist/nodes/text-anchor.d.ts.map +1 -1
  114. package/dist/nodes/text-anchor.js +7 -1
  115. package/dist/nodes/text-anchor.js.map +1 -1
  116. package/dist/nodes/text-tag.d.ts.map +1 -1
  117. package/dist/nodes/text-tag.js +5 -1
  118. package/dist/nodes/text-tag.js.map +1 -1
  119. package/dist/nodes/text-view.d.ts +1 -0
  120. package/dist/nodes/text-view.d.ts.map +1 -1
  121. package/dist/nodes/text-view.js +4 -0
  122. package/dist/nodes/text-view.js.map +1 -1
  123. package/dist/nodes/widget.d.ts +0 -2
  124. package/dist/nodes/widget.d.ts.map +1 -1
  125. package/dist/nodes/widget.js +44 -61
  126. package/dist/nodes/widget.js.map +1 -1
  127. package/dist/registry.d.ts.map +1 -1
  128. package/dist/registry.js +2 -2
  129. package/dist/registry.js.map +1 -1
  130. package/package.json +3 -3
  131. package/src/generated/internal.ts +333 -44
  132. package/src/generated/jsx.ts +178 -2
  133. package/src/host-config.ts +41 -10
  134. package/src/jsx.ts +166 -15
  135. package/src/metadata.ts +5 -1
  136. package/src/node.ts +20 -6
  137. package/src/nodes/column-view-column.ts +32 -8
  138. package/src/nodes/column-view.ts +59 -14
  139. package/src/nodes/drop-down.ts +182 -6
  140. package/src/nodes/event-controller.ts +11 -3
  141. package/src/nodes/fixed-child.ts +24 -23
  142. package/src/nodes/font-dialog-button.ts +10 -0
  143. package/src/nodes/grid-view.ts +29 -19
  144. package/src/nodes/internal/accessible.ts +156 -0
  145. package/src/nodes/internal/base-item-renderer.ts +0 -1
  146. package/src/nodes/internal/construct.ts +90 -0
  147. package/src/nodes/internal/header-item-renderer.ts +105 -0
  148. package/src/nodes/internal/header-renderer-manager.ts +33 -0
  149. package/src/nodes/internal/list-store.ts +32 -30
  150. package/src/nodes/internal/sectioned-list-store.ts +287 -0
  151. package/src/nodes/internal/selection-helpers.ts +35 -0
  152. package/src/nodes/internal/selection-model-controller.ts +4 -0
  153. package/src/nodes/internal/simple-list-store.ts +60 -43
  154. package/src/nodes/internal/text-buffer-controller.ts +51 -8
  155. package/src/nodes/internal/tree-store.ts +61 -9
  156. package/src/nodes/list-section.ts +64 -0
  157. package/src/nodes/list-view.ts +65 -14
  158. package/src/nodes/models/list.ts +147 -37
  159. package/src/nodes/shortcut.ts +22 -5
  160. package/src/nodes/text-anchor.ts +6 -1
  161. package/src/nodes/text-tag.ts +7 -1
  162. package/src/nodes/text-view.ts +5 -0
  163. package/src/nodes/widget.ts +45 -62
  164. package/src/registry.ts +4 -2
  165. package/dist/nodes/models/grid.d.ts +0 -28
  166. package/dist/nodes/models/grid.d.ts.map +0 -1
  167. package/dist/nodes/models/grid.js +0 -69
  168. package/dist/nodes/models/grid.js.map +0 -1
  169. package/dist/nodes/shortcut-controller.d.ts +0 -10
  170. package/dist/nodes/shortcut-controller.d.ts.map +0 -1
  171. package/dist/nodes/shortcut-controller.js +0 -23
  172. package/dist/nodes/shortcut-controller.js.map +0 -1
  173. package/src/nodes/models/grid.ts +0 -105
  174. package/src/nodes/shortcut-controller.ts +0 -27
@@ -1 +1 @@
1
- {"version":3,"file":"grid-view.js","sourceRoot":"","sources":["../../src/nodes/grid-view.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"grid-view.js","sourceRoot":"","sources":["../../src/nodes/grid-view.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,5 @@
1
+ import * as Gtk from "@gtkx/ffi/gtk";
2
+ import type { Props } from "../../types.js";
3
+ export declare const isAccessibleProp: (name: string) => boolean;
4
+ export declare const applyAccessibleProps: (widget: Gtk.Widget, oldProps: Props | null, newProps: Props) => void;
5
+ //# sourceMappingURL=accessible.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"accessible.d.ts","sourceRoot":"","sources":["../../../src/nodes/internal/accessible.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,GAAG,MAAM,eAAe,CAAC;AACrC,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,gBAAgB,CAAC;AA2G5C,eAAO,MAAM,gBAAgB,GAAI,MAAM,MAAM,KAAG,OAAsC,CAAC;AAgCvF,eAAO,MAAM,oBAAoB,GAAI,QAAQ,GAAG,CAAC,MAAM,EAAE,UAAU,KAAK,GAAG,IAAI,EAAE,UAAU,KAAK,KAAG,IAalG,CAAC"}
@@ -0,0 +1,119 @@
1
+ import { Value } from "@gtkx/ffi/gobject";
2
+ import * as Gtk from "@gtkx/ffi/gtk";
3
+ const fromString = (val) => Value.newFromString(val);
4
+ const fromBoolean = (val) => Value.newFromBoolean(val);
5
+ const fromInt = (val) => Value.newFromInt(val);
6
+ const fromDouble = (val) => Value.newFromDouble(val);
7
+ const fromObject = (val) => Value.newFromObject(val ?? null);
8
+ const fromRefList = (val) => {
9
+ const widgets = val;
10
+ const list = Gtk.AccessibleList.newFromList(widgets);
11
+ return Value.newFromBoxed(list);
12
+ };
13
+ const prop = (enumValue, createValue) => ({
14
+ kind: "property",
15
+ enumValue,
16
+ createValue,
17
+ });
18
+ const state = (enumValue, createValue) => ({
19
+ kind: "state",
20
+ enumValue,
21
+ createValue,
22
+ });
23
+ const relation = (enumValue, createValue) => ({
24
+ kind: "relation",
25
+ enumValue,
26
+ createValue,
27
+ });
28
+ const ACCESSIBLE_PROP_MAP = {
29
+ accessibleAutocomplete: prop(Gtk.AccessibleProperty.AUTOCOMPLETE, fromInt),
30
+ accessibleDescription: prop(Gtk.AccessibleProperty.DESCRIPTION, fromString),
31
+ accessibleHasPopup: prop(Gtk.AccessibleProperty.HAS_POPUP, fromBoolean),
32
+ accessibleKeyShortcuts: prop(Gtk.AccessibleProperty.KEY_SHORTCUTS, fromString),
33
+ accessibleLabel: prop(Gtk.AccessibleProperty.LABEL, fromString),
34
+ accessibleLevel: prop(Gtk.AccessibleProperty.LEVEL, fromInt),
35
+ accessibleModal: prop(Gtk.AccessibleProperty.MODAL, fromBoolean),
36
+ accessibleMultiLine: prop(Gtk.AccessibleProperty.MULTI_LINE, fromBoolean),
37
+ accessibleMultiSelectable: prop(Gtk.AccessibleProperty.MULTI_SELECTABLE, fromBoolean),
38
+ accessibleOrientation: prop(Gtk.AccessibleProperty.ORIENTATION, fromInt),
39
+ accessiblePlaceholder: prop(Gtk.AccessibleProperty.PLACEHOLDER, fromString),
40
+ accessibleReadOnly: prop(Gtk.AccessibleProperty.READ_ONLY, fromBoolean),
41
+ accessibleRequired: prop(Gtk.AccessibleProperty.REQUIRED, fromBoolean),
42
+ accessibleRoleDescription: prop(Gtk.AccessibleProperty.ROLE_DESCRIPTION, fromString),
43
+ accessibleSort: prop(Gtk.AccessibleProperty.SORT, fromInt),
44
+ accessibleValueMax: prop(Gtk.AccessibleProperty.VALUE_MAX, fromDouble),
45
+ accessibleValueMin: prop(Gtk.AccessibleProperty.VALUE_MIN, fromDouble),
46
+ accessibleValueNow: prop(Gtk.AccessibleProperty.VALUE_NOW, fromDouble),
47
+ accessibleValueText: prop(Gtk.AccessibleProperty.VALUE_TEXT, fromString),
48
+ accessibleHelpText: prop(Gtk.AccessibleProperty.HELP_TEXT, fromString),
49
+ accessibleBusy: state(Gtk.AccessibleState.BUSY, fromBoolean),
50
+ accessibleChecked: state(Gtk.AccessibleState.CHECKED, fromInt),
51
+ accessibleDisabled: state(Gtk.AccessibleState.DISABLED, fromBoolean),
52
+ accessibleExpanded: state(Gtk.AccessibleState.EXPANDED, fromInt),
53
+ accessibleHidden: state(Gtk.AccessibleState.HIDDEN, fromBoolean),
54
+ accessibleInvalid: state(Gtk.AccessibleState.INVALID, fromInt),
55
+ accessiblePressed: state(Gtk.AccessibleState.PRESSED, fromInt),
56
+ accessibleSelected: state(Gtk.AccessibleState.SELECTED, fromInt),
57
+ accessibleVisited: state(Gtk.AccessibleState.VISITED, fromInt),
58
+ accessibleActiveDescendant: relation(Gtk.AccessibleRelation.ACTIVE_DESCENDANT, fromObject),
59
+ accessibleColCount: relation(Gtk.AccessibleRelation.COL_COUNT, fromInt),
60
+ accessibleColIndex: relation(Gtk.AccessibleRelation.COL_INDEX, fromInt),
61
+ accessibleColIndexText: relation(Gtk.AccessibleRelation.COL_INDEX_TEXT, fromString),
62
+ accessibleColSpan: relation(Gtk.AccessibleRelation.COL_SPAN, fromInt),
63
+ accessibleControls: relation(Gtk.AccessibleRelation.CONTROLS, fromRefList),
64
+ accessibleDescribedBy: relation(Gtk.AccessibleRelation.DESCRIBED_BY, fromRefList),
65
+ accessibleDetails: relation(Gtk.AccessibleRelation.DETAILS, fromRefList),
66
+ accessibleErrorMessage: relation(Gtk.AccessibleRelation.ERROR_MESSAGE, fromRefList),
67
+ accessibleFlowTo: relation(Gtk.AccessibleRelation.FLOW_TO, fromRefList),
68
+ accessibleLabelledBy: relation(Gtk.AccessibleRelation.LABELLED_BY, fromRefList),
69
+ accessibleOwns: relation(Gtk.AccessibleRelation.OWNS, fromRefList),
70
+ accessiblePosInSet: relation(Gtk.AccessibleRelation.POS_IN_SET, fromInt),
71
+ accessibleRowCount: relation(Gtk.AccessibleRelation.ROW_COUNT, fromInt),
72
+ accessibleRowIndex: relation(Gtk.AccessibleRelation.ROW_INDEX, fromInt),
73
+ accessibleRowIndexText: relation(Gtk.AccessibleRelation.ROW_INDEX_TEXT, fromString),
74
+ accessibleRowSpan: relation(Gtk.AccessibleRelation.ROW_SPAN, fromInt),
75
+ accessibleSetSize: relation(Gtk.AccessibleRelation.SET_SIZE, fromInt),
76
+ };
77
+ export const isAccessibleProp = (name) => name in ACCESSIBLE_PROP_MAP;
78
+ function applyDef(widget, def, newValue) {
79
+ const gvalue = def.createValue(newValue);
80
+ switch (def.kind) {
81
+ case "property":
82
+ widget.updatePropertyValue(1, [def.enumValue], [gvalue]);
83
+ break;
84
+ case "state":
85
+ widget.updateStateValue(1, [def.enumValue], [gvalue]);
86
+ break;
87
+ case "relation":
88
+ widget.updateRelationValue(1, [def.enumValue], [gvalue]);
89
+ break;
90
+ }
91
+ }
92
+ function resetDef(widget, def) {
93
+ switch (def.kind) {
94
+ case "property":
95
+ widget.resetProperty(def.enumValue);
96
+ break;
97
+ case "state":
98
+ widget.resetState(def.enumValue);
99
+ break;
100
+ case "relation":
101
+ widget.resetRelation(def.enumValue);
102
+ break;
103
+ }
104
+ }
105
+ export const applyAccessibleProps = (widget, oldProps, newProps) => {
106
+ for (const [name, def] of Object.entries(ACCESSIBLE_PROP_MAP)) {
107
+ const oldValue = oldProps?.[name];
108
+ const newValue = newProps[name];
109
+ if (oldValue === newValue)
110
+ continue;
111
+ if (newValue === undefined) {
112
+ resetDef(widget, def);
113
+ }
114
+ else {
115
+ applyDef(widget, def, newValue);
116
+ }
117
+ }
118
+ };
119
+ //# sourceMappingURL=accessible.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"accessible.js","sourceRoot":"","sources":["../../../src/nodes/internal/accessible.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"base-item-renderer.d.ts","sourceRoot":"","sources":["../../../src/nodes/internal/base-item-renderer.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,GAAG,MAAM,eAAe,CAAC;AACrC,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AACvC,OAAO,KAAK,UAAU,MAAM,kBAAkB,CAAC;AAG/C,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAErD,8BAAsB,gBAAgB,CAAC,MAAM,GAAG,OAAO;IACnD,SAAS,CAAC,OAAO,EAAE,GAAG,CAAC,qBAAqB,CAAC;IAC7C,SAAS,CAAC,UAAU,yBAAiD;IACrE,SAAS,CAAC,QAAQ,oBAA2B;IAC7C,SAAS,CAAC,mBAAmB,EAAE,MAAM,GAAG,IAAI,CAAQ;IACpD,OAAO,CAAC,KAAK,CAAuB;IACpC,SAAS,CAAC,WAAW,EAAE,WAAW,CAAC;gBAEvB,WAAW,EAAE,WAAW;IAM7B,UAAU,IAAI,GAAG,CAAC,qBAAqB;IAIvC,sBAAsB,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,GAAG,IAAI;IAInD,QAAQ,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,GAAG,IAAI;IAI3C,SAAS,CAAC,QAAQ,IAAI,MAAM;IAOrB,OAAO,IAAI,IAAI;IAMtB,SAAS,CAAC,QAAQ,CAAC,UAAU,CAAC,QAAQ,EAAE,GAAG,CAAC,QAAQ,GAAG,SAAS;IAChE,SAAS,CAAC,QAAQ,CAAC,OAAO,CAAC,QAAQ,EAAE,GAAG,CAAC,QAAQ,GAAG,GAAG,CAAC,MAAM;IAC9D,SAAS,CAAC,QAAQ,CAAC,MAAM,CAAC,QAAQ,EAAE,GAAG,CAAC,QAAQ,EAAE,SAAS,EAAE,UAAU,CAAC,SAAS,GAAG,IAAI;IACxF,SAAS,CAAC,QAAQ,CAAC,QAAQ,CAAC,QAAQ,EAAE,GAAG,CAAC,QAAQ,GAAG,IAAI;IAEzD,SAAS,CAAC,eAAe,CAAC,SAAS,EAAE,GAAG,CAAC,QAAQ,GAAG,IAAI;IACxD,SAAS,CAAC,UAAU,CAAC,SAAS,EAAE,GAAG,CAAC,QAAQ,GAAG,IAAI;IAEnD,SAAS,CAAC,SAAS,IAAI,GAAG,CAAC,GAAG;IAW9B,SAAS,CAAC,mBAAmB,CAAC,GAAG,EAAE,GAAG,CAAC,MAAM,GAAG,IAAI;IAMpD,OAAO,CAAC,iBAAiB;CAoC5B"}
1
+ {"version":3,"file":"base-item-renderer.d.ts","sourceRoot":"","sources":["../../../src/nodes/internal/base-item-renderer.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,GAAG,MAAM,eAAe,CAAC;AACrC,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AACvC,OAAO,KAAK,UAAU,MAAM,kBAAkB,CAAC;AAG/C,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAErD,8BAAsB,gBAAgB,CAAC,MAAM,GAAG,OAAO;IACnD,SAAS,CAAC,OAAO,EAAE,GAAG,CAAC,qBAAqB,CAAC;IAC7C,SAAS,CAAC,UAAU,yBAAiD;IACrE,SAAS,CAAC,QAAQ,oBAA2B;IAC7C,SAAS,CAAC,mBAAmB,EAAE,MAAM,GAAG,IAAI,CAAQ;IACpD,OAAO,CAAC,KAAK,CAAuB;IACpC,SAAS,CAAC,WAAW,EAAE,WAAW,CAAC;gBAEvB,WAAW,EAAE,WAAW;IAM7B,UAAU,IAAI,GAAG,CAAC,qBAAqB;IAIvC,sBAAsB,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,GAAG,IAAI;IAInD,QAAQ,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,GAAG,IAAI;IAI3C,SAAS,CAAC,QAAQ,IAAI,MAAM;IAOrB,OAAO,IAAI,IAAI;IAMtB,SAAS,CAAC,QAAQ,CAAC,UAAU,CAAC,QAAQ,EAAE,GAAG,CAAC,QAAQ,GAAG,SAAS;IAChE,SAAS,CAAC,QAAQ,CAAC,OAAO,CAAC,QAAQ,EAAE,GAAG,CAAC,QAAQ,GAAG,GAAG,CAAC,MAAM;IAC9D,SAAS,CAAC,QAAQ,CAAC,MAAM,CAAC,QAAQ,EAAE,GAAG,CAAC,QAAQ,EAAE,SAAS,EAAE,UAAU,CAAC,SAAS,GAAG,IAAI;IACxF,SAAS,CAAC,QAAQ,CAAC,QAAQ,CAAC,QAAQ,EAAE,GAAG,CAAC,QAAQ,GAAG,IAAI;IAEzD,SAAS,CAAC,eAAe,CAAC,SAAS,EAAE,GAAG,CAAC,QAAQ,GAAG,IAAI;IACxD,SAAS,CAAC,UAAU,CAAC,SAAS,EAAE,GAAG,CAAC,QAAQ,GAAG,IAAI;IAEnD,SAAS,CAAC,SAAS,IAAI,GAAG,CAAC,GAAG;IAU9B,SAAS,CAAC,mBAAmB,CAAC,GAAG,EAAE,GAAG,CAAC,MAAM,GAAG,IAAI;IAMpD,OAAO,CAAC,iBAAiB;CAoC5B"}
@@ -37,7 +37,6 @@ export class BaseItemRenderer {
37
37
  onTeardown(_listItem) { }
38
38
  createBox() {
39
39
  const box = new Gtk.Box(Gtk.Orientation.HORIZONTAL);
40
- box.setValign(Gtk.Align.CENTER);
41
40
  if (this.estimatedItemHeight !== null) {
42
41
  box.setSizeRequest(-1, this.estimatedItemHeight);
43
42
  }
@@ -1 +1 @@
1
- {"version":3,"file":"base-item-renderer.js","sourceRoot":"","sources":["../../../src/nodes/internal/base-item-renderer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"base-item-renderer.js","sourceRoot":"","sources":["../../../src/nodes/internal/base-item-renderer.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,10 @@
1
+ import type { Container, ContainerClass, Props } from "../../types.js";
2
+ /**
3
+ * Creates a container (widget or controller) with construct-only properties.
4
+ *
5
+ * When construct-only props are present that aren't handled by the designated
6
+ * constructor, uses `g_object_new` to set them during object construction.
7
+ * Otherwise falls back to the normal constructor.
8
+ */
9
+ export declare function createContainerWithConstructOnly(containerClass: ContainerClass, props: Props, normalConstructor: () => Container): Container;
10
+ //# sourceMappingURL=construct.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"construct.d.ts","sourceRoot":"","sources":["../../../src/nodes/internal/construct.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,SAAS,EAAE,cAAc,EAAE,KAAK,EAAE,MAAM,gBAAgB,CAAC;AA2CvE;;;;;;GAMG;AACH,wBAAgB,gCAAgC,CAC5C,cAAc,EAAE,cAAc,EAC9B,KAAK,EAAE,KAAK,EACZ,iBAAiB,EAAE,MAAM,SAAS,GACnC,SAAS,CAgCX"}
@@ -0,0 +1,68 @@
1
+ import { call, registerNativeObject, setInstantiating } from "@gtkx/ffi";
2
+ import { typeFromName } from "@gtkx/ffi/gobject";
3
+ import { CONSTRUCT_ONLY_PROPS, CONSTRUCTOR_PROPS } from "../../generated/internal.js";
4
+ /**
5
+ * Collects construct-only property metadata by walking the class hierarchy.
6
+ * Returns all active construct-only props (those with values set in the initial props)
7
+ * that are NOT already handled by the designated constructor parameters.
8
+ */
9
+ function collectActiveConstructOnlyProps(containerClass, props) {
10
+ const result = [];
11
+ const constructorParams = new Set(CONSTRUCTOR_PROPS[containerClass.glibTypeName] ?? []);
12
+ // biome-ignore lint/suspicious/noExplicitAny: Walking static prototype chain
13
+ let current = containerClass;
14
+ while (current?.glibTypeName) {
15
+ const propsForType = CONSTRUCT_ONLY_PROPS[current.glibTypeName];
16
+ if (propsForType) {
17
+ for (const [camelName, meta] of Object.entries(propsForType)) {
18
+ if (constructorParams.has(camelName))
19
+ continue;
20
+ if (props[camelName] !== undefined) {
21
+ const rawValue = props[camelName];
22
+ const value = meta.ffiType.type === "gobject" &&
23
+ rawValue &&
24
+ typeof rawValue === "object" &&
25
+ "handle" in rawValue
26
+ ? rawValue.handle
27
+ : rawValue;
28
+ result.push({ girName: meta.girName, ffiType: meta.ffiType, value });
29
+ }
30
+ }
31
+ }
32
+ current = Object.getPrototypeOf(current);
33
+ }
34
+ return result;
35
+ }
36
+ /**
37
+ * Creates a container (widget or controller) with construct-only properties.
38
+ *
39
+ * When construct-only props are present that aren't handled by the designated
40
+ * constructor, uses `g_object_new` to set them during object construction.
41
+ * Otherwise falls back to the normal constructor.
42
+ */
43
+ export function createContainerWithConstructOnly(containerClass, props, normalConstructor) {
44
+ const constructOnlyArgs = collectActiveConstructOnlyProps(containerClass, props);
45
+ if (constructOnlyArgs.length === 0) {
46
+ return normalConstructor();
47
+ }
48
+ const typeName = containerClass.glibTypeName;
49
+ const gtype = typeFromName(typeName);
50
+ const args = [{ type: { type: "int", size: 64, unsigned: true }, value: gtype, optional: false }];
51
+ for (const { girName, ffiType, value } of constructOnlyArgs) {
52
+ args.push({ type: { type: "string", ownership: "borrowed" }, value: girName, optional: false });
53
+ args.push({ type: ffiType, value, optional: false });
54
+ }
55
+ args.push({ type: { type: "null" }, value: null, optional: false });
56
+ const handle = call("libgobject-2.0.so.0", "g_object_new", args, {
57
+ type: "gobject",
58
+ ownership: "full",
59
+ });
60
+ setInstantiating(true);
61
+ // biome-ignore lint/suspicious/noExplicitAny: Dynamic instantiation with isInstantiating flag
62
+ const instance = new containerClass();
63
+ setInstantiating(false);
64
+ instance.handle = handle;
65
+ registerNativeObject(instance);
66
+ return instance;
67
+ }
68
+ //# sourceMappingURL=construct.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"construct.js","sourceRoot":"","sources":["../../../src/nodes/internal/construct.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,23 @@
1
+ import * as Gtk from "@gtkx/ffi/gtk";
2
+ import type { ReactNode } from "react";
3
+ import type { SignalStore } from "./signal-store.js";
4
+ type RenderHeaderFn = (item: unknown) => ReactNode;
5
+ type ItemResolver = (id: string) => unknown;
6
+ export declare class HeaderItemRenderer {
7
+ private factory;
8
+ private fiberRoots;
9
+ private tornDown;
10
+ private renderFn;
11
+ private boundHeaders;
12
+ private signalStore;
13
+ private resolveItem;
14
+ constructor(signalStore: SignalStore);
15
+ getFactory(): Gtk.SignalListItemFactory;
16
+ setResolveItem(resolver: ItemResolver | null): void;
17
+ setRenderFn(renderFn: RenderHeaderFn | null): void;
18
+ dispose(): void;
19
+ private rebindAllHeaders;
20
+ private initializeFactory;
21
+ }
22
+ export {};
23
+ //# sourceMappingURL=header-item-renderer.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"header-item-renderer.d.ts","sourceRoot":"","sources":["../../../src/nodes/internal/header-item-renderer.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,GAAG,MAAM,eAAe,CAAC;AACrC,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAIvC,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAErD,KAAK,cAAc,GAAG,CAAC,IAAI,EAAE,OAAO,KAAK,SAAS,CAAC;AAEnD,KAAK,YAAY,GAAG,CAAC,EAAE,EAAE,MAAM,KAAK,OAAO,CAAC;AAE5C,qBAAa,kBAAkB;IAC3B,OAAO,CAAC,OAAO,CAA4B;IAC3C,OAAO,CAAC,UAAU,CAA2C;IAC7D,OAAO,CAAC,QAAQ,CAAqB;IACrC,OAAO,CAAC,QAAQ,CAAqC;IACrD,OAAO,CAAC,YAAY,CAA6B;IACjD,OAAO,CAAC,WAAW,CAAc;IACjC,OAAO,CAAC,WAAW,CAA6B;gBAEpC,WAAW,EAAE,WAAW;IAM7B,UAAU,IAAI,GAAG,CAAC,qBAAqB;IAIvC,cAAc,CAAC,QAAQ,EAAE,YAAY,GAAG,IAAI,GAAG,IAAI;IAInD,WAAW,CAAC,QAAQ,EAAE,cAAc,GAAG,IAAI,GAAG,IAAI;IAKlD,OAAO,IAAI,IAAI;IAOtB,OAAO,CAAC,gBAAgB;IAUxB,OAAO,CAAC,iBAAiB;CAgD5B"}
@@ -0,0 +1,87 @@
1
+ import * as Gtk from "@gtkx/ffi/gtk";
2
+ import { createFiberRoot } from "../../fiber-root.js";
3
+ import { reconciler } from "../../reconciler.js";
4
+ export class HeaderItemRenderer {
5
+ factory;
6
+ fiberRoots = new Map();
7
+ tornDown = new Set();
8
+ renderFn = () => null;
9
+ boundHeaders = new Map();
10
+ signalStore;
11
+ resolveItem = null;
12
+ constructor(signalStore) {
13
+ this.signalStore = signalStore;
14
+ this.factory = new Gtk.SignalListItemFactory();
15
+ this.initializeFactory();
16
+ }
17
+ getFactory() {
18
+ return this.factory;
19
+ }
20
+ setResolveItem(resolver) {
21
+ this.resolveItem = resolver;
22
+ }
23
+ setRenderFn(renderFn) {
24
+ this.renderFn = renderFn;
25
+ this.rebindAllHeaders();
26
+ }
27
+ dispose() {
28
+ this.signalStore.clear(this);
29
+ this.fiberRoots.clear();
30
+ this.tornDown.clear();
31
+ this.boundHeaders.clear();
32
+ }
33
+ rebindAllHeaders() {
34
+ for (const [id, header] of this.boundHeaders) {
35
+ const fiberRoot = this.fiberRoots.get(header);
36
+ if (!fiberRoot)
37
+ continue;
38
+ const item = this.resolveItem?.(id) ?? null;
39
+ const element = this.renderFn?.(item);
40
+ reconciler.getInstance().updateContainer(element, fiberRoot, null, () => { });
41
+ }
42
+ }
43
+ initializeFactory() {
44
+ this.signalStore.set(this, this.factory, "setup", (listHeader) => {
45
+ const box = new Gtk.Box(Gtk.Orientation.HORIZONTAL);
46
+ listHeader.setChild(box);
47
+ const fiberRoot = createFiberRoot(box);
48
+ this.fiberRoots.set(listHeader, fiberRoot);
49
+ const element = this.renderFn?.(null);
50
+ reconciler.getInstance().updateContainer(element, fiberRoot, null, () => { });
51
+ });
52
+ this.signalStore.set(this, this.factory, "bind", (listHeader) => {
53
+ const fiberRoot = this.fiberRoots.get(listHeader);
54
+ if (!fiberRoot)
55
+ return;
56
+ const stringObject = listHeader.getItem();
57
+ let id = null;
58
+ if (stringObject instanceof Gtk.StringObject) {
59
+ id = stringObject.getString();
60
+ }
61
+ if (id !== null) {
62
+ this.boundHeaders.set(id, listHeader);
63
+ }
64
+ const item = id !== null && this.resolveItem ? this.resolveItem(id) : null;
65
+ const element = this.renderFn?.(item);
66
+ reconciler.getInstance().updateContainer(element, fiberRoot, null, () => { });
67
+ });
68
+ this.signalStore.set(this, this.factory, "unbind", (listHeader) => {
69
+ const stringObject = listHeader.getItem();
70
+ if (stringObject instanceof Gtk.StringObject) {
71
+ this.boundHeaders.delete(stringObject.getString());
72
+ }
73
+ });
74
+ this.signalStore.set(this, this.factory, "teardown", (listHeader) => {
75
+ const fiberRoot = this.fiberRoots.get(listHeader);
76
+ if (fiberRoot) {
77
+ this.tornDown.add(listHeader);
78
+ reconciler.getInstance().updateContainer(null, fiberRoot, null, () => { });
79
+ queueMicrotask(() => {
80
+ this.fiberRoots.delete(listHeader);
81
+ this.tornDown.delete(listHeader);
82
+ });
83
+ }
84
+ });
85
+ }
86
+ }
87
+ //# sourceMappingURL=header-item-renderer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"header-item-renderer.js","sourceRoot":"","sources":["../../../src/nodes/internal/header-item-renderer.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,GAAG,MAAM,eAAe,CAAC;AAGrC,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AACtD,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAOjD,MAAM,OAAO,kBAAkB;IACnB,OAAO,CAA4B;IACnC,UAAU,GAAG,IAAI,GAAG,EAAgC,CAAC;IACrD,QAAQ,GAAG,IAAI,GAAG,EAAU,CAAC;IAC7B,QAAQ,GAA0B,GAAG,EAAE,CAAC,IAAI,CAAC;IAC7C,YAAY,GAAG,IAAI,GAAG,EAAkB,CAAC;IACzC,WAAW,CAAc;IACzB,WAAW,GAAwB,IAAI,CAAC;IAEhD,YAAY,WAAwB;QAChC,IAAI,CAAC,WAAW,GAAG,WAAW,CAAC;QAC/B,IAAI,CAAC,OAAO,GAAG,IAAI,GAAG,CAAC,qBAAqB,EAAE,CAAC;QAC/C,IAAI,CAAC,iBAAiB,EAAE,CAAC;IAC7B,CAAC;IAEM,UAAU;QACb,OAAO,IAAI,CAAC,OAAO,CAAC;IACxB,CAAC;IAEM,cAAc,CAAC,QAA6B;QAC/C,IAAI,CAAC,WAAW,GAAG,QAAQ,CAAC;IAChC,CAAC;IAEM,WAAW,CAAC,QAA+B;QAC9C,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;QACzB,IAAI,CAAC,gBAAgB,EAAE,CAAC;IAC5B,CAAC;IAEM,OAAO;QACV,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QAC7B,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,CAAC;QACxB,IAAI,CAAC,QAAQ,CAAC,KAAK,EAAE,CAAC;QACtB,IAAI,CAAC,YAAY,CAAC,KAAK,EAAE,CAAC;IAC9B,CAAC;IAEO,gBAAgB;QACpB,KAAK,MAAM,CAAC,EAAE,EAAE,MAAM,CAAC,IAAI,IAAI,CAAC,YAAY,EAAE,CAAC;YAC3C,MAAM,SAAS,GAAG,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;YAC9C,IAAI,CAAC,SAAS;gBAAE,SAAS;YACzB,MAAM,IAAI,GAAG,IAAI,CAAC,WAAW,EAAE,CAAC,EAAE,CAAC,IAAI,IAAI,CAAC;YAC5C,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,EAAE,CAAC,IAAI,CAAC,CAAC;YACtC,UAAU,CAAC,WAAW,EAAE,CAAC,eAAe,CAAC,OAAO,EAAE,SAAS,EAAE,IAAI,EAAE,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;QACjF,CAAC;IACL,CAAC;IAEO,iBAAiB;QACrB,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,IAAI,EAAE,IAAI,CAAC,OAAO,EAAE,OAAO,EAAE,CAAC,UAA0B,EAAE,EAAE;YAC7E,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC;YACpD,UAAU,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;YACzB,MAAM,SAAS,GAAG,eAAe,CAAC,GAAG,CAAC,CAAC;YACvC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,UAAU,EAAE,SAAS,CAAC,CAAC;YAC3C,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,EAAE,CAAC,IAAI,CAAC,CAAC;YACtC,UAAU,CAAC,WAAW,EAAE,CAAC,eAAe,CAAC,OAAO,EAAE,SAAS,EAAE,IAAI,EAAE,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;QACjF,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,IAAI,EAAE,IAAI,CAAC,OAAO,EAAE,MAAM,EAAE,CAAC,UAA0B,EAAE,EAAE;YAC5E,MAAM,SAAS,GAAG,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;YAClD,IAAI,CAAC,SAAS;gBAAE,OAAO;YAEvB,MAAM,YAAY,GAAG,UAAU,CAAC,OAAO,EAAE,CAAC;YAC1C,IAAI,EAAE,GAAkB,IAAI,CAAC;YAC7B,IAAI,YAAY,YAAY,GAAG,CAAC,YAAY,EAAE,CAAC;gBAC3C,EAAE,GAAG,YAAY,CAAC,SAAS,EAAE,CAAC;YAClC,CAAC;YAED,IAAI,EAAE,KAAK,IAAI,EAAE,CAAC;gBACd,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,EAAE,EAAE,UAAU,CAAC,CAAC;YAC1C,CAAC;YAED,MAAM,IAAI,GAAG,EAAE,KAAK,IAAI,IAAI,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;YAC3E,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,EAAE,CAAC,IAAI,CAAC,CAAC;YACtC,UAAU,CAAC,WAAW,EAAE,CAAC,eAAe,CAAC,OAAO,EAAE,SAAS,EAAE,IAAI,EAAE,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;QACjF,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,IAAI,EAAE,IAAI,CAAC,OAAO,EAAE,QAAQ,EAAE,CAAC,UAA0B,EAAE,EAAE;YAC9E,MAAM,YAAY,GAAG,UAAU,CAAC,OAAO,EAAE,CAAC;YAC1C,IAAI,YAAY,YAAY,GAAG,CAAC,YAAY,EAAE,CAAC;gBAC3C,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,YAAY,CAAC,SAAS,EAAE,CAAC,CAAC;YACvD,CAAC;QACL,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,IAAI,EAAE,IAAI,CAAC,OAAO,EAAE,UAAU,EAAE,CAAC,UAA0B,EAAE,EAAE;YAChF,MAAM,SAAS,GAAG,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;YAClD,IAAI,SAAS,EAAE,CAAC;gBACZ,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;gBAC9B,UAAU,CAAC,WAAW,EAAE,CAAC,eAAe,CAAC,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;gBAC1E,cAAc,CAAC,GAAG,EAAE;oBAChB,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;oBACnC,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;gBACrC,CAAC,CAAC,CAAC;YACP,CAAC;QACL,CAAC,CAAC,CAAC;IACP,CAAC;CACJ"}
@@ -0,0 +1,13 @@
1
+ import type * as Gtk from "@gtkx/ffi/gtk";
2
+ import type { ReactNode } from "react";
3
+ import { HeaderItemRenderer } from "./header-item-renderer.js";
4
+ import type { SignalStore } from "./signal-store.js";
5
+ type HeaderRendererConfig = {
6
+ signalStore: SignalStore;
7
+ isEnabled: () => boolean;
8
+ resolveItem: (id: string) => unknown;
9
+ setFactory: (factory: Gtk.SignalListItemFactory | null) => void;
10
+ };
11
+ export declare function updateHeaderRenderer(current: HeaderItemRenderer | null, config: HeaderRendererConfig, renderFn: ((item: unknown) => ReactNode) | null | undefined): HeaderItemRenderer | null;
12
+ export {};
13
+ //# sourceMappingURL=header-renderer-manager.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"header-renderer-manager.d.ts","sourceRoot":"","sources":["../../../src/nodes/internal/header-renderer-manager.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,GAAG,MAAM,eAAe,CAAC;AAC1C,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AACvC,OAAO,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AAC/D,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAErD,KAAK,oBAAoB,GAAG;IACxB,WAAW,EAAE,WAAW,CAAC;IACzB,SAAS,EAAE,MAAM,OAAO,CAAC;IACzB,WAAW,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,OAAO,CAAC;IACrC,UAAU,EAAE,CAAC,OAAO,EAAE,GAAG,CAAC,qBAAqB,GAAG,IAAI,KAAK,IAAI,CAAC;CACnE,CAAC;AAEF,wBAAgB,oBAAoB,CAChC,OAAO,EAAE,kBAAkB,GAAG,IAAI,EAClC,MAAM,EAAE,oBAAoB,EAC5B,QAAQ,EAAE,CAAC,CAAC,IAAI,EAAE,OAAO,KAAK,SAAS,CAAC,GAAG,IAAI,GAAG,SAAS,GAC5D,kBAAkB,GAAG,IAAI,CAgB3B"}
@@ -0,0 +1,20 @@
1
+ import { HeaderItemRenderer } from "./header-item-renderer.js";
2
+ export function updateHeaderRenderer(current, config, renderFn) {
3
+ if (renderFn) {
4
+ if (!current && config.isEnabled()) {
5
+ current = new HeaderItemRenderer(config.signalStore);
6
+ current.setResolveItem(config.resolveItem);
7
+ config.setFactory(current.getFactory());
8
+ }
9
+ if (current) {
10
+ current.setRenderFn(renderFn);
11
+ }
12
+ }
13
+ else if (current) {
14
+ config.setFactory(null);
15
+ current.dispose();
16
+ current = null;
17
+ }
18
+ return current;
19
+ }
20
+ //# sourceMappingURL=header-renderer-manager.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"header-renderer-manager.js","sourceRoot":"","sources":["../../../src/nodes/internal/header-renderer-manager.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AAU/D,MAAM,UAAU,oBAAoB,CAChC,OAAkC,EAClC,MAA4B,EAC5B,QAA2D;IAE3D,IAAI,QAAQ,EAAE,CAAC;QACX,IAAI,CAAC,OAAO,IAAI,MAAM,CAAC,SAAS,EAAE,EAAE,CAAC;YACjC,OAAO,GAAG,IAAI,kBAAkB,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;YACrD,OAAO,CAAC,cAAc,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;YAC3C,MAAM,CAAC,UAAU,CAAC,OAAO,CAAC,UAAU,EAAE,CAAC,CAAC;QAC5C,CAAC;QACD,IAAI,OAAO,EAAE,CAAC;YACV,OAAO,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;QAClC,CAAC;IACL,CAAC;SAAM,IAAI,OAAO,EAAE,CAAC;QACjB,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;QACxB,OAAO,CAAC,OAAO,EAAE,CAAC;QAClB,OAAO,GAAG,IAAI,CAAC;IACnB,CAAC;IACD,OAAO,OAAO,CAAC;AACnB,CAAC"}
@@ -1,22 +1,21 @@
1
- import * as Gtk from "@gtkx/ffi/gtk";
1
+ import { SectionedListStore } from "./sectioned-list-store.js";
2
2
  type ItemUpdatedCallback = (id: string) => void;
3
- export declare class ListStore {
4
- private model;
5
- private ids;
6
- private idToIndex;
3
+ export declare class ListStore extends SectionedListStore {
7
4
  private items;
8
5
  private onItemUpdated;
9
- private pendingBatch;
10
6
  setOnItemUpdated(callback: ItemUpdatedCallback | null): void;
11
- beginBatch(): void;
12
- flushBatch(): void;
7
+ protected getInitialPendingBatch(): string[] | null;
8
+ protected getModelString(itemId: string, _item: unknown): string;
9
+ protected onItemAdded(itemId: string, item: unknown): void;
10
+ protected onItemRemoved(itemId: string): void;
13
11
  addItem(id: string, item: unknown): void;
14
- removeItem(id: string): void;
15
12
  insertItemBefore(id: string, beforeId: string, item: unknown): void;
16
13
  updateItem(id: string, item: unknown): void;
17
14
  getItem(id: string): unknown;
18
- getModel(): Gtk.StringList;
19
- private rebuildIndices;
15
+ getHeaderValue(itemId: string): unknown;
16
+ getHeaderValueById(sectionId: string): unknown;
17
+ getStringList(): import("@gtkx/ffi/gtk").StringList;
18
+ getNItems(): number;
20
19
  }
21
20
  export {};
22
21
  //# sourceMappingURL=list-store.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"list-store.d.ts","sourceRoot":"","sources":["../../../src/nodes/internal/list-store.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,GAAG,MAAM,eAAe,CAAC;AAErC,KAAK,mBAAmB,GAAG,CAAC,EAAE,EAAE,MAAM,KAAK,IAAI,CAAC;AAEhD,qBAAa,SAAS;IAClB,OAAO,CAAC,KAAK,CAAwB;IACrC,OAAO,CAAC,GAAG,CAAgB;IAC3B,OAAO,CAAC,SAAS,CAA6B;IAC9C,OAAO,CAAC,KAAK,CAA8B;IAC3C,OAAO,CAAC,aAAa,CAAoC;IACzD,OAAO,CAAC,YAAY,CAAyB;IAEtC,gBAAgB,CAAC,QAAQ,EAAE,mBAAmB,GAAG,IAAI,GAAG,IAAI;IAI5D,UAAU,IAAI,IAAI;IAIlB,UAAU,IAAI,IAAI;IAQlB,OAAO,CAAC,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,GAAG,IAAI;IAoBxC,UAAU,CAAC,EAAE,EAAE,MAAM,GAAG,IAAI;IAW5B,gBAAgB,CAAC,EAAE,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,GAAG,IAAI;IAuBnE,UAAU,CAAC,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,GAAG,IAAI;IAS3C,OAAO,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO;IAI5B,QAAQ,IAAI,GAAG,CAAC,UAAU;IAIjC,OAAO,CAAC,cAAc;CAKzB"}
1
+ {"version":3,"file":"list-store.d.ts","sourceRoot":"","sources":["../../../src/nodes/internal/list-store.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AAE/D,KAAK,mBAAmB,GAAG,CAAC,EAAE,EAAE,MAAM,KAAK,IAAI,CAAC;AAEhD,qBAAa,SAAU,SAAQ,kBAAkB;IAC7C,OAAO,CAAC,KAAK,CAA8B;IAC3C,OAAO,CAAC,aAAa,CAAoC;IAElD,gBAAgB,CAAC,QAAQ,EAAE,mBAAmB,GAAG,IAAI,GAAG,IAAI;cAIhD,sBAAsB,IAAI,MAAM,EAAE,GAAG,IAAI;cAIzC,cAAc,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,GAAG,MAAM;cAItD,WAAW,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,GAAG,IAAI;cAIhD,aAAa,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI;IAI/C,OAAO,CAAC,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,GAAG,IAAI;IAqBxC,gBAAgB,CAAC,EAAE,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,GAAG,IAAI;IAwBnE,UAAU,CAAC,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,GAAG,IAAI;IAS3C,OAAO,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO;IAI5B,cAAc,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO;IAQvC,kBAAkB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO;IAI9C,aAAa,IAAI,OAAO,eAAe,EAAE,UAAU;IAInD,SAAS,IAAI,MAAM;CAI7B"}
@@ -1,25 +1,24 @@
1
- import * as Gtk from "@gtkx/ffi/gtk";
2
- export class ListStore {
3
- model = new Gtk.StringList();
4
- ids = [];
5
- idToIndex = new Map();
1
+ import { SectionedListStore } from "./sectioned-list-store.js";
2
+ export class ListStore extends SectionedListStore {
6
3
  items = new Map();
7
4
  onItemUpdated = null;
8
- pendingBatch = null;
9
5
  setOnItemUpdated(callback) {
10
6
  this.onItemUpdated = callback;
11
7
  }
12
- beginBatch() {
13
- this.pendingBatch = [];
8
+ getInitialPendingBatch() {
9
+ return null;
14
10
  }
15
- flushBatch() {
16
- const batch = this.pendingBatch;
17
- this.pendingBatch = null;
18
- if (batch && batch.length > 0) {
19
- this.model.splice(0, 0, batch);
20
- }
11
+ getModelString(itemId, _item) {
12
+ return itemId;
13
+ }
14
+ onItemAdded(itemId, item) {
15
+ this.items.set(itemId, item);
16
+ }
17
+ onItemRemoved(itemId) {
18
+ this.items.delete(itemId);
21
19
  }
22
20
  addItem(id, item) {
21
+ this.flushRemovals();
23
22
  this.items.set(id, item);
24
23
  const existingIndex = this.idToIndex.get(id);
25
24
  if (existingIndex !== undefined) {
@@ -36,17 +35,8 @@ export class ListStore {
36
35
  this.model.append(id);
37
36
  }
38
37
  }
39
- removeItem(id) {
40
- const index = this.idToIndex.get(id);
41
- if (index === undefined)
42
- return;
43
- this.model.remove(index);
44
- this.ids.splice(index, 1);
45
- this.idToIndex.delete(id);
46
- this.rebuildIndices(index);
47
- this.items.delete(id);
48
- }
49
38
  insertItemBefore(id, beforeId, item) {
39
+ this.flushRemovals();
50
40
  this.items.set(id, item);
51
41
  const existingIndex = this.idToIndex.get(id);
52
42
  if (existingIndex !== undefined) {
@@ -79,13 +69,22 @@ export class ListStore {
79
69
  getItem(id) {
80
70
  return this.items.get(id);
81
71
  }
82
- getModel() {
72
+ getHeaderValue(itemId) {
73
+ const sectionId = this.itemToSection.get(itemId);
74
+ if (sectionId) {
75
+ return this.headerValues.get(sectionId);
76
+ }
77
+ return undefined;
78
+ }
79
+ getHeaderValueById(sectionId) {
80
+ return this.headerValues.get(sectionId);
81
+ }
82
+ getStringList() {
83
83
  return this.model;
84
84
  }
85
- rebuildIndices(fromIndex) {
86
- for (let i = fromIndex; i < this.ids.length; i++) {
87
- this.idToIndex.set(this.ids[i], i);
88
- }
85
+ getNItems() {
86
+ this.flushRemovals();
87
+ return this.ids.length;
89
88
  }
90
89
  }
91
90
  //# sourceMappingURL=list-store.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"list-store.js","sourceRoot":"","sources":["../../../src/nodes/internal/list-store.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"list-store.js","sourceRoot":"","sources":["../../../src/nodes/internal/list-store.ts"],"names":[],"mappings":"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"}