Skip to content

Commit 40d494d

Browse files
Merge remote-tracking branch 'origin/master' into release
2 parents 211640a + 6f8d0e4 commit 40d494d

35 files changed

+1811
-5
lines changed

CHANGELOG.md

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,12 @@
1+
## [24.9.0] - Aspose Words Cloud for Dart 24.9 Release Notes
2+
3+
- Added digital signature methds for DOC, DOCX, XPS, or ODT documents.
4+
- Added ReplaceBackslashWithYenSign property for XpsSaveOptions and HtmlSaveOptions.
5+
- Added DigitalSignature property for XpsSaveOptions.
6+
- Added UseSdtTagAsFormFieldName property for PdfSaveOptions.
7+
- Added MergeWholeDocument parameter to the MailMerge operations to update fields in whole document after executing of a mail merge with regions.
8+
9+
110
## [24.8.0] - Aspose Words Cloud for Dart 24.8 Release Notes
211

312
- Added the support of OpenType standard. It is usefull for languages required advanced typography.

README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,7 @@ Add this dependency to your *pubspec.yaml*:
2727

2828
```yaml
2929
dependencies:
30-
aspose_words_cloud: 24.8.0
30+
aspose_words_cloud: 24.9.0
3131
```
3232
3333
## Getting Started

lib/aspose_words_cloud.dart

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -68,6 +68,7 @@ export 'src/models/custom_xml_part_update.dart';
6868
export 'src/models/custom_xml_part.dart';
6969
export 'src/models/custom_xml_parts_collection.dart';
7070
export 'src/models/custom_xml_parts_response.dart';
71+
export 'src/models/digital_signature_details.dart';
7172
export 'src/models/doc_save_options_data.dart';
7273
export 'src/models/docm_save_options_data.dart';
7374
export 'src/models/document_entry_list.dart';
@@ -249,6 +250,9 @@ export 'src/models/section_page_setup_response.dart';
249250
export 'src/models/section_response.dart';
250251
export 'src/models/section.dart';
251252
export 'src/models/shading.dart';
253+
export 'src/models/sign_options.dart';
254+
export 'src/models/signature_collection_response.dart';
255+
export 'src/models/signature.dart';
252256
export 'src/models/split_document_response.dart';
253257
export 'src/models/split_document_result.dart';
254258
export 'src/models/stat_data_response.dart';
@@ -497,6 +501,8 @@ export 'src/requests/get_section_page_setup_request.dart';
497501
export 'src/requests/get_section_request.dart';
498502
export 'src/requests/get_sections_online_request.dart';
499503
export 'src/requests/get_sections_request.dart';
504+
export 'src/requests/get_signatures_online_request.dart';
505+
export 'src/requests/get_signatures_request.dart';
500506
export 'src/requests/get_structured_document_tag_online_request.dart';
501507
export 'src/requests/get_structured_document_tag_request.dart';
502508
export 'src/requests/get_structured_document_tags_online_request.dart';
@@ -577,6 +583,8 @@ export 'src/requests/protect_document_online_request.dart';
577583
export 'src/requests/protect_document_request.dart';
578584
export 'src/requests/reject_all_revisions_online_request.dart';
579585
export 'src/requests/reject_all_revisions_request.dart';
586+
export 'src/requests/remove_all_signatures_online_request.dart';
587+
export 'src/requests/remove_all_signatures_request.dart';
580588
export 'src/requests/remove_range_online_request.dart';
581589
export 'src/requests/remove_range_request.dart';
582590
export 'src/requests/render_drawing_object_online_request.dart';
@@ -603,6 +611,8 @@ export 'src/requests/save_as_tiff_online_request.dart';
603611
export 'src/requests/save_as_tiff_request.dart';
604612
export 'src/requests/search_online_request.dart';
605613
export 'src/requests/search_request.dart';
614+
export 'src/requests/sign_document_online_request.dart';
615+
export 'src/requests/sign_document_request.dart';
606616
export 'src/requests/split_document_online_request.dart';
607617
export 'src/requests/split_document_request.dart';
608618
export 'src/requests/translate_node_id_online_request.dart';
@@ -688,13 +698,15 @@ export 'src/responses/insert_watermark_online_response.dart';
688698
export 'src/responses/insert_watermark_text_online_response.dart';
689699
export 'src/responses/protect_document_online_response.dart';
690700
export 'src/responses/reject_all_revisions_online_response.dart';
701+
export 'src/responses/remove_all_signatures_online_response.dart';
691702
export 'src/responses/remove_range_online_response.dart';
692703
export 'src/responses/replace_text_online_response.dart';
693704
export 'src/responses/replace_with_text_online_response.dart';
694705
export 'src/responses/response_base.dart';
695706
export 'src/responses/save_as_online_response.dart';
696707
export 'src/responses/save_as_range_online_response.dart';
697708
export 'src/responses/save_as_tiff_online_response.dart';
709+
export 'src/responses/sign_document_online_response.dart';
698710
export 'src/responses/split_document_online_response.dart';
699711
export 'src/responses/unprotect_document_online_response.dart';
700712
export 'src/responses/update_bookmark_online_response.dart';

