@powerhousedao/contributor-billing 0.1.2 → 0.1.4

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 (159) hide show
  1. package/dist/document-models/expense-report/gen/actions.d.ts +4 -0
  2. package/dist/document-models/expense-report/gen/actions.d.ts.map +1 -0
  3. package/dist/document-models/expense-report/gen/actions.js +1 -0
  4. package/dist/document-models/expense-report/gen/creators.d.ts +2 -0
  5. package/dist/document-models/expense-report/gen/creators.d.ts.map +1 -0
  6. package/dist/document-models/expense-report/gen/creators.js +1 -0
  7. package/dist/document-models/expense-report/gen/document-model.d.ts +3 -0
  8. package/dist/document-models/expense-report/gen/document-model.d.ts.map +1 -0
  9. package/dist/document-models/expense-report/gen/document-model.js +202 -0
  10. package/dist/document-models/expense-report/gen/expense-report/actions.d.ts +8 -0
  11. package/dist/document-models/expense-report/gen/expense-report/actions.d.ts.map +1 -0
  12. package/dist/document-models/expense-report/gen/expense-report/actions.js +1 -0
  13. package/dist/document-models/expense-report/gen/expense-report/creators.d.ts +4 -0
  14. package/dist/document-models/expense-report/gen/expense-report/creators.d.ts.map +1 -0
  15. package/dist/document-models/expense-report/gen/expense-report/creators.js +3 -0
  16. package/dist/document-models/expense-report/gen/expense-report/error.d.ts +2 -0
  17. package/dist/document-models/expense-report/gen/expense-report/error.d.ts.map +1 -0
  18. package/dist/document-models/expense-report/gen/expense-report/error.js +1 -0
  19. package/dist/document-models/expense-report/gen/expense-report/object.d.ts +7 -0
  20. package/dist/document-models/expense-report/gen/expense-report/object.d.ts.map +1 -0
  21. package/dist/document-models/expense-report/gen/expense-report/object.js +7 -0
  22. package/dist/document-models/expense-report/gen/expense-report/operations.d.ts +7 -0
  23. package/dist/document-models/expense-report/gen/expense-report/operations.d.ts.map +1 -0
  24. package/dist/document-models/expense-report/gen/expense-report/operations.js +1 -0
  25. package/dist/document-models/expense-report/gen/index.d.ts +8 -0
  26. package/dist/document-models/expense-report/gen/index.d.ts.map +1 -0
  27. package/dist/document-models/expense-report/gen/index.js +6 -0
  28. package/dist/document-models/expense-report/gen/object.d.ts +15 -0
  29. package/dist/document-models/expense-report/gen/object.d.ts.map +1 -0
  30. package/dist/document-models/expense-report/gen/object.js +25 -0
  31. package/dist/document-models/expense-report/gen/ph-factories.d.ts +27 -0
  32. package/dist/document-models/expense-report/gen/ph-factories.d.ts.map +1 -0
  33. package/dist/document-models/expense-report/gen/ph-factories.js +189 -0
  34. package/dist/document-models/expense-report/gen/reducer.d.ts +5 -0
  35. package/dist/document-models/expense-report/gen/reducer.d.ts.map +1 -0
  36. package/dist/document-models/expense-report/gen/reducer.js +76 -0
  37. package/dist/document-models/expense-report/gen/schema/index.d.ts +3 -0
  38. package/dist/document-models/expense-report/gen/schema/index.d.ts.map +1 -0
  39. package/dist/document-models/expense-report/gen/schema/index.js +2 -0
  40. package/dist/document-models/expense-report/gen/schema/types.d.ts +254 -0
  41. package/dist/document-models/expense-report/gen/schema/types.d.ts.map +1 -0
  42. package/dist/document-models/expense-report/gen/schema/types.js +1 -0
  43. package/dist/document-models/expense-report/gen/schema/zod.d.ts +32 -0
  44. package/dist/document-models/expense-report/gen/schema/zod.d.ts.map +1 -0
  45. package/dist/document-models/expense-report/gen/schema/zod.js +216 -0
  46. package/dist/document-models/expense-report/gen/types.d.ts +10 -0
  47. package/dist/document-models/expense-report/gen/types.d.ts.map +1 -0
  48. package/dist/document-models/expense-report/gen/types.js +1 -0
  49. package/dist/document-models/expense-report/gen/utils.d.ts +22 -0
  50. package/dist/document-models/expense-report/gen/utils.d.ts.map +1 -0
  51. package/dist/document-models/expense-report/gen/utils.js +181 -0
  52. package/dist/document-models/expense-report/gen/wallet/actions.d.ts +64 -0
  53. package/dist/document-models/expense-report/gen/wallet/actions.d.ts.map +1 -0
  54. package/dist/document-models/expense-report/gen/wallet/actions.js +1 -0
  55. package/dist/document-models/expense-report/gen/wallet/creators.d.ts +18 -0
  56. package/dist/document-models/expense-report/gen/wallet/creators.d.ts.map +1 -0
  57. package/dist/document-models/expense-report/gen/wallet/creators.js +17 -0
  58. package/dist/document-models/expense-report/gen/wallet/error.d.ts +2 -0
  59. package/dist/document-models/expense-report/gen/wallet/error.d.ts.map +1 -0
  60. package/dist/document-models/expense-report/gen/wallet/error.js +1 -0
  61. package/dist/document-models/expense-report/gen/wallet/object.d.ts +21 -0
  62. package/dist/document-models/expense-report/gen/wallet/object.d.ts.map +1 -0
  63. package/dist/document-models/expense-report/gen/wallet/object.js +49 -0
  64. package/dist/document-models/expense-report/gen/wallet/operations.d.ts +21 -0
  65. package/dist/document-models/expense-report/gen/wallet/operations.d.ts.map +1 -0
  66. package/dist/document-models/expense-report/gen/wallet/operations.js +1 -0
  67. package/dist/document-models/expense-report/index.d.ts +39 -0
  68. package/dist/document-models/expense-report/index.d.ts.map +1 -0
  69. package/dist/document-models/expense-report/index.js +21 -0
  70. package/dist/document-models/expense-report/src/reducers/wallet.d.ts +3 -0
  71. package/dist/document-models/expense-report/src/reducers/wallet.d.ts.map +1 -0
  72. package/dist/document-models/expense-report/src/reducers/wallet.js +180 -0
  73. package/dist/document-models/expense-report/src/tests/document-model.test.d.ts +6 -0
  74. package/dist/document-models/expense-report/src/tests/document-model.test.d.ts.map +1 -0
  75. package/dist/document-models/expense-report/src/tests/document-model.test.js +18 -0
  76. package/dist/document-models/expense-report/src/tests/expense-report.test.d.ts +6 -0
  77. package/dist/document-models/expense-report/src/tests/expense-report.test.d.ts.map +1 -0
  78. package/dist/document-models/expense-report/src/tests/expense-report.test.js +24 -0
  79. package/dist/document-models/expense-report/src/tests/wallet.test.d.ts +6 -0
  80. package/dist/document-models/expense-report/src/tests/wallet.test.d.ts.map +1 -0
  81. package/dist/document-models/expense-report/src/tests/wallet.test.js +24 -0
  82. package/dist/document-models/expense-report/src/utils.d.ts +2 -0
  83. package/dist/document-models/expense-report/src/utils.d.ts.map +1 -0
  84. package/dist/document-models/expense-report/src/utils.js +1 -0
  85. package/dist/document-models/index.d.ts +1 -0
  86. package/dist/document-models/index.d.ts.map +1 -1
  87. package/dist/document-models/index.js +1 -0
  88. package/dist/document-models/integrations/gen/ph-factories.d.ts.map +1 -1
  89. package/dist/document-models/integrations/gen/ph-factories.js +2 -14
  90. package/dist/document-models/integrations/gen/utils.d.ts.map +1 -1
  91. package/dist/document-models/integrations/gen/utils.js +2 -14
  92. package/dist/document-models/invoice/gen/ph-factories.d.ts.map +1 -1
  93. package/dist/document-models/invoice/gen/ph-factories.js +2 -5
  94. package/dist/document-models/invoice/gen/schema/types.d.ts +1 -1
  95. package/dist/document-models/invoice/gen/schema/types.d.ts.map +1 -1
  96. package/dist/document-models/invoice/gen/utils.d.ts.map +1 -1
  97. package/dist/document-models/invoice/gen/utils.js +1 -4
  98. package/dist/editors/billing-statement/components/lineItemsTable.d.ts.map +1 -1
  99. package/dist/editors/billing-statement/components/lineItemsTable.js +71 -13
  100. package/dist/editors/billing-statement/editor.js +1 -1
  101. package/dist/editors/contributor-billing/components/DriveExplorer.d.ts.map +1 -1
  102. package/dist/editors/contributor-billing/components/DriveExplorer.js +8 -4
  103. package/dist/editors/contributor-billing/components/InvoiceTable/HeaderControls.d.ts +4 -1
  104. package/dist/editors/contributor-billing/components/InvoiceTable/HeaderControls.d.ts.map +1 -1
  105. package/dist/editors/contributor-billing/components/InvoiceTable/HeaderControls.js +2 -2
  106. package/dist/editors/contributor-billing/components/InvoiceTable/InvoiceTable.d.ts.map +1 -1
  107. package/dist/editors/contributor-billing/components/InvoiceTable/InvoiceTable.js +24 -1
  108. package/dist/editors/expense-report/components/AddBillingStatementModal.d.ts +11 -0
  109. package/dist/editors/expense-report/components/AddBillingStatementModal.d.ts.map +1 -0
  110. package/dist/editors/expense-report/components/AddBillingStatementModal.js +170 -0
  111. package/dist/editors/expense-report/components/AggregatedExpensesTable.d.ts +11 -0
  112. package/dist/editors/expense-report/components/AggregatedExpensesTable.d.ts.map +1 -0
  113. package/dist/editors/expense-report/components/AggregatedExpensesTable.js +232 -0
  114. package/dist/editors/expense-report/components/WalletsTable.d.ts +10 -0
  115. package/dist/editors/expense-report/components/WalletsTable.d.ts.map +1 -0
  116. package/dist/editors/expense-report/components/WalletsTable.js +164 -0
  117. package/dist/editors/expense-report/editor.d.ts +2 -0
  118. package/dist/editors/expense-report/editor.d.ts.map +1 -0
  119. package/dist/editors/expense-report/editor.js +88 -0
  120. package/dist/editors/expense-report/hooks/useSyncWallet.d.ts +5 -0
  121. package/dist/editors/expense-report/hooks/useSyncWallet.d.ts.map +1 -0
  122. package/dist/editors/expense-report/hooks/useSyncWallet.js +55 -0
  123. package/dist/editors/expense-report/hooks/useWalletSync.d.ts +9 -0
  124. package/dist/editors/expense-report/hooks/useWalletSync.d.ts.map +1 -0
  125. package/dist/editors/expense-report/hooks/useWalletSync.js +79 -0
  126. package/dist/editors/expense-report/index.d.ts +3 -0
  127. package/dist/editors/expense-report/index.d.ts.map +1 -0
  128. package/dist/editors/expense-report/index.js +11 -0
  129. package/dist/editors/hooks/useExpenseReportDocument.d.ts +4 -0
  130. package/dist/editors/hooks/useExpenseReportDocument.d.ts.map +1 -0
  131. package/dist/editors/hooks/useExpenseReportDocument.js +8 -0
  132. package/dist/editors/index.d.ts +1 -0
  133. package/dist/editors/index.d.ts.map +1 -1
  134. package/dist/editors/index.js +1 -0
  135. package/dist/editors/invoice/components/statusModalComponents.d.ts.map +1 -1
  136. package/dist/editors/invoice/components/statusModalComponents.js +4 -4
  137. package/dist/editors/invoice/editor.js +1 -1
  138. package/dist/editors/invoice/ingestPDF.d.ts.map +1 -1
  139. package/dist/editors/invoice/ingestPDF.js +3 -3
  140. package/dist/editors/invoice/invoiceToGnosis.js +1 -1
  141. package/dist/editors/invoice/requestFinance.js +1 -1
  142. package/dist/editors/invoice/uploadPdfChunked.js +1 -1
  143. package/dist/index.d.ts +1 -1
  144. package/dist/index.d.ts.map +1 -1
  145. package/dist/powerhouse.manifest.json +13 -2
  146. package/dist/style.css +525 -37
  147. package/dist/subgraphs/expense-report/index.d.ts +11 -0
  148. package/dist/subgraphs/expense-report/index.d.ts.map +1 -0
  149. package/dist/subgraphs/expense-report/index.js +11 -0
  150. package/dist/subgraphs/expense-report/resolvers.d.ts +3 -0
  151. package/dist/subgraphs/expense-report/resolvers.d.ts.map +1 -0
  152. package/dist/subgraphs/expense-report/resolvers.js +252 -0
  153. package/dist/subgraphs/expense-report/schema.d.ts +3 -0
  154. package/dist/subgraphs/expense-report/schema.d.ts.map +1 -0
  155. package/dist/subgraphs/expense-report/schema.js +228 -0
  156. package/dist/subgraphs/index.d.ts +1 -0
  157. package/dist/subgraphs/index.d.ts.map +1 -1
  158. package/dist/subgraphs/index.js +1 -0
  159. package/package.json +13 -13
