6
6
7
7
import 'dart:async' ;
8
8
9
- import 'package:googleapis/sheets/v4.dart' ;
10
- import 'package:googleapis_auth/auth_io.dart' ;
11
9
import 'package:gsheet_to_arb/gsheet_to_arb.dart' ;
12
10
import 'package:gsheet_to_arb/src/arb/arb.dart' ;
13
11
import 'package:gsheet_to_arb/src/arb/arb_generator.dart' ;
14
- import 'package:gsheet_to_arb/src/utils/log.dart' ;
15
-
16
- class SheetColumns {
17
- static int key = 0 ;
18
- static int description = 1 ;
19
- static int first_language_key = 2 ;
20
- }
12
+ import 'package:gsheet_to_arb/src/translation_document.dart' ;
21
13
22
- class SheetRows {
23
- static int first_translation_row = 1 ;
24
- }
14
+ import 'package:gsheet_to_arb/src/utils/log.dart' ;
25
15
26
16
class SheetParser {
27
- final AuthConfig auth;
28
- final String categoryPrefix;
29
-
30
- SheetParser ({this .auth, this .categoryPrefix});
31
-
32
- Future <ArbBundle > parseSheet (String documentId) async {
33
- var authClient = await _getAuthClient (auth);
34
- var arbBundle = await _parseSheetWithAuth (authClient, documentId);
35
- return arbBundle;
36
- }
37
-
38
- Future <AuthClient > _getAuthClient (AuthConfig auth) async {
39
- final scopes = [SheetsApi .SpreadsheetsReadonlyScope ];
40
- var authClient;
41
- if (auth.oauthClientId != null ) {
42
- void clientAuthPrompt (String url) {
43
- Log .i (
44
- 'Please go to the following URL and grant Google Spreadsheet access:\n\t => $url \n ' );
45
- }
46
-
47
- final client = auth.oauthClientId;
48
- var id = ClientId (client.clientId, client.clientSecret);
49
- authClient = await clientViaUserConsent (id, scopes, clientAuthPrompt);
50
- } else if (auth.serviceAccountKey != null ) {
51
- final service = auth.serviceAccountKey;
52
- var credentials = ServiceAccountCredentials (service.clientEmail,
53
- ClientId (service.clientId, null ), service.privateKey);
54
- authClient = await clientViaServiceAccount (credentials, scopes);
55
- }
56
- return authClient;
57
- }
58
-
59
- Future <ArbBundle > _parseSheetWithAuth (
60
- AuthClient client, String documentId) async {
61
- var sheetsApi = SheetsApi (client);
62
- var spreadsheet =
63
- await sheetsApi.spreadsheets.get (documentId, includeGridData: true );
64
- var bundle = _parseSpreadsheet (spreadsheet);
65
- client.close ();
66
- return bundle;
67
- }
17
+ Future <ArbBundle > parseDocument (TranslationsDocument document) async {
18
+ return null ;
68
19
69
- ArbBundle _parseSpreadsheet ( Spreadsheet spreadsheet) {
20
+ /*
70
21
Log.i('Opening ${spreadsheet.spreadsheetUrl}');
71
22
72
23
var sheet = spreadsheet.sheets[0];
@@ -149,6 +100,7 @@ class SheetParser {
149
100
150
101
_addEntry(builder, key: key, attributes: attributes, value: value);
151
102
}
103
+
152
104
}
153
105
154
106
// complete plural parser
@@ -166,6 +118,7 @@ class SheetParser {
166
118
var documents = <ArbDocument>[];
167
119
builders.forEach((_, builder) => documents.add(builder.build()));
168
120
return ArbBundle(documents);
121
+ */
169
122
}
170
123
171
124
void _addEntry (ArbDocumentBuilder builder,
0 commit comments