lib/src/api_client.dart

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -518,7 +518,7 @@ class ApiClient {
518518
}
519519

520520
httpRequest.headers['x-aspose-client'] = 'dart sdk';
521-
httpRequest.headers['x-aspose-client-version'] = '24.8';
521+
httpRequest.headers['x-aspose-client-version'] = '24.9';
522522
httpRequest.headers['Authorization'] = await _getAuthToken();
523523
httpRequest.headers.addAll(requestData.headers);
524524

lib/src/models/azw3_save_options_data.dart

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -376,6 +376,12 @@ class Azw3SaveOptionsData extends HtmlSaveOptionsData {
376376
prettyFormat = null;
377377
}
378378

379+
if (json.containsKey('ReplaceBackslashWithYenSign')) {
380+
replaceBackslashWithYenSign = json['ReplaceBackslashWithYenSign'] as bool;
381+
} else {
382+
replaceBackslashWithYenSign = null;
383+
}
384+
379385
if (json.containsKey('ResolveFontNames')) {
380386
resolveFontNames = json['ResolveFontNames'] as bool;
381387
} else {
Lines changed: 92 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,92 @@
1+
/*
2+
* --------------------------------------------------------------------------------
3+
* <copyright company="Aspose" file="digital_signature_details.dart">
4+
* Copyright (c) 2024 Aspose.Words for Cloud
5+
* </copyright>
6+
* <summary>
7+
* Permission is hereby granted, free of charge, to any person obtaining a copy
8+
* of this software and associated documentation files (the "Software"), to deal
9+
* in the Software without restriction, including without limitation the rights
10+
* to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
11+
* copies of the Software, and to permit persons to whom the Software is
12+
* furnished to do so, subject to the following conditions:
13+
*
14+
* The above copyright notice and this permission notice shall be included in all
15+
* copies or substantial portions of the Software.
16+
*
17+
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
18+
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
19+
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
20+
* AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
21+
* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
22+
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
23+
* SOFTWARE.
24+
* </summary>
25+
* --------------------------------------------------------------------------------
26+
*/
27+
28+
library aspose_words_cloud;
29+
30+
import '../../aspose_words_cloud.dart';
31+
32+
/// Container class for details of digital signature.
33+
class DigitalSignatureDetails implements ModelBase {
34+
/// Gets or sets the certificate's filename using for signing.
35+
String? _certificateFilename;
36+
37+
String? get certificateFilename => _certificateFilename;
38+
set certificateFilename(String? val) => _certificateFilename = val;
39+
40+
41+
/// Gets or sets signing options.
42+
SignOptions? _signOptions;
43+
44+
SignOptions? get signOptions => _signOptions;
45+
set signOptions(SignOptions? val) => _signOptions = val;
46+
47+
48+
@override
49+
void deserialize(Map<String, dynamic>? json) {
50+
if (json == null) {
51+
throw ApiException(400, 'Failed to deserialize DigitalSignatureDetails data model.');
52+
}
53+
54+
if (json.containsKey('CertificateFilename')) {
55+
certificateFilename = json['CertificateFilename'] as String;
56+
} else {
57+
certificateFilename = null;
58+
}
59+
60+
if (json.containsKey('SignOptions')) {
61+
signOptions = ModelBase.createInstance< SignOptions >(json['SignOptions'] as Map<String, dynamic>);
62+
} else {
63+
signOptions = null;
64+
}
65+
}
66+
67+
@override
68+
Map<String, dynamic> serialize() {
69+
var _result = <String, dynamic>{};
70+
if (certificateFilename != null) {
71+
_result['CertificateFilename'] = certificateFilename!;
72+
}
73+
74+
if (signOptions != null) {
75+
_result['SignOptions'] = signOptions!.serialize();
76+
}
77+
return _result;
78+
}
79+
80+
@override
81+
void getFilesContent(List<FileReference> resultFilesContent) {
82+
}
83+
84+
@override
85+
void validate() {
86+
87+
signOptions?.validate();
88+
89+
}
90+
}
91+
92+

lib/src/models/epub_save_options_data.dart

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -376,6 +376,12 @@ class EpubSaveOptionsData extends HtmlSaveOptionsData {
376376
prettyFormat = null;
377377
}
378378

379+
if (json.containsKey('ReplaceBackslashWithYenSign')) {
380+
replaceBackslashWithYenSign = json['ReplaceBackslashWithYenSign'] as bool;
381+
} else {
382+
replaceBackslashWithYenSign = null;
383+
}
384+
379385
if (json.containsKey('ResolveFontNames')) {
380386
resolveFontNames = json['ResolveFontNames'] as bool;
381387
} else {

lib/src/models/html_save_options_data.dart

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -276,6 +276,17 @@ class HtmlSaveOptionsData extends SaveOptionsData {
276276
set prettyFormat(bool? val) => _prettyFormat = val;
277277

278278

279+
/// Gets or sets the flag that indicates whether backslash characters should be replaced with yen signs.
280+
/// Default value is false.
281+
/// By default, Aspose.Words mimics MS Word's behavior and doesn't replace backslash characters with yen signs in
282+
/// generated HTML documents. However, previous versions of Aspose.Words performed such replacements in certain
283+
/// scenarios. This flag enables backward compatibility with previous versions of Aspose.Words.
284+
bool? _replaceBackslashWithYenSign;
285+
286+
bool? get replaceBackslashWithYenSign => _replaceBackslashWithYenSign;
287+
set replaceBackslashWithYenSign(bool? val) => _replaceBackslashWithYenSign = val;
288+
289+
279290
/// Gets or sets a value indicating whether font family names used in the document are resolved and substituted according to FontSettings when being written into HTML-based formats.
280291
/// The default value is false.
281292
bool? _resolveFontNames;
@@ -650,6 +661,12 @@ class HtmlSaveOptionsData extends SaveOptionsData {
650661
prettyFormat = null;
651662
}
652663

664+
if (json.containsKey('ReplaceBackslashWithYenSign')) {
665+
replaceBackslashWithYenSign = json['ReplaceBackslashWithYenSign'] as bool;
666+
} else {
667+
replaceBackslashWithYenSign = null;
668+
}
669+
653670
if (json.containsKey('ResolveFontNames')) {
654671
resolveFontNames = json['ResolveFontNames'] as bool;
655672
} else {
@@ -859,6 +876,10 @@ class HtmlSaveOptionsData extends SaveOptionsData {
859876
_result['PrettyFormat'] = prettyFormat!;
860877
}
861878

879+
if (replaceBackslashWithYenSign != null) {
880+
_result['ReplaceBackslashWithYenSign'] = replaceBackslashWithYenSign!;
881+
}
882+
862883
if (resolveFontNames != null) {
863884
_result['ResolveFontNames'] = resolveFontNames!;
864885
}

lib/src/models/mhtml_save_options_data.dart

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -377,6 +377,12 @@ class MhtmlSaveOptionsData extends HtmlSaveOptionsData {
377377
prettyFormat = null;
378378
}
379379

380+
if (json.containsKey('ReplaceBackslashWithYenSign')) {
381+
replaceBackslashWithYenSign = json['ReplaceBackslashWithYenSign'] as bool;
382+
} else {
383+
replaceBackslashWithYenSign = null;
384+
}
385+
380386
if (json.containsKey('ResolveFontNames')) {
381387
resolveFontNames = json['ResolveFontNames'] as bool;
382388
} else {

lib/src/models/model_base.dart

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -72,6 +72,7 @@ abstract class ModelBase {
7272
'CustomXmlPartsCollection, _': () => CustomXmlPartsCollection(),
7373
'CustomXmlPartsResponse, _': () => CustomXmlPartsResponse(),
7474
'CustomXmlPartUpdate, _': () => CustomXmlPartUpdate(),
75+
'DigitalSignatureDetails, _': () => DigitalSignatureDetails(),
7576
'DocmSaveOptionsData, _': () => DocmSaveOptionsData(),
7677
'DocSaveOptionsData, _': () => DocSaveOptionsData(),
7778
'Document, _': () => Document(),
@@ -240,6 +241,9 @@ abstract class ModelBase {
240241
'SectionPageSetupResponse, _': () => SectionPageSetupResponse(),
241242
'SectionResponse, _': () => SectionResponse(),
242243
'Shading, _': () => Shading(),
244+
'Signature, _': () => Signature(),
245+
'SignatureCollectionResponse, _': () => SignatureCollectionResponse(),
246+
'SignOptions, _': () => SignOptions(),
243247
'SplitDocumentResponse, _': () => SplitDocumentResponse(),
244248
'SplitDocumentResult, _': () => SplitDocumentResult(),
245249
'StatDataResponse, _': () => StatDataResponse(),

0 commit comments

Comments
 (0)