@@ -0,0 +1,4 @@
1
+ import type { ExpenseReportWalletAction } from "./wallet/actions.js";
2
+ export * from "./wallet/actions.js";
3
+ export type ExpenseReportAction = ExpenseReportWalletAction;
4
+ //# sourceMappingURL=actions.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"actions.d.ts","sourceRoot":"","sources":["../../../../document-models/expense-report/gen/actions.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,qBAAqB,CAAC;AAErE,cAAc,qBAAqB,CAAC;AAEpC,MAAM,MAAM,mBAAmB,GAAG,yBAAyB,CAAC"}
@@ -0,0 +1 @@
1
+ export * from "./wallet/actions.js";
@@ -0,0 +1,2 @@
1
+ export * from "./wallet/creators.js";
2
+ //# sourceMappingURL=creators.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"creators.d.ts","sourceRoot":"","sources":["../../../../document-models/expense-report/gen/creators.ts"],"names":[],"mappings":"AAAA,cAAc,sBAAsB,CAAC"}
@@ -0,0 +1 @@
1
+ export * from "./wallet/creators.js";
@@ -0,0 +1,3 @@
1
+ import type { DocumentModelState } from "document-model";
2
+ export declare const documentModel: DocumentModelState;
3
+ //# sourceMappingURL=document-model.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"document-model.d.ts","sourceRoot":"","sources":["../../../../document-models/expense-report/gen/document-model.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAC;AAEzD,eAAO,MAAM,aAAa,EAAE,kBAkO3B,CAAC"}
@@ -0,0 +1,202 @@
1
+ export const documentModel = {
2
+ author: {
3
+ name: "Powerhouse",
4
+ website: "https://powerhouse.inc/",
5
+ },
6
+ description: "A document that contains expenses for n amount wallets across different dimensions, such as expense types and categories. The flow inside a new expense report starts with the user adding wallets that would represent the expenses. Each wallet would be able to extract the expenses from the list of billing statements that are added to the wallet. From the billing statements, the line items inside the wallet are built with the rich data. For example, a line item has a tag that could be directly linked to a LineItemGroup by the group field. Once all line items are added to the Wallet.lineItems list, the next Wallet.totals field could start being populated. This Wallet.total field holds a list of GroupTotals. These group totals aggregate the line item values by the group they belong to. Once the Wallet.totals is finished, the user will be able to see a full expense report. The last steps for the user are to set the periodStart and periodEnd fields to complete the report. ",
7
+ extension: ".phdm",
8
+ id: "powerhouse/expense-report",
9
+ name: "Expense Report",
10
+ specifications: [
11
+ {
12
+ changeLog: [],
13
+ modules: [
14
+ {
15
+ description: "",
16
+ id: "4dae174e-5d8b-4a9a-b523-39ccc07a5f8e",
17
+ name: "wallet",
18
+ operations: [
19
+ {
20
+ description: "Adds a new wallet to the expense report",
21
+ errors: [],
22
+ examples: [],
23
+ id: "dd1d8daa-4975-43d9-8460-c3676d2db722",
24
+ name: "ADD_WALLET",
25
+ reducer: "",
26
+ schema: "input AddWalletInput {\n wallet: EthereumAddress!\n name: String\n}",
27
+ scope: "global",
28
+ template: "",
29
+ },
30
+ {
31
+ description: "Removes a wallet from the expense report",
32
+ errors: [],
33
+ examples: [],
34
+ id: "8f2e3c1d-9a4b-4c5d-8e6f-1a2b3c4d5e6f",
35
+ name: "REMOVE_WALLET",
36
+ reducer: "",
37
+ schema: "input RemoveWalletInput {\n wallet: EthereumAddress!\n}",
38
+ scope: "global",
39
+ template: "Removes a wallet from the expense report",
40
+ },
41
+ {
42
+ description: "Adds a billing statement reference to a specific wallet",
43
+ errors: [],
44
+ examples: [],
45
+ id: "7a1b2c3d-4e5f-6a7b-8c9d-0e1f2a3b4c5d",
46
+ name: "ADD_BILLING_STATEMENT",
47
+ reducer: "",
48
+ schema: "input AddBillingStatementInput {\n wallet: EthereumAddress!\n billingStatementId: OID!\n}",
49
+ scope: "global",
50
+ template: "Adds a billing statement reference to a specific wallet",
51
+ },
52
+ {
53
+ description: "Removes a billing statement reference from a specific wallet",
54
+ errors: [],
55
+ examples: [],
56
+ id: "9b2c3d4e-5f6a-7b8c-9d0e-1f2a3b4c5d6e",
57
+ name: "REMOVE_BILLING_STATEMENT",
58
+ reducer: "",
59
+ schema: "input RemoveBillingStatementInput {\n wallet: EthereumAddress!\n billingStatementId: OID!\n}",
60
+ scope: "global",
61
+ template: "Removes a billing statement reference from a specific wallet",
62
+ },
63
+ {
64
+ description: "Adds a new line item to a specific wallet",
65
+ errors: [],
66
+ examples: [],
67
+ id: "1a2b3c4d-5e6f-7a8b-9c0d-1e2f3a4b5c6d",
68
+ name: "ADD_LINE_ITEM",
69
+ reducer: "",
70
+ schema: "input AddLineItemInput {\n wallet: EthereumAddress!\n lineItem: LineItemInput!\n}\n\ninput LineItemInput {\n id: ID!\n label: String\n group: ID\n budget: Float\n actuals: Float\n forecast: Float\n payments: Float\n comments: String\n}",
71
+ scope: "global",
72
+ template: "Adds a new line item to a specific wallet",
73
+ },
74
+ {
75
+ description: "Updates an existing line item in a specific wallet",
76
+ errors: [],
77
+ examples: [],
78
+ id: "2b3c4d5e-6f7a-8b9c-0d1e-2f3a4b5c6d7e",
79
+ name: "UPDATE_LINE_ITEM",
80
+ reducer: "",
81
+ schema: "input UpdateLineItemInput {\n wallet: EthereumAddress!\n lineItemId: ID!\n label: String\n group: ID\n budget: Float\n actuals: Float\n forecast: Float\n payments: Float\n comments: String\n}",
82
+ scope: "global",
83
+ template: "Updates an existing line item in a specific wallet",
84
+ },
85
+ {
86
+ description: "Removes a line item from a specific wallet",
87
+ errors: [],
88
+ examples: [],
89
+ id: "3c4d5e6f-7a8b-9c0d-1e2f-3a4b5c6d7e8f",
90
+ name: "REMOVE_LINE_ITEM",
91
+ reducer: "",
92
+ schema: "input RemoveLineItemInput {\n wallet: EthereumAddress!\n lineItemId: ID!\n}",
93
+ scope: "global",
94
+ template: "Removes a line item from a specific wallet",
95
+ },
96
+ {
97
+ description: "Adds a new line item group for categorizing expenses",
98
+ errors: [],
99
+ examples: [],
100
+ id: "4d5e6f7a-8b9c-0d1e-2f3a-4b5c6d7e8f9a",
101
+ name: "ADD_LINE_ITEM_GROUP",
102
+ reducer: "",
103
+ schema: "input AddLineItemGroupInput {\n id: ID!\n label: String\n parentId: ID\n}",
104
+ scope: "global",
105
+ template: "Adds a new line item group for categorizing expenses",
106
+ },
107
+ {
108
+ description: "Updates an existing line item group",
109
+ errors: [],
110
+ examples: [],
111
+ id: "5e6f7a8b-9c0d-1e2f-3a4b-5c6d7e8f9a0b",
112
+ name: "UPDATE_LINE_ITEM_GROUP",
113
+ reducer: "",
114
+ schema: "input UpdateLineItemGroupInput {\n id: ID!\n label: String\n parentId: ID\n}",
115
+ scope: "global",
116
+ template: "Updates an existing line item group",
117
+ },
118
+ {
119
+ description: "Removes a line item group",
120
+ errors: [],
121
+ examples: [],
122
+ id: "6f7a8b9c-0d1e-2f3a-4b5c-6d7e8f9a0b1c",
123
+ name: "REMOVE_LINE_ITEM_GROUP",
124
+ reducer: "",
125
+ schema: "input RemoveLineItemGroupInput {\n id: ID!\n}",
126
+ scope: "global",
127
+ template: "Removes a line item group",
128
+ },
129
+ {
130
+ description: "Sets or updates the totals for a specific group within a wallet",
131
+ errors: [],
132
+ examples: [],
133
+ id: "7a8b9c0d-1e2f-3a4b-5c6d-7e8f9a0b1c2d",
134
+ name: "SET_GROUP_TOTALS",
135
+ reducer: "",
136
+ schema: "input SetGroupTotalsInput {\n wallet: EthereumAddress!\n groupTotals: GroupTotalsInput!\n}\n\ninput GroupTotalsInput {\n group: ID!\n totalBudget: Float\n totalForecast: Float\n totalActuals: Float\n totalPayments: Float\n}",
137
+ scope: "global",
138
+ template: "Sets or updates the totals for a specific group within a wallet",
139
+ },
140
+ {
141
+ description: "Removes group totals for a specific group within a wallet",
142
+ errors: [],
143
+ examples: [],
144
+ id: "8b9c0d1e-2f3a-4b5c-6d7e-8f9a0b1c2d3e",
145
+ name: "REMOVE_GROUP_TOTALS",
146
+ reducer: "",
147
+ schema: "input RemoveGroupTotalsInput {\n wallet: EthereumAddress!\n groupId: ID!\n}",
148
+ scope: "global",
149
+ template: "Removes group totals for a specific group within a wallet",
150
+ },
151
+ {
152
+ description: "Sets the start date for the expense report period",
153
+ errors: [],
154
+ examples: [],
155
+ id: "9c0d1e2f-3a4b-5c6d-7e8f-9a0b1c2d3e4f",
156
+ name: "SET_PERIOD_START",
157
+ reducer: "",
158
+ schema: "input SetPeriodStartInput {\n periodStart: DateTime!\n}",
159
+ scope: "global",
160
+ template: "Sets the start date for the expense report period",
161
+ },
162
+ {
163
+ description: "Sets the end date for the expense report period",
164
+ errors: [],
165
+ examples: [],
166
+ id: "0d1e2f3a-4b5c-6d7e-8f9a-0b1c2d3e4f5a",
167
+ name: "SET_PERIOD_END",
168
+ reducer: "",
169
+ schema: "input SetPeriodEndInput {\n periodEnd: DateTime!\n}",
170
+ scope: "global",
171
+ template: "Sets the end date for the expense report period",
172
+ },
173
+ {
174
+ description: "",
175
+ errors: [],
176
+ examples: [],
177
+ id: "68206262-544c-475a-8803-1871f00207cc",
178
+ name: "UPDATE_WALLET",
179
+ reducer: "",
180
+ schema: "input UpdateWalletInput {\n address: EthereumAddress!\n name: String\n}",
181
+ scope: "global",
182
+ template: "",
183
+ },
184
+ ],
185
+ },
186
+ ],
187
+ state: {
188
+ global: {
189
+ examples: [],
190
+ initialValue: '"{\\"wallets\\": [], \\"groups\\": [{\\"id\\": \\"57b0fdd7-51f5-4725-8a05-7ab3c15d90c2\\", \\"label\\": \\"Headcount Expenses\\", \\"parentId\\": null}, {\\"id\\": \\"4971def8-64f8-4eab-b69b-a869d10452c2\\", \\"label\\": \\"Non-Headcount Expenses\\", \\"parentId\\": null}, {\\"id\\": \\"e27b7f51-dc22-4ebe-8659-4e41824ae58c\\", \\"label\\": \\"Travel & Entertainment\\", \\"parentId\\": \\"57b0fdd7-51f5-4725-8a05-7ab3c15d90c2\\"}, {\\"id\\": \\"e4dce6df-1aa6-4861-b9f4-d861ad74d66c\\", \\"label\\": \\"Compensation & Benefits\\", \\"parentId\\": \\"57b0fdd7-51f5-4725-8a05-7ab3c15d90c2\\"}, {\\"id\\": \\"92e445ba-96af-4793-ae01-9b71035174ba\\", \\"label\\": \\"Marketing Expense\\", \\"parentId\\": \\"4971def8-64f8-4eab-b69b-a869d10452c2\\"}, {\\"id\\": \\"778dbd41-3d4a-4c8f-9004-7797f04e5b40\\", \\"label\\": \\"Admin Expense\\", \\"parentId\\": \\"4971def8-64f8-4eab-b69b-a869d10452c2\\"}, {\\"id\\": \\"5f024d53-7d0e-4818-9661-256aee69709d\\", \\"label\\": \\"Professional Services\\", \\"parentId\\": \\"4971def8-64f8-4eab-b69b-a869d10452c2\\"}, {\\"id\\": \\"659337f4-01c3-495a-89d7-c177c4137620\\", \\"label\\": \\"Cost of Goods Sold\\", \\"parentId\\": \\"4971def8-64f8-4eab-b69b-a869d10452c2\\"}, {\\"id\\": \\"1d6f0601-966a-4982-811d-981ac28db0b4\\", \\"label\\": \\"Software Development Expense\\", \\"parentId\\": \\"4971def8-64f8-4eab-b69b-a869d10452c2\\"}, {\\"id\\": \\"800dac9a-5665-4826-a972-b3170c789d92\\", \\"label\\": \\"Income Tax Expense\\", \\"parentId\\": \\"4971def8-64f8-4eab-b69b-a869d10452c2\\"}, {\\"id\\": \\"30ed3523-c15a-411f-a8f6-7bb6b978f6f8\\", \\"label\\": \\"Software Expense\\", \\"parentId\\": \\"4971def8-64f8-4eab-b69b-a869d10452c2\\"}, {\\"id\\": \\"ba7688ad-1329-4344-8f8a-e0f27dc648b8\\", \\"label\\": \\"Gas Expense\\", \\"parentId\\": \\"4971def8-64f8-4eab-b69b-a869d10452c2\\"}, {\\"label\\": \\"Budget\\", \\"parentId\\": null, \\"id\\": \\"465367d1-636a-45a1-9e43-4a48dd074918\\"}, {\\"label\\": \\"Interest Income\\", \\"parentId\\": null, \\"id\\": \\"aa5b7188-2231-445e-9f3d-7e5d1ce5754f\\"}, {\\"label\\": \\"Other Income Expense (Non-operating)\\", \\"parentId\\": null, \\"id\\": \\"d1e9bd15-930d-4faa-ba61-8f2a3b1d0e8f\\"}, {\\"label\\": \\"Other Income\\", \\"parentId\\": null, \\"id\\": \\"133b762c-a240-4a42-8bf6-9c29b3675f91\\"}, {\\"label\\": \\"Current Asset\\", \\"parentId\\": null, \\"id\\": \\"1c61e841-c599-4c38-944a-7c9450c27d17\\"}, {\\"label\\": \\"Fixed Asset\\", \\"parentId\\": null, \\"id\\": \\"5a33a954-09d0-4ddd-95fc-c56853de4dbd\\"}, {\\"label\\": \\"Non-Current Asset\\", \\"parentId\\": null, \\"id\\": \\"75130e59-7c11-44ae-980c-eaa4968a4a56\\"}, {\\"label\\": \\"Current Liability\\", \\"parentId\\": null, \\"id\\": \\"b3091879-f549-4227-beef-c8d4947be2e7\\"}, {\\"label\\": \\"Non-current Liability\\", \\"parentId\\": null, \\"id\\": \\"2f64aca7-38db-4ff4-8cc5-8e0952c23151\\"}, {\\"label\\": \\"Owner Equity\\", \\"parentId\\": null, \\"id\\": \\"42e480eb-9790-49ed-af35-3ab124af556e\\"}, {\\"label\\": \\"Equity\\", \\"parentId\\": null, \\"id\\": \\"248f0af0-74b1-4fd9-9e7f-3d723f5c4c56\\"}, {\\"label\\": \\"Adjustment A/C\\", \\"parentId\\": null, \\"id\\": \\"5044752a-5618-4ab2-90b7-54b5d95e38cf\\"}, {\\"label\\": \\"Temporary Holding Account\\", \\"parentId\\": null, \\"id\\": \\"566fede7-b593-43d0-84b6-50301e5a84ed\\"}, {\\"label\\": \\"Other\\", \\"parentId\\": null, \\"id\\": \\"f0077e3f-2931-4637-8715-ba3a01ce3786\\"}, {\\"label\\": \\"Internal Transfers\\", \\"parentId\\": null, \\"id\\": \\"470504f0-a89f-4555-a46e-667c74240238\\"}], \\"periodStart\\": null, \\"periodEnd\\": null}"',
191
+ schema: "type ExpenseReportState {\n wallets: [Wallet!]!\n groups: [LineItemGroup!]!\n periodStart: DateTime\n periodEnd: DateTime\n}\n\ntype Wallet {\n name: String\n wallet: EthereumAddress\n totals: [GroupTotals]\n billingStatements: [OID]\n lineItems: [LineItem]\n}\n\ntype LineItemGroup {\n id: ID!\n label: String\n parentId: ID\n}\n\ntype GroupTotals {\n group: ID ## LineItemGroupId\n totalBudget: Float\n totalForecast: Float\n totalActuals: Float\n totalPayments: Float\n}\n\ntype LineItem {\n id: ID\n label: String\n group: ID ## LineItemGroupId\n budget: Float\n actuals: Float\n forecast: Float\n payments: Float\n comments: String\n}\n",
192
+ },
193
+ local: {
194
+ examples: [],
195
+ initialValue: '""',
196
+ schema: "",
197
+ },
198
+ },
199
+ version: 1,
200
+ },
201
+ ],
202
+ };
@@ -0,0 +1,8 @@
1
+ import { type Action } from "document-model";
2
+ import type { AddWalletInput } from "../types.js";
3
+ export type AddWalletAction = Action & {
4
+ type: "ADD_WALLET";
5
+ input: AddWalletInput;
6
+ };
7
+ export type ExpenseReportExpenseReportAction = AddWalletAction;
8
+ //# sourceMappingURL=actions.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"actions.d.ts","sourceRoot":"","sources":["../../../../../document-models/expense-report/gen/expense-report/actions.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,MAAM,EAAE,MAAM,gBAAgB,CAAC;AAC7C,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAElD,MAAM,MAAM,eAAe,GAAG,MAAM,GAAG;IACrC,IAAI,EAAE,YAAY,CAAC;IACnB,KAAK,EAAE,cAAc,CAAC;CACvB,CAAC;AAEF,MAAM,MAAM,gCAAgC,GAAG,eAAe,CAAC"}
@@ -0,0 +1,4 @@
1
+ import { type AddWalletInput } from "../types.js";
2
+ import { type AddWalletAction } from "./actions.js";
3
+ export declare const addWallet: (input: AddWalletInput) => AddWalletAction;
4
+ //# sourceMappingURL=creators.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"creators.d.ts","sourceRoot":"","sources":["../../../../../document-models/expense-report/gen/expense-report/creators.ts"],"names":[],"mappings":"AACA,OAAO,EAAK,KAAK,cAAc,EAAE,MAAM,aAAa,CAAC;AACrD,OAAO,EAAE,KAAK,eAAe,EAAE,MAAM,cAAc,CAAC;AAEpD,eAAO,MAAM,SAAS,GAAI,OAAO,cAAc,oBAO5C,CAAC"}
@@ -0,0 +1,3 @@
1
+ import { createAction } from "document-model";
2
+ import { z } from "../types.js";
3
+ export const addWallet = (input) => createAction("ADD_WALLET", { ...input }, undefined, z.AddWalletInputSchema, "global");
@@ -0,0 +1,2 @@
1
+ export declare const errors: {};
2
+ //# sourceMappingURL=error.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"error.d.ts","sourceRoot":"","sources":["../../../../../document-models/expense-report/gen/expense-report/error.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,MAAM,IAAK,CAAC"}
@@ -0,0 +1 @@
1
+ export const errors = {};
@@ -0,0 +1,7 @@
1
+ import { BaseDocumentClass } from "document-model";
2
+ import { ExpenseReportPHState } from "../ph-factories.js";
3
+ import { type AddWalletInput } from "../types.js";
4
+ export default class ExpenseReport_ExpenseReport extends BaseDocumentClass<ExpenseReportPHState> {
5
+ addWallet(input: AddWalletInput): this;
6
+ }
7
+ //# sourceMappingURL=object.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"object.d.ts","sourceRoot":"","sources":["../../../../../document-models/expense-report/gen/expense-report/object.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AACnD,OAAO,EAAE,oBAAoB,EAAE,MAAM,oBAAoB,CAAC;AAC1D,OAAO,EAAE,KAAK,cAAc,EAAE,MAAM,aAAa,CAAC;AAIlD,MAAM,CAAC,OAAO,OAAO,2BAA4B,SAAQ,iBAAiB,CAAC,oBAAoB,CAAC;IACvF,SAAS,CAAC,KAAK,EAAE,cAAc;CAGvC"}
@@ -0,0 +1,7 @@
1
+ import { BaseDocumentClass } from "document-model";
2
+ import { addWallet } from "./creators.js";
3
+ export default class ExpenseReport_ExpenseReport extends BaseDocumentClass {
4
+ addWallet(input) {
5
+ return this.dispatch(addWallet(input));
6
+ }
7
+ }
@@ -0,0 +1,7 @@
1
+ import { type SignalDispatch } from "document-model";
2
+ import { type AddWalletAction } from "./actions.js";
3
+ import { type ExpenseReportState } from "../types.js";
4
+ export interface ExpenseReportExpenseReportOperations {
5
+ addWalletOperation: (state: ExpenseReportState, action: AddWalletAction, dispatch?: SignalDispatch) => void;
6
+ }
7
+ //# sourceMappingURL=operations.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"operations.d.ts","sourceRoot":"","sources":["../../../../../document-models/expense-report/gen/expense-report/operations.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,cAAc,EAAE,MAAM,gBAAgB,CAAC;AACrD,OAAO,EAAE,KAAK,eAAe,EAAE,MAAM,cAAc,CAAC;AACpD,OAAO,EAAE,KAAK,kBAAkB,EAAE,MAAM,aAAa,CAAC;AAEtD,MAAM,WAAW,oCAAoC;IACnD,kBAAkB,EAAE,CAClB,KAAK,EAAE,kBAAkB,EACzB,MAAM,EAAE,eAAe,EACvB,QAAQ,CAAC,EAAE,cAAc,KACtB,IAAI,CAAC;CACX"}
@@ -0,0 +1,8 @@
1
+ export * from "./actions.js";
2
+ export * from "./document-model.js";
3
+ export * from "./object.js";
4
+ export * from "./types.js";
5
+ export * as actions from "./creators.js";
6
+ export type { ExpenseReportPHState } from "./ph-factories.js";
7
+ export { createExpenseReportDocument, createState, defaultPHState, defaultGlobalState, defaultLocalState, } from "./ph-factories.js";
8
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../document-models/expense-report/gen/index.ts"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAC;AAC7B,cAAc,qBAAqB,CAAC;AACpC,cAAc,aAAa,CAAC;AAC5B,cAAc,YAAY,CAAC;AAC3B,OAAO,KAAK,OAAO,MAAM,eAAe,CAAC;AACzC,YAAY,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AAC9D,OAAO,EACL,2BAA2B,EAC3B,WAAW,EACX,cAAc,EACd,kBAAkB,EAClB,iBAAiB,GAClB,MAAM,mBAAmB,CAAC"}
@@ -0,0 +1,6 @@
1
+ export * from "./actions.js";
2
+ export * from "./document-model.js";
3
+ export * from "./object.js";
4
+ export * from "./types.js";
5
+ export * as actions from "./creators.js";
6
+ export { createExpenseReportDocument, createState, defaultPHState, defaultGlobalState, defaultLocalState, } from "./ph-factories.js";
@@ -0,0 +1,15 @@
1
+ import { BaseDocumentClass, type SignalDispatch } from "document-model";
2
+ import { ExpenseReportPHState } from "./ph-factories.js";
3
+ import ExpenseReport_Wallet from "./wallet/object.js";
4
+ export * from "./wallet/object.js";
5
+ interface ExpenseReport extends ExpenseReport_Wallet {
6
+ }
7
+ declare class ExpenseReport extends BaseDocumentClass<ExpenseReportPHState> {
8
+ static fileExtension: string;
9
+ constructor(initialState?: Partial<ExpenseReportPHState>, dispatch?: SignalDispatch);
10
+ saveToFile(path: string, name?: string): Promise<string>;
11
+ loadFromFile(path: string): Promise<void>;
12
+ static fromFile(path: string): Promise<ExpenseReport>;
13
+ }
14
+ export { ExpenseReport };
15
+ //# sourceMappingURL=object.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"object.d.ts","sourceRoot":"","sources":["../../../../document-models/expense-report/gen/object.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,iBAAiB,EAEjB,KAAK,cAAc,EACpB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AAIzD,OAAO,oBAAoB,MAAM,oBAAoB,CAAC;AAEtD,cAAc,oBAAoB,CAAC;AAGnC,UAAU,aAAc,SAAQ,oBAAoB;CAAG;AAGvD,cAAM,aAAc,SAAQ,iBAAiB,CAAC,oBAAoB,CAAC;IACjE,MAAM,CAAC,aAAa,SAAW;gBAG7B,YAAY,CAAC,EAAE,OAAO,CAAC,oBAAoB,CAAC,EAC5C,QAAQ,CAAC,EAAE,cAAc;IAKpB,UAAU,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM;IAItC,YAAY,CAAC,IAAI,EAAE,MAAM;WAInB,QAAQ,CAAC,IAAI,EAAE,MAAM;CAKnC;AAID,OAAO,EAAE,aAAa,EAAE,CAAC"}
@@ -0,0 +1,25 @@
1
+ import { BaseDocumentClass, applyMixins, } from "document-model";
2
+ import { reducer } from "./reducer.js";
3
+ import { createDocument } from "./utils.js";
4
+ import ExpenseReport_Wallet from "./wallet/object.js";
5
+ export * from "./wallet/object.js";
6
+ // eslint-disable-next-line @typescript-eslint/no-unsafe-declaration-merging
7
+ class ExpenseReport extends BaseDocumentClass {
8
+ static fileExtension = ".phdm";
9
+ constructor(initialState, dispatch) {
10
+ super(reducer, createDocument(initialState), dispatch);
11
+ }
12
+ saveToFile(path, name) {
13
+ return super.saveToFile(path, ExpenseReport.fileExtension, name);
14
+ }
15
+ loadFromFile(path) {
16
+ return super.loadFromFile(path);
17
+ }
18
+ static async fromFile(path) {
19
+ const document = new this();
20
+ await document.loadFromFile(path);
21
+ return document;
22
+ }
23
+ }
24
+ applyMixins(ExpenseReport, [ExpenseReport_Wallet]);
25
+ export { ExpenseReport };
@@ -0,0 +1,27 @@
1
+ /**
2
+ * Factory methods for creating ExpenseReportDocument instances
3
+ */
4
+ import { type PHAuthState, type PHDocumentState, type PHBaseState } from "document-model";
5
+ import type { ExpenseReportDocument, ExpenseReportLocalState, ExpenseReportState } from "./types.js";
6
+ export type ExpenseReportPHState = PHBaseState & {
7
+ global: ExpenseReportState;
8
+ local: ExpenseReportLocalState;
9
+ };
10
+ export declare function defaultGlobalState(): ExpenseReportState;
11
+ export declare function defaultLocalState(): ExpenseReportLocalState;
12
+ export declare function defaultPHState(): ExpenseReportPHState;
13
+ export declare function createGlobalState(state?: Partial<ExpenseReportState>): ExpenseReportState;
14
+ export declare function createLocalState(state?: Partial<ExpenseReportLocalState>): ExpenseReportLocalState;
15
+ export declare function createState(baseState?: Partial<PHBaseState>, globalState?: Partial<ExpenseReportState>, localState?: Partial<ExpenseReportLocalState>): ExpenseReportPHState;
16
+ /**
17
+ * Creates a ExpenseReportDocument with custom global and local state
18
+ * This properly handles the PHBaseState requirements while allowing
19
+ * document-specific state to be set.
20
+ */
21
+ export declare function createExpenseReportDocument(state?: Partial<{
22
+ auth?: Partial<PHAuthState>;
23
+ document?: Partial<PHDocumentState>;
24
+ global?: Partial<ExpenseReportState>;
25
+ local?: Partial<ExpenseReportLocalState>;
26
+ }>): ExpenseReportDocument;
27
+ //# sourceMappingURL=ph-factories.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ph-factories.d.ts","sourceRoot":"","sources":["../../../../document-models/expense-report/gen/ph-factories.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAGL,KAAK,WAAW,EAChB,KAAK,eAAe,EACpB,KAAK,WAAW,EACjB,MAAM,gBAAgB,CAAC;AACxB,OAAO,KAAK,EACV,qBAAqB,EACrB,uBAAuB,EACvB,kBAAkB,EACnB,MAAM,YAAY,CAAC;AAGpB,MAAM,MAAM,oBAAoB,GAAG,WAAW,GAAG;IAC/C,MAAM,EAAE,kBAAkB,CAAC;IAC3B,KAAK,EAAE,uBAAuB,CAAC;CAChC,CAAC;AAEF,wBAAgB,kBAAkB,IAAI,kBAAkB,CA+IvD;AAED,wBAAgB,iBAAiB,IAAI,uBAAuB,CAE3D;AAED,wBAAgB,cAAc,IAAI,oBAAoB,CAMrD;AAED,wBAAgB,iBAAiB,CAC/B,KAAK,CAAC,EAAE,OAAO,CAAC,kBAAkB,CAAC,GAClC,kBAAkB,CAKpB;AAED,wBAAgB,gBAAgB,CAC9B,KAAK,CAAC,EAAE,OAAO,CAAC,uBAAuB,CAAC,GACvC,uBAAuB,CAKzB;AAED,wBAAgB,WAAW,CACzB,SAAS,CAAC,EAAE,OAAO,CAAC,WAAW,CAAC,EAChC,WAAW,CAAC,EAAE,OAAO,CAAC,kBAAkB,CAAC,EACzC,UAAU,CAAC,EAAE,OAAO,CAAC,uBAAuB,CAAC,GAC5C,oBAAoB,CAMtB;AAED;;;;GAIG;AACH,wBAAgB,2BAA2B,CACzC,KAAK,CAAC,EAAE,OAAO,CAAC;IACd,IAAI,CAAC,EAAE,OAAO,CAAC,WAAW,CAAC,CAAC;IAC5B,QAAQ,CAAC,EAAE,OAAO,CAAC,eAAe,CAAC,CAAC;IACpC,MAAM,CAAC,EAAE,OAAO,CAAC,kBAAkB,CAAC,CAAC;IACrC,KAAK,CAAC,EAAE,OAAO,CAAC,uBAAuB,CAAC,CAAC;CAC1C,CAAC,GACD,qBAAqB,CAYvB"}
@@ -0,0 +1,189 @@
1
+ /**
2
+ * Factory methods for creating ExpenseReportDocument instances
3
+ */
4
+ import { createBaseState, defaultBaseState, } from "document-model";
5
+ import { createDocument } from "./utils.js";
6
+ export function defaultGlobalState() {
7
+ return {
8
+ wallets: [],
9
+ groups: [
10
+ {
11
+ id: "57b0fdd7-51f5-4725-8a05-7ab3c15d90c2",
12
+ label: "Headcount Expenses",
13
+ parentId: null,
14
+ },
15
+ {
16
+ id: "4971def8-64f8-4eab-b69b-a869d10452c2",
17
+ label: "Non-Headcount Expenses",
18
+ parentId: null,
19
+ },
20
+ {
21
+ id: "e27b7f51-dc22-4ebe-8659-4e41824ae58c",
22
+ label: "Travel & Entertainment",
23
+ parentId: "57b0fdd7-51f5-4725-8a05-7ab3c15d90c2",
24
+ },
25
+ {
26
+ id: "e4dce6df-1aa6-4861-b9f4-d861ad74d66c",
27
+ label: "Compensation & Benefits",
28
+ parentId: "57b0fdd7-51f5-4725-8a05-7ab3c15d90c2",
29
+ },
30
+ {
31
+ id: "92e445ba-96af-4793-ae01-9b71035174ba",
32
+ label: "Marketing Expense",
33
+ parentId: "4971def8-64f8-4eab-b69b-a869d10452c2",
34
+ },
35
+ {
36
+ id: "778dbd41-3d4a-4c8f-9004-7797f04e5b40",
37
+ label: "Admin Expense",
38
+ parentId: "4971def8-64f8-4eab-b69b-a869d10452c2",
39
+ },
40
+ {
41
+ id: "5f024d53-7d0e-4818-9661-256aee69709d",
42
+ label: "Professional Services",
43
+ parentId: "4971def8-64f8-4eab-b69b-a869d10452c2",
44
+ },
45
+ {
46
+ id: "659337f4-01c3-495a-89d7-c177c4137620",
47
+ label: "Cost of Goods Sold",
48
+ parentId: "4971def8-64f8-4eab-b69b-a869d10452c2",
49
+ },
50
+ {
51
+ id: "1d6f0601-966a-4982-811d-981ac28db0b4",
52
+ label: "Software Development Expense",
53
+ parentId: "4971def8-64f8-4eab-b69b-a869d10452c2",
54
+ },
55
+ {
56
+ id: "800dac9a-5665-4826-a972-b3170c789d92",
57
+ label: "Income Tax Expense",
58
+ parentId: "4971def8-64f8-4eab-b69b-a869d10452c2",
59
+ },
60
+ {
61
+ id: "30ed3523-c15a-411f-a8f6-7bb6b978f6f8",
62
+ label: "Software Expense",
63
+ parentId: "4971def8-64f8-4eab-b69b-a869d10452c2",
64
+ },
65
+ {
66
+ id: "ba7688ad-1329-4344-8f8a-e0f27dc648b8",
67
+ label: "Gas Expense",
68
+ parentId: "4971def8-64f8-4eab-b69b-a869d10452c2",
69
+ },
70
+ {
71
+ label: "Budget",
72
+ parentId: null,
73
+ id: "465367d1-636a-45a1-9e43-4a48dd074918",
74
+ },
75
+ {
76
+ label: "Interest Income",
77
+ parentId: null,
78
+ id: "aa5b7188-2231-445e-9f3d-7e5d1ce5754f",
79
+ },
80
+ {
81
+ label: "Other Income Expense (Non-operating)",
82
+ parentId: null,
83
+ id: "d1e9bd15-930d-4faa-ba61-8f2a3b1d0e8f",
84
+ },
85
+ {
86
+ label: "Other Income",
87
+ parentId: null,
88
+ id: "133b762c-a240-4a42-8bf6-9c29b3675f91",
89
+ },
90
+ {
91
+ label: "Current Asset",
92
+ parentId: null,
93
+ id: "1c61e841-c599-4c38-944a-7c9450c27d17",
94
+ },
95
+ {
96
+ label: "Fixed Asset",
97
+ parentId: null,
98
+ id: "5a33a954-09d0-4ddd-95fc-c56853de4dbd",
99
+ },
100
+ {
101
+ label: "Non-Current Asset",
102
+ parentId: null,
103
+ id: "75130e59-7c11-44ae-980c-eaa4968a4a56",
104
+ },
105
+ {
106
+ label: "Current Liability",
107
+ parentId: null,
108
+ id: "b3091879-f549-4227-beef-c8d4947be2e7",
109
+ },
110
+ {
111
+ label: "Non-current Liability",
112
+ parentId: null,
113
+ id: "2f64aca7-38db-4ff4-8cc5-8e0952c23151",
114
+ },
115
+ {
116
+ label: "Owner Equity",
117
+ parentId: null,
118
+ id: "42e480eb-9790-49ed-af35-3ab124af556e",
119
+ },
120
+ {
121
+ label: "Equity",
122
+ parentId: null,
123
+ id: "248f0af0-74b1-4fd9-9e7f-3d723f5c4c56",
124
+ },
125
+ {
126
+ label: "Adjustment A/C",
127
+ parentId: null,
128
+ id: "5044752a-5618-4ab2-90b7-54b5d95e38cf",
129
+ },
130
+ {
131
+ label: "Temporary Holding Account",
132
+ parentId: null,
133
+ id: "566fede7-b593-43d0-84b6-50301e5a84ed",
134
+ },
135
+ {
136
+ label: "Other",
137
+ parentId: null,
138
+ id: "f0077e3f-2931-4637-8715-ba3a01ce3786",
139
+ },
140
+ {
141
+ label: "Internal Transfers",
142
+ parentId: null,
143
+ id: "470504f0-a89f-4555-a46e-667c74240238",
144
+ },
145
+ ],
146
+ periodStart: null,
147
+ periodEnd: null,
148
+ };
149
+ }
150
+ export function defaultLocalState() {
151
+ return {};
152
+ }
153
+ export function defaultPHState() {
154
+ return {
155
+ ...defaultBaseState(),
156
+ global: defaultGlobalState(),
157
+ local: defaultLocalState(),
158
+ };
159
+ }
160
+ export function createGlobalState(state) {
161
+ return {
162
+ ...defaultGlobalState(),
163
+ ...(state || {}),
164
+ };
165
+ }
166
+ export function createLocalState(state) {
167
+ return {
168
+ ...defaultLocalState(),
169
+ ...(state || {}),
170
+ };
171
+ }
172
+ export function createState(baseState, globalState, localState) {
173
+ return {
174
+ ...createBaseState(baseState?.auth, baseState?.document),
175
+ global: createGlobalState(globalState),
176
+ local: createLocalState(localState),
177
+ };
178
+ }
179
+ /**
180
+ * Creates a ExpenseReportDocument with custom global and local state
181
+ * This properly handles the PHBaseState requirements while allowing
182
+ * document-specific state to be set.
183
+ */
184
+ export function createExpenseReportDocument(state) {
185
+ const document = createDocument(state
186
+ ? createState(createBaseState(state.auth, state.document), state.global, state.local)
187
+ : undefined);
188
+ return document;
189
+ }
@@ -0,0 +1,5 @@
1
+ import { type StateReducer } from "document-model";
2
+ import { ExpenseReportPHState } from "./ph-factories.js";
3
+ export declare const stateReducer: StateReducer<ExpenseReportPHState>;
4
+ export declare const reducer: import("document-model").Reducer<ExpenseReportPHState>;
5
+ //# sourceMappingURL=reducer.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"reducer.d.ts","sourceRoot":"","sources":["../../../../document-models/expense-report/gen/reducer.ts"],"names":[],"mappings":"AAGA,OAAO,EACL,KAAK,YAAY,EAGlB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AAKzD,eAAO,MAAM,YAAY,EAAE,YAAY,CAAC,oBAAoB,CAoJ3D,CAAC;AAEF,eAAO,MAAM,OAAO,wDAAoD,CAAC"}