Commit a31081e
Feature/signing (#956)
* signing interface cardinality adr
* Feature/signing service (#810)
* adr for transaction handling
* scaffold signee service
* summary additions
* add telemetry
* When calling process next while in a signing task, if no action param is supplied, authorize it as a write action. Move deletion of stale data elements to ProcessTaskInitializer.
* add correspondance mock
* add method for sending notifications
* Expose endpoint for searching for person using ssn and last name. (#815)
* Expose endpoint for searching for person using ssn and last name.
* Use class and drop dto postfix.
* Move mapping to reponse class.
* Add success property to PersonSearchResult. Move person details into nested object.
* fix the pros and cons for adr 002
* Rename PersonSearchComponent to LookupPersonController.
* API Endpoint for getting org from Enhetsregisteret (#847)
* adds endpoint for getting an organisation from Enhetsregisteret
* renames OrganisationSearch -> Lookup
* Feature/singing bt (#868)
* temp
* feat: add phone and email to signee state
* split signee states on person/org, handle delegation before notification
* split signing notification and delegation to seperate services
* Move SigneeParty to Models folder
* update signeeConfig -> signeeParty
* split out method for processing signees to support retries
* restructure signeecontext, party and state
* update signing service to use new signingcontext structure
* split notification config based on the receiving system
* Make telemetry nullable in signing service.
* some more stuff
* Fix compilation error
* Touples in notification service. Sms number from registry. Store reason for sms/email failure.
* Extract SigningService interface. Various adjustments after mob session.
* For now: Add user action for initializing delegated signing.
---------
Co-authored-by: Bjørn Tore Gjerde <[email protected]>
* Feature/delegation client (#874)
* add model for delegation request
* add step builder for delegation request
* add scaffold for delegation client
* add scaffold to signing delegation service
* temp solution for const instead of magic strings
* add delegation client
* weird state
* update handling of party id to use party uuid
* rm sign delegate rights from access management client
* Remove duplicate Altinn.Platform.Storage.Interface package reference.
* Fix some warnings so it can be built successfully.
* Draf sulution for selecting the correct ISigneeProvider implementation.
* Improve missing signee provider exception message.
* Add singing services to ServiceCollectionExtensions.
* Rename OnSignatureTaskReceived to OnSignatureAccessRightsDelegated. Make Telemetry optional in SigningService.
* Use IOtions for platform settings in AccessManagementClient.
* Fix lookup person tests.
* SigningService: Move private methods below public ones.
* Validate app only as contributor on paymentInformation and signature while env == development. (#940)
* update builder to standard set in correspondance (#909)
* update builder to standard set in correspondance (1/2)
* restructure: add builders folder
* formatting
* add TryGet method to retrieve app resource id
* cleanup
* formatting
* add custom exceptions
* use IOptions for plattformsettings
* simplify builder
* format
* trailing comma
* more formatting
* Update lookup controllers (#945)
* update controllers
* add 500 annotation for org lookup
* fix copy pasta
* update swagger
* lastname usage goes too deep (storage)
* update swagger
* update test paths
* use 200 OK when no hit
* typo
* log error
* format
* use the correct namespacing for the logger
* shorten method
* Draft controller code for getting the signee states.
* update swagger
* SigningController: Use problem details in bad request response.
* Feature/persist signee context (#980)
* WIP persisting signee contexts
* test data
* use party id instead of partyuuid in singing context
* wip: persist signature state
* wip: Make SigneeContext classes public because of json serialization/deserialization.
* set debug type to portable for core and api
* working state for persisting and reading signee context
* add missing xml comments
* update swagger
* make models internal
---------
Co-authored-by: Camilla Marie Dalan <[email protected]>
Co-authored-by: Bjørn Tore Gjerde <[email protected]>
* First version of "data elements to sign" endpoint.
* Fix merge error.
* Remove 404 from singing controller. Can't see that it returns 404.
* Update openapi spec.
* Adds self links to signing data elements (#986)
* adds self links to signing data elements
* updates oas
* Feature/signing delegation (#982)
* rename method
* add terlemetry to singing delegation
* use instancemuitator instead of instance
* lastname changes
* format
* temp fix for bad model
* add debug logging
* format
* domain model for application resource id
* format
* use app resource id
* add AppResourceId and simplify parameters to signing delegation
* debug logging
* lets try loggin again
* format
* update instantiation of AppIdentifier
* public
* use actual instance id
* inject taskId as param, due to being unable to resolve it
* add delegation builder test
* better logging for access management issues
* rm unused using
* better logging
* just log everything
* just log everything but better
* forgot one
* add summary for all public props
* use party uuid
* clarify vars, rm comments
* log response
* summaries
* add app and org delegation
* simplify delegation abstractions
* move appResourceId into a named namespace
* rm builders, use domain objects
* client cleanup
* add revoke signee rights
* format
* rm debug logging
* workaround -> work around
* block scoped variables
* rm debug logging of sensitive data
* delagate from current user
* use UserParty instead of Party
* simplify lastname handling (#1006)
* simplify lastname handling
* get lastname from fullname
* use invariant culture
* rm redundant semi
* update summary for PersonSignee.FullName
* adds party id to signing state response (#1009)
* Feature/signing notification (#1021)
* add traces and metrics to notifications for signing
* extract getUserLanguage from pdfService
* add metrics
* add default notification bodies
* remove language support from signing notification
* cleanup usings
* update default sms body
* Populate email request, clarify sms sender number
* Add default email subject
* Add reference for email tracking
* Consolidate sms and email notification interfaces
* move signing notification default to signingnotificationservice
* add signing notification service tests
* robustify, add more tests
* robustify, add more tests
* break -> continue + test
* typo
* pr feedback, try send email if sms fails
* typo
* Fix setting signing delegation state (#1034)
* fixes setting delegated status by inverting logic
* removes is
* add signing delegation tests (#1038)
* Download signDocuments and synchronize with SigneeContexts. (#1039)
* Download signDocuments and synchronize with SigneeContexts. Enables checking signature status.
* Download signature documents in parallell.
* Make sure to add sign document to on-the-fly signeeContexts.
* Move download signDocument into a method.
* Extract logic for creating SigneeContext from SignDocument to method.
* Add some validation to SigningProcessTask.Start and skip running signee initialization and process signees if there is no point.
* Fix merge error.
* Use xUnit for asserts instead of FluentAssertions.
* Update swagger.json.
* Update SaveJsonSwagger.verified.txt.
* Send receipt for completed signing (#1042)
* implements default signing task validator (#1046)
* implements default signing task validator
* adds and fixes tests
* makes catcherror func private
* screams null instead of whispering. Also removes logger
* adds process bpmn param to turn off default signing task validation and added function docs
* makes SigningTaskValidator sealed and using is instead of double equals
* implements qa suggestions
* no signees -> empty list
* Pdf-sign (#1051)
* dummy commit
* create pdf in process task end for signing
* generate pdf if signing pdf data type is set
* add underscore separator in pdf name
* remove unreachable fallback
* use signing pdf data type
* hotfix look for either org or ssn for party lookup
* fixes hotfix for looking up party based on either org or person number
* delegate on behalf of io, org takes precedence (#1085)
* delegate on behalf of io, org takes precedence
* update tests to match stricter type requirements
* Signing on behalf of org and model changes (#1066)
* populates actual organisation number of selected party in sign document when signing
* refactors person and organisation signees to be a single signee object
* moves most of the logic for actually signing to signeeService
* updates signee contexts after signing
* makes SigneeContext inherit from SigneeParty and some cleanup
fixes possibly null reference
* fixes test and minor code improvements
* removes unused catcherror func
* adds QA suggested changes
* changes getsignee to use UserParty and logging information
* removes logging with json serializer that triggered error
* searches for party with either ssn or orgnr
* updates signdocument and signee context match and adds logs
* dont use strict mode for logger in tests
* using just party instead of user party for orgnr
* provide created signee context from sign document with both user and org party, some cleanup and logging
* adds org party default with person party fallback to created signee context form sign document
* minor fixes
---------
Co-authored-by: HauklandJ <[email protected]>
* Catch no partyuuid in signing access delegation (#1089)
* handles no party uuid with adding delegation error message to signee contexts instead of throwing
* fixes possible null reference assignment
* sets notification successful only if there are no error messages for sending notification on the signee state (#1090)
* fixes getting org number on sign (#1093)
* Change som var to explicit data type when data type can't be inferred on the right side.
Mainly to get a new non zero leading hash for new package. :P
* Delete old signee state in Start and Abandon. (#1052)
* Feature/signing refactor sign on behalf (#1106)
* WIP
* refactoring
* adds type discriminator to SigneeContext.Signee
* removes unnecessary party lookup
* fixes signingservicetests
* fixes signingdelegationservicetests
* fixes signingnotificationservicetests
* fixes signingtaskvalidatortests
* updates storage interface
* minor improvements to signeecontext
* updates verified responses
* returns orgparty for orgsignee
* looking for null or empty string instead of just null
* fixes null checks
* Feature/signing controller tests (#1109)
* logging object in signingservice with serialization
* adds SigningController tests
* adds updated swagger and response
* makes logging for debugging purposes logDebug
* fixes incorrect matching of signees with sign documents and adds tests for the case (#1128)
* Validate and update tlf and fixes hard crash (#1129)
* prevents crash on invalid phone number
* updates tests
* adds test for number without country code
* adds default country code if 8 digits and updates test accordingly
* uses PhoneNumbers package to validate before sending sms order
* fixes wrong notification sent status
* minor fix
* switches out phonenumber nuget with regex
* removes logging of whole exception that also crashes
* switches notficiationsent from bool to enum
* adds jsonproperynames to signingstateresponse
* fixes jsonproperty annotations from qa
* Adds timestamp to signee state DTO (#1130)
* adds timestamp to signee state dto
* removes dto naming and notificationsuccessful -> notificationstatus
* Draft: correspondance instead of notification for signing call to action (#1122)
* Add scaffolding for correspondance
* remove signing notification
* fix tests and format
* add link to app instance to body of correspondance message
* changes after rebase
* re-remove singingnotification
* fix tests after rebase, format
* add language support for signing call to action message
* split correspondace service into "receipt" and "call to action" services
* Add default texts to signing receipts
* add language support to notification received through correspondence
* mv TextResourceExtensions to Features/Extensions
* format
* add TextResourceExtensionsTests
* add a few tests
* update test
* test signing call to action service
* format
* fix test
* more signing cta tests
* some signing receipt service tests
* add GetContent tests for signing receipt correspondance
* Test signing correspondance send receipt
* cover more conditions for signing receipt
* rename textresources
* remember to save all files before committing
* stricter orgnumber check
* add logging
* format
* add ugly hacks to deal with testing in tt02
* rm debug log
* use org number instead of org name for service owner party lookup
* do not inject cdn client, create new instance instead
* correspondance -> correspondence
* rename correspondance -> correspondence
* reminder requires a lot more scaffolding, remove for now
* fallback for ttd serviceowner
* fix url
* update tests
* Add placeholder description to summary
* delete unused interface
* update text resource key name for sms
* move initialization of variable closer to use
* update reading of the sms body value to new property name
* update sms body property to new name
* update signeestate is -> hasbeen for usages
* update summary, and update test
* update test with new prop name
* update interface casing
* refactor getServiceOwnerParty into method
* uses string.isNullOrEmpty instead of is null for string null checks (#1144)
* Add display text to link replacement in correspondence message (#1145)
* Split SigneeParty in PersonSignee and OrganisationSignee (#1141)
* corrects sing -> sign
* splits signeeparty in personsignee and organisationsignee
* SigneesResultSignee -> ProvidedSignee and SigneeContextSignee -> Signee
* removes intizializeDelegatedSigningUserAction
* Wrap cts in using
* Feature/singing revoke on reject (#1147)
* fix url
* Implement 'ImplementableByApps' for ISigneeProvider
* add tests to urlhelper for access management (#1152)
* Add possibility to override sms and email for correspondence (#1155)
* add tests to urlhelper for access management
* move all correspondance response models to separate folder
* extend correspondance model with notification override capabilities
* add notification override to signing cta service
* update corespondence builders
* Swaps in `InstanceDataOfWorkInitializer`, updates controllers and tests
* fix build warnings
* Adjust custom notification with correspondence (#1160)
* logging
* include internal props in serialization
* rename symbols
* update property names after input from team melding that the swagger docs are wrong
* update notification choice logic
* log correspondence id
* format
* tests should not fail because of debug logs
* update models
* test driven development
* Rename prop
* plural
* Slightly less mocky testing
* moves sign action back to SigningUserAction and reimplement tests (#1172)
* Internal signing controller (#1174)
* makes SigningController internal
* removes redundant comment
* inherit more of the original implementation of IsController from ControllerFeatureProvider
* adds namespace to InternalControllerFeatureProvider
* fixes swagger files
* makes signing stuff internal (#1176)
* fix client (#1185)
* Authorize process next as 'sign' when the process task type is signing (#1161)
* Authorize process next as 'sign' when the process task type is signing and and no action was submitted. This is how storage authorizes it, and it means that the party that should run process next when everyone has signed, needs the 'sign' access right.
* Move process next authorization into separate class and define what kind of actions allow process next for each task type.
* Flip order of methods in AccessManagementClient.cs.
* make IsValidContributors internal and only allow serviceowner auth
* Process next: Use AuthorizeAction multiple times instead of AuthorizeActions (#1208)
* Feature/signing roles (#1194)
* Add GetRoles method to Authorization client
* add GetAuthorizedOrganisations endpoint
* Add telemetry to authorization client GetRoles method
* extract method
* add mock for auth client
* format
* Add response dto
* update swagger snaphot
* update test setup to include new dependency
* add signing controller tests
* add signing service test
* mv GetAuthorizedOrganisations GetAuthorizedOrganisationSignees
* mv authorised authorized
* update swagger test expected snapshot
* use IAthenticationContext instead of IHttpContextAccessor
* use pdp multi part request to get key role organisations
* filter permitted
* cleanup
* update test
* add tempt tt02 debug logging
* do actions optionally on behalf of an org
* stringly typed
* rm unused using as this apparently crashed the github runners which are more strcit than building locally
* update swagger verified for snapshot
* add logging
* update test
* more logging
* found the issue...
* handle on behalf of
* rm getRoles from auth client as this is no longer used
* rm unused using
* rm solved TODO
* rm noisy logging
* make method static..
* Sonar feedback (#1223)
* Don't use string interpolation in logging message templates.
* Remove this unnecessary check for null.
* format
* rm todos
* condition always evaluates to true
* mark class as static
* rm todo comments
* 'int' should not be explicitly used as the underlying type of enum
* remove unused local variable
* persist correspondence id in signeestate (#1235)
* persist correspondence id in signeestate
* log correspondence receipt id
* Don't use default validator by default.
* Validate after running user action handler in process next (#1231)
* Reload instance data after SignDataelements has been called.
* Until we support the correct spelling of AllowedContributers, the error message should also contain the typo.
* Update CorrespondenceClient with API changes (#1083)
* Deserialises validation errors if present in reply from API server
* WIP
* Elevate `OrganisationOrPersonIdentifier` and friends out of Correspondence namespace
* Removes Name/DisplayName props and other Correspondence tweaks as required
* Fixes tests and refactors for a bit more sanity
* Removes CorrespondenceRecipient
* Renames Create->Parse for `Party` parsing
* Convenience operators
* Removes `Experimental` warning for Correspondence Client
* Bugfix: Used checkedAction to find userActionHandler, which ment sign action handler was always ran for signing process next.
* Fix bad merge.
* [Signing] Renaming and internal namespace for internal classes (#1240)
* organisation -> organization and internal namespace
* renames SigneesResult to SigneeProviderResult
* renames SigneeState for SigneeContext to SigneeContextState
* renames Signee in SigneeProviderResult back to ProvidedSignee because of clash with Signee model from Storage
* updates OAS
* renames rest of organisation -> organization in signing folder
* [Signing] Creates SigneeContextsManager and adds tests (#1246)
* extracts some methods in SigningService to a new SigneeContextsManager class
* adds tests
* fixes wrong service being used in controller
* adds more tests to SigningDelegationService
* deduplicate SigningDelegationService
* adds tests for SigningController GetDataElements
* adds more tests for SigningService
* [Signing] Create SignDocumentManager and tests (#1249)
* extracts signdocumentmanager from signingservice
* makes SynchronizeSigneeContextsWithSignDocuments immutable
* update SigningServiceTests
* adds tests for SignDocumentManager
* breaks up SynchronizeSigneeContextsWithSignDocuments into smaller functions
* poboo -> p (#1248)
* poboo -> p
* test
* british english expectation in frontend...
* update swagger tests
* more british english, bloody ell
* uses getsigneecontexts from signingservice instead of singeecontextsmanager (#1250)
* When task type doesn't have specific mapping to actions that allow process next, use task type as default. Ment to be used for custom task types. (#1255)
* Refactoring moving some code (#1259)
* Feature/signing mob feedback (#1271)
* Tiny adjustments in SigningController.
* Move SigneeProviderResult.
* Use delegate for CatchError functions
* mv systemSignee systemUserSignee
* using stream
---------
Co-authored-by: Bjørn Tore Gjerde <[email protected]>
* Use American spelling in signing (#1272)
* converts british to american spelling for signing things that we can change
* updates oas verified json
* Rename provided signees (#1273)
* renam provided signees
* move abtract inheretors out of abstract class to not required a static using
* update correspondance configuration for ISigneeProvider (#1274)
* update correspondance configuration for ISigneeProvider
* create a local reference variable for notification rather that contactdetails in SigneeContextManager
* Add a remark to InboxMessage.BodyTextResourceKey, explaining the link override
* mv contactDetails CommunicationConfig
* clarify summary texts
* Use translation service for correspondence (#1276)
* Use translation service for correspondence
* add helper method to TranslationService to get the first hit when multiple keys are supplied
* Do not use lenient method when key is guaranteed not null
* format
* format
* merge from main snuck in a package downgrade for storage interfaces, revert
* rm auth shortcut for on behalf of instance owner (#1245)
* rm auth shortcut for on behalf of instance owner
* rm
* mv s z
* Update telemetry (#1281)
* Upodate telemetry
* throw signingException if lookup instance owner fails
* Cancellation token for signing (#1286)
* scaffolding for cancellation token coverage
* just scaffold
* missed one ct forward
* forward ct
* create cts for signing controller
* add ct to process and action controllers
* fix casing in comments
* proper mock setup with cts
* fallback to default ct in IUserAction to avoid breaking change
* format
* Change ISigneeProvider.GetSigneesAsync to accept a record with parameters instead of just a instance parameter. Also supply IInstanceDataAccessor instead of the Instance directly.
* Ensure exactly one signee provider.
* Change ISigneeProvider.GetSigneesAsync to accept a record with parameters instead of just a instance parameter. Also supply IInstanceDataAccessor instead of the Instance directly.
* Remove some unnecessary taskId params.
* Rename GetSigneesAsync's parameter class.
* $InstanceUrl -> $instanceUrl$ (#1292)
* update storage interface to 4.0.10 (#1293)
* update storage interface to 4.0.10
* support allowedContributors
* supress warning
* supress
* Don't throw AuthenticationContextException in ProcessEngineAuthorizer. (#1299)
* Remove async suffix from ISigneeProvider. (#1302)
* Validate minimum amount of signatures instead of minimum one. (#1304)
* remove html tags from default message (#1303)
* Remove unused code.
* Add default value for ct in SigningUserAction, as interface defines.
* Adjust allowed contributors dev time error message.
* update default text for email (#1307)
---------
Co-authored-by: Bjørn Tore Gjerde <[email protected]>
Co-authored-by: Bjørn Tore Gjerde <[email protected]>
Co-authored-by: Camilla Marie Dalan <[email protected]>
Co-authored-by: Daniel Skovli <[email protected]>
Co-authored-by: Martin Othamar <[email protected]>
Co-authored-by: Martin Othamar <[email protected]>1 parent 697ba1e commit a31081e
File tree
217 files changed
+14165
-1124
lines changed- doc/adr
- src
- Altinn.App.Api
- Controllers
- Extensions
- Helpers
- Models
- Altinn.App.Core
- Configuration
- Constants
- EFormidling/Implementation
- Exceptions
- Extensions
- Features
- Action
- Auth
- Correspondence
- Builder
- Exceptions
- Extensions
- Models
- Response
- Maskinporten/Exceptions
- Notifications/Sms
- Payment/Exceptions
- Signing
- Exceptions
- Models
- Services
- Telemetry
- Signing
- Validation/Default
- Helpers
- DataModel
- Infrastructure/Clients
- Authorization
- Profile
- Storage
- Interface
- Internal
- AccessManagement
- Exceptions
- Helpers
- Models
- AltinnCdn
- App
- Auth
- Expressions
- Language
- Linq
- Pdf
- Process
- Elements
- AltinnExtensionProperties
- Interfaces
- ProcessTasks
- Common
- Profile
- Sign
- Texts
- Models
- Notifications
- Email
- Sms
- Process
- UserAction
- Validation
- test
- Altinn.App.Api.Tests
- Controllers
- Mocks
- OpenApi
- Altinn.App.Core.Tests
- Configuration
- Constants
- Extensions
- Features
- Action
- TestData
- Correspondence
- Builder
- Models
- Signing
- Validators/Default
- Helpers
- Internal
- AccessManagement
- AltinnCdn
- App
- Linq
- Process
- ProcessTasks
- TestData
- Texts
- Mocks
- Models
- Altinn.App.Tests.Common
Some content is hidden
Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.
217 files changed
+14165
-1124
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
9 | 9 | | |
10 | 10 | | |
11 | 11 | | |
12 | | - | |
| 12 | + | |
13 | 13 | | |
14 | 14 | | |
15 | 15 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
| 1 | + | |
| 2 | + | |
| 3 | + | |
| 4 | + | |
| 5 | + | |
| 6 | + | |
| 7 | + | |
| 8 | + | |
| 9 | + | |
| 10 | + | |
| 11 | + | |
| 12 | + | |
| 13 | + | |
| 14 | + | |
| 15 | + | |
| 16 | + | |
| 17 | + | |
| 18 | + | |
| 19 | + | |
| 20 | + | |
| 21 | + | |
| 22 | + | |
| 23 | + | |
| 24 | + | |
| 25 | + | |
| 26 | + | |
| 27 | + | |
| 28 | + | |
| 29 | + | |
| 30 | + | |
| 31 | + | |
| 32 | + | |
| 33 | + | |
| 34 | + | |
| 35 | + | |
| 36 | + | |
| 37 | + | |
| 38 | + | |
| 39 | + | |
| 40 | + | |
| 41 | + | |
| 42 | + | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
| 1 | + | |
| 2 | + | |
| 3 | + | |
| 4 | + | |
| 5 | + | |
| 6 | + | |
| 7 | + | |
| 8 | + | |
| 9 | + | |
| 10 | + | |
| 11 | + | |
| 12 | + | |
| 13 | + | |
| 14 | + | |
| 15 | + | |
| 16 | + | |
| 17 | + | |
| 18 | + | |
| 19 | + | |
| 20 | + | |
| 21 | + | |
| 22 | + | |
| 23 | + | |
| 24 | + | |
| 25 | + | |
| 26 | + | |
| 27 | + | |
| 28 | + | |
| 29 | + | |
| 30 | + | |
| 31 | + | |
| 32 | + | |
| 33 | + | |
| 34 | + | |
| 35 | + | |
| 36 | + | |
| 37 | + | |
| 38 | + | |
| 39 | + | |
| 40 | + | |
| 41 | + | |
| 42 | + | |
| 43 | + | |
| 44 | + | |
| 45 | + | |
| 46 | + | |
| 47 | + | |
| 48 | + | |
| 49 | + | |
| 50 | + | |
| 51 | + | |
| 52 | + | |
| 53 | + | |
| 54 | + | |
| 55 | + | |
| 56 | + | |
| 57 | + | |
| 58 | + | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
| 1 | + | |
| 2 | + | |
| 3 | + | |
| 4 | + | |
| 5 | + | |
| 6 | + | |
| 7 | + | |
| 8 | + | |
| 9 | + | |
| 10 | + | |
| 11 | + | |
| 12 | + | |
| 13 | + | |
| 14 | + | |
| 15 | + | |
| 16 | + | |
| 17 | + | |
| 18 | + | |
| 19 | + | |
| 20 | + | |
| 21 | + | |
| 22 | + | |
| 23 | + | |
| 24 | + | |
| 25 | + | |
| 26 | + | |
| 27 | + | |
| 28 | + | |
| 29 | + | |
| 30 | + | |
| 31 | + | |
| 32 | + | |
| 33 | + | |
| 34 | + | |
| 35 | + | |
| 36 | + | |
| 37 | + | |
| 38 | + | |
| 39 | + | |
| 40 | + | |
| 41 | + | |
| 42 | + | |
| 43 | + | |
| 44 | + | |
| 45 | + | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
11 | 11 | | |
12 | 12 | | |
13 | 13 | | |
| 14 | + | |
14 | 15 | | |
15 | 16 | | |
16 | 17 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
60 | 60 | | |
61 | 61 | | |
62 | 62 | | |
| 63 | + | |
63 | 64 | | |
64 | 65 | | |
65 | 66 | | |
| |||
75 | 76 | | |
76 | 77 | | |
77 | 78 | | |
| 79 | + | |
78 | 80 | | |
79 | 81 | | |
80 | 82 | | |
| |||
134 | 136 | | |
135 | 137 | | |
136 | 138 | | |
137 | | - | |
| 139 | + | |
| 140 | + | |
138 | 141 | | |
139 | 142 | | |
140 | 143 | | |
| |||
152 | 155 | | |
153 | 156 | | |
154 | 157 | | |
155 | | - | |
| 158 | + | |
156 | 159 | | |
157 | 160 | | |
158 | 161 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
10 | 10 | | |
11 | 11 | | |
12 | 12 | | |
13 | | - | |
14 | 13 | | |
| 14 | + | |
15 | 15 | | |
16 | 16 | | |
17 | 17 | | |
| |||
40 | 40 | | |
41 | 41 | | |
42 | 42 | | |
| 43 | + | |
43 | 44 | | |
44 | 45 | | |
45 | 46 | | |
| |||
52 | 53 | | |
53 | 54 | | |
54 | 55 | | |
55 | | - | |
| 56 | + | |
| 57 | + | |
56 | 58 | | |
57 | 59 | | |
58 | 60 | | |
| |||
63 | 65 | | |
64 | 66 | | |
65 | 67 | | |
| 68 | + | |
66 | 69 | | |
67 | 70 | | |
68 | 71 | | |
| |||
275 | 278 | | |
276 | 279 | | |
277 | 280 | | |
| 281 | + | |
278 | 282 | | |
279 | 283 | | |
280 | 284 | | |
| |||
287 | 291 | | |
288 | 292 | | |
289 | 293 | | |
| 294 | + | |
290 | 295 | | |
291 | 296 | | |
292 | 297 | | |
| |||
329 | 334 | | |
330 | 335 | | |
331 | 336 | | |
332 | | - | |
333 | | - | |
334 | | - | |
335 | | - | |
336 | | - | |
337 | | - | |
338 | | - | |
339 | | - | |
340 | | - | |
341 | | - | |
| 337 | + | |
342 | 338 | | |
343 | 339 | | |
344 | 340 | | |
| |||
347 | 343 | | |
348 | 344 | | |
349 | 345 | | |
350 | | - | |
| 346 | + | |
| 347 | + | |
351 | 348 | | |
352 | 349 | | |
353 | 350 | | |
354 | 351 | | |
355 | 352 | | |
356 | | - | |
| 353 | + | |
| 354 | + | |
| 355 | + | |
| 356 | + | |
| 357 | + | |
| 358 | + | |
| 359 | + | |
| 360 | + | |
357 | 361 | | |
358 | 362 | | |
359 | 363 | | |
360 | 364 | | |
361 | 365 | | |
362 | 366 | | |
| 367 | + | |
363 | 368 | | |
364 | 369 | | |
365 | 370 | | |
| 371 | + | |
| 372 | + | |
| 373 | + | |
| 374 | + | |
| 375 | + | |
| 376 | + | |
| 377 | + | |
| 378 | + | |
| 379 | + | |
| 380 | + | |
| 381 | + | |
| 382 | + | |
| 383 | + | |
| 384 | + | |
| 385 | + | |
| 386 | + | |
366 | 387 | | |
367 | 388 | | |
368 | 389 | | |
| |||
521 | 542 | | |
522 | 543 | | |
523 | 544 | | |
524 | | - | |
| 545 | + | |
525 | 546 | | |
526 | | - | |
527 | | - | |
528 | | - | |
529 | | - | |
530 | | - | |
531 | | - | |
532 | | - | |
533 | | - | |
534 | | - | |
| 547 | + | |
535 | 548 | | |
536 | 549 | | |
537 | 550 | | |
| |||
552 | 565 | | |
553 | 566 | | |
554 | 567 | | |
555 | | - | |
| 568 | + | |
556 | 569 | | |
557 | 570 | | |
558 | 571 | | |
| |||
704 | 717 | | |
705 | 718 | | |
706 | 719 | | |
707 | | - | |
708 | | - | |
709 | | - | |
710 | | - | |
711 | | - | |
712 | | - | |
713 | | - | |
714 | | - | |
715 | | - | |
716 | | - | |
717 | | - | |
718 | | - | |
719 | | - | |
720 | | - | |
721 | | - | |
722 | | - | |
723 | | - | |
724 | | - | |
725 | 720 | | |
726 | 721 | | |
727 | 722 | | |
728 | 723 | | |
729 | 724 | | |
730 | | - | |
| 725 | + | |
731 | 726 | | |
732 | 727 | | |
733 | 728 | | |
| |||
736 | 731 | | |
737 | 732 | | |
738 | 733 | | |
| 734 | + | |
| 735 | + | |
739 | 736 | | |
740 | 737 | | |
741 | 738 | | |
| |||
0 commit comments