@vishalsharma7nov/react-native-proto 0.2.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (190) hide show
  1. package/android/src/main/java/com/vishalsharma7nov/reactnativeproto/ReactNativeProtoNativeGrpcModule.java +142 -0
  2. package/app.plugin.js +63 -0
  3. package/bin/react-native-proto.js +956 -0
  4. package/ios/ReactNativeProtoNativeGrpc.m +129 -0
  5. package/lib/commonjs/auth.js +72 -0
  6. package/lib/commonjs/auth.js.map +1 -0
  7. package/lib/commonjs/client-factory.js +81 -0
  8. package/lib/commonjs/client-factory.js.map +1 -0
  9. package/lib/commonjs/codecs.js +41 -0
  10. package/lib/commonjs/codecs.js.map +1 -0
  11. package/lib/commonjs/connect/envelope.js +100 -0
  12. package/lib/commonjs/connect/envelope.js.map +1 -0
  13. package/lib/commonjs/connect/errors.js +71 -0
  14. package/lib/commonjs/connect/errors.js.map +1 -0
  15. package/lib/commonjs/errors.js +54 -0
  16. package/lib/commonjs/errors.js.map +1 -0
  17. package/lib/commonjs/generated/create-api.js +29 -0
  18. package/lib/commonjs/generated/create-api.js.map +1 -0
  19. package/lib/commonjs/generated/message-types.js +2 -0
  20. package/lib/commonjs/generated/message-types.js.map +1 -0
  21. package/lib/commonjs/generated/messages.js +47 -0
  22. package/lib/commonjs/generated/messages.js.map +1 -0
  23. package/lib/commonjs/generated/messages.pb.js +2787 -0
  24. package/lib/commonjs/generated/messages.pb.js.map +1 -0
  25. package/lib/commonjs/generated/method-map.js +68 -0
  26. package/lib/commonjs/generated/method-map.js.map +1 -0
  27. package/lib/commonjs/index.js +283 -0
  28. package/lib/commonjs/index.js.map +1 -0
  29. package/lib/commonjs/interceptors.js +19 -0
  30. package/lib/commonjs/interceptors.js.map +1 -0
  31. package/lib/commonjs/logging.js +54 -0
  32. package/lib/commonjs/logging.js.map +1 -0
  33. package/lib/commonjs/metro/index.js +35 -0
  34. package/lib/commonjs/metro/index.js.map +1 -0
  35. package/lib/commonjs/metro/transformer.js +33 -0
  36. package/lib/commonjs/metro/transformer.js.map +1 -0
  37. package/lib/commonjs/mock-server/index.js +125 -0
  38. package/lib/commonjs/mock-server/index.js.map +1 -0
  39. package/lib/commonjs/native-grpc/index.js +242 -0
  40. package/lib/commonjs/native-grpc/index.js.map +1 -0
  41. package/lib/commonjs/offline-queue.js +137 -0
  42. package/lib/commonjs/offline-queue.js.map +1 -0
  43. package/lib/commonjs/package.json +1 -0
  44. package/lib/commonjs/path-templates.js +44 -0
  45. package/lib/commonjs/path-templates.js.map +1 -0
  46. package/lib/commonjs/react-query/index.js +30 -0
  47. package/lib/commonjs/react-query/index.js.map +1 -0
  48. package/lib/commonjs/streaming.js +251 -0
  49. package/lib/commonjs/streaming.js.map +1 -0
  50. package/lib/commonjs/transport.js +323 -0
  51. package/lib/commonjs/transport.js.map +1 -0
  52. package/lib/commonjs/types.js +6 -0
  53. package/lib/commonjs/types.js.map +1 -0
  54. package/lib/commonjs/validation/zod.js +48 -0
  55. package/lib/commonjs/validation/zod.js.map +1 -0
  56. package/lib/commonjs/version-check.js +102 -0
  57. package/lib/commonjs/version-check.js.map +1 -0
  58. package/lib/module/auth.js +67 -0
  59. package/lib/module/auth.js.map +1 -0
  60. package/lib/module/client-factory.js +77 -0
  61. package/lib/module/client-factory.js.map +1 -0
  62. package/lib/module/codecs.js +36 -0
  63. package/lib/module/codecs.js.map +1 -0
  64. package/lib/module/connect/envelope.js +93 -0
  65. package/lib/module/connect/envelope.js.map +1 -0
  66. package/lib/module/connect/errors.js +65 -0
  67. package/lib/module/connect/errors.js.map +1 -0
  68. package/lib/module/errors.js +46 -0
  69. package/lib/module/errors.js.map +1 -0
  70. package/lib/module/generated/create-api.js +13 -0
  71. package/lib/module/generated/create-api.js.map +1 -0
  72. package/lib/module/generated/message-types.js +2 -0
  73. package/lib/module/generated/message-types.js.map +1 -0
  74. package/lib/module/generated/messages.js +43 -0
  75. package/lib/module/generated/messages.js.map +1 -0
  76. package/lib/module/generated/messages.pb.js +2787 -0
  77. package/lib/module/generated/messages.pb.js.map +1 -0
  78. package/lib/module/generated/method-map.js +64 -0
  79. package/lib/module/generated/method-map.js.map +1 -0
  80. package/lib/module/index.js +53 -0
  81. package/lib/module/index.js.map +1 -0
  82. package/lib/module/interceptors.js +15 -0
  83. package/lib/module/interceptors.js.map +1 -0
  84. package/lib/module/logging.js +50 -0
  85. package/lib/module/logging.js.map +1 -0
  86. package/lib/module/metro/index.js +25 -0
  87. package/lib/module/metro/index.js.map +1 -0
  88. package/lib/module/metro/transformer.js +29 -0
  89. package/lib/module/metro/transformer.js.map +1 -0
  90. package/lib/module/mock-server/index.js +120 -0
  91. package/lib/module/mock-server/index.js.map +1 -0
  92. package/lib/module/native-grpc/index.js +233 -0
  93. package/lib/module/native-grpc/index.js.map +1 -0
  94. package/lib/module/offline-queue.js +132 -0
  95. package/lib/module/offline-queue.js.map +1 -0
  96. package/lib/module/package.json +1 -0
  97. package/lib/module/path-templates.js +39 -0
  98. package/lib/module/path-templates.js.map +1 -0
  99. package/lib/module/react-query/index.js +25 -0
  100. package/lib/module/react-query/index.js.map +1 -0
  101. package/lib/module/streaming.js +246 -0
  102. package/lib/module/streaming.js.map +1 -0
  103. package/lib/module/transport.js +316 -0
  104. package/lib/module/transport.js.map +1 -0
  105. package/lib/module/types.js +4 -0
  106. package/lib/module/types.js.map +1 -0
  107. package/lib/module/validation/zod.js +43 -0
  108. package/lib/module/validation/zod.js.map +1 -0
  109. package/lib/module/version-check.js +93 -0
  110. package/lib/module/version-check.js.map +1 -0
  111. package/lib/typescript/src/auth.d.ts +26 -0
  112. package/lib/typescript/src/auth.d.ts.map +1 -0
  113. package/lib/typescript/src/client-factory.d.ts +7 -0
  114. package/lib/typescript/src/client-factory.d.ts.map +1 -0
  115. package/lib/typescript/src/codecs.d.ts +5 -0
  116. package/lib/typescript/src/codecs.d.ts.map +1 -0
  117. package/lib/typescript/src/connect/envelope.d.ts +18 -0
  118. package/lib/typescript/src/connect/envelope.d.ts.map +1 -0
  119. package/lib/typescript/src/connect/errors.d.ts +11 -0
  120. package/lib/typescript/src/connect/errors.d.ts.map +1 -0
  121. package/lib/typescript/src/errors.d.ts +21 -0
  122. package/lib/typescript/src/errors.d.ts.map +1 -0
  123. package/lib/typescript/src/generated/create-api.d.ts +34 -0
  124. package/lib/typescript/src/generated/create-api.d.ts.map +1 -0
  125. package/lib/typescript/src/generated/message-types.d.ts +54 -0
  126. package/lib/typescript/src/generated/message-types.d.ts.map +1 -0
  127. package/lib/typescript/src/generated/messages.d.ts +17 -0
  128. package/lib/typescript/src/generated/messages.d.ts.map +1 -0
  129. package/lib/typescript/src/generated/method-map.d.ts +7 -0
  130. package/lib/typescript/src/generated/method-map.d.ts.map +1 -0
  131. package/lib/typescript/src/index.d.ts +53 -0
  132. package/lib/typescript/src/index.d.ts.map +1 -0
  133. package/lib/typescript/src/interceptors.d.ts +17 -0
  134. package/lib/typescript/src/interceptors.d.ts.map +1 -0
  135. package/lib/typescript/src/logging.d.ts +16 -0
  136. package/lib/typescript/src/logging.d.ts.map +1 -0
  137. package/lib/typescript/src/metro/index.d.ts +15 -0
  138. package/lib/typescript/src/metro/index.d.ts.map +1 -0
  139. package/lib/typescript/src/metro/transformer.d.ts +16 -0
  140. package/lib/typescript/src/metro/transformer.d.ts.map +1 -0
  141. package/lib/typescript/src/mock-server/index.d.ts +27 -0
  142. package/lib/typescript/src/mock-server/index.d.ts.map +1 -0
  143. package/lib/typescript/src/native-grpc/index.d.ts +36 -0
  144. package/lib/typescript/src/native-grpc/index.d.ts.map +1 -0
  145. package/lib/typescript/src/offline-queue.d.ts +47 -0
  146. package/lib/typescript/src/offline-queue.d.ts.map +1 -0
  147. package/lib/typescript/src/path-templates.d.ts +17 -0
  148. package/lib/typescript/src/path-templates.d.ts.map +1 -0
  149. package/lib/typescript/src/react-query/index.d.ts +14 -0
  150. package/lib/typescript/src/react-query/index.d.ts.map +1 -0
  151. package/lib/typescript/src/streaming.d.ts +10 -0
  152. package/lib/typescript/src/streaming.d.ts.map +1 -0
  153. package/lib/typescript/src/transport.d.ts +19 -0
  154. package/lib/typescript/src/transport.d.ts.map +1 -0
  155. package/lib/typescript/src/types.d.ts +78 -0
  156. package/lib/typescript/src/types.d.ts.map +1 -0
  157. package/lib/typescript/src/validation/zod.d.ts +33 -0
  158. package/lib/typescript/src/validation/zod.d.ts.map +1 -0
  159. package/lib/typescript/src/version-check.d.ts +40 -0
  160. package/lib/typescript/src/version-check.d.ts.map +1 -0
  161. package/metro/index.js +23 -0
  162. package/metro/transformer.js +21 -0
  163. package/package.json +144 -0
  164. package/react-native-proto.podspec +15 -0
  165. package/src/auth.ts +97 -0
  166. package/src/client-factory.ts +109 -0
  167. package/src/codecs.ts +42 -0
  168. package/src/connect/envelope.ts +112 -0
  169. package/src/connect/errors.ts +86 -0
  170. package/src/errors.ts +81 -0
  171. package/src/generated/create-api.ts +40 -0
  172. package/src/generated/message-types.ts +63 -0
  173. package/src/generated/messages.pb.js +3207 -0
  174. package/src/generated/messages.ts +45 -0
  175. package/src/generated/method-map.ts +71 -0
  176. package/src/index.ts +113 -0
  177. package/src/interceptors.ts +32 -0
  178. package/src/logging.ts +67 -0
  179. package/src/metro/index.ts +27 -0
  180. package/src/metro/transformer.ts +38 -0
  181. package/src/mock-server/index.ts +164 -0
  182. package/src/native-grpc/index.ts +302 -0
  183. package/src/offline-queue.ts +160 -0
  184. package/src/path-templates.ts +65 -0
  185. package/src/react-query/index.ts +40 -0
  186. package/src/streaming.ts +326 -0
  187. package/src/transport.ts +427 -0
  188. package/src/types.ts +94 -0
  189. package/src/validation/zod.ts +75 -0
  190. package/src/version-check.ts +121 -0
