@intoss/shared 0.0.15 → 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/dist/index.mjs +839 -0
- package/package.json +5 -3
- package/dist/index.js +0 -1
- /package/dist/{index.d.ts → index.d.mts} +0 -0
package/dist/index.mjs
ADDED
|
@@ -0,0 +1,839 @@
|
|
|
1
|
+
// src/config/ConfigContext/ConfigContext.tsx
|
|
2
|
+
function _array_like_to_array(arr, len) {
|
|
3
|
+
if (len == null || len > arr.length) len = arr.length;
|
|
4
|
+
for(var i = 0, arr2 = new Array(len); i < len; i++)arr2[i] = arr[i];
|
|
5
|
+
return arr2;
|
|
6
|
+
}
|
|
7
|
+
function _array_with_holes(arr) {
|
|
8
|
+
if (Array.isArray(arr)) return arr;
|
|
9
|
+
}
|
|
10
|
+
function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) {
|
|
11
|
+
try {
|
|
12
|
+
var info = gen[key](arg);
|
|
13
|
+
var value = info.value;
|
|
14
|
+
} catch (error) {
|
|
15
|
+
reject(error);
|
|
16
|
+
return;
|
|
17
|
+
}
|
|
18
|
+
if (info.done) {
|
|
19
|
+
resolve(value);
|
|
20
|
+
} else {
|
|
21
|
+
Promise.resolve(value).then(_next, _throw);
|
|
22
|
+
}
|
|
23
|
+
}
|
|
24
|
+
function _async_to_generator(fn) {
|
|
25
|
+
return function() {
|
|
26
|
+
var self = this, args = arguments;
|
|
27
|
+
return new Promise(function(resolve, reject) {
|
|
28
|
+
var gen = fn.apply(self, args);
|
|
29
|
+
function _next(value) {
|
|
30
|
+
asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value);
|
|
31
|
+
}
|
|
32
|
+
function _throw(err) {
|
|
33
|
+
asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err);
|
|
34
|
+
}
|
|
35
|
+
_next(undefined);
|
|
36
|
+
});
|
|
37
|
+
};
|
|
38
|
+
}
|
|
39
|
+
function _define_property(obj, key, value) {
|
|
40
|
+
if (key in obj) {
|
|
41
|
+
Object.defineProperty(obj, key, {
|
|
42
|
+
value: value,
|
|
43
|
+
enumerable: true,
|
|
44
|
+
configurable: true,
|
|
45
|
+
writable: true
|
|
46
|
+
});
|
|
47
|
+
} else {
|
|
48
|
+
obj[key] = value;
|
|
49
|
+
}
|
|
50
|
+
return obj;
|
|
51
|
+
}
|
|
52
|
+
function _iterable_to_array_limit(arr, i) {
|
|
53
|
+
var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"];
|
|
54
|
+
if (_i == null) return;
|
|
55
|
+
var _arr = [];
|
|
56
|
+
var _n = true;
|
|
57
|
+
var _d = false;
|
|
58
|
+
var _s, _e;
|
|
59
|
+
try {
|
|
60
|
+
for(_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true){
|
|
61
|
+
_arr.push(_s.value);
|
|
62
|
+
if (i && _arr.length === i) break;
|
|
63
|
+
}
|
|
64
|
+
} catch (err) {
|
|
65
|
+
_d = true;
|
|
66
|
+
_e = err;
|
|
67
|
+
} finally{
|
|
68
|
+
try {
|
|
69
|
+
if (!_n && _i["return"] != null) _i["return"]();
|
|
70
|
+
} finally{
|
|
71
|
+
if (_d) throw _e;
|
|
72
|
+
}
|
|
73
|
+
}
|
|
74
|
+
return _arr;
|
|
75
|
+
}
|
|
76
|
+
function _non_iterable_rest() {
|
|
77
|
+
throw new TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
|
|
78
|
+
}
|
|
79
|
+
function _object_spread(target) {
|
|
80
|
+
for(var i = 1; i < arguments.length; i++){
|
|
81
|
+
var source = arguments[i] != null ? arguments[i] : {};
|
|
82
|
+
var ownKeys = Object.keys(source);
|
|
83
|
+
if (typeof Object.getOwnPropertySymbols === "function") {
|
|
84
|
+
ownKeys = ownKeys.concat(Object.getOwnPropertySymbols(source).filter(function(sym) {
|
|
85
|
+
return Object.getOwnPropertyDescriptor(source, sym).enumerable;
|
|
86
|
+
}));
|
|
87
|
+
}
|
|
88
|
+
ownKeys.forEach(function(key) {
|
|
89
|
+
_define_property(target, key, source[key]);
|
|
90
|
+
});
|
|
91
|
+
}
|
|
92
|
+
return target;
|
|
93
|
+
}
|
|
94
|
+
function ownKeys(object, enumerableOnly) {
|
|
95
|
+
var keys = Object.keys(object);
|
|
96
|
+
if (Object.getOwnPropertySymbols) {
|
|
97
|
+
var symbols = Object.getOwnPropertySymbols(object);
|
|
98
|
+
if (enumerableOnly) {
|
|
99
|
+
symbols = symbols.filter(function(sym) {
|
|
100
|
+
return Object.getOwnPropertyDescriptor(object, sym).enumerable;
|
|
101
|
+
});
|
|
102
|
+
}
|
|
103
|
+
keys.push.apply(keys, symbols);
|
|
104
|
+
}
|
|
105
|
+
return keys;
|
|
106
|
+
}
|
|
107
|
+
function _object_spread_props(target, source) {
|
|
108
|
+
source = source != null ? source : {};
|
|
109
|
+
if (Object.getOwnPropertyDescriptors) {
|
|
110
|
+
Object.defineProperties(target, Object.getOwnPropertyDescriptors(source));
|
|
111
|
+
} else {
|
|
112
|
+
ownKeys(Object(source)).forEach(function(key) {
|
|
113
|
+
Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key));
|
|
114
|
+
});
|
|
115
|
+
}
|
|
116
|
+
return target;
|
|
117
|
+
}
|
|
118
|
+
function _sliced_to_array(arr, i) {
|
|
119
|
+
return _array_with_holes(arr) || _iterable_to_array_limit(arr, i) || _unsupported_iterable_to_array(arr, i) || _non_iterable_rest();
|
|
120
|
+
}
|
|
121
|
+
function _type_of(obj) {
|
|
122
|
+
"@swc/helpers - typeof";
|
|
123
|
+
return obj && typeof Symbol !== "undefined" && obj.constructor === Symbol ? "symbol" : typeof obj;
|
|
124
|
+
}
|
|
125
|
+
function _unsupported_iterable_to_array(o, minLen) {
|
|
126
|
+
if (!o) return;
|
|
127
|
+
if (typeof o === "string") return _array_like_to_array(o, minLen);
|
|
128
|
+
var n = Object.prototype.toString.call(o).slice(8, -1);
|
|
129
|
+
if (n === "Object" && o.constructor) n = o.constructor.name;
|
|
130
|
+
if (n === "Map" || n === "Set") return Array.from(n);
|
|
131
|
+
if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array(o, minLen);
|
|
132
|
+
}
|
|
133
|
+
function _ts_generator(thisArg, body) {
|
|
134
|
+
var f, y, t, g, _ = {
|
|
135
|
+
label: 0,
|
|
136
|
+
sent: function() {
|
|
137
|
+
if (t[0] & 1) throw t[1];
|
|
138
|
+
return t[1];
|
|
139
|
+
},
|
|
140
|
+
trys: [],
|
|
141
|
+
ops: []
|
|
142
|
+
};
|
|
143
|
+
return g = {
|
|
144
|
+
next: verb(0),
|
|
145
|
+
"throw": verb(1),
|
|
146
|
+
"return": verb(2)
|
|
147
|
+
}, typeof Symbol === "function" && (g[Symbol.iterator] = function() {
|
|
148
|
+
return this;
|
|
149
|
+
}), g;
|
|
150
|
+
function verb(n) {
|
|
151
|
+
return function(v) {
|
|
152
|
+
return step([
|
|
153
|
+
n,
|
|
154
|
+
v
|
|
155
|
+
]);
|
|
156
|
+
};
|
|
157
|
+
}
|
|
158
|
+
function step(op) {
|
|
159
|
+
if (f) throw new TypeError("Generator is already executing.");
|
|
160
|
+
while(_)try {
|
|
161
|
+
if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
|
|
162
|
+
if (y = 0, t) op = [
|
|
163
|
+
op[0] & 2,
|
|
164
|
+
t.value
|
|
165
|
+
];
|
|
166
|
+
switch(op[0]){
|
|
167
|
+
case 0:
|
|
168
|
+
case 1:
|
|
169
|
+
t = op;
|
|
170
|
+
break;
|
|
171
|
+
case 4:
|
|
172
|
+
_.label++;
|
|
173
|
+
return {
|
|
174
|
+
value: op[1],
|
|
175
|
+
done: false
|
|
176
|
+
};
|
|
177
|
+
case 5:
|
|
178
|
+
_.label++;
|
|
179
|
+
y = op[1];
|
|
180
|
+
op = [
|
|
181
|
+
0
|
|
182
|
+
];
|
|
183
|
+
continue;
|
|
184
|
+
case 7:
|
|
185
|
+
op = _.ops.pop();
|
|
186
|
+
_.trys.pop();
|
|
187
|
+
continue;
|
|
188
|
+
default:
|
|
189
|
+
if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) {
|
|
190
|
+
_ = 0;
|
|
191
|
+
continue;
|
|
192
|
+
}
|
|
193
|
+
if (op[0] === 3 && (!t || op[1] > t[0] && op[1] < t[3])) {
|
|
194
|
+
_.label = op[1];
|
|
195
|
+
break;
|
|
196
|
+
}
|
|
197
|
+
if (op[0] === 6 && _.label < t[1]) {
|
|
198
|
+
_.label = t[1];
|
|
199
|
+
t = op;
|
|
200
|
+
break;
|
|
201
|
+
}
|
|
202
|
+
if (t && _.label < t[2]) {
|
|
203
|
+
_.label = t[2];
|
|
204
|
+
_.ops.push(op);
|
|
205
|
+
break;
|
|
206
|
+
}
|
|
207
|
+
if (t[2]) _.ops.pop();
|
|
208
|
+
_.trys.pop();
|
|
209
|
+
continue;
|
|
210
|
+
}
|
|
211
|
+
op = body.call(thisArg, _);
|
|
212
|
+
} catch (e) {
|
|
213
|
+
op = [
|
|
214
|
+
6,
|
|
215
|
+
e
|
|
216
|
+
];
|
|
217
|
+
y = 0;
|
|
218
|
+
} finally{
|
|
219
|
+
f = t = 0;
|
|
220
|
+
}
|
|
221
|
+
if (op[0] & 5) throw op[1];
|
|
222
|
+
return {
|
|
223
|
+
value: op[0] ? op[1] : void 0,
|
|
224
|
+
done: true
|
|
225
|
+
};
|
|
226
|
+
}
|
|
227
|
+
}
|
|
228
|
+
import { createContext, useContext, useMemo } from "react";
|
|
229
|
+
// src/config/ConfigContext/constant.ts
|
|
230
|
+
import { getOperationalEnvironment, getSchemeUri } from "@apps-in-toss/framework";
|
|
231
|
+
var RUNNING_ENVIRONMENT = getOperationalEnvironment() === "sandbox" ? "local" : getSchemeUri().startsWith("intoss-private") ? "preview" : "production";
|
|
232
|
+
var API_ENDPOINT = {
|
|
233
|
+
local: "http://localhost:3000",
|
|
234
|
+
preview: "https://preview-api.intoss.app",
|
|
235
|
+
production: "https://api.intoss.app"
|
|
236
|
+
}[RUNNING_ENVIRONMENT];
|
|
237
|
+
// src/config/ConfigContext/ConfigContext.tsx
|
|
238
|
+
import { jsx } from "react/jsx-runtime";
|
|
239
|
+
var ConfigContext = createContext({
|
|
240
|
+
appName: "",
|
|
241
|
+
apiEndpoint: "http://localhost:3000",
|
|
242
|
+
runningEnvironment: "local"
|
|
243
|
+
});
|
|
244
|
+
var ConfigProvider = function(param) {
|
|
245
|
+
var appName = param.appName, children = param.children;
|
|
246
|
+
var contextValue = useMemo(function() {
|
|
247
|
+
return {
|
|
248
|
+
appName: appName,
|
|
249
|
+
apiEndpoint: API_ENDPOINT,
|
|
250
|
+
runningEnvironment: RUNNING_ENVIRONMENT
|
|
251
|
+
};
|
|
252
|
+
}, [
|
|
253
|
+
appName
|
|
254
|
+
]);
|
|
255
|
+
return /* @__PURE__ */ jsx(ConfigContext.Provider, {
|
|
256
|
+
value: contextValue,
|
|
257
|
+
children: children
|
|
258
|
+
});
|
|
259
|
+
};
|
|
260
|
+
var useConfig = function() {
|
|
261
|
+
return useContext(ConfigContext);
|
|
262
|
+
};
|
|
263
|
+
// src/advertisement/AdGroupContext/AdGroupContext.tsx
|
|
264
|
+
import { createContext as createContext2, useCallback, useContext as useContext2, useEffect, useMemo as useMemo2, useState } from "react";
|
|
265
|
+
import { jsx as jsx2 } from "react/jsx-runtime";
|
|
266
|
+
var AdGroupContext = createContext2({
|
|
267
|
+
getInterstitialAdGroup: function() {
|
|
268
|
+
return {
|
|
269
|
+
id: "ait-ad-test-interstitial-id",
|
|
270
|
+
type: "interstitial"
|
|
271
|
+
};
|
|
272
|
+
},
|
|
273
|
+
getRewardedAdGroup: function() {
|
|
274
|
+
return {
|
|
275
|
+
id: "ait-ad-test-rewarded-id",
|
|
276
|
+
type: "rewarded"
|
|
277
|
+
};
|
|
278
|
+
}
|
|
279
|
+
});
|
|
280
|
+
var AdGroupProvider = function(param) {
|
|
281
|
+
var initial = param.initial, children = param.children;
|
|
282
|
+
var _useConfig = useConfig(), appName = _useConfig.appName, runningEnvironment = _useConfig.runningEnvironment;
|
|
283
|
+
var _useState = _sliced_to_array(useState(runningEnvironment !== "production"), 2), initialized = _useState[0], setInitialized = _useState[1];
|
|
284
|
+
var _useState1 = _sliced_to_array(useState(initial), 2), adGroupList = _useState1[0], setAdGroupList = _useState1[1];
|
|
285
|
+
var getInterstitialAdGroup = useCallback(function(key) {
|
|
286
|
+
var _adGroupList_key;
|
|
287
|
+
return {
|
|
288
|
+
id: (_adGroupList_key = adGroupList[key]) !== null && _adGroupList_key !== void 0 ? _adGroupList_key : "ait-ad-test-interstitial-id",
|
|
289
|
+
type: "interstitial"
|
|
290
|
+
};
|
|
291
|
+
}, [
|
|
292
|
+
adGroupList
|
|
293
|
+
]);
|
|
294
|
+
var getRewardedAdGroup = useCallback(function(key) {
|
|
295
|
+
var _adGroupList_key;
|
|
296
|
+
return {
|
|
297
|
+
id: (_adGroupList_key = adGroupList[key]) !== null && _adGroupList_key !== void 0 ? _adGroupList_key : "ait-ad-test-rewarded-id",
|
|
298
|
+
type: "rewarded"
|
|
299
|
+
};
|
|
300
|
+
}, [
|
|
301
|
+
adGroupList
|
|
302
|
+
]);
|
|
303
|
+
var contextValue = useMemo2(function() {
|
|
304
|
+
return {
|
|
305
|
+
getInterstitialAdGroup: getInterstitialAdGroup,
|
|
306
|
+
getRewardedAdGroup: getRewardedAdGroup
|
|
307
|
+
};
|
|
308
|
+
}, [
|
|
309
|
+
getInterstitialAdGroup,
|
|
310
|
+
getRewardedAdGroup
|
|
311
|
+
]);
|
|
312
|
+
useEffect(function() {
|
|
313
|
+
if (initialized) {
|
|
314
|
+
return;
|
|
315
|
+
}
|
|
316
|
+
var controller = new AbortController();
|
|
317
|
+
var timeoutId = setTimeout(function() {
|
|
318
|
+
return controller.abort();
|
|
319
|
+
}, 3e3);
|
|
320
|
+
fetch("https://static.intoss.app/".concat(appName, "/assets/adGroupList.json"), {
|
|
321
|
+
signal: controller.signal
|
|
322
|
+
}).then(function(res) {
|
|
323
|
+
return res.json();
|
|
324
|
+
}).then(setAdGroupList).finally(function() {
|
|
325
|
+
clearTimeout(timeoutId);
|
|
326
|
+
setInitialized(true);
|
|
327
|
+
});
|
|
328
|
+
}, [
|
|
329
|
+
appName,
|
|
330
|
+
initialized
|
|
331
|
+
]);
|
|
332
|
+
if (!initialized) {
|
|
333
|
+
return null;
|
|
334
|
+
}
|
|
335
|
+
return /* @__PURE__ */ jsx2(AdGroupContext.Provider, {
|
|
336
|
+
value: contextValue,
|
|
337
|
+
children: children
|
|
338
|
+
});
|
|
339
|
+
};
|
|
340
|
+
var useAdGroup = function() {
|
|
341
|
+
return useContext2(AdGroupContext);
|
|
342
|
+
};
|
|
343
|
+
// src/advertisement/useAdvertisement/useAdvertisement.ts
|
|
344
|
+
import { GoogleAdMob } from "@apps-in-toss/framework";
|
|
345
|
+
import { useCallback as useCallback2, useEffect as useEffect2, useState as useState2 } from "react";
|
|
346
|
+
var useAdvertisement = function(param) {
|
|
347
|
+
var primaryAdGroup = param.primaryAdGroup, secondaryAdGroup = param.secondaryAdGroup, onShowAd = param.onShowAd, onDissmissAd = param.onDissmissAd;
|
|
348
|
+
var _useState2 = _sliced_to_array(useState2(false), 2), initialized = _useState2[0], setInitialized = _useState2[1];
|
|
349
|
+
var _useState21 = _sliced_to_array(useState2(false), 2), adLoaded = _useState21[0], setAdLoaded = _useState21[1];
|
|
350
|
+
var _useState22 = _sliced_to_array(useState2(), 2), adGroupId = _useState22[0], setAdGroupId = _useState22[1];
|
|
351
|
+
var _useState23 = _sliced_to_array(useState2(null), 2), adCleanup = _useState23[0], setAdCleanup = _useState23[1];
|
|
352
|
+
var loadAd = useCallback2(function(adGroupId2) {
|
|
353
|
+
return new Promise(function(resolve) {
|
|
354
|
+
var cleanup = GoogleAdMob.loadAppsInTossAdMob({
|
|
355
|
+
options: {
|
|
356
|
+
adGroupId: adGroupId2
|
|
357
|
+
},
|
|
358
|
+
onEvent: function(event) {
|
|
359
|
+
switch(event.type){
|
|
360
|
+
case "loaded":
|
|
361
|
+
resolve([
|
|
362
|
+
true,
|
|
363
|
+
cleanup
|
|
364
|
+
]);
|
|
365
|
+
break;
|
|
366
|
+
}
|
|
367
|
+
},
|
|
368
|
+
onError: function() {
|
|
369
|
+
return resolve([
|
|
370
|
+
false,
|
|
371
|
+
cleanup
|
|
372
|
+
]);
|
|
373
|
+
}
|
|
374
|
+
});
|
|
375
|
+
});
|
|
376
|
+
}, []);
|
|
377
|
+
var loadWaterfall = useCallback2(/*#__PURE__*/ _async_to_generator(function() {
|
|
378
|
+
var _ref, primaryAdLoaded, primaryAdCleanup, _ref1, secondaryAdLoaded, secondaryAdCleanup;
|
|
379
|
+
return _ts_generator(this, function(_state) {
|
|
380
|
+
switch(_state.label){
|
|
381
|
+
case 0:
|
|
382
|
+
if (GoogleAdMob.loadAppsInTossAdMob.isSupported() !== true) {
|
|
383
|
+
setInitialized(true);
|
|
384
|
+
return [
|
|
385
|
+
2
|
|
386
|
+
];
|
|
387
|
+
}
|
|
388
|
+
if (adLoaded) {
|
|
389
|
+
return [
|
|
390
|
+
2
|
|
391
|
+
];
|
|
392
|
+
}
|
|
393
|
+
return [
|
|
394
|
+
4,
|
|
395
|
+
loadAd(primaryAdGroup.id)
|
|
396
|
+
];
|
|
397
|
+
case 1:
|
|
398
|
+
_ref = _sliced_to_array.apply(void 0, [
|
|
399
|
+
_state.sent(),
|
|
400
|
+
2
|
|
401
|
+
]), primaryAdLoaded = _ref[0], primaryAdCleanup = _ref[1];
|
|
402
|
+
if (primaryAdLoaded) {
|
|
403
|
+
setInitialized(true);
|
|
404
|
+
setAdLoaded(true);
|
|
405
|
+
setAdGroupId(primaryAdGroup.id);
|
|
406
|
+
setAdCleanup(function() {
|
|
407
|
+
return primaryAdCleanup;
|
|
408
|
+
});
|
|
409
|
+
return [
|
|
410
|
+
2
|
|
411
|
+
];
|
|
412
|
+
}
|
|
413
|
+
primaryAdCleanup();
|
|
414
|
+
if (!secondaryAdGroup) {
|
|
415
|
+
setInitialized(true);
|
|
416
|
+
return [
|
|
417
|
+
2
|
|
418
|
+
];
|
|
419
|
+
}
|
|
420
|
+
return [
|
|
421
|
+
4,
|
|
422
|
+
loadAd(secondaryAdGroup.id)
|
|
423
|
+
];
|
|
424
|
+
case 2:
|
|
425
|
+
_ref1 = _sliced_to_array.apply(void 0, [
|
|
426
|
+
_state.sent(),
|
|
427
|
+
2
|
|
428
|
+
]), secondaryAdLoaded = _ref1[0], secondaryAdCleanup = _ref1[1];
|
|
429
|
+
if (secondaryAdLoaded) {
|
|
430
|
+
setInitialized(true);
|
|
431
|
+
setAdLoaded(true);
|
|
432
|
+
setAdGroupId(secondaryAdGroup.id);
|
|
433
|
+
setAdCleanup(function() {
|
|
434
|
+
return secondaryAdCleanup;
|
|
435
|
+
});
|
|
436
|
+
return [
|
|
437
|
+
2
|
|
438
|
+
];
|
|
439
|
+
}
|
|
440
|
+
secondaryAdCleanup();
|
|
441
|
+
setInitialized(true);
|
|
442
|
+
return [
|
|
443
|
+
2
|
|
444
|
+
];
|
|
445
|
+
}
|
|
446
|
+
});
|
|
447
|
+
}), [
|
|
448
|
+
primaryAdGroup,
|
|
449
|
+
secondaryAdGroup,
|
|
450
|
+
adLoaded,
|
|
451
|
+
loadAd
|
|
452
|
+
]);
|
|
453
|
+
var cleanupAd = useCallback2(function() {
|
|
454
|
+
adCleanup === null || adCleanup === void 0 ? void 0 : adCleanup();
|
|
455
|
+
setAdLoaded(false);
|
|
456
|
+
setAdGroupId(void 0);
|
|
457
|
+
setAdCleanup(null);
|
|
458
|
+
}, [
|
|
459
|
+
adCleanup
|
|
460
|
+
]);
|
|
461
|
+
var showAd = useCallback2(function() {
|
|
462
|
+
if (GoogleAdMob.loadAppsInTossAdMob.isSupported() !== true) {
|
|
463
|
+
onShowAd === null || onShowAd === void 0 ? void 0 : onShowAd();
|
|
464
|
+
onDissmissAd === null || onDissmissAd === void 0 ? void 0 : onDissmissAd();
|
|
465
|
+
return;
|
|
466
|
+
}
|
|
467
|
+
if (!adLoaded || !adGroupId) {
|
|
468
|
+
onShowAd === null || onShowAd === void 0 ? void 0 : onShowAd();
|
|
469
|
+
onDissmissAd === null || onDissmissAd === void 0 ? void 0 : onDissmissAd();
|
|
470
|
+
return;
|
|
471
|
+
}
|
|
472
|
+
GoogleAdMob.showAppsInTossAdMob({
|
|
473
|
+
options: {
|
|
474
|
+
adGroupId: adGroupId
|
|
475
|
+
},
|
|
476
|
+
onEvent: function(event) {
|
|
477
|
+
switch(event.type){
|
|
478
|
+
case "show":
|
|
479
|
+
if (adGroupId === primaryAdGroup.id && primaryAdGroup.type === "interstitial" || adGroupId === (secondaryAdGroup === null || secondaryAdGroup === void 0 ? void 0 : secondaryAdGroup.id) && secondaryAdGroup.type === "interstitial") {
|
|
480
|
+
onShowAd === null || onShowAd === void 0 ? void 0 : onShowAd();
|
|
481
|
+
}
|
|
482
|
+
break;
|
|
483
|
+
case "failedToShow":
|
|
484
|
+
onShowAd === null || onShowAd === void 0 ? void 0 : onShowAd();
|
|
485
|
+
cleanupAd();
|
|
486
|
+
break;
|
|
487
|
+
case "dismissed":
|
|
488
|
+
onDissmissAd === null || onDissmissAd === void 0 ? void 0 : onDissmissAd();
|
|
489
|
+
cleanupAd();
|
|
490
|
+
break;
|
|
491
|
+
case "userEarnedReward":
|
|
492
|
+
onShowAd === null || onShowAd === void 0 ? void 0 : onShowAd();
|
|
493
|
+
break;
|
|
494
|
+
}
|
|
495
|
+
},
|
|
496
|
+
onError: function() {
|
|
497
|
+
onShowAd === null || onShowAd === void 0 ? void 0 : onShowAd();
|
|
498
|
+
cleanupAd();
|
|
499
|
+
}
|
|
500
|
+
});
|
|
501
|
+
}, [
|
|
502
|
+
adLoaded,
|
|
503
|
+
adGroupId,
|
|
504
|
+
primaryAdGroup,
|
|
505
|
+
secondaryAdGroup,
|
|
506
|
+
onShowAd,
|
|
507
|
+
onDissmissAd,
|
|
508
|
+
cleanupAd
|
|
509
|
+
]);
|
|
510
|
+
useEffect2(function() {
|
|
511
|
+
if (!adGroupId) {
|
|
512
|
+
loadWaterfall();
|
|
513
|
+
}
|
|
514
|
+
}, [
|
|
515
|
+
adGroupId,
|
|
516
|
+
loadWaterfall
|
|
517
|
+
]);
|
|
518
|
+
useEffect2(function() {
|
|
519
|
+
return function() {
|
|
520
|
+
return cleanupAd();
|
|
521
|
+
};
|
|
522
|
+
}, []);
|
|
523
|
+
return {
|
|
524
|
+
initialized: initialized,
|
|
525
|
+
adLoaded: adLoaded,
|
|
526
|
+
showAd: showAd
|
|
527
|
+
};
|
|
528
|
+
};
|
|
529
|
+
// src/auth-state/AuthStateContext/AuthStateContext.tsx
|
|
530
|
+
import { useQuery } from "@tanstack/react-query";
|
|
531
|
+
import { createContext as createContext3, useContext as useContext3, useMemo as useMemo3 } from "react";
|
|
532
|
+
import { jsx as jsx3 } from "react/jsx-runtime";
|
|
533
|
+
var AuthStateContext = createContext3({
|
|
534
|
+
isPreparing: true,
|
|
535
|
+
isLoggedIn: false,
|
|
536
|
+
retry: function() {
|
|
537
|
+
return Promise.resolve();
|
|
538
|
+
}
|
|
539
|
+
});
|
|
540
|
+
var AuthStateProvider = function(param) {
|
|
541
|
+
var children = param.children;
|
|
542
|
+
var _useQuery = useQuery({
|
|
543
|
+
queryKey: [
|
|
544
|
+
"/my/user"
|
|
545
|
+
]
|
|
546
|
+
}), data = _useQuery.data, isFetching = _useQuery.isFetching, refetch = _useQuery.refetch;
|
|
547
|
+
var contextValue = useMemo3(function() {
|
|
548
|
+
var _data_user;
|
|
549
|
+
return {
|
|
550
|
+
isPreparing: isFetching,
|
|
551
|
+
isLoggedIn: Boolean(data === null || data === void 0 ? void 0 : (_data_user = data.user) === null || _data_user === void 0 ? void 0 : _data_user.id),
|
|
552
|
+
retry: refetch
|
|
553
|
+
};
|
|
554
|
+
}, [
|
|
555
|
+
data,
|
|
556
|
+
isFetching,
|
|
557
|
+
refetch
|
|
558
|
+
]);
|
|
559
|
+
return /* @__PURE__ */ jsx3(AuthStateContext.Provider, {
|
|
560
|
+
value: contextValue,
|
|
561
|
+
children: children
|
|
562
|
+
});
|
|
563
|
+
};
|
|
564
|
+
var useAuthState = function() {
|
|
565
|
+
return useContext3(AuthStateContext);
|
|
566
|
+
};
|
|
567
|
+
// src/auth-state/useSignInWithToss/useSignInWithToss.ts
|
|
568
|
+
import { appLogin, Storage as Storage2 } from "@apps-in-toss/framework";
|
|
569
|
+
// src/query/FetcherContext/FetcherContext.tsx
|
|
570
|
+
import { Storage } from "@apps-in-toss/framework";
|
|
571
|
+
import { camelCase } from "es-toolkit/string";
|
|
572
|
+
import { createContext as createContext4, useCallback as useCallback3, useContext as useContext4, useEffect as useEffect3, useState as useState3 } from "react";
|
|
573
|
+
import { jsx as jsx4 } from "react/jsx-runtime";
|
|
574
|
+
var KEY_TOKEN = "@auth/token";
|
|
575
|
+
var FetcherContext = createContext4({
|
|
576
|
+
fetcher: fetch,
|
|
577
|
+
setToken: function() {
|
|
578
|
+
return null;
|
|
579
|
+
}
|
|
580
|
+
});
|
|
581
|
+
var camelizeKeys = function(input) {
|
|
582
|
+
if (Array.isArray(input)) {
|
|
583
|
+
return input.map(camelizeKeys);
|
|
584
|
+
}
|
|
585
|
+
if (input !== null && (typeof input === "undefined" ? "undefined" : _type_of(input)) === "object") {
|
|
586
|
+
return Object.fromEntries(Object.entries(input).map(function(param) {
|
|
587
|
+
var _param = _sliced_to_array(param, 2), key = _param[0], value = _param[1];
|
|
588
|
+
return [
|
|
589
|
+
camelCase(key),
|
|
590
|
+
camelizeKeys(value)
|
|
591
|
+
];
|
|
592
|
+
}));
|
|
593
|
+
}
|
|
594
|
+
return input;
|
|
595
|
+
};
|
|
596
|
+
var FetcherProvider = function(param) {
|
|
597
|
+
var baseUrl = param.baseUrl, children = param.children;
|
|
598
|
+
var _useConfig = useConfig(), appName = _useConfig.appName, apiEndpoint = _useConfig.apiEndpoint;
|
|
599
|
+
var _useState3 = _sliced_to_array(useState3(null), 2), token = _useState3[0], setToken = _useState3[1];
|
|
600
|
+
var _useState31 = _sliced_to_array(useState3(false), 2), initialized = _useState31[0], setInitialized = _useState31[1];
|
|
601
|
+
var fetcher = useCallback3(function(input, init) {
|
|
602
|
+
return fetch("".concat(baseUrl !== null && baseUrl !== void 0 ? baseUrl : apiEndpoint, "/").concat(appName).concat(input), _object_spread_props(_object_spread({}, init), {
|
|
603
|
+
headers: _object_spread({
|
|
604
|
+
"Content-Type": "application/json"
|
|
605
|
+
}, init === null || init === void 0 ? void 0 : init.headers, token ? {
|
|
606
|
+
Authorization: "Bearer ".concat(token)
|
|
607
|
+
} : {})
|
|
608
|
+
})).then(function(res) {
|
|
609
|
+
return res.json();
|
|
610
|
+
}).then(function(data) {
|
|
611
|
+
return camelizeKeys(data);
|
|
612
|
+
});
|
|
613
|
+
}, [
|
|
614
|
+
appName,
|
|
615
|
+
apiEndpoint,
|
|
616
|
+
token,
|
|
617
|
+
baseUrl
|
|
618
|
+
]);
|
|
619
|
+
useEffect3(function() {
|
|
620
|
+
Storage.getItem(KEY_TOKEN).then(setToken).finally(function() {
|
|
621
|
+
return setInitialized(true);
|
|
622
|
+
});
|
|
623
|
+
}, []);
|
|
624
|
+
return /* @__PURE__ */ jsx4(FetcherContext.Provider, {
|
|
625
|
+
value: {
|
|
626
|
+
fetcher: fetcher,
|
|
627
|
+
setToken: setToken
|
|
628
|
+
},
|
|
629
|
+
children: initialized ? children : null
|
|
630
|
+
});
|
|
631
|
+
};
|
|
632
|
+
var useFetcher = function() {
|
|
633
|
+
return useContext4(FetcherContext);
|
|
634
|
+
};
|
|
635
|
+
// src/view-model/bind/bind.ts
|
|
636
|
+
import { createElement, memo } from "react";
|
|
637
|
+
var bind = function(useViewModel, ViewComponent, options) {
|
|
638
|
+
var displayName = (options !== null && options !== void 0 ? options : {}).displayName;
|
|
639
|
+
var MemoizedViewComponent = memo(ViewComponent);
|
|
640
|
+
var Component = memo(function(props) {
|
|
641
|
+
return createElement(MemoizedViewComponent, useViewModel(props));
|
|
642
|
+
});
|
|
643
|
+
Component.ViewComponent = MemoizedViewComponent;
|
|
644
|
+
if (displayName) {
|
|
645
|
+
Component.displayName = displayName;
|
|
646
|
+
Component.ViewComponent.displayName = "".concat(displayName, "View");
|
|
647
|
+
}
|
|
648
|
+
return Component;
|
|
649
|
+
};
|
|
650
|
+
// src/query/QueryProvider/QueryProvider.tsx
|
|
651
|
+
import { QueryClientProvider } from "@tanstack/react-query";
|
|
652
|
+
// src/query/QueryProvider/useQueryProvider.ts
|
|
653
|
+
import { QueryClient } from "@tanstack/react-query";
|
|
654
|
+
import { useMemo as useMemo4 } from "react";
|
|
655
|
+
var useQueryProvider = function(param) {
|
|
656
|
+
var children = param.children;
|
|
657
|
+
var fetcher = useFetcher().fetcher;
|
|
658
|
+
var queryClient = useMemo4(function() {
|
|
659
|
+
return new QueryClient({
|
|
660
|
+
defaultOptions: {
|
|
661
|
+
queries: {
|
|
662
|
+
queryFn: function(param) {
|
|
663
|
+
var queryKey = param.queryKey;
|
|
664
|
+
return fetcher(queryKey[0]);
|
|
665
|
+
}
|
|
666
|
+
}
|
|
667
|
+
}
|
|
668
|
+
});
|
|
669
|
+
}, [
|
|
670
|
+
fetcher
|
|
671
|
+
]);
|
|
672
|
+
return {
|
|
673
|
+
queryClient: queryClient,
|
|
674
|
+
children: children
|
|
675
|
+
};
|
|
676
|
+
};
|
|
677
|
+
// src/query/QueryProvider/QueryProvider.tsx
|
|
678
|
+
import { jsx as jsx5 } from "react/jsx-runtime";
|
|
679
|
+
var QueryProvider = bind(useQueryProvider, function(param) {
|
|
680
|
+
var queryClient = param.queryClient, children = param.children;
|
|
681
|
+
return /* @__PURE__ */ jsx5(QueryClientProvider, {
|
|
682
|
+
client: queryClient,
|
|
683
|
+
children: children
|
|
684
|
+
});
|
|
685
|
+
});
|
|
686
|
+
// src/auth-state/useSignInWithToss/useSignInWithToss.ts
|
|
687
|
+
import { useMutation } from "@tanstack/react-query";
|
|
688
|
+
import { useCallback as useCallback4 } from "react";
|
|
689
|
+
var KEY_TOKEN2 = "@auth/token";
|
|
690
|
+
var useSignInWithToss = function(param) {
|
|
691
|
+
var onSuccess = param.onSuccess;
|
|
692
|
+
var retry = useAuthState().retry;
|
|
693
|
+
var _useFetcher = useFetcher(), fetcher = _useFetcher.fetcher, setToken = _useFetcher.setToken;
|
|
694
|
+
var signInWithTossMutation = useMutation({
|
|
695
|
+
mutationFn: function() {
|
|
696
|
+
var _ref = _async_to_generator(function(body) {
|
|
697
|
+
return _ts_generator(this, function(_state) {
|
|
698
|
+
return [
|
|
699
|
+
2,
|
|
700
|
+
fetcher("/my/sessions", {
|
|
701
|
+
method: "POST",
|
|
702
|
+
body: JSON.stringify(body)
|
|
703
|
+
})
|
|
704
|
+
];
|
|
705
|
+
});
|
|
706
|
+
});
|
|
707
|
+
return function(body) {
|
|
708
|
+
return _ref.apply(this, arguments);
|
|
709
|
+
};
|
|
710
|
+
}(),
|
|
711
|
+
onSuccess: function() {
|
|
712
|
+
var _ref = _async_to_generator(function(data) {
|
|
713
|
+
return _ts_generator(this, function(_state) {
|
|
714
|
+
switch(_state.label){
|
|
715
|
+
case 0:
|
|
716
|
+
setToken(data.token);
|
|
717
|
+
return [
|
|
718
|
+
4,
|
|
719
|
+
Storage2.setItem(KEY_TOKEN2, data.token)
|
|
720
|
+
];
|
|
721
|
+
case 1:
|
|
722
|
+
_state.sent();
|
|
723
|
+
return [
|
|
724
|
+
4,
|
|
725
|
+
retry()
|
|
726
|
+
];
|
|
727
|
+
case 2:
|
|
728
|
+
_state.sent();
|
|
729
|
+
onSuccess === null || onSuccess === void 0 ? void 0 : onSuccess();
|
|
730
|
+
return [
|
|
731
|
+
2
|
|
732
|
+
];
|
|
733
|
+
}
|
|
734
|
+
});
|
|
735
|
+
});
|
|
736
|
+
return function(data) {
|
|
737
|
+
return _ref.apply(this, arguments);
|
|
738
|
+
};
|
|
739
|
+
}()
|
|
740
|
+
});
|
|
741
|
+
var signInWithToss = useCallback4(/*#__PURE__*/ _async_to_generator(function() {
|
|
742
|
+
var _ref, authorizationCode, referrer;
|
|
743
|
+
return _ts_generator(this, function(_state) {
|
|
744
|
+
switch(_state.label){
|
|
745
|
+
case 0:
|
|
746
|
+
return [
|
|
747
|
+
4,
|
|
748
|
+
appLogin()
|
|
749
|
+
];
|
|
750
|
+
case 1:
|
|
751
|
+
_ref = _state.sent(), authorizationCode = _ref.authorizationCode, referrer = _ref.referrer;
|
|
752
|
+
signInWithTossMutation.mutate({
|
|
753
|
+
authorizationCode: authorizationCode,
|
|
754
|
+
referrer: referrer
|
|
755
|
+
});
|
|
756
|
+
return [
|
|
757
|
+
2
|
|
758
|
+
];
|
|
759
|
+
}
|
|
760
|
+
});
|
|
761
|
+
}), [
|
|
762
|
+
signInWithTossMutation
|
|
763
|
+
]);
|
|
764
|
+
return {
|
|
765
|
+
signInWithToss: signInWithToss,
|
|
766
|
+
isLoading: signInWithTossMutation.isPending
|
|
767
|
+
};
|
|
768
|
+
};
|
|
769
|
+
// src/calendar/calculateDay/calculateDay.ts
|
|
770
|
+
var MS_PER_DAY = 864e5;
|
|
771
|
+
var KST_OFFSET_MS = 324e5;
|
|
772
|
+
var calculateDay = function(timestamp) {
|
|
773
|
+
return Math.floor((timestamp + KST_OFFSET_MS) / MS_PER_DAY);
|
|
774
|
+
};
|
|
775
|
+
// src/calendar/calculateDayOfWeek/calculateDayOfWeek.ts
|
|
776
|
+
var KST_OFFSET_WEEKDAY = 3;
|
|
777
|
+
var calculateDayOfWeek = function(day) {
|
|
778
|
+
return (day + KST_OFFSET_WEEKDAY) % 7;
|
|
779
|
+
};
|
|
780
|
+
// src/calendar/calculateHour/calculateHour.ts
|
|
781
|
+
var MS_PER_DAY2 = 864e5;
|
|
782
|
+
var MS_PER_HOUR = 36e5;
|
|
783
|
+
var KST_OFFSET_MS2 = 324e5;
|
|
784
|
+
var calculateHour = function(timestamp) {
|
|
785
|
+
return Math.floor((timestamp + KST_OFFSET_MS2) % MS_PER_DAY2 / MS_PER_HOUR);
|
|
786
|
+
};
|
|
787
|
+
// src/calendar/calculateMinute/calculateMinute.ts
|
|
788
|
+
var MS_PER_HOUR2 = 36e5;
|
|
789
|
+
var MS_PER_MINUTE = 6e4;
|
|
790
|
+
var KST_OFFSET_MS3 = 324e5;
|
|
791
|
+
var calculateMinute = function(timestamp) {
|
|
792
|
+
return Math.floor((timestamp + KST_OFFSET_MS3) % MS_PER_HOUR2 / MS_PER_MINUTE);
|
|
793
|
+
};
|
|
794
|
+
// src/calendar/calculateWeek/calculateWeek.ts
|
|
795
|
+
var KST_OFFSET_WEEKDAY2 = 3;
|
|
796
|
+
var calculateWeek = function(day) {
|
|
797
|
+
return Math.floor((day + KST_OFFSET_WEEKDAY2) / 7);
|
|
798
|
+
};
|
|
799
|
+
// src/storage/useStorage/useStorage.ts
|
|
800
|
+
import { Storage as Storage3 } from "@apps-in-toss/framework";
|
|
801
|
+
import { useCallback as useCallback5, useEffect as useEffect4, useState as useState4 } from "react";
|
|
802
|
+
import { DeviceEventEmitter } from "react-native";
|
|
803
|
+
var useStorage = function(key) {
|
|
804
|
+
var _useState4 = _sliced_to_array(useState4(), 2), stateValue = _useState4[0], setStateValue = _useState4[1];
|
|
805
|
+
var _useState41 = _sliced_to_array(useState4(true), 2), isLoading = _useState41[0], setIsLoading = _useState41[1];
|
|
806
|
+
var updateValue = useCallback5(function(value) {
|
|
807
|
+
setStateValue(value);
|
|
808
|
+
DeviceEventEmitter.emit(key, value);
|
|
809
|
+
return Storage3.setItem(key, JSON.stringify({
|
|
810
|
+
value: value
|
|
811
|
+
}));
|
|
812
|
+
}, [
|
|
813
|
+
key
|
|
814
|
+
]);
|
|
815
|
+
useEffect4(function() {
|
|
816
|
+
setIsLoading(true);
|
|
817
|
+
Storage3.getItem(key).then(function(item) {
|
|
818
|
+
try {
|
|
819
|
+
setStateValue(item === null ? void 0 : JSON.parse(item).value);
|
|
820
|
+
} catch (e) {
|
|
821
|
+
setStateValue(void 0);
|
|
822
|
+
} finally{
|
|
823
|
+
setIsLoading(false);
|
|
824
|
+
}
|
|
825
|
+
});
|
|
826
|
+
var updateValueListener = DeviceEventEmitter.addListener(key, setStateValue);
|
|
827
|
+
return function() {
|
|
828
|
+
return updateValueListener.remove();
|
|
829
|
+
};
|
|
830
|
+
}, [
|
|
831
|
+
key
|
|
832
|
+
]);
|
|
833
|
+
return [
|
|
834
|
+
stateValue,
|
|
835
|
+
updateValue,
|
|
836
|
+
isLoading
|
|
837
|
+
];
|
|
838
|
+
};
|
|
839
|
+
export { AdGroupProvider, AuthStateProvider, ConfigProvider, FetcherProvider, QueryProvider, bind, calculateDay, calculateDayOfWeek, calculateHour, calculateMinute, calculateWeek, useAdGroup, useAdvertisement, useAuthState, useConfig, useFetcher, useSignInWithToss, useStorage };
|
package/package.json
CHANGED
|
@@ -1,8 +1,10 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@intoss/shared",
|
|
3
|
-
"version": "0.0.
|
|
4
|
-
"
|
|
5
|
-
"
|
|
3
|
+
"version": "0.0.17",
|
|
4
|
+
"type": "module",
|
|
5
|
+
"main": "dist/index.mjs",
|
|
6
|
+
"module": "dist/index.mjs",
|
|
7
|
+
"types": "dist/index.d.mts",
|
|
6
8
|
"files": [
|
|
7
9
|
"dist"
|
|
8
10
|
],
|
package/dist/index.js
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
"use strict";var k=Object.defineProperty,ve=Object.defineProperties,Me=Object.getOwnPropertyDescriptor,Fe=Object.getOwnPropertyDescriptors,Ve=Object.getOwnPropertyNames,ee=Object.getOwnPropertySymbols;var re=Object.prototype.hasOwnProperty,Se=Object.prototype.propertyIsEnumerable;var te=(e,r,t)=>r in e?k(e,r,{enumerable:!0,configurable:!0,writable:!0,value:t}):e[r]=t,b=(e,r)=>{for(var t in r||(r={}))re.call(r,t)&&te(e,t,r[t]);if(ee)for(var t of ee(r))Se.call(r,t)&&te(e,t,r[t]);return e},oe=(e,r)=>ve(e,Fe(r));var Ie=(e,r)=>{for(var t in r)k(e,t,{get:r[t],enumerable:!0})},Re=(e,r,t,o)=>{if(r&&typeof r=="object"||typeof r=="function")for(let n of Ve(r))!re.call(e,n)&&n!==t&&k(e,n,{get:()=>r[n],enumerable:!(o=Me(r,n))||o.enumerable});return e};var Oe=e=>Re(k({},"__esModule",{value:!0}),e);var y=(e,r,t)=>new Promise((o,n)=>{var s=a=>{try{p(t.next(a))}catch(d){n(d)}},i=a=>{try{p(t.throw(a))}catch(d){n(d)}},p=a=>a.done?o(a.value):Promise.resolve(a.value).then(s,i);p((t=t.apply(e,r)).next())});var Ne={};Ie(Ne,{AdGroupProvider:()=>L,AuthStateProvider:()=>G,ConfigProvider:()=>K,FetcherProvider:()=>A,QueryProvider:()=>q,bind:()=>S,calculateDay:()=>$,calculateDayOfWeek:()=>U,calculateHour:()=>D,calculateMinute:()=>J,calculateWeek:()=>j,useAdGroup:()=>z,useAdvertisement:()=>Y,useAuthState:()=>F,useConfig:()=>x,useFetcher:()=>C,useSignInWithToss:()=>H,useStorage:()=>Z});module.exports=Oe(Ne);var h=require("react");var N=require("@apps-in-toss/framework"),w=(0,N.getOperationalEnvironment)()==="sandbox"?"local":(0,N.getSchemeUri)().startsWith("intoss-private")?"preview":"production",ne={local:"http://localhost:3000",preview:"https://preview-api.intoss.app",production:"https://api.intoss.app"}[w];var se=require("react/jsx-runtime"),ie=(0,h.createContext)({appName:"",apiEndpoint:"http://localhost:3000",runningEnvironment:"local"}),K=({appName:e,children:r})=>{let t=(0,h.useMemo)(()=>({appName:e,apiEndpoint:ne,runningEnvironment:w}),[e]);return(0,se.jsx)(ie.Provider,{value:t,children:r})},x=()=>(0,h.useContext)(ie);var l=require("react"),pe=require("react/jsx-runtime"),ae=(0,l.createContext)({getInterstitialAdGroup:()=>({id:"ait-ad-test-interstitial-id",type:"interstitial"}),getRewardedAdGroup:()=>({id:"ait-ad-test-rewarded-id",type:"rewarded"})}),L=({initial:e,children:r})=>{let{appName:t,runningEnvironment:o}=x(),[n,s]=(0,l.useState)(o!=="production"),[i,p]=(0,l.useState)(e),a=(0,l.useCallback)(u=>{var m;return{id:(m=i[u])!=null?m:"ait-ad-test-interstitial-id",type:"interstitial"}},[i]),d=(0,l.useCallback)(u=>{var m;return{id:(m=i[u])!=null?m:"ait-ad-test-rewarded-id",type:"rewarded"}},[i]),f=(0,l.useMemo)(()=>({getInterstitialAdGroup:a,getRewardedAdGroup:d}),[a,d]);return(0,l.useEffect)(()=>{if(n)return;let u=new AbortController,m=setTimeout(()=>u.abort(),3e3);fetch(`https://static.intoss.app/${t}/assets/adGroupList.json`,{signal:u.signal}).then(I=>I.json()).then(p).finally(()=>{clearTimeout(m),s(!0)})},[t,n]),n?(0,pe.jsx)(ae.Provider,{value:f,children:r}):null},z=()=>(0,l.useContext)(ae);var M=require("@apps-in-toss/framework"),c=require("react");var Y=({primaryAdGroup:e,secondaryAdGroup:r,onShowAd:t,onDissmissAd:o})=>{let[n,s]=(0,c.useState)(!1),[i,p]=(0,c.useState)(!1),[a,d]=(0,c.useState)(),[f,u]=(0,c.useState)(null),m=(0,c.useCallback)(T=>new Promise(v=>{let R=M.GoogleAdMob.loadAppsInTossAdMob({options:{adGroupId:T},onEvent:O=>{switch(O.type){case"loaded":v([!0,R]);break}},onError:()=>v([!1,R])})}),[]),I=(0,c.useCallback)(()=>y(null,null,function*(){if(M.GoogleAdMob.loadAppsInTossAdMob.isSupported()!==!0){s(!0);return}if(i)return;let[T,v]=yield m(e.id);if(T){s(!0),p(!0),d(e.id),u(()=>v);return}if(v(),!r){s(!0);return}let[R,O]=yield m(r.id);if(R){s(!0),p(!0),d(r.id),u(()=>O);return}O(),s(!0)}),[e,r,i,m]),_=(0,c.useCallback)(()=>{f==null||f(),p(!1),d(void 0),u(null)},[f]),Te=(0,c.useCallback)(()=>{if(M.GoogleAdMob.loadAppsInTossAdMob.isSupported()!==!0){t==null||t(),o==null||o();return}if(!i||!a){t==null||t(),o==null||o();return}M.GoogleAdMob.showAppsInTossAdMob({options:{adGroupId:a},onEvent:T=>{switch(T.type){case"show":(a===e.id&&e.type==="interstitial"||a===(r==null?void 0:r.id)&&r.type==="interstitial")&&(t==null||t());break;case"failedToShow":t==null||t(),_();break;case"dismissed":o==null||o(),_();break;case"userEarnedReward":t==null||t();break}},onError:()=>{t==null||t(),_()}})},[i,a,e,r,t,o,_]);return(0,c.useEffect)(()=>{a||I()},[a,I]),(0,c.useEffect)(()=>()=>_(),[]),{initialized:n,adLoaded:i,showAd:Te}};var ue=require("@tanstack/react-query"),E=require("react"),ce=require("react/jsx-runtime"),le=(0,E.createContext)({isPreparing:!0,isLoggedIn:!1,retry:()=>Promise.resolve()}),G=({children:e})=>{let{data:r,isFetching:t,refetch:o}=(0,ue.useQuery)({queryKey:["/my/user"]}),n=(0,E.useMemo)(()=>{var s;return{isPreparing:t,isLoggedIn:!!((s=r==null?void 0:r.user)!=null&&s.id),retry:o}},[r,t,o]);return(0,ce.jsx)(le.Provider,{value:n,children:e})},F=()=>(0,E.useContext)(le);var W=require("@apps-in-toss/framework");var de=require("@apps-in-toss/framework");var fe=require("es-toolkit/string"),g=require("react");var ge=require("react/jsx-runtime"),ke="@auth/token",me=(0,g.createContext)({fetcher:fetch,setToken:()=>null}),Q=e=>Array.isArray(e)?e.map(Q):e!==null&&typeof e=="object"?Object.fromEntries(Object.entries(e).map(([r,t])=>[(0,fe.camelCase)(r),Q(t)])):e,A=({baseUrl:e,children:r})=>{let{appName:t,apiEndpoint:o}=x(),[n,s]=(0,g.useState)(null),[i,p]=(0,g.useState)(!1),a=(0,g.useCallback)((d,f)=>fetch(`${e!=null?e:o}/${t}${d}`,oe(b({},f),{headers:b(b({"Content-Type":"application/json"},f==null?void 0:f.headers),n?{Authorization:`Bearer ${n}`}:{})})).then(u=>u.json()).then(u=>Q(u)),[t,o,n,e]);return(0,g.useEffect)(()=>{de.Storage.getItem(ke).then(s).finally(()=>p(!0))},[]),(0,ge.jsx)(me.Provider,{value:{fetcher:a,setToken:s},children:i?r:null})},C=()=>(0,g.useContext)(me);var V=require("react"),S=(e,r,t)=>{let{displayName:o}=t!=null?t:{},n=(0,V.memo)(r),s=(0,V.memo)(i=>(0,V.createElement)(n,e(i)));return s.ViewComponent=n,o&&(s.displayName=o,s.ViewComponent.displayName=`${o}View`),s};var ye=require("@tanstack/react-query");var xe=require("@tanstack/react-query"),Ce=require("react");var Pe=({children:e})=>{let{fetcher:r}=C();return{queryClient:(0,Ce.useMemo)(()=>new xe.QueryClient({defaultOptions:{queries:{queryFn:({queryKey:o})=>r(o[0])}}}),[r]),children:e}};var he=require("react/jsx-runtime"),q=S(Pe,({queryClient:e,children:r})=>(0,he.jsx)(ye.QueryClientProvider,{client:e,children:r}));var Ee=require("@tanstack/react-query"),_e=require("react");var be="@auth/token",H=({onSuccess:e})=>{let{retry:r}=F(),{fetcher:t,setToken:o}=C(),n=(0,Ee.useMutation)({mutationFn:i=>y(null,null,function*(){return t("/my/sessions",{method:"POST",body:JSON.stringify(i)})}),onSuccess:i=>y(null,null,function*(){o(i.token),yield W.Storage.setItem(be,i.token),yield r(),e==null||e()})});return{signInWithToss:(0,_e.useCallback)(()=>y(null,null,function*(){let{authorizationCode:i,referrer:p}=yield(0,W.appLogin)();n.mutate({authorizationCode:i,referrer:p})}),[n]),isLoading:n.isPending}};var $=e=>Math.floor((e+324e5)/864e5);var U=e=>(e+3)%7;var D=e=>Math.floor((e+324e5)%864e5/36e5);var J=e=>Math.floor((e+324e5)%36e5/6e4);var j=e=>Math.floor((e+3)/7);var B=require("@apps-in-toss/framework"),P=require("react"),X=require("react-native"),Z=e=>{let[r,t]=(0,P.useState)(),[o,n]=(0,P.useState)(!0),s=(0,P.useCallback)(i=>(t(i),X.DeviceEventEmitter.emit(e,i),B.Storage.setItem(e,JSON.stringify({value:i}))),[e]);return(0,P.useEffect)(()=>{n(!0),B.Storage.getItem(e).then(p=>{try{t(p===null?void 0:JSON.parse(p).value)}catch(a){t(void 0)}finally{n(!1)}});let i=X.DeviceEventEmitter.addListener(e,t);return()=>i.remove()},[e]),[r,s,o]};0&&(module.exports={AdGroupProvider,AuthStateProvider,ConfigProvider,FetcherProvider,QueryProvider,bind,calculateDay,calculateDayOfWeek,calculateHour,calculateMinute,calculateWeek,useAdGroup,useAdvertisement,useAuthState,useConfig,useFetcher,useSignInWithToss,useStorage});
|
|
File without changes
|