@classytic/ca-tax 0.0.14 → 0.0.17
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +323 -0
- package/dist/forms/index.d.mts +2 -2
- package/dist/forms/index.mjs +2 -2
- package/dist/forms.mjs +9458 -7897
- package/dist/index.d.mts +109 -5
- package/dist/index.mjs +3 -3
- package/dist/index3.d.mts +2348 -980
- package/dist/index4.d.mts +3 -3
- package/dist/t2/index.d.mts +3 -3
- package/dist/t2/index.mjs +3 -3
- package/dist/t2.mjs +3783 -2578
- package/package.json +3 -3
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,328 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## [0.0.17] - 2026-09-07
|
|
4
|
+
|
|
5
|
+
### Added — federal per-schedule, per-line filing payloads (`src/t2/filing/t2-schedule-line-items.ts`)
|
|
6
|
+
|
|
7
|
+
The federal counterpart of the AT1 side's `at1-schedule-line-items.ts`. `federalSchedulePayloads()`
|
|
8
|
+
assembles a `T2ScheduleData[]` — one entry per schedule that has at least one computed value,
|
|
9
|
+
never an empty one — from `computeFederalT2`'s result. `t2LineItemId(line, occurrence)` mints a
|
|
10
|
+
6-digit id (3-digit CRA line + 3-digit occurrence), deliberately shorter than Alberta's 9-digit
|
|
11
|
+
`SSSFFFOOO` scheme since a federal line number is unique across the whole return;
|
|
12
|
+
`parseT2LineItemId` round-trips it and explicitly refuses a 9-digit Alberta id rather than
|
|
13
|
+
silently misreading one. `FederalT2Result.schedulePayloads` now carries this array.
|
|
14
|
+
|
|
15
|
+
The core rule, load-bearing for correctness: **a value is emitted only if its line is recorded
|
|
16
|
+
in code** — a named constant, a `.line` field, or a documented result-type comment — never typed
|
|
17
|
+
from memory. Schedule 3 deliberately has no producer: its named lines (460/465) are
|
|
18
|
+
preparer-entered pool movements, and emitting them here would file the right numbers under the
|
|
19
|
+
wrong labels. Building this file is what surfaced the two line-mapping bugs below — both were
|
|
20
|
+
plausible-looking numbers that no type caught.
|
|
21
|
+
|
|
22
|
+
### Added — T2 Schedule 141, Notes Checklist (`src/t2/forms/schedule141.ts`)
|
|
23
|
+
|
|
24
|
+
The only GIFI-adjacent schedule that is a real filed form (100/125 are blank grids). Five parts:
|
|
25
|
+
who prepared the financial statements and their designation (`preparer`, line 111), the level of
|
|
26
|
+
assurance — audit/review/compilation/bookkeeping (`involvement`), the qualified-opinion flag CRA
|
|
27
|
+
risk-scores on (`reservation`, line 099), notes on impairments/revaluations/contingent
|
|
28
|
+
liabilities/hedge accounting/prior-period corrections (`notes`), and who prepared the *return*
|
|
29
|
+
as distinct from the statements (`return-preparer`). All boxes are tick fields except two free-text
|
|
30
|
+
"please specify" lines (305, 314).
|
|
31
|
+
|
|
32
|
+
### Fixed — the jacket's loss-pool lines pointed at the wrong Schedule 4 boxes
|
|
33
|
+
|
|
34
|
+
Jacket lines 331/332 were sourced from Schedule 4 lines **150** and **250**; the form prints
|
|
35
|
+
**130** and **225** at those positions. Line 332 is additionally HALF of line 225 — Schedule 4
|
|
36
|
+
records the loss at its gross amount, the jacket takes it at the 50% inclusion rate. Both bugs
|
|
37
|
+
were caught only by building the per-line filing payload above and cross-checking every
|
|
38
|
+
`carriedOut`/`carriedIn` reference against the actual printed form. Also added: jacket lines 333
|
|
39
|
+
(restricted farm losses ← Schedule 4 line 430), 334 (farm losses ← line 330), 335 (limited
|
|
40
|
+
partnership losses ← Schedule 4's Part 7 third table — no single numbered box prints this total),
|
|
41
|
+
and 336 (RIFE denied under EIFEL ← Schedule 4 line 730, tracing back to Schedule 130).
|
|
42
|
+
|
|
43
|
+
### Added — Schedule 4 Part 7, limited partnership losses
|
|
44
|
+
|
|
45
|
+
Previously undocumented in this engine — the interface comment stated in writing that LP losses
|
|
46
|
+
"do not appear anywhere on the printed Schedule 4," which was wrong. Three tables, lines 600-680
|
|
47
|
+
(current-year LP losses, prior-year applicable amounts, continuity carry-forward), added as a
|
|
48
|
+
hand-authored caption block since extraction returned nothing at all for this part. Lines 330 and
|
|
49
|
+
335 were also mistagged into Part 1 (Part 1's own footnote references them) and moved to their
|
|
50
|
+
correct home, Part 3 — Farm losses.
|
|
51
|
+
|
|
52
|
+
### Added — Schedule 7 Part 7, specified corporate income
|
|
53
|
+
|
|
54
|
+
Lines 610/620/625 were missing entirely from extraction (line 600 came through as a garbled
|
|
55
|
+
fragment, "column EE 11"); line 615 was mistagged into Part 6 because Part 6's text references
|
|
56
|
+
it. Added as a hand-authored block with corrected sectioning; line 615 disambiguated from 625 —
|
|
57
|
+
615 is "total income described under clause 125(1)(a)(i)(B)" (column FF), 625 a separate column
|
|
58
|
+
GG total.
|
|
59
|
+
|
|
60
|
+
### Fixed — Schedule 33's own doc comment cited a line that doesn't exist
|
|
61
|
+
|
|
62
|
+
`taxableCapitalEmployedInCanada`'s comment said "Line 690"; the form prints "Taxable capital
|
|
63
|
+
employed in Canada" against line **790**, matching the constant the comment sat beside without
|
|
64
|
+
anyone noticing the disagreement.
|
|
65
|
+
|
|
66
|
+
### Fixed — Schedule 31 and Schedule 4 caption text glued to stray footnote digits
|
|
67
|
+
|
|
68
|
+
`pdftotext -layout` extraction interleaves a caption-left/arithmetic-right or footnote-superscript
|
|
69
|
+
layout into the caption text itself (e.g. Schedule 4 line 300 arriving as "Farm loss expired 9").
|
|
70
|
+
New `captionOverrides` on `BuildFieldsSpec` — a per-line caption replacement — fixes eight
|
|
71
|
+
Schedule 4 lines and three Schedule 31 lines. A blanket "strip a trailing number" rule was
|
|
72
|
+
rejected: captions can legitimately end in one ("Classes 54 to 56", "Amount D on page 3"). A new
|
|
73
|
+
blanket-scan test walks every schedule's fields and fails if a caption ends in a bare 1-2 digit
|
|
74
|
+
number not preceded by a recognized reference word, to catch the next one of these before it
|
|
75
|
+
ships.
|
|
76
|
+
|
|
77
|
+
### Fixed (from `9a068da`) — 38 of Schedule 130's 98 extracted lines sectioned by what they cited, not where they're printed
|
|
78
|
+
|
|
79
|
+
The caption extractor tagged each line by whichever Part its own caption text cross-references
|
|
80
|
+
(e.g. line 083's caption reads "…from Part 2A," so it was tagged Part 2A) rather than the Part it
|
|
81
|
+
is physically printed under (083 is actually Part 2F). Five such lines are named in the fix:
|
|
82
|
+
083 (→ ATI, Part 2F), 126/127 (→ CUEC, Part 2I), 130 (→ Part 2J), 159 (→ RIFE under s.111(8), Part
|
|
83
|
+
2O). Sectioning now uses explicit line-number bands rather than the extractor's citation-based
|
|
84
|
+
tag, since Schedule 130 numbers strictly sequentially with no interleaving — and a new
|
|
85
|
+
contiguity test asserts a section id can never reappear after another section starts, to catch
|
|
86
|
+
a future "left and re-entered" regression the same way.
|
|
87
|
+
|
|
88
|
+
### Added (from `9a068da`) — the 64 Schedule 130 lines `pdftotext` cannot pair inside grid columns, hand-authored
|
|
89
|
+
|
|
90
|
+
Column-header lines inside Parts 1A-1E, 2B, 2C, 2E, 2I, and 2M — including the two most
|
|
91
|
+
load-bearing totals on the whole schedule, line 045 (total IFE) and line 106 (ATI) — were
|
|
92
|
+
missing from extraction entirely (grid/table layouts defeat the caption-pairing heuristic). All
|
|
93
|
+
64 added by hand. Schedule 130 is now fully modelled: only the group ratio amount (s.18.21) and
|
|
94
|
+
capacity transferred under s.18.2(4) remain outside the engine, asked for as bare figures.
|
|
95
|
+
|
|
96
|
+
### Added (from `26bb212`) — AT1 transmitter (filer-detail) validation, checked before sending, not after
|
|
97
|
+
|
|
98
|
+
`validateAt1Transmitter`/`assertAt1TransmitterValid` (new `@spinekit`-style export from
|
|
99
|
+
`./at1/filing/at1-transmitter-validation.js`) checks the AT1 NetFile transmitter block —
|
|
100
|
+
software identity, third-party/preparer contact, address, and the TRA character-set rule —
|
|
101
|
+
against TRA's own EDI certification rules (error codes 20010-20145) locally, before any network
|
|
102
|
+
call.
|
|
103
|
+
|
|
104
|
+
This closes a real gap: a live transmission to TRA's certification endpoint was rejected after
|
|
105
|
+
7.5 seconds with a bare code `20100` and no message text, caused by the package's own fallback
|
|
106
|
+
phone number `0000000000` — ten digits, so it passed a naive length check, but TRA rejects any
|
|
107
|
+
all-same-digit number. Nothing had caught this locally; the malformed submission went out over
|
|
108
|
+
the wire and came back refused with nothing pointing at which field, or even that the return
|
|
109
|
+
itself had been accepted. The phone check now explicitly rejects a single repeated digit in
|
|
110
|
+
addition to the length/digit-count rule. Note: this package has no transmit/HTTP call site of
|
|
111
|
+
its own — wiring the assertion into an actual pre-send check is the calling application's job;
|
|
112
|
+
this release adds the validator and its export, not an automatic hook.
|
|
113
|
+
|
|
114
|
+
## [0.0.16] - 2026-09-07
|
|
115
|
+
|
|
116
|
+
### Added — federal EIFEL: all twenty parts of Schedule 130 now modelled
|
|
117
|
+
|
|
118
|
+
Previously only the excluded-entity gate and adjusted taxable income (Part 2F) existed, and
|
|
119
|
+
both fed nothing. This release builds and wires the rest of T2SCH130 and applies the result
|
|
120
|
+
to the return:
|
|
121
|
+
|
|
122
|
+
- **Excess-capacity regime** (Parts 1A, 2G-2J, 2O, `eifel-capacity.ts`) — received capacity
|
|
123
|
+
(1A), excess capacity for the year (2G, line 129 — the figure AT1 Schedule 21 line 320 asks
|
|
124
|
+
for by name), the paragraph 111(1)(a.1) RIFE deduction (2J), cumulative unused excess
|
|
125
|
+
capacity across three prior years (2I), absorbed capacity (2H), and RIFE arising under
|
|
126
|
+
subsection 111(8) (2O, feeding T2SCH4 line 710).
|
|
127
|
+
- **Interest and financing expenses/revenues** (Parts 1B-1E, 2A-2E, 2L-2N, `eifel-ife.ts`) —
|
|
128
|
+
IFE and IFR are now *derived* from their components rather than asked for as a single
|
|
129
|
+
preparer-supplied total. IFE in particular is not "the interest the corporation paid": it
|
|
130
|
+
reaches into three places where interest was already capitalised into something else and
|
|
131
|
+
pulls it back out — depreciable-property UCC (2B), resource-expense pools (2C), and a
|
|
132
|
+
partnership's own IFE (1E) — then nets off funding-cost-reducing amounts. A preparer
|
|
133
|
+
totalling interest expense off the income statement misses all three.
|
|
134
|
+
- **Applied to the return** (`federal-t2.ts`): Schedule 1 line 251 (the s.18.2(2) denial),
|
|
135
|
+
Schedule 1 line 252 (the paragraph 12(1)(l.2) partnership add-back), and jacket line 336
|
|
136
|
+
(the paragraph 111(1)(a.1) deduction) are now populated from the chain rather than left as
|
|
137
|
+
preparer inputs. Because adjusted taxable income is defined without regard to those same
|
|
138
|
+
three provisions, the Schedule 1 → taxable income sequence now runs twice when the chain
|
|
139
|
+
produces a nonzero adjustment — once to supply the untouched base the chain needs, once
|
|
140
|
+
more with the three adjustments folded in — via one `runIncomeSequence` closure so the two
|
|
141
|
+
passes cannot drift apart. Excluded entities (small CCPC, de minimis, domestic) skip the
|
|
142
|
+
whole chain unaffected.
|
|
143
|
+
|
|
144
|
+
All new `FederalT2Input.eifel.*` fields and `FederalT2Result.eifel*` fields are optional/
|
|
145
|
+
additive — no breaking change to an existing caller. See the integrator note below, though:
|
|
146
|
+
`requiresLimitation === true` now means something materially different than in 0.0.15.
|
|
147
|
+
|
|
148
|
+
### Fixed — two EIFEL wiring bugs caught before anything used them
|
|
149
|
+
|
|
150
|
+
1. Schedule 1 line 251 was carrying the raw shortfall (`limitation.deniedAmount`) instead of
|
|
151
|
+
Part 2L's own computation, which excludes the partnership share and affiliate RAIFE from
|
|
152
|
+
its base because both are already denied separately (Parts 2N and 2M) — leaving them in
|
|
153
|
+
denied them twice. Fixed by `computeExcessIfe` (Part 2L): `base = variableA −
|
|
154
|
+
partnershipShare − affiliateRaife` (floored at nil), then `excessIfe = base ×
|
|
155
|
+
deniedProportion`, wired onto line 251 in place of the raw shortfall.
|
|
156
|
+
2. The Schedule 1 line 252 partnership add-back was a bare preparer-supplied field with no
|
|
157
|
+
derivation. It is properly Part 1E's total (line 156) at the Part 2K denied proportion
|
|
158
|
+
(line 158) — now computed by `computePartnershipIfeAddBack`, still overridable directly.
|
|
159
|
+
|
|
160
|
+
Both fixes required Part 2M to run *after* the limitation (it needs the Part 2K denied
|
|
161
|
+
proportion), the same ordering Part 2O already had.
|
|
162
|
+
|
|
163
|
+
### Fixed — line 111 of Schedule 130 reads a signed ATI, not the floored one
|
|
164
|
+
|
|
165
|
+
Lines 107 and 119 read adjusted taxable income floored at nil; line 111 asks for the absolute
|
|
166
|
+
value of ATI "in the absence of section 257" — the Act's own no-negative-amounts rule, which
|
|
167
|
+
the form deliberately reaches around at this one line. `eifel-capacity.ts` takes the *signed*
|
|
168
|
+
ATI as input and derives both readings itself, rather than being handed an already-floored
|
|
169
|
+
figure that has lost the sign line 111 needs.
|
|
170
|
+
|
|
171
|
+
### Added — AT1 Schedule 21 (Alberta) RIFE continuity — lines 200-250, 310-350
|
|
172
|
+
|
|
173
|
+
New `computeRifeContinuity`: `250 (closing) = 200 (opening) + 210 (wind-up transfer) − 220
|
|
174
|
+
(acquisition-of-control adjustment) + 230 (current-year RIFE) − 240 (deducted)`, capped by
|
|
175
|
+
`350 = min(310, 340)` where `310 = 200 + 210 − 220` and `340 = 320 (excess capacity) + 330
|
|
176
|
+
(received capacity)`. Claims the maximum (line 350) automatically when no explicit claim is
|
|
177
|
+
given; flags and caps an explicit claim that exceeds it.
|
|
178
|
+
|
|
179
|
+
Its three federally-sourced inputs, named as printed on the form: line 230 ← T2SCH4 line 710;
|
|
180
|
+
line 320 ← T2SCH130 line 129; line 330 ← T2SCH130 line 130. Its output feeds forward: line 240
|
|
181
|
+
is printed "Enter amount on line 130 of the Schedule 12" — AT1 Schedule 12 line 130 (a real
|
|
182
|
+
filed line) now resolves to it when Schedule 21 exists.
|
|
183
|
+
|
|
184
|
+
**Not part of NetFile.** An exhaustive check of the transmission schema found no `021200`
|
|
185
|
+
through `021350` field anywhere — the NetFile emitter reads `AT1_SCHEDULE_21_POOLS` (the loss-
|
|
186
|
+
continuity pools), never this section. Adding the section's `FormDefinition` entries (below)
|
|
187
|
+
does not change what gets transmitted; only line 240's downstream effect on AT1 Schedule 12
|
|
188
|
+
line 130 reaches the wire. This ledger is paper/UI-only.
|
|
189
|
+
|
|
190
|
+
### Fixed — AT1 Schedule 21's RIFE lines were literals in JSX, now on the `FormDefinition`
|
|
191
|
+
|
|
192
|
+
The RIFE section had been modelled only in its own compute module; the line numbers shown in
|
|
193
|
+
the editor were hard-coded strings outside the consistency check that holds every other
|
|
194
|
+
displayed line number to the extracted form. `AT1_SCHEDULE_21`'s `FormDefinition` now carries
|
|
195
|
+
all ten lines (200, 210, 220, 230, 240, 250, 310, 320, 330, 340, 350) with role and, for the
|
|
196
|
+
carried-in/carried-out lines, the same source/destination the paper form prints.
|
|
197
|
+
|
|
198
|
+
### Fixed — two comments wrongly said their NetFile builders were "not wired"
|
|
199
|
+
|
|
200
|
+
`schedule4-foreign-investment-tax-credit.ts` and `schedule8-political-contributions.ts` are
|
|
201
|
+
both called from `alberta-return.ts` and listed in `AT1_SCHEDULES_WITH_BUILDERS` — only their
|
|
202
|
+
file location differs from the shared builder file. Comments corrected; an orphaned doc
|
|
203
|
+
comment in `at1-schedule-line-items.ts` describing schedules the engine "cannot yet file",
|
|
204
|
+
sitting directly above the constant listing schedules it *can* file, removed.
|
|
205
|
+
|
|
206
|
+
### Added — a silent-nil issue when a regime return never supplied gross IFE
|
|
207
|
+
|
|
208
|
+
A corporation inside the EIFEL regime that never supplied Schedule 130 Part 2A line 045
|
|
209
|
+
(gross interest and financing expenses) computes a denial of nil — indistinguishable from a
|
|
210
|
+
corporation genuinely within its ceiling. `federal-t2.ts` now appends an explicit issue in
|
|
211
|
+
this case naming the missing figure and noting it is not the same amount as the group *net*
|
|
212
|
+
interest figure used for the de minimis test.
|
|
213
|
+
|
|
214
|
+
### Note for integrators — `requiresLimitation` no longer means "not computed"
|
|
215
|
+
|
|
216
|
+
In 0.0.15, `FederalT2Result.eifel.requiresLimitation === true` meant the regime applies and
|
|
217
|
+
the restriction is **not** computed — do not file. It now means the regime applies **and** is
|
|
218
|
+
computed (`eifelAdjustedTaxableIncome`/`eifelLimitation`/`eifelCapacity`/`eifelIfe`/`eifelIfr`
|
|
219
|
+
populated), while still flagging the return for review — several sub-components (group-ratio
|
|
220
|
+
elections, prior-year vintages, received-capacity tables) remain preparer-supplied rather than
|
|
221
|
+
derivable. Code branching on `requiresLimitation` alone should re-check that branch. The
|
|
222
|
+
`eifel.issues` array may also carry new text even where `requiresLimitation` was already true.
|
|
223
|
+
|
|
224
|
+
### Changed — peer floor raised
|
|
225
|
+
|
|
226
|
+
- `@classytic/primitives` `>=0.23.0` → **`>=0.26.4`**
|
|
227
|
+
|
|
228
|
+
`@classytic/tax-core >=0.3.0` was already current.
|
|
229
|
+
|
|
230
|
+
## [0.0.15] - 2026-09-04
|
|
231
|
+
|
|
232
|
+
### Fixed — one `aaii` figure was doing three different jobs
|
|
233
|
+
|
|
234
|
+
`FederalT2Input.aaii` fed the SBD passive-income grind, the RDTOH calculation
|
|
235
|
+
and GRIP's full-rate taxable income. Only the first is right: s.125(5.1)(b)
|
|
236
|
+
wants the PRIOR year's *adjusted* aggregate investment income, while s.129(3)
|
|
237
|
+
(RDTOH) and s.89(1) (GRIP) want the CURRENT year's *plain* aggregate investment
|
|
238
|
+
income — a different year and a different definition (Part 2 excludes gains and
|
|
239
|
+
losses on active-asset dispositions and substitutes dividends from connected
|
|
240
|
+
corporations for Part 1's broader base).
|
|
241
|
+
|
|
242
|
+
- New `aggregateInvestmentIncome` input carries the Part 1 figure. It defaults
|
|
243
|
+
to `aaii` when omitted, so nothing changes for an existing caller — the
|
|
244
|
+
approximation this package always made is now explicit instead of silent.
|
|
245
|
+
- See `research/findings/federal/S7-aaii-vs-aggregate-investment-income-conflation.md`.
|
|
246
|
+
|
|
247
|
+
### Fixed — cultural and ecological gifts were capped at 75% of net income
|
|
248
|
+
|
|
249
|
+
Gifts of certified cultural property (s.110.1(1)(b)) and ecologically sensitive
|
|
250
|
+
land (s.110.1(1)(c)) carry no income limit at all, but the only way to get them
|
|
251
|
+
into the return was to fold them into `charitableDonations` — which applies the
|
|
252
|
+
75% cap. That understated the deduction whenever the charitable pool alone
|
|
253
|
+
already exceeded the cap. New `culturalEcologicalGifts` input claims them in
|
|
254
|
+
full on their own Division C line 112, never combined before the cap.
|
|
255
|
+
|
|
256
|
+
### Fixed — Part VI.1 tax had no s.110(1)(k) deduction
|
|
257
|
+
|
|
258
|
+
`computeSchedule43` produced the Part VI.1 tax and added it to
|
|
259
|
+
`totalFederalTax`, but the Act makes that tax a Division C deduction (jacket
|
|
260
|
+
line 325) at 3×/3.2×/3.5× depending on tax-year end. Without it, taxable income
|
|
261
|
+
was overstated for every corporation paying taxable preferred share dividends.
|
|
262
|
+
Schedule 43 now runs ahead of taxable income and `partVI1Deduction` is exposed
|
|
263
|
+
for the audit trail; the tax figure still feeds `totalFederalTax` unchanged.
|
|
264
|
+
|
|
265
|
+
### Fixed — class 14.1 recapture overstated on pre-2017 ECP dispositions
|
|
266
|
+
|
|
267
|
+
New `computeClass141RecaptureReduction` (s.13(39)) nets into the `'14.1'` row's
|
|
268
|
+
`recapture` and `cca.totalRecapture` rather than surfacing as a deduction — it
|
|
269
|
+
reduces an income inclusion, it is not a claim. Its third limb is a disclosed
|
|
270
|
+
approximation. The pre-2027 transitional additional allowance (Reg
|
|
271
|
+
1100(1)(c.1)/(c.2)) is also wired into the engine now, folded into line 403.
|
|
272
|
+
|
|
273
|
+
### Added — Schedule 7 Parts 1 and 2 line by line
|
|
274
|
+
|
|
275
|
+
`computeAggregateInvestmentIncome` (lines 002–092) and
|
|
276
|
+
`computeAdjustedAggregateInvestmentIncome` (lines 705–745) reproduce the form's
|
|
277
|
+
own A–E and F–I subtotal structure, so a preparer can trace output against the
|
|
278
|
+
paper form. When the detail is supplied and the scalar is omitted, the engine
|
|
279
|
+
derives the scalar from it; an explicit scalar still wins.
|
|
280
|
+
|
|
281
|
+
### Added — Schedule 12 resource-related deductions
|
|
282
|
+
|
|
283
|
+
New module covering CEE, CDE, COGPE, depletion and foreign exploration
|
|
284
|
+
(including per-country), feeding Schedule 1 lines 340/341/342/344/345. Proration
|
|
285
|
+
uses the raw inclusive day count, since the ≥357-day step needs the count rather
|
|
286
|
+
than a pre-divided factor.
|
|
287
|
+
|
|
288
|
+
### Added — Schedule 27 manufacturing and processing parts
|
|
289
|
+
|
|
290
|
+
`computeCanadianMPProfits`, `computePart2MPProfits`, `computeSmallManufacturerTest`
|
|
291
|
+
and `SMALL_MANUFACTURER_INCOME_THRESHOLD`.
|
|
292
|
+
|
|
293
|
+
### Added — AT1 RSI adapter
|
|
294
|
+
|
|
295
|
+
`toRsiHeader`, `toRsiJacketSchedules`, `toRsiLineItems` and `toRsiSchedule`
|
|
296
|
+
bridge the Net File shapes (`At1FilingData` / `At1ScheduleData`) into the RSI
|
|
297
|
+
print renderer's own shapes. No new arithmetic — the same computed return and
|
|
298
|
+
the same M/O/X-driven field set, reformatted through the RSI formatters.
|
|
299
|
+
|
|
300
|
+
### Added — form-definition surface
|
|
301
|
+
|
|
302
|
+
- `FormField.footnoteMarks` — which of `FormDefinition.footnotes` the printed
|
|
303
|
+
form marks against a specific line, distinct from this codebase's own `note`.
|
|
304
|
+
- AT1 Schedules 3–9 and 15 and Schedule 20's continuity rows are now exported
|
|
305
|
+
from `/forms`; `albertaResourceDeductionDifference` added to AT1 Schedule 12
|
|
306
|
+
reconciliation.
|
|
307
|
+
- `FormFieldRole`'s doc comment now records how to set the role correctly:
|
|
308
|
+
grid-shaped schedules invite a blanket `role: 'input'` pass, which has been
|
|
309
|
+
wrong three times (AT1 Sch 13, federal Sch 8, AT1 Sch 21). The caption is not
|
|
310
|
+
evidence — check the host composer for a real editable binding.
|
|
311
|
+
|
|
312
|
+
### Removed — BREAKING
|
|
313
|
+
|
|
314
|
+
- **AT1 Schedule 11** (Alberta M&P profits deduction) — `computeSchedule11`,
|
|
315
|
+
`schedule11Values`, `Schedule11Input`, `Schedule11Result` and the
|
|
316
|
+
`AT1_SCHEDULE_11` form definition. It applies only to tax years before
|
|
317
|
+
2001-04-01.
|
|
318
|
+
- **AT1 Schedule 14** (cumulative eligible capital) — `computeAlbertaSchedule14`,
|
|
319
|
+
`cecScheduleAppliesToTaxYear`, `CEC_DEDUCTION_RATE`, `CEC_INCLUSION_RATE` and
|
|
320
|
+
their types. It applies only to the 2016/2017 straddling year; class 14.1
|
|
321
|
+
replaced it for every later year.
|
|
322
|
+
- `scripts/emit-ui-schedule.ts` and the UI/paper-layout drift tests. The UI
|
|
323
|
+
schedule generator belongs to the host app, which emits its own layouts with
|
|
324
|
+
its own drift test — this package no longer reaches into an app's tree.
|
|
325
|
+
|
|
3
326
|
## [0.0.14] - 2026-09-01
|
|
4
327
|
|
|
5
328
|
### Added — `footnotes` on `FormDefinition`
|
package/dist/forms/index.d.mts
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { $ as
|
|
2
|
-
export { AT1_BALANCE_CREDIT_LINES, AT1_BALANCE_LINE, AT1_DONATION_CARRYFORWARD_YEARS, AT1_IEG_BASE_RATE, AT1_IEG_ENHANCED_RATE, AT1_IEG_JACKET_LINE, AT1_IEG_MAX_EXPENDITURE, AT1_IEG_PRIOR_YEARS, AT1_JACKET, AT1_SCHEDULE_1, AT1_SCHEDULE_10, AT1_SCHEDULE_12, AT1_SCHEDULE_12_PAIRS, AT1_SCHEDULE_13, AT1_SCHEDULE_13_COLUMNS, AT1_SCHEDULE_16, AT1_SCHEDULE_16_CARRYFORWARD_LINE, AT1_SCHEDULE_17, AT1_SCHEDULE_17_RESERVES, AT1_SCHEDULE_18, AT1_SCHEDULE_18_CATEGORIES, AT1_SCHEDULE_2, AT1_SCHEDULE_20, AT1_SCHEDULE_20_POOLS, AT1_SCHEDULE_21, CONTINUITY_CAPTIONS as AT1_SCHEDULE_21_CONTINUITY_CAPTIONS, CONTINUITY_ORDER as AT1_SCHEDULE_21_CONTINUITY_ORDER, AT1_SCHEDULE_21_POOLS, AT1_SCHEDULE_29, AT1_SECTION_34_2_GROSS_UP, AT1_TAX_PAYABLE_LINE, AT4970, AT4970_JURISDICTIONS, type AlbertaCcaColumn, type AlbertaLossPool, type AlbertaReconcilingPair, type AlbertaReserveKind, type AllocationJurisdiction, type BuildFieldsSpec, CO17_QUEBEC_PROPORTION_BOX, CO17_RETURN, CO17_TAXABLE_INCOME_BOX, CO17_TAX_PAYABLE_BOX, type CaptionRow, type CcaColumn, type DispositionCategory, type DispositionGrid, type DonationPool, FORMS, type FormDefinition, type FormField, type FormFieldKind, type FormFieldRequirement, type FormFieldRole, type FormFieldSide, type FormLineRef, type FormProvenance, type FormSection, type LineBand, type LineNumberScheme, type ReserveRow, SCHEDULE_13_RESERVE_ROWS, SCHEDULE_1_LINES, SCHEDULE_1_LINE_BY_NUMBER, SCHEDULE_1_TOTAL_ADDITIONS_LINE, SCHEDULE_1_TOTAL_DEDUCTIONS_LINE, SCHEDULE_21_BUSINESS_CREDIT_LINE, SCHEDULE_21_NON_BUSINESS_CREDIT_LINE, SCHEDULE_23_GROUP_BUSINESS_LIMIT, SCHEDULE_24_OPERATION_TYPE_LINE, SCHEDULE_2_CARRYFORWARD_YEARS, SCHEDULE_2_CHARITABLE_CURRENT_LINE, SCHEDULE_31_ENHANCED_SRED_RATE, SCHEDULE_31_GENERAL_SRED_RATE, SCHEDULE_33_TAXABLE_CAPITAL_IN_CANADA_LINE, SCHEDULE_3_ELIGIBLE_PAID_LINE, SCHEDULE_3_TAXABLE_PAID_LINE, SCHEDULE_43_DIVIDEND_ALLOWANCE, SCHEDULE_4_CARRYBACK_YEARS, SCHEDULE_4_LPP_CARRYFORWARD_YEARS, SCHEDULE_4_NON_CAPITAL_CARRYFORWARD_YEARS, SCHEDULE_50_DISCLOSURE_THRESHOLD, SCHEDULE_53_CLOSING_GRIP_LINE, SCHEDULE_53_GENERAL_RATE_FACTOR, SCHEDULE_5_JURISDICTIONS, SCHEDULE_5_REVENUE_OFFSET, SCHEDULE_5_SALARIES_OFFSET, SCHEDULE_6_GRIDS, SCHEDULE_7_ADJUSTED_AII_LINE, SCHEDULE_7_PASSIVE_INCOME_THRESHOLD, SCHEDULE_8_CCA_LINE, SCHEDULE_8_COLUMNS, SCHEDULE_8_RECAPTURE_LINE, SCHEDULE_8_TERMINAL_LOSS_LINE, T2_BASE_PART_I_RATE, T2_JACKET, T2_NET_INCOME_FOR_TAX_LINE, T2_SCHEDULE_1, T2_SCHEDULE_13, T2_SCHEDULE_130, T2_SCHEDULE_2, T2_SCHEDULE_21, T2_SCHEDULE_23, T2_SCHEDULE_24, T2_SCHEDULE_3, T2_SCHEDULE_31, T2_SCHEDULE_33, T2_SCHEDULE_4, T2_SCHEDULE_43, T2_SCHEDULE_5, T2_SCHEDULE_50, T2_SCHEDULE_53, T2_SCHEDULE_55, T2_SCHEDULE_6, T2_SCHEDULE_7, T2_SCHEDULE_8, T2_SMALL_BUSINESS_DEDUCTION_RATE, T2_TAXABLE_INCOME_LINE, T2_TOTAL_TAX_PAYABLE_LINE, UnclassifiedLineError, buildFields, describeLine, fieldsInSection, findBrokenLinks, formsForProgram, getField, getForm, indexByLine, inputFields, isEnterableLine, scheduleTwentyOneLineId, validateFormDefinition };
|
|
1
|
+
import { $ as SCHEDULE_5_REVENUE_OFFSET, $t as AT1_SCHEDULE_16, A as T2_SCHEDULE_24, An as FormLineRef, At as AT1_IEG_MAX_EXPENDITURE, B as SCHEDULE_8_CCA_LINE, Bt as AT1_SCHEDULE_20, C as T2_SCHEDULE_43, Cn as AT4970_JURISDICTIONS, Ct as CO17_QUEBEC_PROPORTION_BOX, D as SCHEDULE_31_GENERAL_SRED_RATE, Dn as FormFieldRequirement, Dt as AT1_IEG_BASE_RATE, E as SCHEDULE_31_ENHANCED_SRED_RATE, En as FormFieldKind, Et as CO17_TAX_PAYABLE_BOX, F as T2_SCHEDULE_21, Fn as indexByLine, Ft as AlbertaLossPool, G as SCHEDULE_7_ADJUSTED_AII_LINE, Gt as DonationPool, H as SCHEDULE_8_RECAPTURE_LINE, Ht as COMPUTED_CONTINUITY_ROWS, I as ReserveRow, In as inputFields, It as CONTINUITY_CAPTIONS, J as DispositionGrid, Jt as AT1_SECTION_34_2_GROSS_UP, K as SCHEDULE_7_PASSIVE_INCOME_THRESHOLD, Kt as AT1_SCHEDULE_18, L as SCHEDULE_13_RESERVE_ROWS, Ln as isEnterableLine, Lt as CONTINUITY_ORDER, M as T2_SCHEDULE_23, Mn as FormSection, Mt as AT1_SCHEDULE_29, N as SCHEDULE_21_BUSINESS_CREDIT_LINE, Nn as LineNumberScheme, Nt as AT1_SCHEDULE_21, O as T2_SCHEDULE_31, On as FormFieldRole, Ot as AT1_IEG_ENHANCED_RATE, P as SCHEDULE_21_NON_BUSINESS_CREDIT_LINE, Pn as fieldsInSection, Pt as AT1_SCHEDULE_21_POOLS, Q as SCHEDULE_5_JURISDICTIONS, Qt as AlbertaReserveKind, R as T2_SCHEDULE_13, Rn as validateFormDefinition, Rt as scheduleTwentyOneLineId, S as SCHEDULE_43_DIVIDEND_ALLOWANCE, Sn as AT4970, St as T2_TOTAL_TAX_PAYABLE_LINE, T as T2_SCHEDULE_33, Tn as FormField, Tt as CO17_TAXABLE_INCOME_BOX, U as SCHEDULE_8_TERMINAL_LOSS_LINE, Ut as CONTINUITY_ROWS, V as SCHEDULE_8_COLUMNS, Vt as AT1_SCHEDULE_20_POOLS, W as T2_SCHEDULE_8, Wt as ContinuityRow, X as T2_SCHEDULE_6, Xt as AT1_SCHEDULE_17, Y as SCHEDULE_6_GRIDS, Yt as DispositionCategory, Z as AllocationJurisdiction, Zt as AT1_SCHEDULE_17_RESERVES, _ as SCHEDULE_53_CLOSING_GRIP_LINE, _n as AT1_SCHEDULE_1, _t as T2_BASE_PART_I_RATE, a as getField, an as AT1_SCHEDULE_12, at as T2_SCHEDULE_4, b as SCHEDULE_50_DISCLOSURE_THRESHOLD, bn as AT1_JACKET, bt as T2_SMALL_BUSINESS_DEDUCTION_RATE, c as CaptionRow, cn as AT1_SCHEDULE_10, ct as T2_SCHEDULE_3, d as buildFields, dn as AT1_SCHEDULE_7, dt as T2_SCHEDULE_2, en as AT1_SCHEDULE_16_CARRYFORWARD_LINE, et as SCHEDULE_5_SALARIES_OFFSET, f as SCHEDULE_141_PREPARER_IDENTIFIED_LINE, fn as AT1_SCHEDULE_6, ft as SCHEDULE_1_LINES, g as T2_SCHEDULE_55, gn as AT1_SCHEDULE_2, gt as T2_SCHEDULE_1, h as T2_SCHEDULE_130, hn as AT1_SCHEDULE_3, ht as SCHEDULE_1_TOTAL_DEDUCTIONS_LINE, i as formsForProgram, in as AlbertaCcaColumn, it as SCHEDULE_4_NON_CAPITAL_CARRYFORWARD_YEARS, j as SCHEDULE_23_GROUP_BUSINESS_LIMIT, jn as FormProvenance, jt as AT1_IEG_PRIOR_YEARS, k as SCHEDULE_24_OPERATION_TYPE_LINE, kn as FormFieldSide, kt as AT1_IEG_JACKET_LINE, l as LineBand, ln as AT1_SCHEDULE_9, lt as SCHEDULE_2_CARRYFORWARD_YEARS, m as T2_SCHEDULE_141, mn as AT1_SCHEDULE_4, mt as SCHEDULE_1_TOTAL_ADDITIONS_LINE, n as describeLine, nn as AT1_SCHEDULE_13, nt as SCHEDULE_4_CARRYBACK_YEARS, o as getForm, on as AT1_SCHEDULE_12_PAIRS, ot as SCHEDULE_3_ELIGIBLE_PAID_LINE, p as SCHEDULE_141_RESERVATION_LINE, pn as AT1_SCHEDULE_5, pt as SCHEDULE_1_LINE_BY_NUMBER, q as T2_SCHEDULE_7, qt as AT1_SCHEDULE_18_CATEGORIES, r as findBrokenLinks, rn as AT1_SCHEDULE_13_COLUMNS, rt as SCHEDULE_4_LPP_CARRYFORWARD_YEARS, s as BuildFieldsSpec, sn as AlbertaReconcilingPair, st as SCHEDULE_3_TAXABLE_PAID_LINE, t as FORMS, tn as AT1_SCHEDULE_15, tt as T2_SCHEDULE_5, u as UnclassifiedLineError, un as AT1_SCHEDULE_8, ut as SCHEDULE_2_CHARITABLE_CURRENT_LINE, v as SCHEDULE_53_GENERAL_RATE_FACTOR, vn as AT1_BALANCE_CREDIT_LINES, vt as T2_JACKET, w as SCHEDULE_33_TAXABLE_CAPITAL_IN_CANADA_LINE, wn as FormDefinition, wt as CO17_RETURN, x as T2_SCHEDULE_50, xn as AT1_TAX_PAYABLE_LINE, xt as T2_TAXABLE_INCOME_LINE, y as T2_SCHEDULE_53, yn as AT1_BALANCE_LINE, yt as T2_NET_INCOME_FOR_TAX_LINE, z as CcaColumn, zt as AT1_DONATION_CARRYFORWARD_YEARS } from "../index.mjs";
|
|
2
|
+
export { AT1_BALANCE_CREDIT_LINES, AT1_BALANCE_LINE, AT1_DONATION_CARRYFORWARD_YEARS, AT1_IEG_BASE_RATE, AT1_IEG_ENHANCED_RATE, AT1_IEG_JACKET_LINE, AT1_IEG_MAX_EXPENDITURE, AT1_IEG_PRIOR_YEARS, AT1_JACKET, AT1_SCHEDULE_1, AT1_SCHEDULE_10, AT1_SCHEDULE_12, AT1_SCHEDULE_12_PAIRS, AT1_SCHEDULE_13, AT1_SCHEDULE_13_COLUMNS, AT1_SCHEDULE_15, AT1_SCHEDULE_16, AT1_SCHEDULE_16_CARRYFORWARD_LINE, AT1_SCHEDULE_17, AT1_SCHEDULE_17_RESERVES, AT1_SCHEDULE_18, AT1_SCHEDULE_18_CATEGORIES, AT1_SCHEDULE_2, AT1_SCHEDULE_20, COMPUTED_CONTINUITY_ROWS as AT1_SCHEDULE_20_COMPUTED_CONTINUITY_ROWS, CONTINUITY_ROWS as AT1_SCHEDULE_20_CONTINUITY_ROWS, AT1_SCHEDULE_20_POOLS, AT1_SCHEDULE_21, CONTINUITY_CAPTIONS as AT1_SCHEDULE_21_CONTINUITY_CAPTIONS, CONTINUITY_ORDER as AT1_SCHEDULE_21_CONTINUITY_ORDER, AT1_SCHEDULE_21_POOLS, AT1_SCHEDULE_29, AT1_SCHEDULE_3, AT1_SCHEDULE_4, AT1_SCHEDULE_5, AT1_SCHEDULE_6, AT1_SCHEDULE_7, AT1_SCHEDULE_8, AT1_SCHEDULE_9, AT1_SECTION_34_2_GROSS_UP, AT1_TAX_PAYABLE_LINE, AT4970, AT4970_JURISDICTIONS, type AlbertaCcaColumn, type AlbertaLossPool, type AlbertaReconcilingPair, type AlbertaReserveKind, type AllocationJurisdiction, type BuildFieldsSpec, CO17_QUEBEC_PROPORTION_BOX, CO17_RETURN, CO17_TAXABLE_INCOME_BOX, CO17_TAX_PAYABLE_BOX, type CaptionRow, type CcaColumn, type ContinuityRow, type DispositionCategory, type DispositionGrid, type DonationPool, FORMS, type FormDefinition, type FormField, type FormFieldKind, type FormFieldRequirement, type FormFieldRole, type FormFieldSide, type FormLineRef, type FormProvenance, type FormSection, type LineBand, type LineNumberScheme, type ReserveRow, SCHEDULE_13_RESERVE_ROWS, SCHEDULE_141_PREPARER_IDENTIFIED_LINE, SCHEDULE_141_RESERVATION_LINE, SCHEDULE_1_LINES, SCHEDULE_1_LINE_BY_NUMBER, SCHEDULE_1_TOTAL_ADDITIONS_LINE, SCHEDULE_1_TOTAL_DEDUCTIONS_LINE, SCHEDULE_21_BUSINESS_CREDIT_LINE, SCHEDULE_21_NON_BUSINESS_CREDIT_LINE, SCHEDULE_23_GROUP_BUSINESS_LIMIT, SCHEDULE_24_OPERATION_TYPE_LINE, SCHEDULE_2_CARRYFORWARD_YEARS, SCHEDULE_2_CHARITABLE_CURRENT_LINE, SCHEDULE_31_ENHANCED_SRED_RATE, SCHEDULE_31_GENERAL_SRED_RATE, SCHEDULE_33_TAXABLE_CAPITAL_IN_CANADA_LINE, SCHEDULE_3_ELIGIBLE_PAID_LINE, SCHEDULE_3_TAXABLE_PAID_LINE, SCHEDULE_43_DIVIDEND_ALLOWANCE, SCHEDULE_4_CARRYBACK_YEARS, SCHEDULE_4_LPP_CARRYFORWARD_YEARS, SCHEDULE_4_NON_CAPITAL_CARRYFORWARD_YEARS, SCHEDULE_50_DISCLOSURE_THRESHOLD, SCHEDULE_53_CLOSING_GRIP_LINE, SCHEDULE_53_GENERAL_RATE_FACTOR, SCHEDULE_5_JURISDICTIONS, SCHEDULE_5_REVENUE_OFFSET, SCHEDULE_5_SALARIES_OFFSET, SCHEDULE_6_GRIDS, SCHEDULE_7_ADJUSTED_AII_LINE, SCHEDULE_7_PASSIVE_INCOME_THRESHOLD, SCHEDULE_8_CCA_LINE, SCHEDULE_8_COLUMNS, SCHEDULE_8_RECAPTURE_LINE, SCHEDULE_8_TERMINAL_LOSS_LINE, T2_BASE_PART_I_RATE, T2_JACKET, T2_NET_INCOME_FOR_TAX_LINE, T2_SCHEDULE_1, T2_SCHEDULE_13, T2_SCHEDULE_130, T2_SCHEDULE_141, T2_SCHEDULE_2, T2_SCHEDULE_21, T2_SCHEDULE_23, T2_SCHEDULE_24, T2_SCHEDULE_3, T2_SCHEDULE_31, T2_SCHEDULE_33, T2_SCHEDULE_4, T2_SCHEDULE_43, T2_SCHEDULE_5, T2_SCHEDULE_50, T2_SCHEDULE_53, T2_SCHEDULE_55, T2_SCHEDULE_6, T2_SCHEDULE_7, T2_SCHEDULE_8, T2_SMALL_BUSINESS_DEDUCTION_RATE, T2_TAXABLE_INCOME_LINE, T2_TOTAL_TAX_PAYABLE_LINE, UnclassifiedLineError, buildFields, describeLine, fieldsInSection, findBrokenLinks, formsForProgram, getField, getForm, indexByLine, inputFields, isEnterableLine, scheduleTwentyOneLineId, validateFormDefinition };
|
package/dist/forms/index.mjs
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { $ as
|
|
2
|
-
export { AT1_BALANCE_CREDIT_LINES, AT1_BALANCE_LINE, AT1_DONATION_CARRYFORWARD_YEARS, AT1_IEG_BASE_RATE, AT1_IEG_ENHANCED_RATE, AT1_IEG_JACKET_LINE, AT1_IEG_MAX_EXPENDITURE, AT1_IEG_PRIOR_YEARS, AT1_JACKET, AT1_SCHEDULE_1, AT1_SCHEDULE_10, AT1_SCHEDULE_12, AT1_SCHEDULE_12_PAIRS, AT1_SCHEDULE_13, AT1_SCHEDULE_13_COLUMNS, AT1_SCHEDULE_16, AT1_SCHEDULE_16_CARRYFORWARD_LINE, AT1_SCHEDULE_17, AT1_SCHEDULE_17_RESERVES, AT1_SCHEDULE_18, AT1_SCHEDULE_18_CATEGORIES, AT1_SCHEDULE_2, AT1_SCHEDULE_20, AT1_SCHEDULE_20_POOLS, AT1_SCHEDULE_21, CONTINUITY_CAPTIONS as AT1_SCHEDULE_21_CONTINUITY_CAPTIONS, CONTINUITY_ORDER as AT1_SCHEDULE_21_CONTINUITY_ORDER, AT1_SCHEDULE_21_POOLS, AT1_SCHEDULE_29, AT1_SECTION_34_2_GROSS_UP, AT1_TAX_PAYABLE_LINE, AT4970, AT4970_JURISDICTIONS, CO17_QUEBEC_PROPORTION_BOX, CO17_RETURN, CO17_TAXABLE_INCOME_BOX, CO17_TAX_PAYABLE_BOX, FORMS, SCHEDULE_13_RESERVE_ROWS, SCHEDULE_1_LINES, SCHEDULE_1_LINE_BY_NUMBER, SCHEDULE_1_TOTAL_ADDITIONS_LINE, SCHEDULE_1_TOTAL_DEDUCTIONS_LINE, SCHEDULE_21_BUSINESS_CREDIT_LINE, SCHEDULE_21_NON_BUSINESS_CREDIT_LINE, SCHEDULE_23_GROUP_BUSINESS_LIMIT, SCHEDULE_24_OPERATION_TYPE_LINE, SCHEDULE_2_CARRYFORWARD_YEARS, SCHEDULE_2_CHARITABLE_CURRENT_LINE, SCHEDULE_31_ENHANCED_SRED_RATE, SCHEDULE_31_GENERAL_SRED_RATE, SCHEDULE_33_TAXABLE_CAPITAL_IN_CANADA_LINE, SCHEDULE_3_ELIGIBLE_PAID_LINE, SCHEDULE_3_TAXABLE_PAID_LINE, SCHEDULE_43_DIVIDEND_ALLOWANCE, SCHEDULE_4_CARRYBACK_YEARS, SCHEDULE_4_LPP_CARRYFORWARD_YEARS, SCHEDULE_4_NON_CAPITAL_CARRYFORWARD_YEARS, SCHEDULE_50_DISCLOSURE_THRESHOLD, SCHEDULE_53_CLOSING_GRIP_LINE, SCHEDULE_53_GENERAL_RATE_FACTOR, SCHEDULE_5_JURISDICTIONS, SCHEDULE_5_REVENUE_OFFSET, SCHEDULE_5_SALARIES_OFFSET, SCHEDULE_6_GRIDS, SCHEDULE_7_ADJUSTED_AII_LINE, SCHEDULE_7_PASSIVE_INCOME_THRESHOLD, SCHEDULE_8_CCA_LINE, SCHEDULE_8_COLUMNS, SCHEDULE_8_RECAPTURE_LINE, SCHEDULE_8_TERMINAL_LOSS_LINE, T2_BASE_PART_I_RATE, T2_JACKET, T2_NET_INCOME_FOR_TAX_LINE, T2_SCHEDULE_1, T2_SCHEDULE_13, T2_SCHEDULE_130, T2_SCHEDULE_2, T2_SCHEDULE_21, T2_SCHEDULE_23, T2_SCHEDULE_24, T2_SCHEDULE_3, T2_SCHEDULE_31, T2_SCHEDULE_33, T2_SCHEDULE_4, T2_SCHEDULE_43, T2_SCHEDULE_5, T2_SCHEDULE_50, T2_SCHEDULE_53, T2_SCHEDULE_55, T2_SCHEDULE_6, T2_SCHEDULE_7, T2_SCHEDULE_8, T2_SMALL_BUSINESS_DEDUCTION_RATE, T2_TAXABLE_INCOME_LINE, T2_TOTAL_TAX_PAYABLE_LINE, UnclassifiedLineError, buildFields, describeLine, fieldsInSection, findBrokenLinks, formsForProgram, getField, getForm, indexByLine, inputFields, isEnterableLine, scheduleTwentyOneLineId, validateFormDefinition };
|
|
1
|
+
import { $ as SCHEDULE_3_ELIGIBLE_PAID_LINE, $t as AT1_SCHEDULE_10, A as T2_SCHEDULE_21, At as AT1_SCHEDULE_29, B as T2_SCHEDULE_7, Bt as CONTINUITY_ROWS, C as T2_SCHEDULE_31, Ct as CO17_TAXABLE_INCOME_BOX, D as T2_SCHEDULE_23, Dt as AT1_IEG_JACKET_LINE, E as SCHEDULE_23_GROUP_BUSINESS_LIMIT, Et as AT1_IEG_ENHANCED_RATE, F as SCHEDULE_8_RECAPTURE_LINE, Ft as scheduleTwentyOneLineId, G as SCHEDULE_5_SALARIES_OFFSET, Gt as AT1_SCHEDULE_17_RESERVES, H as T2_SCHEDULE_6, Ht as AT1_SCHEDULE_18_CATEGORIES, I as SCHEDULE_8_TERMINAL_LOSS_LINE, It as AT1_DONATION_CARRYFORWARD_YEARS, J as SCHEDULE_4_LPP_CARRYFORWARD_YEARS, Jt as AT1_SCHEDULE_15, K as T2_SCHEDULE_5, Kt as AT1_SCHEDULE_16, L as T2_SCHEDULE_8, Lt as AT1_SCHEDULE_20, M as T2_SCHEDULE_13, Mt as AT1_SCHEDULE_21_POOLS, N as SCHEDULE_8_CCA_LINE, Nt as CONTINUITY_CAPTIONS, O as SCHEDULE_21_BUSINESS_CREDIT_LINE, Ot as AT1_IEG_MAX_EXPENDITURE, P as SCHEDULE_8_COLUMNS, Pt as CONTINUITY_ORDER, Q as buildFields, Qt as AT1_SCHEDULE_12_PAIRS, R as SCHEDULE_7_ADJUSTED_AII_LINE, Rt as AT1_SCHEDULE_20_POOLS, S as SCHEDULE_31_GENERAL_SRED_RATE, St as CO17_RETURN, T as T2_SCHEDULE_24, Tt as AT1_IEG_BASE_RATE, U as SCHEDULE_5_JURISDICTIONS, Ut as AT1_SECTION_34_2_GROSS_UP, V as SCHEDULE_6_GRIDS, Vt as AT1_SCHEDULE_18, W as SCHEDULE_5_REVENUE_OFFSET, Wt as AT1_SCHEDULE_17, X as T2_SCHEDULE_4, Xt as AT1_SCHEDULE_13_COLUMNS, Y as SCHEDULE_4_NON_CAPITAL_CARRYFORWARD_YEARS, Yt as AT1_SCHEDULE_13, Z as UnclassifiedLineError, Zt as AT1_SCHEDULE_12, _ as SCHEDULE_43_DIVIDEND_ALLOWANCE, _t as T2_NET_INCOME_FOR_TAX_LINE, a as getField, an as AT1_SCHEDULE_4, at as SCHEDULE_1_LINES, b as T2_SCHEDULE_33, bt as T2_TOTAL_TAX_PAYABLE_LINE, c as SCHEDULE_141_RESERVATION_LINE, cn as AT1_SCHEDULE_1, ct as SCHEDULE_1_TOTAL_DEDUCTIONS_LINE, d as T2_SCHEDULE_55, dn as AT1_JACKET, dt as indexByLine, en as AT1_SCHEDULE_9, et as SCHEDULE_3_TAXABLE_PAID_LINE, f as SCHEDULE_53_CLOSING_GRIP_LINE, fn as AT1_TAX_PAYABLE_LINE, ft as inputFields, g as T2_SCHEDULE_50, gt as T2_JACKET, h as SCHEDULE_50_DISCLOSURE_THRESHOLD, ht as T2_BASE_PART_I_RATE, i as formsForProgram, in as AT1_SCHEDULE_5, it as T2_SCHEDULE_2, j as SCHEDULE_13_RESERVE_ROWS, jt as AT1_SCHEDULE_21, k as SCHEDULE_21_NON_BUSINESS_CREDIT_LINE, kt as AT1_IEG_PRIOR_YEARS, l as T2_SCHEDULE_141, ln as AT1_BALANCE_CREDIT_LINES, lt as T2_SCHEDULE_1, m as T2_SCHEDULE_53, mn as AT4970_JURISDICTIONS, mt as validateFormDefinition, n as describeLine, nn as AT1_SCHEDULE_7, nt as SCHEDULE_2_CARRYFORWARD_YEARS, o as getForm, on as AT1_SCHEDULE_3, ot as SCHEDULE_1_LINE_BY_NUMBER, p as SCHEDULE_53_GENERAL_RATE_FACTOR, pn as AT4970, pt as isEnterableLine, q as SCHEDULE_4_CARRYBACK_YEARS, qt as AT1_SCHEDULE_16_CARRYFORWARD_LINE, r as findBrokenLinks, rn as AT1_SCHEDULE_6, rt as SCHEDULE_2_CHARITABLE_CURRENT_LINE, s as SCHEDULE_141_PREPARER_IDENTIFIED_LINE, sn as AT1_SCHEDULE_2, st as SCHEDULE_1_TOTAL_ADDITIONS_LINE, t as FORMS, tn as AT1_SCHEDULE_8, tt as T2_SCHEDULE_3, u as T2_SCHEDULE_130, un as AT1_BALANCE_LINE, ut as fieldsInSection, v as T2_SCHEDULE_43, vt as T2_SMALL_BUSINESS_DEDUCTION_RATE, w as SCHEDULE_24_OPERATION_TYPE_LINE, wt as CO17_TAX_PAYABLE_BOX, x as SCHEDULE_31_ENHANCED_SRED_RATE, xt as CO17_QUEBEC_PROPORTION_BOX, y as SCHEDULE_33_TAXABLE_CAPITAL_IN_CANADA_LINE, yt as T2_TAXABLE_INCOME_LINE, z as SCHEDULE_7_PASSIVE_INCOME_THRESHOLD, zt as COMPUTED_CONTINUITY_ROWS } from "../forms.mjs";
|
|
2
|
+
export { AT1_BALANCE_CREDIT_LINES, AT1_BALANCE_LINE, AT1_DONATION_CARRYFORWARD_YEARS, AT1_IEG_BASE_RATE, AT1_IEG_ENHANCED_RATE, AT1_IEG_JACKET_LINE, AT1_IEG_MAX_EXPENDITURE, AT1_IEG_PRIOR_YEARS, AT1_JACKET, AT1_SCHEDULE_1, AT1_SCHEDULE_10, AT1_SCHEDULE_12, AT1_SCHEDULE_12_PAIRS, AT1_SCHEDULE_13, AT1_SCHEDULE_13_COLUMNS, AT1_SCHEDULE_15, AT1_SCHEDULE_16, AT1_SCHEDULE_16_CARRYFORWARD_LINE, AT1_SCHEDULE_17, AT1_SCHEDULE_17_RESERVES, AT1_SCHEDULE_18, AT1_SCHEDULE_18_CATEGORIES, AT1_SCHEDULE_2, AT1_SCHEDULE_20, COMPUTED_CONTINUITY_ROWS as AT1_SCHEDULE_20_COMPUTED_CONTINUITY_ROWS, CONTINUITY_ROWS as AT1_SCHEDULE_20_CONTINUITY_ROWS, AT1_SCHEDULE_20_POOLS, AT1_SCHEDULE_21, CONTINUITY_CAPTIONS as AT1_SCHEDULE_21_CONTINUITY_CAPTIONS, CONTINUITY_ORDER as AT1_SCHEDULE_21_CONTINUITY_ORDER, AT1_SCHEDULE_21_POOLS, AT1_SCHEDULE_29, AT1_SCHEDULE_3, AT1_SCHEDULE_4, AT1_SCHEDULE_5, AT1_SCHEDULE_6, AT1_SCHEDULE_7, AT1_SCHEDULE_8, AT1_SCHEDULE_9, AT1_SECTION_34_2_GROSS_UP, AT1_TAX_PAYABLE_LINE, AT4970, AT4970_JURISDICTIONS, CO17_QUEBEC_PROPORTION_BOX, CO17_RETURN, CO17_TAXABLE_INCOME_BOX, CO17_TAX_PAYABLE_BOX, FORMS, SCHEDULE_13_RESERVE_ROWS, SCHEDULE_141_PREPARER_IDENTIFIED_LINE, SCHEDULE_141_RESERVATION_LINE, SCHEDULE_1_LINES, SCHEDULE_1_LINE_BY_NUMBER, SCHEDULE_1_TOTAL_ADDITIONS_LINE, SCHEDULE_1_TOTAL_DEDUCTIONS_LINE, SCHEDULE_21_BUSINESS_CREDIT_LINE, SCHEDULE_21_NON_BUSINESS_CREDIT_LINE, SCHEDULE_23_GROUP_BUSINESS_LIMIT, SCHEDULE_24_OPERATION_TYPE_LINE, SCHEDULE_2_CARRYFORWARD_YEARS, SCHEDULE_2_CHARITABLE_CURRENT_LINE, SCHEDULE_31_ENHANCED_SRED_RATE, SCHEDULE_31_GENERAL_SRED_RATE, SCHEDULE_33_TAXABLE_CAPITAL_IN_CANADA_LINE, SCHEDULE_3_ELIGIBLE_PAID_LINE, SCHEDULE_3_TAXABLE_PAID_LINE, SCHEDULE_43_DIVIDEND_ALLOWANCE, SCHEDULE_4_CARRYBACK_YEARS, SCHEDULE_4_LPP_CARRYFORWARD_YEARS, SCHEDULE_4_NON_CAPITAL_CARRYFORWARD_YEARS, SCHEDULE_50_DISCLOSURE_THRESHOLD, SCHEDULE_53_CLOSING_GRIP_LINE, SCHEDULE_53_GENERAL_RATE_FACTOR, SCHEDULE_5_JURISDICTIONS, SCHEDULE_5_REVENUE_OFFSET, SCHEDULE_5_SALARIES_OFFSET, SCHEDULE_6_GRIDS, SCHEDULE_7_ADJUSTED_AII_LINE, SCHEDULE_7_PASSIVE_INCOME_THRESHOLD, SCHEDULE_8_CCA_LINE, SCHEDULE_8_COLUMNS, SCHEDULE_8_RECAPTURE_LINE, SCHEDULE_8_TERMINAL_LOSS_LINE, T2_BASE_PART_I_RATE, T2_JACKET, T2_NET_INCOME_FOR_TAX_LINE, T2_SCHEDULE_1, T2_SCHEDULE_13, T2_SCHEDULE_130, T2_SCHEDULE_141, T2_SCHEDULE_2, T2_SCHEDULE_21, T2_SCHEDULE_23, T2_SCHEDULE_24, T2_SCHEDULE_3, T2_SCHEDULE_31, T2_SCHEDULE_33, T2_SCHEDULE_4, T2_SCHEDULE_43, T2_SCHEDULE_5, T2_SCHEDULE_50, T2_SCHEDULE_53, T2_SCHEDULE_55, T2_SCHEDULE_6, T2_SCHEDULE_7, T2_SCHEDULE_8, T2_SMALL_BUSINESS_DEDUCTION_RATE, T2_TAXABLE_INCOME_LINE, T2_TOTAL_TAX_PAYABLE_LINE, UnclassifiedLineError, buildFields, describeLine, fieldsInSection, findBrokenLinks, formsForProgram, getField, getForm, indexByLine, inputFields, isEnterableLine, scheduleTwentyOneLineId, validateFormDefinition };
|