@@ -0,0 +1 @@
1
+ {"version":3,"names":["$protobuf","require","$Reader","Reader","$Writer","Writer","$util","util","$root","roots","demo","User","properties","keys","Object","i","length","prototype","id","name","email","age","phone","createdAt","Long","fromBits","updatedAt","create","encode","message","writer","q","undefined","recursionLimit","Error","hasOwnProperty","call","uint32","string","int32","int64","encodeDelimited","len","fork","ldelim","decode","reader","error","long","end","pos","RangeError","tag","skipType","decodeDelimited","verify","isString","isInteger","low","high","fromObject","object","isObject","TypeError","String","fromValue","parseInt","LongBits","toNumber","toObject","options","defaults","longs","toString","Number","BigInt","toBigInt","toJSON","constructor","toJSONOptions","getTypeUrl","typeUrlPrefix","GetUserRequest","GetUserByEmailRequest","ListUsersRequest","page","pageSize","pageToken","query","ListUsersResponse","users","emptyArray","nextPageToken","totalCount","push","Array","isArray","arrays","j","AddUserRequest","UpdateUserRequest","DeleteUserRequest","DeleteUserResponse","success","bool","Boolean","GetUserByPhoneRequest","UserService","rpcImpl","requestDelimited","responseDelimited","rpc","Service","defineProperty","addUser","request","callback","rpcCall","value","getUser","getUserByEmail","listUsers","updateUser","deleteUser","getUserByPhone","module","exports"],"sourceRoot":"../../../src","sources":["generated/messages.pb.js"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,68 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.methodMap = void 0;
7
+ /**
8
+ * Auto-generated method map. Do not edit by hand.
9
+ * Sources: user.proto
10
+ */
11
+ const methodMap = exports.methodMap = [{
12
+ "serviceName": "UserService",
13
+ "methodName": "AddUser",
14
+ "packageName": "demo",
15
+ "rpcPath": "demo.UserService/AddUser",
16
+ "requestType": "demo.AddUserRequest",
17
+ "responseType": "demo.User",
18
+ "kind": "unary"
19
+ }, {
20
+ "serviceName": "UserService",
21
+ "methodName": "GetUser",
22
+ "packageName": "demo",
23
+ "rpcPath": "demo.UserService/GetUser",
24
+ "requestType": "demo.GetUserRequest",
25
+ "responseType": "demo.User",
26
+ "kind": "unary"
27
+ }, {
28
+ "serviceName": "UserService",
29
+ "methodName": "GetUserByEmail",
30
+ "packageName": "demo",
31
+ "rpcPath": "demo.UserService/GetUserByEmail",
32
+ "requestType": "demo.GetUserByEmailRequest",
33
+ "responseType": "demo.User",
34
+ "kind": "unary"
35
+ }, {
36
+ "serviceName": "UserService",
37
+ "methodName": "ListUsers",
38
+ "packageName": "demo",
39
+ "rpcPath": "demo.UserService/ListUsers",
40
+ "requestType": "demo.ListUsersRequest",
41
+ "responseType": "demo.ListUsersResponse",
42
+ "kind": "unary"
43
+ }, {
44
+ "serviceName": "UserService",
45
+ "methodName": "UpdateUser",
46
+ "packageName": "demo",
47
+ "rpcPath": "demo.UserService/UpdateUser",
48
+ "requestType": "demo.UpdateUserRequest",
49
+ "responseType": "demo.User",
50
+ "kind": "unary"
51
+ }, {
52
+ "serviceName": "UserService",
53
+ "methodName": "DeleteUser",
54
+ "packageName": "demo",
55
+ "rpcPath": "demo.UserService/DeleteUser",
56
+ "requestType": "demo.DeleteUserRequest",
57
+ "responseType": "demo.DeleteUserResponse",
58
+ "kind": "unary"
59
+ }, {
60
+ "serviceName": "UserService",
61
+ "methodName": "GetUserByPhone",
62
+ "packageName": "demo",
63
+ "rpcPath": "demo.UserService/GetUserByPhone",
64
+ "requestType": "demo.GetUserByPhoneRequest",
65
+ "responseType": "demo.User",
66
+ "kind": "unary"
67
+ }];
68
+ //# sourceMappingURL=method-map.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["methodMap","exports"],"sourceRoot":"../../../src","sources":["generated/method-map.ts"],"mappings":";;;;;;AAEA;AACA;AACA;AACA;AACO,MAAMA,SAAoB,GAAAC,OAAA,CAAAD,SAAA,GAAG,CAClC;EACE,aAAa,EAAE,aAAa;EAC5B,YAAY,EAAE,SAAS;EACvB,aAAa,EAAE,MAAM;EACrB,SAAS,EAAE,0BAA0B;EACrC,aAAa,EAAE,qBAAqB;EACpC,cAAc,EAAE,WAAW;EAC3B,MAAM,EAAE;AACV,CAAC,EACD;EACE,aAAa,EAAE,aAAa;EAC5B,YAAY,EAAE,SAAS;EACvB,aAAa,EAAE,MAAM;EACrB,SAAS,EAAE,0BAA0B;EACrC,aAAa,EAAE,qBAAqB;EACpC,cAAc,EAAE,WAAW;EAC3B,MAAM,EAAE;AACV,CAAC,EACD;EACE,aAAa,EAAE,aAAa;EAC5B,YAAY,EAAE,gBAAgB;EAC9B,aAAa,EAAE,MAAM;EACrB,SAAS,EAAE,iCAAiC;EAC5C,aAAa,EAAE,4BAA4B;EAC3C,cAAc,EAAE,WAAW;EAC3B,MAAM,EAAE;AACV,CAAC,EACD;EACE,aAAa,EAAE,aAAa;EAC5B,YAAY,EAAE,WAAW;EACzB,aAAa,EAAE,MAAM;EACrB,SAAS,EAAE,4BAA4B;EACvC,aAAa,EAAE,uBAAuB;EACtC,cAAc,EAAE,wBAAwB;EACxC,MAAM,EAAE;AACV,CAAC,EACD;EACE,aAAa,EAAE,aAAa;EAC5B,YAAY,EAAE,YAAY;EAC1B,aAAa,EAAE,MAAM;EACrB,SAAS,EAAE,6BAA6B;EACxC,aAAa,EAAE,wBAAwB;EACvC,cAAc,EAAE,WAAW;EAC3B,MAAM,EAAE;AACV,CAAC,EACD;EACE,aAAa,EAAE,aAAa;EAC5B,YAAY,EAAE,YAAY;EAC1B,aAAa,EAAE,MAAM;EACrB,SAAS,EAAE,6BAA6B;EACxC,aAAa,EAAE,wBAAwB;EACvC,cAAc,EAAE,yBAAyB;EACzC,MAAM,EAAE;AACV,CAAC,EACD;EACE,aAAa,EAAE,aAAa;EAC5B,YAAY,EAAE,gBAAgB;EAC9B,aAAa,EAAE,MAAM;EACrB,SAAS,EAAE,iCAAiC;EAC5C,aAAa,EAAE,4BAA4B;EAC3C,cAAc,EAAE,WAAW;EAC3B,MAAM,EAAE;AACV,CAAC,CACF","ignoreList":[]}
@@ -0,0 +1,283 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ Object.defineProperty(exports, "AddUserRequest", {
7
+ enumerable: true,
8
+ get: function () {
9
+ return _messages.AddUserRequest;
10
+ }
11
+ });
12
+ Object.defineProperty(exports, "CLIENT_VERSION_HEADER", {
13
+ enumerable: true,
14
+ get: function () {
15
+ return _versionCheck.CLIENT_VERSION_HEADER;
16
+ }
17
+ });
18
+ Object.defineProperty(exports, "DeleteUserRequest", {
19
+ enumerable: true,
20
+ get: function () {
21
+ return _messages.DeleteUserRequest;
22
+ }
23
+ });
24
+ Object.defineProperty(exports, "DeleteUserResponse", {
25
+ enumerable: true,
26
+ get: function () {
27
+ return _messages.DeleteUserResponse;
28
+ }
29
+ });
30
+ Object.defineProperty(exports, "GetUserByEmailRequest", {
31
+ enumerable: true,
32
+ get: function () {
33
+ return _messages.GetUserByEmailRequest;
34
+ }
35
+ });
36
+ Object.defineProperty(exports, "GetUserRequest", {
37
+ enumerable: true,
38
+ get: function () {
39
+ return _messages.GetUserRequest;
40
+ }
41
+ });
42
+ Object.defineProperty(exports, "ListUsersRequest", {
43
+ enumerable: true,
44
+ get: function () {
45
+ return _messages.ListUsersRequest;
46
+ }
47
+ });
48
+ Object.defineProperty(exports, "ListUsersResponse", {
49
+ enumerable: true,
50
+ get: function () {
51
+ return _messages.ListUsersResponse;
52
+ }
53
+ });
54
+ Object.defineProperty(exports, "METHOD_MAP_HASH_HEADER", {
55
+ enumerable: true,
56
+ get: function () {
57
+ return _versionCheck.METHOD_MAP_HASH_HEADER;
58
+ }
59
+ });
60
+ Object.defineProperty(exports, "OfflineMutationQueue", {
61
+ enumerable: true,
62
+ get: function () {
63
+ return _offlineQueue.OfflineMutationQueue;
64
+ }
65
+ });
66
+ Object.defineProperty(exports, "ProtoClientError", {
67
+ enumerable: true,
68
+ get: function () {
69
+ return _errors.ProtoClientError;
70
+ }
71
+ });
72
+ Object.defineProperty(exports, "SERVER_MIN_CLIENT_HEADER", {
73
+ enumerable: true,
74
+ get: function () {
75
+ return _versionCheck.SERVER_MIN_CLIENT_HEADER;
76
+ }
77
+ });
78
+ Object.defineProperty(exports, "UpdateUserRequest", {
79
+ enumerable: true,
80
+ get: function () {
81
+ return _messages.UpdateUserRequest;
82
+ }
83
+ });
84
+ Object.defineProperty(exports, "User", {
85
+ enumerable: true,
86
+ get: function () {
87
+ return _messages.User;
88
+ }
89
+ });
90
+ Object.defineProperty(exports, "assertServerMinClient", {
91
+ enumerable: true,
92
+ get: function () {
93
+ return _versionCheck.assertServerMinClient;
94
+ }
95
+ });
96
+ Object.defineProperty(exports, "codecFromType", {
97
+ enumerable: true,
98
+ get: function () {
99
+ return _codecs.codecFromType;
100
+ }
101
+ });
102
+ Object.defineProperty(exports, "compareDottedVersions", {
103
+ enumerable: true,
104
+ get: function () {
105
+ return _versionCheck.compareDottedVersions;
106
+ }
107
+ });
108
+ Object.defineProperty(exports, "composeInterceptors", {
109
+ enumerable: true,
110
+ get: function () {
111
+ return _interceptors.composeInterceptors;
112
+ }
113
+ });
114
+ exports.createApi = void 0;
115
+ Object.defineProperty(exports, "createAuthInterceptor", {
116
+ enumerable: true,
117
+ get: function () {
118
+ return _auth.createAuthInterceptor;
119
+ }
120
+ });
121
+ Object.defineProperty(exports, "createBearerTokenHeaders", {
122
+ enumerable: true,
123
+ get: function () {
124
+ return _auth.createBearerTokenHeaders;
125
+ }
126
+ });
127
+ exports.createClient = createClient;
128
+ Object.defineProperty(exports, "createClientFromMap", {
129
+ enumerable: true,
130
+ get: function () {
131
+ return _clientFactory.createClientFromMap;
132
+ }
133
+ });
134
+ Object.defineProperty(exports, "createCodecRegistry", {
135
+ enumerable: true,
136
+ get: function () {
137
+ return _codecs.createCodecRegistry;
138
+ }
139
+ });
140
+ Object.defineProperty(exports, "createLoggingInterceptor", {
141
+ enumerable: true,
142
+ get: function () {
143
+ return _logging.createLoggingInterceptor;
144
+ }
145
+ });
146
+ Object.defineProperty(exports, "createPathForMethod", {
147
+ enumerable: true,
148
+ get: function () {
149
+ return _pathTemplates.createPathForMethod;
150
+ }
151
+ });
152
+ Object.defineProperty(exports, "createVersionAwareFetch", {
153
+ enumerable: true,
154
+ get: function () {
155
+ return _versionCheck.createVersionAwareFetch;
156
+ }
157
+ });
158
+ Object.defineProperty(exports, "createVersionInterceptor", {
159
+ enumerable: true,
160
+ get: function () {
161
+ return _versionCheck.createVersionInterceptor;
162
+ }
163
+ });
164
+ Object.defineProperty(exports, "decodeConnectEnvelopes", {
165
+ enumerable: true,
166
+ get: function () {
167
+ return _envelope.decodeConnectEnvelopes;
168
+ }
169
+ });
170
+ Object.defineProperty(exports, "defaultCodecs", {
171
+ enumerable: true,
172
+ get: function () {
173
+ return _messages.defaultCodecs;
174
+ }
175
+ });
176
+ Object.defineProperty(exports, "encodeConnectEnvelope", {
177
+ enumerable: true,
178
+ get: function () {
179
+ return _envelope.encodeConnectEnvelope;
180
+ }
181
+ });
182
+ exports.getDefaultMethodMap = getDefaultMethodMap;
183
+ Object.defineProperty(exports, "getErrorCode", {
184
+ enumerable: true,
185
+ get: function () {
186
+ return _errors.getErrorCode;
187
+ }
188
+ });
189
+ exports.getTransportCapabilities = getTransportCapabilities;
190
+ Object.defineProperty(exports, "installNativeGrpcBridgeFromNativeModule", {
191
+ enumerable: true,
192
+ get: function () {
193
+ return _nativeGrpc.installNativeGrpcBridgeFromNativeModule;
194
+ }
195
+ });
196
+ Object.defineProperty(exports, "isNativeGrpcAvailable", {
197
+ enumerable: true,
198
+ get: function () {
199
+ return _nativeGrpc.isNativeGrpcAvailable;
200
+ }
201
+ });
202
+ Object.defineProperty(exports, "isProtoClientError", {
203
+ enumerable: true,
204
+ get: function () {
205
+ return _errors.isProtoClientError;
206
+ }
207
+ });
208
+ Object.defineProperty(exports, "methodMap", {
209
+ enumerable: true,
210
+ get: function () {
211
+ return _methodMap.methodMap;
212
+ }
213
+ });
214
+ Object.defineProperty(exports, "pathFromTemplate", {
215
+ enumerable: true,
216
+ get: function () {
217
+ return _pathTemplates.pathFromTemplate;
218
+ }
219
+ });
220
+ Object.defineProperty(exports, "versionHeaders", {
221
+ enumerable: true,
222
+ get: function () {
223
+ return _versionCheck.versionHeaders;
224
+ }
225
+ });
226
+ Object.defineProperty(exports, "withZodValidation", {
227
+ enumerable: true,
228
+ get: function () {
229
+ return _zod.withZodValidation;
230
+ }
231
+ });
232
+ Object.defineProperty(exports, "wrapCodecRegistryWithZod", {
233
+ enumerable: true,
234
+ get: function () {
235
+ return _zod.wrapCodecRegistryWithZod;
236
+ }
237
+ });
238
+ var _clientFactory = require("./client-factory");
239
+ var _errors = require("./errors");
240
+ var _methodMap = require("./generated/method-map");
241
+ var _messages = require("./generated/messages");
242
+ var _nativeGrpc = require("./native-grpc");
243
+ var _codecs = require("./codecs");
244
+ var _interceptors = require("./interceptors");
245
+ var _auth = require("./auth");
246
+ var _logging = require("./logging");
247
+ var _offlineQueue = require("./offline-queue");
248
+ var _pathTemplates = require("./path-templates");
249
+ var _versionCheck = require("./version-check");
250
+ var _zod = require("./validation/zod");
251
+ var _envelope = require("./connect/envelope");
252
+ /**
253
+ * Create a dynamic API client from package method metadata + your app config.
254
+ *
255
+ * @example
256
+ * const api = createClient({
257
+ * baseUrl: 'https://api.example.com',
258
+ * getHeaders: () => ({ Authorization: `Bearer ${token}` }),
259
+ * });
260
+ * const user = await api.userService.getUser({ id: '1' });
261
+ */
262
+ function createClient(config) {
263
+ const map = config.methodMap ?? _methodMap.methodMap;
264
+ const codecs = config.codecs ?? _messages.defaultCodecs;
265
+ return (0, _clientFactory.createClientFromMap)(config, map, codecs);
266
+ }
267
+
268
+ /** Alias preferred in generated `create-api.ts` drop-ins. */
269
+ const createApi = exports.createApi = createClient;
270
+ function getDefaultMethodMap() {
271
+ return _methodMap.methodMap;
272
+ }
273
+ function getTransportCapabilities() {
274
+ return {
275
+ http: true,
276
+ connect: true,
277
+ connectStreaming: true,
278
+ nativeGrpc: (0, _nativeGrpc.isNativeGrpcAvailable)(),
279
+ interceptors: true,
280
+ mockServer: true
281
+ };
282
+ }
283
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_clientFactory","require","_errors","_methodMap","_messages","_nativeGrpc","_codecs","_interceptors","_auth","_logging","_offlineQueue","_pathTemplates","_versionCheck","_zod","_envelope","createClient","config","map","methodMap","codecs","defaultCodecs","createClientFromMap","createApi","exports","getDefaultMethodMap","getTransportCapabilities","http","connect","connectStreaming","nativeGrpc","isNativeGrpcAvailable","interceptors","mockServer"],"sourceRoot":"../../src","sources":["index.ts"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,IAAAA,cAAA,GAAAC,OAAA;AACA,IAAAC,OAAA,GAAAD,OAAA;AACA,IAAAE,UAAA,GAAAF,OAAA;AACA,IAAAG,SAAA,GAAAH,OAAA;AACA,IAAAI,WAAA,GAAAJ,OAAA;AA8BA,IAAAK,OAAA,GAAAL,OAAA;AACA,IAAAM,aAAA,GAAAN,OAAA;AACA,IAAAO,KAAA,GAAAP,OAAA;AACA,IAAAQ,QAAA,GAAAR,OAAA;AACA,IAAAS,aAAA,GAAAT,OAAA;AACA,IAAAU,cAAA,GAAAV,OAAA;AACA,IAAAW,aAAA,GAAAX,OAAA;AAUA,IAAAY,IAAA,GAAAZ,OAAA;AACA,IAAAa,SAAA,GAAAb,OAAA;AA6BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACO,SAASc,YAAYA,CAACC,MAA2B,EAAe;EACrE,MAAMC,GAAG,GAAGD,MAAM,CAACE,SAAS,IAAIA,oBAAS;EACzC,MAAMC,MAAM,GAAGH,MAAM,CAACG,MAAM,IAAIC,uBAAa;EAC7C,OAAO,IAAAC,kCAAmB,EAACL,MAAM,EAAEC,GAAG,EAAEE,MAAM,CAAC;AACjD;;AAEA;AACO,MAAMG,SAAS,GAAAC,OAAA,CAAAD,SAAA,GAAGP,YAAY;AAE9B,SAASS,mBAAmBA,CAAA,EAAc;EAC/C,OAAON,oBAAS;AAClB;AAEO,SAASO,wBAAwBA,CAAA,EAAG;EACzC,OAAO;IACLC,IAAI,EAAE,IAAI;IACVC,OAAO,EAAE,IAAI;IACbC,gBAAgB,EAAE,IAAI;IACtBC,UAAU,EAAE,IAAAC,iCAAqB,EAAC,CAAC;IACnCC,YAAY,EAAE,IAAI;IAClBC,UAAU,EAAE;EACd,CAAC;AACH","ignoreList":[]}
@@ -0,0 +1,19 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.composeInterceptors = composeInterceptors;
7
+ /**
8
+ * Interceptor around a unary RPC. Call `next(ctx)` to continue the chain.
9
+ */
10
+
11
+ /**
12
+ * Compose interceptors left-to-outer (first runs first on the way in).
13
+ */
14
+ function composeInterceptors(interceptors, core) {
15
+ return interceptors.reduceRight((next, interceptor) => {
16
+ return ctx => interceptor(ctx, next);
17
+ }, core);
18
+ }
19
+ //# sourceMappingURL=interceptors.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["composeInterceptors","interceptors","core","reduceRight","next","interceptor","ctx"],"sourceRoot":"../../src","sources":["interceptors.ts"],"mappings":";;;;;;AAaA;AACA;AACA;;AAMA;AACA;AACA;AACO,SAASA,mBAAmBA,CACjCC,YAA2B,EAC3BC,IAAkB,EACJ;EACd,OAAOD,YAAY,CAACE,WAAW,CAAe,CAACC,IAAI,EAAEC,WAAW,KAAK;IACnE,OAAQC,GAAG,IAAKD,WAAW,CAACC,GAAG,EAAEF,IAAI,CAAC;EACxC,CAAC,EAAEF,IAAI,CAAC;AACV","ignoreList":[]}
@@ -0,0 +1,54 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.createLoggingInterceptor = createLoggingInterceptor;
7
+ function redact(headers, names) {
8
+ const blocked = new Set(names.map(n => n.toLowerCase()));
9
+ const out = {};
10
+ const keys = Object.keys(headers);
11
+ for (let i = 0; i < keys.length; i += 1) {
12
+ const key = keys[i];
13
+ if (!key) continue;
14
+ out[key] = blocked.has(key.toLowerCase()) ? '[redacted]' : headers[key];
15
+ }
16
+ return out;
17
+ }
18
+
19
+ /**
20
+ * Request/response logging interceptor for debug builds.
21
+ */
22
+ function createLoggingInterceptor(options = {}) {
23
+ const log = options.log ?? ((msg, meta) => console.debug(msg, meta));
24
+ const redactHeaders = options.redactHeaders ?? ['authorization', 'cookie', 'set-cookie'];
25
+ return async (ctx, next) => {
26
+ const started = Date.now();
27
+ log('proto:request', {
28
+ rpcPath: ctx.entry.rpcPath,
29
+ headers: redact(ctx.headers, redactHeaders),
30
+ ...(options.logRequestBody ? {
31
+ request: ctx.request
32
+ } : {})
33
+ });
34
+ try {
35
+ const response = await next(ctx);
36
+ log('proto:response', {
37
+ rpcPath: ctx.entry.rpcPath,
38
+ durationMs: Date.now() - started,
39
+ ...(options.logResponseBody ? {
40
+ response
41
+ } : {})
42
+ });
43
+ return response;
44
+ } catch (error) {
45
+ log('proto:error', {
46
+ rpcPath: ctx.entry.rpcPath,
47
+ durationMs: Date.now() - started,
48
+ error
49
+ });
50
+ throw error;
51
+ }
52
+ };
53
+ }
54
+ //# sourceMappingURL=logging.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["redact","headers","names","blocked","Set","map","n","toLowerCase","out","keys","Object","i","length","key","has","createLoggingInterceptor","options","log","msg","meta","console","debug","redactHeaders","ctx","next","started","Date","now","rpcPath","entry","logRequestBody","request","response","durationMs","logResponseBody","error"],"sourceRoot":"../../src","sources":["logging.ts"],"mappings":";;;;;;AAaA,SAASA,MAAMA,CACbC,OAA+B,EAC/BC,KAAe,EACS;EACxB,MAAMC,OAAO,GAAG,IAAIC,GAAG,CAACF,KAAK,CAACG,GAAG,CAAEC,CAAC,IAAKA,CAAC,CAACC,WAAW,CAAC,CAAC,CAAC,CAAC;EAC1D,MAAMC,GAA2B,GAAG,CAAC,CAAC;EACtC,MAAMC,IAAI,GAAGC,MAAM,CAACD,IAAI,CAACR,OAAO,CAAC;EACjC,KAAK,IAAIU,CAAC,GAAG,CAAC,EAAEA,CAAC,GAAGF,IAAI,CAACG,MAAM,EAAED,CAAC,IAAI,CAAC,EAAE;IACvC,MAAME,GAAG,GAAGJ,IAAI,CAACE,CAAC,CAAC;IACnB,IAAI,CAACE,GAAG,EAAE;IACVL,GAAG,CAACK,GAAG,CAAC,GAAGV,OAAO,CAACW,GAAG,CAACD,GAAG,CAACN,WAAW,CAAC,CAAC,CAAC,GAAG,YAAY,GAAGN,OAAO,CAACY,GAAG,CAAE;EAC1E;EACA,OAAOL,GAAG;AACZ;;AAEA;AACA;AACA;AACO,SAASO,wBAAwBA,CACtCC,OAAuB,GAAG,CAAC,CAAC,EACf;EACb,MAAMC,GAAG,GAAGD,OAAO,CAACC,GAAG,KAAK,CAACC,GAAG,EAAEC,IAAI,KAAKC,OAAO,CAACC,KAAK,CAACH,GAAG,EAAEC,IAAI,CAAC,CAAC;EACpE,MAAMG,aAAa,GAAGN,OAAO,CAACM,aAAa,IAAI,CAC7C,eAAe,EACf,QAAQ,EACR,YAAY,CACb;EAED,OAAO,OAAOC,GAAG,EAAEC,IAAI,KAAK;IAC1B,MAAMC,OAAO,GAAGC,IAAI,CAACC,GAAG,CAAC,CAAC;IAC1BV,GAAG,CAAC,eAAe,EAAE;MACnBW,OAAO,EAAEL,GAAG,CAACM,KAAK,CAACD,OAAO;MAC1B3B,OAAO,EAAED,MAAM,CAACuB,GAAG,CAACtB,OAAO,EAAEqB,aAAa,CAAC;MAC3C,IAAIN,OAAO,CAACc,cAAc,GAAG;QAAEC,OAAO,EAAER,GAAG,CAACQ;MAAQ,CAAC,GAAG,CAAC,CAAC;IAC5D,CAAC,CAAC;IAEF,IAAI;MACF,MAAMC,QAAQ,GAAG,MAAMR,IAAI,CAACD,GAAG,CAAC;MAChCN,GAAG,CAAC,gBAAgB,EAAE;QACpBW,OAAO,EAAEL,GAAG,CAACM,KAAK,CAACD,OAAO;QAC1BK,UAAU,EAAEP,IAAI,CAACC,GAAG,CAAC,CAAC,GAAGF,OAAO;QAChC,IAAIT,OAAO,CAACkB,eAAe,GAAG;UAAEF;QAAS,CAAC,GAAG,CAAC,CAAC;MACjD,CAAC,CAAC;MACF,OAAOA,QAAQ;IACjB,CAAC,CAAC,OAAOG,KAAK,EAAE;MACdlB,GAAG,CAAC,aAAa,EAAE;QACjBW,OAAO,EAAEL,GAAG,CAACM,KAAK,CAACD,OAAO;QAC1BK,UAAU,EAAEP,IAAI,CAACC,GAAG,CAAC,CAAC,GAAGF,OAAO;QAChCU;MACF,CAAC,CAAC;MACF,MAAMA,KAAK;IACb;EACF,CAAC;AACH","ignoreList":[]}