@skyservice-developers/vue-dev-kit 2.1.0 → 2.2.0
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/README.md +8 -3
- package/dist/api-CpNSgpsc.cjs +1 -0
- package/dist/{api-CZ2GQABL.js → api-Eeo-WwNi.js} +91 -75
- package/dist/components/Dialog.vue.d.ts +2 -2
- package/dist/components/DialogModal.vue.d.ts +2 -2
- package/dist/components/DialogNext.vue.d.ts +2 -2
- package/dist/components/Modal.vue.d.ts +2 -2
- package/dist/sdk/api.d.ts +10 -2
- package/dist/sdk.cjs +1 -1
- package/dist/sdk.js +1 -1
- package/dist/vue-dev-kit.cjs +1 -1
- package/dist/vue-dev-kit.js +2 -2
- package/package.json +1 -1
- package/dist/api-JFgUnzEe.cjs +0 -1
package/README.md
CHANGED
|
@@ -80,6 +80,9 @@ const api = SkyserviceAPI.create({
|
|
|
80
80
|
companyId,
|
|
81
81
|
appId,
|
|
82
82
|
// developerId: 'optional',
|
|
83
|
+
// deploymentId + appName — тільки якщо користуєтесь setAppActive
|
|
84
|
+
deploymentId: '4c3c7d32-2408-503b-c439-bff7332a238e',
|
|
85
|
+
appName: 'glovo',
|
|
83
86
|
})
|
|
84
87
|
|
|
85
88
|
const tradepoints = await api.getTradepoints()
|
|
@@ -87,12 +90,14 @@ const categories = await api.getCategoryTree(tradepointId)
|
|
|
87
90
|
const products = await api.getProducts({ tradepointId })
|
|
88
91
|
|
|
89
92
|
// Активація/деактивація міні-додатку
|
|
90
|
-
await api.setAppActive({ isActive: true, settings: { foo: 'bar' } })
|
|
91
|
-
await api.setAppActive({ isActive: false })
|
|
93
|
+
await api.setAppActive({ isActive: true, title: 'Glovo', settings: { foo: 'bar' } })
|
|
94
|
+
await api.setAppActive({ isActive: false, title: 'Glovo' })
|
|
92
95
|
```
|
|
93
96
|
|
|
94
97
|
> `SkyserviceAPI.create()` — factory; прямий виклик `new SkyserviceAPI(...)` недоступний.
|
|
95
|
-
> `setAppActive`
|
|
98
|
+
> `setAppActive` POST на `api.cabinet.developer.skyservice.online/index.php`. Якщо
|
|
99
|
+
> `deploymentId` + `appName` задані в конфізі — додатково шле `sendActiveApp`
|
|
100
|
+
> postMessage в parent (Dashboard) з відповіддю сервера та новим станом.
|
|
96
101
|
|
|
97
102
|
### Webview detection
|
|
98
103
|
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";const S=require("ua-parser-js"),m="DASHBOARD",b=5e3;let A=0,p=null;function E(){return`sdk_${Date.now()}_${++A}`}function L(){return"APP_"+Math.random().toString(36).slice(2,10)}function C(t){p=t}function f(){return p||(p=L()),p}function a(t){window.parent.postMessage({...t,sender:f(),target:t.target||m},"*")}function g(t,e,r=b){return y()?new Promise(n=>{const o=E(),i=f(),s=setTimeout(()=>{window.removeEventListener("message",d),n(null)},r);function d(k){const c=k.data;(c==null?void 0:c.type)==="DATA_RESPONSE"&&(c==null?void 0:c.requestId)===o&&(!c.target||c.target===i)&&(clearTimeout(s),window.removeEventListener("message",d),n(c.data??null))}window.addEventListener("message",d),a({type:"DATA_REQUEST",requestId:o,source:t,key:e})}):Promise.resolve(null)}function P(t){a({type:"navigate",path:t})}function v(){a({type:"exit"})}const T=v;function w(t){return g("store",t)}function l(t){return g("localStorage",t)}function _(t){return g("window",t)}function D(){return w("company")}function W(){return w("user")}function R(){return l("token")}function U(){return l("lang")}function N(){return w("productCategories")}function $(t,e){a({type:"setLocalStorage",key:t,value:e})}function M(t){a({type:"setRocketMode",value:t})}function O(t,e){a({type:"trackVisit",name:t,path:e})}function x(t){a({type:"openExternalLink",url:t})}function q(){a({type:"openCrispChat"})}function B(t){a({type:"notification",text:t})}function j(t){a({type:"notification",text:t,variant:"error"})}function G(t){a({type:"notification",text:t,variant:"warn"})}function y(){try{return window.self!==window.top}catch{return!0}}const V=y;function F(t){function e(r){var n;((n=r.data)==null?void 0:n.sender)===m&&t(r.data)}return window.addEventListener("message",e),()=>window.removeEventListener("message",e)}function u(){if(typeof window>"u")return"browser";if(window.webkit!=null&&window.webkit.messageHandlers!==void 0)try{if(S(navigator.userAgent).browser.name==="WebKit")return"ios_webview"}catch(t){console.error(t)}return typeof Android<"u"?"android_webview":typeof window.cefQuery<"u"?"cef_webview":"browser"}function H(){return u()==="ios_webview"}function Q(){return u()==="android_webview"}function z(){return u()==="cef_webview"}function J(){return u()!=="browser"}const K="https://api.cabinet.developer.skyservice.online/index.php";class h{constructor(e){this.token=e.token,this.companyId=e.companyId,this.appId=e.appId,this.developerId=e.developerId,this.deploymentId=e.deploymentId,this.appName=e.appName;const r=e.domain.replace("dashboard","api");this.baseUrl=r.startsWith("http")?r:`https://${r}`}static create(e){return new h(e)}async get(e){const r=new URLSearchParams({token:this.token,companyId:this.companyId,...e}),n=await fetch(`${this.baseUrl}/?${r}`);if(!n.ok)throw new Error(`Skyservice API error: ${n.status}`);const o=await n.json();if(o.status!=="done")throw new Error(`Skyservice API returned status: ${o.status}`);return o.data}async post(e,r,n){const o=new URLSearchParams({token:this.token,...r}),i=await fetch(`${e}?${o}`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(n)});if(!i.ok)throw new Error(`Skyservice API error: ${i.status}`);return i.json()}async getTradepoints(e){const r=await this.get({section:"tradepoints",action:"getTradepoints"});return e!=null&&e.includeDeleted?r.items:r.items.filter(n=>!n.deleted&&!n.frozen)}async getCategoryTree(e){const r=await this.get({section:"productCategory",action:"getCategories",...e?{tradepointId:String(e)}:{}});return I(r,e)}async getProducts(e){const r=await this.get({section:"products",action:"getProducts",pagelimit:"9999",ot:"desc",of:"nomenclatureId",...e!=null&&e.tradepointId?{tradepointId:String(e.tradepointId)}:{}});return Z(r.items,e==null?void 0:e.includeInactive)}async setAppActive({isActive:e,title:r,settings:n}){var d;const o=e?"activateApp":"deactivateApp",i={company_id:this.companyId,app_id:this.appId,...this.developerId!==void 0&&{developer_id:this.developerId},...e&&n!==void 0&&{settings:n}},s=await this.post(K,{section:"integrations",action:o},i);return this.deploymentId&&this.appName&&typeof window<"u"&&window.self!==window.top&&window.parent.postMessage({type:"sendActiveApp",id:((d=s==null?void 0:s.data)==null?void 0:d.appId)??this.appId,is_active:e,deploymentId:this.deploymentId,appName:this.appName,title:r},"*"),s}}function I(t,e){var n,o;const r=[];for(const i of t){if(e!=null&&!((n=i.tradepointShow)==null?void 0:n[String(e)]))continue;const s={id:i.id,pid:i.pid,name:i.name,active:i.active,background:i.background,show:i.show};i.img&&(s.img=i.img),(o=i.children)!=null&&o.length&&(s.children=I(i.children,e)),r.push(s)}return r}const Y=new Set(["product","techcard"]),X="/img/no.png";function Z(t,e){const r=[];for(const n of t)Y.has(n.type)&&(!e&&!n.active||r.push({id:n.id,name:n.nomenclatureName,price:n.price,categoryId:n.categoryId,categoryName:n.categoryTitle||"",active:n.active,type:n.type,unit:n.unit,logo:n.logo&&n.logo!==X?n.logo:""}));return r}exports.SkyserviceAPI=h;exports.exit=v;exports.getBack=T;exports.getCompany=D;exports.getLang=U;exports.getLocalStorageData=l;exports.getProductCategories=N;exports.getSenderId=f;exports.getStoreData=w;exports.getToken=R;exports.getUser=W;exports.getWindowData=_;exports.isAndroidWebview=Q;exports.isCefWebview=z;exports.isInIframe=V;exports.isInsideIframe=y;exports.isIosWebview=H;exports.isWebview=J;exports.navigate=P;exports.notify=B;exports.notifyError=j;exports.notifyWarn=G;exports.onMessage=F;exports.openCrispChat=q;exports.openExternalLink=x;exports.setLocalStorage=$;exports.setRocketMode=M;exports.setSenderId=C;exports.trackVisit=O;exports.webviewCheck=u;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import
|
|
2
|
-
const
|
|
1
|
+
import b from "ua-parser-js";
|
|
2
|
+
const l = "DASHBOARD", S = 5e3;
|
|
3
3
|
let k = 0, u = null;
|
|
4
4
|
function A() {
|
|
5
5
|
return `sdk_${Date.now()}_${++k}`;
|
|
@@ -7,69 +7,69 @@ function A() {
|
|
|
7
7
|
function E() {
|
|
8
8
|
return "APP_" + Math.random().toString(36).slice(2, 10);
|
|
9
9
|
}
|
|
10
|
-
function
|
|
10
|
+
function N(t) {
|
|
11
11
|
u = t;
|
|
12
12
|
}
|
|
13
|
-
function
|
|
13
|
+
function g() {
|
|
14
14
|
return u || (u = E()), u;
|
|
15
15
|
}
|
|
16
16
|
function o(t) {
|
|
17
17
|
window.parent.postMessage(
|
|
18
18
|
{
|
|
19
19
|
...t,
|
|
20
|
-
sender:
|
|
21
|
-
target: t.target ||
|
|
20
|
+
sender: g(),
|
|
21
|
+
target: t.target || l
|
|
22
22
|
},
|
|
23
23
|
"*"
|
|
24
24
|
);
|
|
25
25
|
}
|
|
26
|
-
function w(t, e, r =
|
|
26
|
+
function w(t, e, r = S) {
|
|
27
27
|
return h() ? new Promise((n) => {
|
|
28
|
-
const
|
|
28
|
+
const i = A(), a = g(), s = setTimeout(() => {
|
|
29
29
|
window.removeEventListener("message", d), n(null);
|
|
30
30
|
}, r);
|
|
31
31
|
function d(I) {
|
|
32
|
-
const
|
|
33
|
-
(
|
|
32
|
+
const c = I.data;
|
|
33
|
+
(c == null ? void 0 : c.type) === "DATA_RESPONSE" && (c == null ? void 0 : c.requestId) === i && (!c.target || c.target === a) && (clearTimeout(s), window.removeEventListener("message", d), n(c.data ?? null));
|
|
34
34
|
}
|
|
35
|
-
window.addEventListener("message", d), o({ type: "DATA_REQUEST", requestId:
|
|
35
|
+
window.addEventListener("message", d), o({ type: "DATA_REQUEST", requestId: i, source: t, key: e });
|
|
36
36
|
}) : Promise.resolve(null);
|
|
37
37
|
}
|
|
38
|
-
function
|
|
38
|
+
function R(t) {
|
|
39
39
|
o({ type: "navigate", path: t });
|
|
40
40
|
}
|
|
41
41
|
function L() {
|
|
42
42
|
o({ type: "exit" });
|
|
43
43
|
}
|
|
44
|
-
const
|
|
45
|
-
function
|
|
44
|
+
const U = L;
|
|
45
|
+
function f(t) {
|
|
46
46
|
return w("store", t);
|
|
47
47
|
}
|
|
48
48
|
function y(t) {
|
|
49
49
|
return w("localStorage", t);
|
|
50
50
|
}
|
|
51
|
-
function
|
|
51
|
+
function $(t) {
|
|
52
52
|
return w("window", t);
|
|
53
53
|
}
|
|
54
|
-
function
|
|
55
|
-
return
|
|
54
|
+
function O() {
|
|
55
|
+
return f("company");
|
|
56
56
|
}
|
|
57
|
-
function
|
|
58
|
-
return
|
|
57
|
+
function W() {
|
|
58
|
+
return f("user");
|
|
59
59
|
}
|
|
60
60
|
function x() {
|
|
61
61
|
return y("token");
|
|
62
62
|
}
|
|
63
|
-
function
|
|
63
|
+
function M() {
|
|
64
64
|
return y("lang");
|
|
65
65
|
}
|
|
66
|
-
function
|
|
67
|
-
return
|
|
66
|
+
function q() {
|
|
67
|
+
return f("productCategories");
|
|
68
68
|
}
|
|
69
|
-
function
|
|
69
|
+
function j(t, e) {
|
|
70
70
|
o({ type: "setLocalStorage", key: t, value: e });
|
|
71
71
|
}
|
|
72
|
-
function
|
|
72
|
+
function B(t) {
|
|
73
73
|
o({ type: "setRocketMode", value: t });
|
|
74
74
|
}
|
|
75
75
|
function G(t, e) {
|
|
@@ -101,36 +101,36 @@ const J = h;
|
|
|
101
101
|
function K(t) {
|
|
102
102
|
function e(r) {
|
|
103
103
|
var n;
|
|
104
|
-
((n = r.data) == null ? void 0 : n.sender) ===
|
|
104
|
+
((n = r.data) == null ? void 0 : n.sender) === l && t(r.data);
|
|
105
105
|
}
|
|
106
106
|
return window.addEventListener("message", e), () => window.removeEventListener("message", e);
|
|
107
107
|
}
|
|
108
|
-
function
|
|
108
|
+
function p() {
|
|
109
109
|
if (typeof window > "u") return "browser";
|
|
110
110
|
if (window.webkit != null && window.webkit.messageHandlers !== void 0)
|
|
111
111
|
try {
|
|
112
|
-
if (
|
|
112
|
+
if (b(navigator.userAgent).browser.name === "WebKit") return "ios_webview";
|
|
113
113
|
} catch (t) {
|
|
114
114
|
console.error(t);
|
|
115
115
|
}
|
|
116
116
|
return typeof Android < "u" ? "android_webview" : typeof window.cefQuery < "u" ? "cef_webview" : "browser";
|
|
117
117
|
}
|
|
118
118
|
function Y() {
|
|
119
|
-
return
|
|
119
|
+
return p() === "ios_webview";
|
|
120
120
|
}
|
|
121
121
|
function X() {
|
|
122
|
-
return
|
|
122
|
+
return p() === "android_webview";
|
|
123
123
|
}
|
|
124
124
|
function Z() {
|
|
125
|
-
return
|
|
125
|
+
return p() === "cef_webview";
|
|
126
126
|
}
|
|
127
127
|
function ee() {
|
|
128
|
-
return
|
|
128
|
+
return p() !== "browser";
|
|
129
129
|
}
|
|
130
|
-
const _ = "https://api.cabinet.developer.skyservice.online";
|
|
130
|
+
const _ = "https://api.cabinet.developer.skyservice.online/index.php";
|
|
131
131
|
class m {
|
|
132
132
|
constructor(e) {
|
|
133
|
-
this.token = e.token, this.companyId = e.companyId, this.appId = e.appId, this.developerId = e.developerId;
|
|
133
|
+
this.token = e.token, this.companyId = e.companyId, this.appId = e.appId, this.developerId = e.developerId, this.deploymentId = e.deploymentId, this.appName = e.appName;
|
|
134
134
|
const r = e.domain.replace("dashboard", "api");
|
|
135
135
|
this.baseUrl = r.startsWith("http") ? r : `https://${r}`;
|
|
136
136
|
}
|
|
@@ -147,23 +147,23 @@ class m {
|
|
|
147
147
|
}), n = await fetch(`${this.baseUrl}/?${r}`);
|
|
148
148
|
if (!n.ok)
|
|
149
149
|
throw new Error(`Skyservice API error: ${n.status}`);
|
|
150
|
-
const
|
|
151
|
-
if (
|
|
152
|
-
throw new Error(`Skyservice API returned status: ${
|
|
153
|
-
return
|
|
150
|
+
const i = await n.json();
|
|
151
|
+
if (i.status !== "done")
|
|
152
|
+
throw new Error(`Skyservice API returned status: ${i.status}`);
|
|
153
|
+
return i.data;
|
|
154
154
|
}
|
|
155
155
|
async post(e, r, n) {
|
|
156
|
-
const
|
|
156
|
+
const i = new URLSearchParams({
|
|
157
157
|
token: this.token,
|
|
158
158
|
...r
|
|
159
|
-
}),
|
|
159
|
+
}), a = await fetch(`${e}?${i}`, {
|
|
160
160
|
method: "POST",
|
|
161
161
|
headers: { "Content-Type": "application/json" },
|
|
162
162
|
body: JSON.stringify(n)
|
|
163
163
|
});
|
|
164
|
-
if (!
|
|
165
|
-
throw new Error(`Skyservice API error: ${
|
|
166
|
-
return
|
|
164
|
+
if (!a.ok)
|
|
165
|
+
throw new Error(`Skyservice API error: ${a.status}`);
|
|
166
|
+
return a.json();
|
|
167
167
|
}
|
|
168
168
|
// --- Tradepoints ---
|
|
169
169
|
/**
|
|
@@ -218,43 +218,59 @@ class m {
|
|
|
218
218
|
/**
|
|
219
219
|
* Activate or deactivate the mini-app for the current company.
|
|
220
220
|
*
|
|
221
|
-
* Sends POST to `api.cabinet.developer.skyservice.online`:
|
|
221
|
+
* Sends POST to `api.cabinet.developer.skyservice.online/index.php`:
|
|
222
222
|
* - `isActive: true` → `section=integrations&action=activateApp`
|
|
223
223
|
* - `isActive: false` → `section=integrations&action=deactivateApp`
|
|
224
224
|
*
|
|
225
225
|
* `settings` are sent only when activating.
|
|
226
|
+
*
|
|
227
|
+
* If `deploymentId` and `appName` were provided in config, also sends a
|
|
228
|
+
* `sendActiveApp` postMessage to Dashboard (parent window) with the new state.
|
|
226
229
|
*/
|
|
227
230
|
async setAppActive({
|
|
228
231
|
isActive: e,
|
|
229
|
-
|
|
232
|
+
title: r,
|
|
233
|
+
settings: n
|
|
230
234
|
}) {
|
|
231
|
-
|
|
235
|
+
var d;
|
|
236
|
+
const i = e ? "activateApp" : "deactivateApp", a = {
|
|
232
237
|
company_id: this.companyId,
|
|
233
238
|
app_id: this.appId,
|
|
234
239
|
...this.developerId !== void 0 && { developer_id: this.developerId },
|
|
235
|
-
...e &&
|
|
236
|
-
}
|
|
237
|
-
|
|
238
|
-
section: "integrations",
|
|
239
|
-
|
|
240
|
-
|
|
240
|
+
...e && n !== void 0 && { settings: n }
|
|
241
|
+
}, s = await this.post(
|
|
242
|
+
_,
|
|
243
|
+
{ section: "integrations", action: i },
|
|
244
|
+
a
|
|
245
|
+
);
|
|
246
|
+
return this.deploymentId && this.appName && typeof window < "u" && window.self !== window.top && window.parent.postMessage(
|
|
247
|
+
{
|
|
248
|
+
type: "sendActiveApp",
|
|
249
|
+
id: ((d = s == null ? void 0 : s.data) == null ? void 0 : d.appId) ?? this.appId,
|
|
250
|
+
is_active: e,
|
|
251
|
+
deploymentId: this.deploymentId,
|
|
252
|
+
appName: this.appName,
|
|
253
|
+
title: r
|
|
254
|
+
},
|
|
255
|
+
"*"
|
|
256
|
+
), s;
|
|
241
257
|
}
|
|
242
258
|
}
|
|
243
259
|
function v(t, e) {
|
|
244
|
-
var n,
|
|
260
|
+
var n, i;
|
|
245
261
|
const r = [];
|
|
246
|
-
for (const
|
|
247
|
-
if (e != null && !((n =
|
|
262
|
+
for (const a of t) {
|
|
263
|
+
if (e != null && !((n = a.tradepointShow) == null ? void 0 : n[String(e)]))
|
|
248
264
|
continue;
|
|
249
|
-
const
|
|
250
|
-
id:
|
|
251
|
-
pid:
|
|
252
|
-
name:
|
|
253
|
-
active:
|
|
254
|
-
background:
|
|
255
|
-
show:
|
|
265
|
+
const s = {
|
|
266
|
+
id: a.id,
|
|
267
|
+
pid: a.pid,
|
|
268
|
+
name: a.name,
|
|
269
|
+
active: a.active,
|
|
270
|
+
background: a.background,
|
|
271
|
+
show: a.show
|
|
256
272
|
};
|
|
257
|
-
|
|
273
|
+
a.img && (s.img = a.img), (i = a.children) != null && i.length && (s.children = v(a.children, e)), r.push(s);
|
|
258
274
|
}
|
|
259
275
|
return r;
|
|
260
276
|
}
|
|
@@ -276,34 +292,34 @@ function C(t, e) {
|
|
|
276
292
|
return r;
|
|
277
293
|
}
|
|
278
294
|
export {
|
|
279
|
-
|
|
295
|
+
N as A,
|
|
280
296
|
G as B,
|
|
281
|
-
|
|
297
|
+
p as C,
|
|
282
298
|
m as S,
|
|
283
|
-
|
|
284
|
-
|
|
299
|
+
O as a,
|
|
300
|
+
M as b,
|
|
285
301
|
y as c,
|
|
286
|
-
|
|
302
|
+
q as d,
|
|
287
303
|
L as e,
|
|
288
|
-
|
|
289
|
-
|
|
290
|
-
|
|
304
|
+
g as f,
|
|
305
|
+
U as g,
|
|
306
|
+
f as h,
|
|
291
307
|
x as i,
|
|
292
|
-
|
|
293
|
-
|
|
308
|
+
W as j,
|
|
309
|
+
$ as k,
|
|
294
310
|
X as l,
|
|
295
311
|
Z as m,
|
|
296
312
|
J as n,
|
|
297
313
|
h as o,
|
|
298
314
|
Y as p,
|
|
299
315
|
ee as q,
|
|
300
|
-
|
|
316
|
+
R as r,
|
|
301
317
|
H as s,
|
|
302
318
|
Q as t,
|
|
303
319
|
V as u,
|
|
304
320
|
K as v,
|
|
305
321
|
F as w,
|
|
306
322
|
z as x,
|
|
307
|
-
|
|
308
|
-
|
|
323
|
+
j as y,
|
|
324
|
+
B as z
|
|
309
325
|
};
|
|
@@ -5,16 +5,16 @@ type __VLS_WithTemplateSlots<T, S> = T & (new () => {
|
|
|
5
5
|
});
|
|
6
6
|
declare const __VLS_component: import('vue').DefineComponent<{}, {
|
|
7
7
|
$emit: (event: "close" | "update:modelValue" | "save", ...args: any[]) => void;
|
|
8
|
-
modelValue: boolean;
|
|
9
8
|
title: string;
|
|
9
|
+
modelValue: boolean;
|
|
10
10
|
subtitle: string;
|
|
11
11
|
zIndex: string | number;
|
|
12
12
|
closeText: string;
|
|
13
13
|
closeOnEsc: boolean;
|
|
14
14
|
mode: string;
|
|
15
15
|
$props: {
|
|
16
|
-
readonly modelValue?: boolean | undefined;
|
|
17
16
|
readonly title?: string | undefined;
|
|
17
|
+
readonly modelValue?: boolean | undefined;
|
|
18
18
|
readonly subtitle?: string | undefined;
|
|
19
19
|
readonly zIndex?: string | number | undefined;
|
|
20
20
|
readonly closeText?: string | undefined;
|
|
@@ -5,16 +5,16 @@ type __VLS_WithTemplateSlots<T, S> = T & (new () => {
|
|
|
5
5
|
});
|
|
6
6
|
declare const __VLS_component: import('vue').DefineComponent<{}, {
|
|
7
7
|
$emit: (event: "close" | "update:modelValue" | "save", ...args: any[]) => void;
|
|
8
|
-
modelValue: boolean;
|
|
9
8
|
title: string;
|
|
9
|
+
modelValue: boolean;
|
|
10
10
|
subtitle: string;
|
|
11
11
|
zIndex: string | number;
|
|
12
12
|
closeText: string;
|
|
13
13
|
closeOnEsc: boolean;
|
|
14
14
|
hasButtons: boolean;
|
|
15
15
|
$props: {
|
|
16
|
-
readonly modelValue?: boolean | undefined;
|
|
17
16
|
readonly title?: string | undefined;
|
|
17
|
+
readonly modelValue?: boolean | undefined;
|
|
18
18
|
readonly subtitle?: string | undefined;
|
|
19
19
|
readonly zIndex?: string | number | undefined;
|
|
20
20
|
readonly closeText?: string | undefined;
|
|
@@ -5,16 +5,16 @@ type __VLS_WithTemplateSlots<T, S> = T & (new () => {
|
|
|
5
5
|
});
|
|
6
6
|
declare const __VLS_component: import('vue').DefineComponent<{}, {
|
|
7
7
|
$emit: (event: "close" | "update:modelValue" | "save", ...args: any[]) => void;
|
|
8
|
-
modelValue: boolean;
|
|
9
8
|
title: string;
|
|
9
|
+
modelValue: boolean;
|
|
10
10
|
subtitle: string;
|
|
11
11
|
zIndex: string | number;
|
|
12
12
|
closeText: string;
|
|
13
13
|
closeOnEsc: boolean;
|
|
14
14
|
hasButtons: boolean;
|
|
15
15
|
$props: {
|
|
16
|
-
readonly modelValue?: boolean | undefined;
|
|
17
16
|
readonly title?: string | undefined;
|
|
17
|
+
readonly modelValue?: boolean | undefined;
|
|
18
18
|
readonly subtitle?: string | undefined;
|
|
19
19
|
readonly zIndex?: string | number | undefined;
|
|
20
20
|
readonly closeText?: string | undefined;
|
|
@@ -5,8 +5,8 @@ type __VLS_WithTemplateSlots<T, S> = T & (new () => {
|
|
|
5
5
|
});
|
|
6
6
|
declare const __VLS_component: import('vue').DefineComponent<{}, {
|
|
7
7
|
$emit: (event: "close" | "update:modelValue", ...args: any[]) => void;
|
|
8
|
-
modelValue: boolean;
|
|
9
8
|
title: string;
|
|
9
|
+
modelValue: boolean;
|
|
10
10
|
subtitle: string;
|
|
11
11
|
closeOnEsc: boolean;
|
|
12
12
|
closeTitle: string;
|
|
@@ -14,8 +14,8 @@ declare const __VLS_component: import('vue').DefineComponent<{}, {
|
|
|
14
14
|
width: string;
|
|
15
15
|
height: string;
|
|
16
16
|
$props: {
|
|
17
|
-
readonly modelValue?: boolean | undefined;
|
|
18
17
|
readonly title?: string | undefined;
|
|
18
|
+
readonly modelValue?: boolean | undefined;
|
|
19
19
|
readonly subtitle?: string | undefined;
|
|
20
20
|
readonly closeOnEsc?: boolean | undefined;
|
|
21
21
|
readonly closeTitle?: string | undefined;
|
package/dist/sdk/api.d.ts
CHANGED
|
@@ -6,6 +6,8 @@ export interface SkyserviceAPIConfig {
|
|
|
6
6
|
companyId: string;
|
|
7
7
|
appId: string;
|
|
8
8
|
developerId?: string;
|
|
9
|
+
deploymentId?: string;
|
|
10
|
+
appName?: string;
|
|
9
11
|
}
|
|
10
12
|
/**
|
|
11
13
|
* HTTP client for Skyservice API.
|
|
@@ -29,6 +31,8 @@ export declare class SkyserviceAPI {
|
|
|
29
31
|
private companyId;
|
|
30
32
|
private appId;
|
|
31
33
|
private developerId;
|
|
34
|
+
private deploymentId;
|
|
35
|
+
private appName;
|
|
32
36
|
private constructor();
|
|
33
37
|
/** Factory — create a new SkyserviceAPI instance. */
|
|
34
38
|
static create(config: SkyserviceAPIConfig): SkyserviceAPI;
|
|
@@ -65,14 +69,18 @@ export declare class SkyserviceAPI {
|
|
|
65
69
|
/**
|
|
66
70
|
* Activate or deactivate the mini-app for the current company.
|
|
67
71
|
*
|
|
68
|
-
* Sends POST to `api.cabinet.developer.skyservice.online`:
|
|
72
|
+
* Sends POST to `api.cabinet.developer.skyservice.online/index.php`:
|
|
69
73
|
* - `isActive: true` → `section=integrations&action=activateApp`
|
|
70
74
|
* - `isActive: false` → `section=integrations&action=deactivateApp`
|
|
71
75
|
*
|
|
72
76
|
* `settings` are sent only when activating.
|
|
77
|
+
*
|
|
78
|
+
* If `deploymentId` and `appName` were provided in config, also sends a
|
|
79
|
+
* `sendActiveApp` postMessage to Dashboard (parent window) with the new state.
|
|
73
80
|
*/
|
|
74
|
-
setAppActive({ isActive, settings, }: {
|
|
81
|
+
setAppActive({ isActive, title, settings, }: {
|
|
75
82
|
isActive: boolean;
|
|
83
|
+
title?: string;
|
|
76
84
|
settings?: Record<string, unknown>;
|
|
77
85
|
}): Promise<unknown>;
|
|
78
86
|
}
|
package/dist/sdk.cjs
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("./api-
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("./api-CpNSgpsc.cjs");exports.SkyserviceAPI=e.SkyserviceAPI;exports.exit=e.exit;exports.getBack=e.getBack;exports.getCompany=e.getCompany;exports.getLang=e.getLang;exports.getLocalStorageData=e.getLocalStorageData;exports.getProductCategories=e.getProductCategories;exports.getSenderId=e.getSenderId;exports.getStoreData=e.getStoreData;exports.getToken=e.getToken;exports.getUser=e.getUser;exports.getWindowData=e.getWindowData;exports.isAndroidWebview=e.isAndroidWebview;exports.isCefWebview=e.isCefWebview;exports.isInIframe=e.isInIframe;exports.isInsideIframe=e.isInsideIframe;exports.isIosWebview=e.isIosWebview;exports.isWebview=e.isWebview;exports.navigate=e.navigate;exports.notify=e.notify;exports.notifyError=e.notifyError;exports.notifyWarn=e.notifyWarn;exports.onMessage=e.onMessage;exports.openCrispChat=e.openCrispChat;exports.openExternalLink=e.openExternalLink;exports.setLocalStorage=e.setLocalStorage;exports.setRocketMode=e.setRocketMode;exports.setSenderId=e.setSenderId;exports.trackVisit=e.trackVisit;exports.webviewCheck=e.webviewCheck;
|
package/dist/sdk.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { S as s, e as t, g as i, a as o, b as r, c as n, d as g, f as d, h as c, i as f, j as k, k as v, l as w, m as I, n as C, o as S, p as b, q as p, r as y, s as W, t as m, u as l, v as x, w as L, x as h, y as A, z as D, A as u, B, C as E } from "./api-
|
|
1
|
+
import { S as s, e as t, g as i, a as o, b as r, c as n, d as g, f as d, h as c, i as f, j as k, k as v, l as w, m as I, n as C, o as S, p as b, q as p, r as y, s as W, t as m, u as l, v as x, w as L, x as h, y as A, z as D, A as u, B, C as E } from "./api-Eeo-WwNi.js";
|
|
2
2
|
export {
|
|
3
3
|
s as SkyserviceAPI,
|
|
4
4
|
t as exit,
|
package/dist/vue-dev-kit.cjs
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("vue"),o=require("./api-JFgUnzEe.cjs");require("ua-parser-js");const B=(t,v)=>{const a=t.__vccOpts||t;for(const[c,m]of v)a[c]=m;return a},M={class:"sky-header-container"},z={class:"topmenubox"},P={class:"header-left"},O=["title"],A={width:"15",height:"15",viewBox:"0 0 451.847 451.847",style:{transform:"rotate(90deg)"}},W={class:"notPadding"},R={class:"topmenu-title"},_={key:0,class:"title-dropdown"},U={class:"title-dropdown-header"},X=["onClick"],F={class:"pageName"},K={class:"pageVisit"},j={key:0,class:"topmenu-description"},q={class:"topmenubox-button"},H={__name:"Header",props:{title:{type:String,default:""},subtitle:{type:String,default:""},showBackButton:{type:Boolean,default:!0},backButtonTitle:{type:String,default:"Назад"},backEvent:{type:Function,default:null},dropdownItems:{type:Array,default:()=>[]},dropdownTitle:{type:String,default:"Останні відвідані розділи"},visitLabel:{type:String,default:"Останнє відвідування"},trackPageName:{type:String,default:""},trackPagePath:{type:String,default:""},appId:{type:String,default:""}},emits:["back","navigate"],setup(t,{emit:v}){const a=t;o.setSenderId(a.appId||o.getSenderId());const c=v,m=e.ref(null),i=e.ref(!1),k=e.ref([]),d=e.ref({});o.isInsideIframe()&&a.trackPageName&&o.trackVisit(a.trackPageName,a.trackPagePath||`/${a.trackPageName}`);const r=e.ref(null);o.isInsideIframe()&&o.getLocalStorageData("rocketMode").then(async n=>{r.value=n,await o.getLocalStorageData("fallbackRocketMode")===null&&o.setLocalStorage("fallbackRocketMode",n===!0||n==="true"?"true":"false"),o.setRocketMode(!0)}),e.onUnmounted(()=>{S()}),o.isInsideIframe()&&o.getWindowData("lang").then(n=>{n!=null&&(d.value=n)});function y(n){try{if(!n)return;const u=typeof n=="string"?JSON.parse(n):n;u!=null&&u.pages&&(k.value=Object.values(u.pages))}catch{}}y(localStorage.componentStats),o.isInsideIframe()&&o.getLocalStorageData("componentStats").then(n=>{n!=null&&(localStorage.setItem("componentStats",JSON.stringify(n)),y(n))});const p=e.computed(()=>[...a.dropdownItems.length?a.dropdownItems:k.value].sort((u,E)=>E.lastVisit-u.lastVisit)),g=()=>{p.value.length&&(i.value=!i.value)},h=()=>{i.value=!1},b=n=>{c("navigate",n.path),o.isInsideIframe()&&o.navigate(n.path),h()},w=n=>{if(!n)return"";const u=d.value[n]||n;return u.charAt(0).toUpperCase()+u.slice(1)},s=n=>{const E=Date.now()-n,N=Math.floor(E/1e3),C=Math.floor(N/60),$=Math.floor(C/60),D=Math.floor($/24);return D>0?`${D}д тому`:$>0?`${$}год тому`:C>0?`${C}хв тому`:`${N}с тому`},l=n=>{m.value&&!m.value.contains(n.target)&&h()};e.onMounted(()=>{document.addEventListener("click",l,!0)}),e.onUnmounted(()=>{document.removeEventListener("click",l,!0)});const f=e.computed(()=>a.backEvent||a.showBackButton&&o.isInsideIframe()),S=()=>{if(r.value!==null){const n=r.value===!0||r.value==="true";o.setRocketMode(n)}},V=()=>p.value.find(n=>n.name!==a.trackPageName&&n.path),L=async()=>{if(a.backEvent)return S(),a.backEvent();let n=V();if(!n&&o.isInsideIframe()){const u=await o.getLocalStorageData("componentStats");u&&(y(u),n=V())}S(),n?o.navigate(n.path):o.exit()};return(n,u)=>(e.openBlock(),e.createElementBlock("header",M,[e.createElementVNode("div",z,[e.createElementVNode("div",P,[f.value?(e.openBlock(),e.createElementBlock("button",{key:0,class:"btn-back",onClick:L,title:t.backButtonTitle},[(e.openBlock(),e.createElementBlock("svg",A,[...u[0]||(u[0]=[e.createElementVNode("path",{fill:"currentColor",d:"M225.923,354.706c-8.098,0-16.195-3.092-22.369-9.263L9.27,151.157c-12.359-12.359-12.359-32.397,0-44.751c12.354-12.354,32.388-12.354,44.748,0l171.905,171.915l171.906-171.909c12.359-12.354,32.391-12.354,44.744,0c12.365,12.354,12.365,32.392,0,44.751L248.292,345.449C242.115,351.621,234.018,354.706,225.923,354.706z"},null,-1)])]))],8,O)):e.createCommentVNode("",!0),e.createElementVNode("div",{ref_key:"dropdownRef",ref:m,class:"titleAndDesc"},[e.createElementVNode("button",{class:e.normalizeClass(["title-dropdown-toggle",{"title-dropdown-toggle-active":p.value.length}]),onClick:g},[e.renderSlot(n.$slots,"title",{},()=>[e.createElementVNode("h4",W,[e.createElementVNode("span",R,e.toDisplayString(t.title),1),p.value.length?(e.openBlock(),e.createElementBlock("svg",{key:0,class:e.normalizeClass(["arrow",{open:i.value}]),width:"12",height:"12",viewBox:"0 0 451.847 451.847",style:{"flex-shrink":"0"}},[...u[1]||(u[1]=[e.createElementVNode("path",{fill:"currentColor",d:"M225.923,354.706c-8.098,0-16.195-3.092-22.369-9.263L9.27,151.157c-12.359-12.359-12.359-32.397,0-44.751c12.354-12.354,32.388-12.354,44.748,0l171.905,171.915l171.906-171.909c12.359-12.354,32.391-12.354,44.744,0c12.365,12.354,12.365,32.392,0,44.751L248.292,345.449C242.115,351.621,234.018,354.706,225.923,354.706z"},null,-1)])],2)):e.createCommentVNode("",!0)])],!0)],2),i.value&&p.value.length?(e.openBlock(),e.createElementBlock("div",_,[e.createElementVNode("div",U,e.toDisplayString(t.dropdownTitle),1),u[2]||(u[2]=e.createElementVNode("div",{class:"title-dropdown-divider"},null,-1)),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(p.value,(E,N)=>(e.openBlock(),e.createElementBlock("div",{key:N,class:"title-dropdown-item",onClick:C=>b(E)},[e.createElementVNode("p",F,e.toDisplayString(w(E.name)),1),e.createElementVNode("small",K," ("+e.toDisplayString(t.visitLabel)+" "+e.toDisplayString(s(E.lastVisit))+") ",1)],8,X))),128))])):e.createCommentVNode("",!0),e.renderSlot(n.$slots,"subtitle",{},()=>[t.subtitle?(e.openBlock(),e.createElementBlock("p",j,e.toDisplayString(t.subtitle),1)):e.createCommentVNode("",!0)],!0)],512)]),e.createElementVNode("div",q,[u[3]||(u[3]=e.createElementVNode("div",null,null,-1)),e.renderSlot(n.$slots,"default",{},void 0,!0),u[4]||(u[4]=e.createElementVNode("div",null,null,-1))])])]))}},J=B(H,[["__scopeId","data-v-ad8f398f"]]),G={class:"sky-dialog-overlay"},Q={key:0,class:"sky-dialog-subtitle"},Y=["title"],Z={key:0,class:"sky-dialog-swipe-area"},ee={key:0,class:"sky-dialog-footer"},te={__name:"DialogModal",props:{modelValue:{type:Boolean,default:!1},title:{type:String,default:""},subtitle:{type:String,default:""},zIndex:{type:[Number,String],default:null},closeText:{type:String,default:"Закрити"},closeOnEsc:{type:Boolean,default:!0},hasButtons:{type:Boolean,default:null}},emits:["update:modelValue","close","save"],setup(t,{emit:v}){const a=e.useSlots(),c=t,m=v,i=e.ref(null),k=e.ref(null),d=e.ref(0),r=e.computed(()=>{try{return o.isIosWebview()}catch{return!1}}),y=e.computed(()=>{try{return o.isAndroidWebview()}catch{return!1}}),p=e.computed(()=>c.hasButtons!==null?c.hasButtons:!!a.buttons),g=()=>{m("update:modelValue",!1),m("close")},h=l=>{l.key==="Escape"&&c.closeOnEsc&&c.modelValue&&g(),l.key==="Enter"&&c.modelValue&&m("save")},b=l=>{l.touches[0].clientX<35&&(d.value=l.touches[0].clientX)},w=l=>{d.value>0&&d.value<35&&l.changedTouches[0].clientX-d.value>50&&g(),d.value=0},s=()=>{if(!(!y.value||!i.value))try{if(typeof Android<"u"&&Android.getDisplayCutoutTop){const l=Android.getDisplayCutoutTop();if(l&&window.devicePixelRatio>1){const f=l/window.devicePixelRatio;i.value.style.paddingTop=f+"px"}}}catch{}};return e.watch(()=>c.modelValue,l=>{l?(document.body.style.overflow="hidden",e.nextTick(()=>{s()})):document.body.style.overflow=""}),e.onMounted(()=>{document.addEventListener("keydown",h),window.addEventListener("resize",s)}),e.onUnmounted(()=>{document.removeEventListener("keydown",h),window.removeEventListener("resize",s),document.body.style.overflow=""}),(l,f)=>(e.openBlock(),e.createBlock(e.Teleport,{to:"body"},[t.modelValue?(e.openBlock(),e.createElementBlock("div",{key:0,class:"sky-dialogbox sky-dialogbox-classic",style:e.normalizeStyle([t.zIndex?{"z-index":t.zIndex}:null])},[e.createElementVNode("div",G,[e.createElementVNode("div",{ref_key:"dialogContent",ref:i,class:"sky-dialog-content"},[e.createElementVNode("div",{class:e.normalizeClass(["sky-dialog-title",{"sky-dialog-title-with-subtitle":t.subtitle}])},[e.createTextVNode(e.toDisplayString(t.title)+" ",1),t.subtitle?(e.openBlock(),e.createElementBlock("span",Q,e.toDisplayString(t.subtitle),1)):e.createCommentVNode("",!0)],2),e.createElementVNode("button",{class:"sky-dialog-close",title:t.closeText,onClick:g},[...f[0]||(f[0]=[e.createElementVNode("svg",{viewBox:"0 0 16 16",width:"16",height:"16"},[e.createElementVNode("line",{x1:"1",y1:"15",x2:"15",y2:"1",stroke:"currentColor","stroke-width":"2"}),e.createElementVNode("line",{x1:"1",y1:"1",x2:"15",y2:"15",stroke:"currentColor","stroke-width":"2"})],-1)])],8,Y),f[1]||(f[1]=e.createElementVNode("div",{class:"sky-dialog-clearfix"},null,-1)),e.createElementVNode("div",{ref_key:"dialogPaper",ref:k,class:e.normalizeClass(["sky-dialog-paper",{"sky-dialog-paper-no-footer":!p.value}]),onTouchstart:b,onTouchend:w},[r.value?(e.openBlock(),e.createElementBlock("div",Z)):e.createCommentVNode("",!0),e.renderSlot(l.$slots,"default",{},void 0,!0)],34),p.value?(e.openBlock(),e.createElementBlock("div",ee,[e.renderSlot(l.$slots,"buttons",{},void 0,!0)])):e.createCommentVNode("",!0)],512)])],4)):e.createCommentVNode("",!0)]))}},I=B(te,[["__scopeId","data-v-d1a407c7"]]),oe={class:"sky-dialog-overlay"},le={class:"sky-dialog-header"},ne=["title"],ae={width:"15",height:"15",viewBox:"0 0 451.847 451.847",style:{transform:"rotate(90deg)"}},se={key:0,class:"sky-dialog-subtitle"},de={key:0,class:"sky-dialog-swipe-area"},ie={key:0,class:"sky-dialog-footer"},re={__name:"DialogNext",props:{modelValue:{type:Boolean,default:!1},title:{type:String,default:""},subtitle:{type:String,default:""},zIndex:{type:[Number,String],default:null},closeText:{type:String,default:"Назад"},closeOnEsc:{type:Boolean,default:!0},hasButtons:{type:Boolean,default:null}},emits:["update:modelValue","close","save"],setup(t,{emit:v}){const a=e.useSlots(),c=t,m=v,i=e.ref(null),k=e.ref(null),d=e.ref(0),r=e.computed(()=>{try{return o.isIosWebview()}catch{return!1}}),y=e.computed(()=>{try{return o.isAndroidWebview()}catch{return!1}}),p=e.computed(()=>c.hasButtons!==null?c.hasButtons:!!a.buttons),g=()=>{m("update:modelValue",!1),m("close")},h=l=>{l.key==="Escape"&&c.closeOnEsc&&c.modelValue&&g(),l.key==="Enter"&&c.modelValue&&m("save")},b=l=>{l.touches[0].clientX<35&&(d.value=l.touches[0].clientX)},w=l=>{d.value>0&&d.value<35&&l.changedTouches[0].clientX-d.value>50&&g(),d.value=0},s=()=>{if(!(!y.value||!i.value))try{if(typeof Android<"u"&&Android.getDisplayCutoutTop){const l=Android.getDisplayCutoutTop();if(l&&window.devicePixelRatio>1){const f=l/window.devicePixelRatio;i.value.style.paddingTop=f+"px"}}}catch{}};return e.watch(()=>c.modelValue,l=>{l?(document.body.style.overflow="hidden",e.nextTick(()=>{s()})):document.body.style.overflow=""}),e.onMounted(()=>{document.addEventListener("keydown",h),window.addEventListener("resize",s)}),e.onUnmounted(()=>{document.removeEventListener("keydown",h),window.removeEventListener("resize",s),document.body.style.overflow=""}),(l,f)=>(e.openBlock(),e.createBlock(e.Teleport,{to:"body"},[t.modelValue?(e.openBlock(),e.createElementBlock("div",{key:0,class:"sky-dialogbox sky-dialogbox-next",style:e.normalizeStyle([t.zIndex?{"z-index":t.zIndex}:null])},[e.createElementVNode("div",oe,[e.createElementVNode("div",{ref_key:"dialogContent",ref:i,class:"sky-dialog-content"},[e.createElementVNode("div",le,[e.createElementVNode("button",{class:"sky-dialog-back",title:t.closeText,onClick:g},[(e.openBlock(),e.createElementBlock("svg",ae,[...f[0]||(f[0]=[e.createElementVNode("path",{fill:"currentColor",d:"M225.923,354.706c-8.098,0-16.195-3.092-22.369-9.263L9.27,151.157c-12.359-12.359-12.359-32.397,0-44.751c12.354-12.354,32.388-12.354,44.748,0l171.905,171.915l171.906-171.909c12.359-12.354,32.391-12.354,44.744,0c12.365,12.354,12.365,32.392,0,44.751L248.292,345.449C242.115,351.621,234.018,354.706,225.923,354.706z"},null,-1)])]))],8,ne),e.createElementVNode("div",{class:e.normalizeClass(["sky-dialog-title",{"sky-dialog-title-with-subtitle":t.subtitle}])},[e.createTextVNode(e.toDisplayString(t.title)+" ",1),t.subtitle?(e.openBlock(),e.createElementBlock("span",se,e.toDisplayString(t.subtitle),1)):e.createCommentVNode("",!0)],2)]),e.createElementVNode("div",{ref_key:"dialogPaper",ref:k,class:e.normalizeClass(["sky-dialog-paper",{"sky-dialog-paper-no-footer":!p.value}]),onTouchstart:b,onTouchend:w},[r.value?(e.openBlock(),e.createElementBlock("div",de)):e.createCommentVNode("",!0),e.renderSlot(l.$slots,"default",{},void 0,!0)],34),p.value?(e.openBlock(),e.createElementBlock("div",ie,[e.renderSlot(l.$slots,"buttons",{},void 0,!0)])):e.createCommentVNode("",!0)],512)])],4)):e.createCommentVNode("",!0)]))}},x=B(re,[["__scopeId","data-v-c2e2d8f9"]]),ce={__name:"Dialog",props:{modelValue:{type:Boolean,default:!1},title:{type:String,default:""},subtitle:{type:String,default:""},zIndex:{type:[Number,String],default:null},closeText:{type:String,default:""},closeOnEsc:{type:Boolean,default:!0},mode:{type:String,default:null,validator:t=>[null,"next","classic"].includes(t)}},emits:["update:modelValue","close","save"],setup(t,{emit:v}){const a=t,c=v,m=e.computed({get:()=>a.modelValue,set:d=>c("update:modelValue",d)}),i=e.ref(!0);e.onMounted(()=>{try{new URLSearchParams(window.location.search).get("rocketMode")==="false"?i.value=!1:i.value=!0}catch{i.value=!0}});const k=e.computed(()=>a.mode==="next"?x:a.mode==="classic"?I:i.value?x:I);return(d,r)=>(e.openBlock(),e.createBlock(e.resolveDynamicComponent(k.value),{modelValue:m.value,"onUpdate:modelValue":r[0]||(r[0]=y=>m.value=y),title:t.title,subtitle:t.subtitle,"z-index":t.zIndex,"close-text":t.closeText,"close-on-esc":t.closeOnEsc,"has-buttons":!!d.$slots.buttons,onClose:r[1]||(r[1]=y=>d.$emit("close")),onSave:r[2]||(r[2]=y=>d.$emit("save"))},e.createSlots({default:e.withCtx(()=>[e.renderSlot(d.$slots,"default")]),_:2},[d.$slots.buttons?{name:"buttons",fn:e.withCtx(()=>[e.renderSlot(d.$slots,"buttons")]),key:"0"}:void 0]),1064,["modelValue","title","subtitle","z-index","close-text","close-on-esc","has-buttons"]))}},ue={props:{to:{type:String,default:"body"}}};function me(t,v,a,c,m,i){return e.openBlock(),e.createBlock(e.Teleport,{to:a.to},[e.renderSlot(t.$slots,"default")],8,["to"])}const T=B(ue,[["render",me]]),fe={class:"sky-modal-header"},ke=["title"],ye={width:"15",height:"15",viewBox:"0 0 451.847 451.847",style:{transform:"rotate(90deg)"}},ve={class:"sky-modal-title-wrapper"},pe={class:"sky-modal-title"},ge={key:0,class:"sky-modal-subtitle"},he={class:"sky-modal-body"},be={key:0,class:"sky-modal-footer"},we={__name:"Modal",props:{modelValue:{type:Boolean,default:!1},title:{type:String,default:""},subtitle:{type:String,default:""},closeTitle:{type:String,default:"Закрити"},closeOnOverlay:{type:Boolean,default:!0},closeOnEsc:{type:Boolean,default:!0},width:{type:String,default:"100%"},height:{type:String,default:"100%"}},emits:["update:modelValue","close"],setup(t,{emit:v}){const a=t,c=v,m=e.computed(()=>({width:a.width,height:a.height})),i=()=>{c("update:modelValue",!1),c("close")},k=()=>{a.closeOnOverlay&&i()},d=r=>{r.key==="Escape"&&a.closeOnEsc&&a.modelValue&&i()};return e.watch(()=>a.modelValue,r=>{r?document.body.style.overflow="hidden":document.body.style.overflow=""}),e.onMounted(()=>{document.addEventListener("keydown",d)}),e.onUnmounted(()=>{document.removeEventListener("keydown",d),document.body.style.overflow=""}),(r,y)=>(e.openBlock(),e.createBlock(T,{to:"body"},{default:e.withCtx(()=>[t.modelValue?(e.openBlock(),e.createElementBlock("div",{key:0,class:"sky-modal-overlay",onMousedown:e.withModifiers(k,["self"])},[e.createElementVNode("div",{class:"sky-modal",style:e.normalizeStyle(m.value)},[e.createElementVNode("div",fe,[e.createElementVNode("button",{class:"sky-modal-back",onClick:i,title:t.closeTitle},[(e.openBlock(),e.createElementBlock("svg",ye,[...y[0]||(y[0]=[e.createElementVNode("path",{fill:"currentColor",d:"M225.923,354.706c-8.098,0-16.195-3.092-22.369-9.263L9.27,151.157c-12.359-12.359-12.359-32.397,0-44.751c12.354-12.354,32.388-12.354,44.748,0l171.905,171.915l171.906-171.909c12.359-12.354,32.391-12.354,44.744,0c12.365,12.354,12.365,32.392,0,44.751L248.292,345.449C242.115,351.621,234.018,354.706,225.923,354.706z"},null,-1)])]))],8,ke),e.createElementVNode("div",ve,[e.createElementVNode("h4",pe,e.toDisplayString(t.title),1),t.subtitle?(e.openBlock(),e.createElementBlock("div",ge,e.toDisplayString(t.subtitle),1)):e.createCommentVNode("",!0)])]),e.createElementVNode("div",he,[e.renderSlot(r.$slots,"default",{},void 0,!0)]),r.$slots.footer?(e.openBlock(),e.createElementBlock("div",be,[y[1]||(y[1]=e.createElementVNode("div",null,null,-1)),e.renderSlot(r.$slots,"footer",{},void 0,!0),y[2]||(y[2]=e.createElementVNode("div",null,null,-1))])):e.createCommentVNode("",!0)],4)],32)):e.createCommentVNode("",!0)]),_:3}))}},Ee=B(we,[["__scopeId","data-v-e16b0dc3"]]),Be=["disabled"],Se={key:0,class:"sky-btn-spinner"},Ve={__name:"SkyButton",props:{variant:{type:String,default:"primary",validator:t=>["primary","danger","secondary","outline"].includes(t)},loading:{type:Boolean,default:!1},disabled:{type:Boolean,default:!1},block:{type:Boolean,default:!1},icon:{type:Boolean,default:!1}},setup(t){return(v,a)=>(e.openBlock(),e.createElementBlock("button",e.mergeProps({class:["sky-btn",[`sky-btn-${t.variant}`,{"sky-btn-block":t.block,"sky-btn-loading":t.loading,"sky-btn-icon":t.icon}]],disabled:t.disabled||t.loading},v.$attrs),[t.loading?(e.openBlock(),e.createElementBlock("span",Se)):e.createCommentVNode("",!0),e.renderSlot(v.$slots,"default",{},void 0,!0)],16,Be))}},Ne=B(Ve,[["__scopeId","data-v-0d61fbfd"]]),Ce=["disabled"],$e={key:0,class:"sky-select-dropdown"},Ie=["onClick","onMouseenter"],xe={key:0,class:"sky-select-check",viewBox:"0 0 16 16",fill:"none","aria-hidden":"true"},De={__name:"SkySelect",props:{modelValue:{default:null},options:{type:Array,default:()=>[]},placeholder:{type:String,default:""},disabled:{type:Boolean,default:!1},block:{type:Boolean,default:!1}},emits:["update:modelValue"],setup(t,{emit:v}){const a=t,c=v,m=e.ref(null),i=e.ref(!1),k=e.ref(-1),d=e.computed(()=>a.options.map(s=>typeof s=="string"?{label:s,value:s}:s)),r=e.computed(()=>d.value.find(s=>s.value===a.modelValue)??null);function y(){a.disabled||(i.value?g():p())}function p(){i.value=!0,k.value=d.value.findIndex(s=>s.value===a.modelValue),document.addEventListener("mousedown",b)}function g(){i.value=!1,document.removeEventListener("mousedown",b)}function h(s){c("update:modelValue",s.value),g()}function b(s){var l;(l=m.value)!=null&&l.contains(s.target)||g()}function w(s){if(!i.value){(s.key==="Enter"||s.key===" ")&&(s.preventDefault(),p());return}s.key==="Escape"?g():s.key==="ArrowDown"?(s.preventDefault(),k.value=Math.min(k.value+1,d.value.length-1)):s.key==="ArrowUp"?(s.preventDefault(),k.value=Math.max(k.value-1,0)):s.key==="Enter"&&(s.preventDefault(),k.value>=0&&h(d.value[k.value]))}return e.onBeforeUnmount(()=>{document.removeEventListener("mousedown",b)}),(s,l)=>(e.openBlock(),e.createElementBlock("div",{ref_key:"root",ref:m,class:e.normalizeClass(["sky-select",{"sky-select-block":t.block,"sky-select-open":i.value,"sky-select-disabled":t.disabled}])},[e.createElementVNode("button",{type:"button",class:"sky-select-trigger",disabled:t.disabled,onClick:y,onKeydown:w},[e.createElementVNode("span",{class:e.normalizeClass(["sky-select-value",{"sky-select-placeholder":r.value===null}])},e.toDisplayString(r.value?r.value.label:t.placeholder),3),l[0]||(l[0]=e.createElementVNode("svg",{class:"sky-select-chevron",viewBox:"0 0 16 16",fill:"none","aria-hidden":"true"},[e.createElementVNode("path",{d:"M4 6l4 4 4-4",stroke:"currentColor","stroke-width":"1.5","stroke-linecap":"round","stroke-linejoin":"round"})],-1))],40,Ce),i.value?(e.openBlock(),e.createElementBlock("div",$e,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(d.value,(f,S)=>(e.openBlock(),e.createElementBlock("div",{key:f.value,class:e.normalizeClass(["sky-select-option",{"sky-select-option-selected":f.value===t.modelValue,"sky-select-option-focused":S===k.value}]),onClick:V=>h(f),onMouseenter:V=>k.value=S},[e.createElementVNode("span",null,e.toDisplayString(f.label),1),f.value===t.modelValue?(e.openBlock(),e.createElementBlock("svg",xe,[...l[1]||(l[1]=[e.createElementVNode("path",{d:"M3 8l4 4 6-6",stroke:"currentColor","stroke-width":"1.5","stroke-linecap":"round","stroke-linejoin":"round"},null,-1)])])):e.createCommentVNode("",!0)],42,Ie))),128))])):e.createCommentVNode("",!0)],2))}},Te=B(De,[["__scopeId","data-v-5ca23325"]]);exports.SkyserviceAPI=o.SkyserviceAPI;exports.exit=o.exit;exports.getBack=o.getBack;exports.getCompany=o.getCompany;exports.getLang=o.getLang;exports.getLocalStorageData=o.getLocalStorageData;exports.getProductCategories=o.getProductCategories;exports.getSenderId=o.getSenderId;exports.getStoreData=o.getStoreData;exports.getToken=o.getToken;exports.getUser=o.getUser;exports.getWindowData=o.getWindowData;exports.isAndroidWebview=o.isAndroidWebview;exports.isCefWebview=o.isCefWebview;exports.isInIframe=o.isInIframe;exports.isInsideIframe=o.isInsideIframe;exports.isIosWebview=o.isIosWebview;exports.isWebview=o.isWebview;exports.navigate=o.navigate;exports.notify=o.notify;exports.notifyError=o.notifyError;exports.notifyWarn=o.notifyWarn;exports.onMessage=o.onMessage;exports.openCrispChat=o.openCrispChat;exports.openExternalLink=o.openExternalLink;exports.setLocalStorage=o.setLocalStorage;exports.setRocketMode=o.setRocketMode;exports.setSenderId=o.setSenderId;exports.trackVisit=o.trackVisit;exports.webviewCheck=o.webviewCheck;exports.BaseTeleport=T;exports.Dialog=ce;exports.DialogModal=I;exports.DialogNext=x;exports.Header=J;exports.Modal=Ee;exports.SkyButton=Ne;exports.SkySelect=Te;
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("vue"),o=require("./api-CpNSgpsc.cjs");require("ua-parser-js");const B=(t,v)=>{const a=t.__vccOpts||t;for(const[c,m]of v)a[c]=m;return a},M={class:"sky-header-container"},z={class:"topmenubox"},P={class:"header-left"},O=["title"],A={width:"15",height:"15",viewBox:"0 0 451.847 451.847",style:{transform:"rotate(90deg)"}},W={class:"notPadding"},R={class:"topmenu-title"},_={key:0,class:"title-dropdown"},U={class:"title-dropdown-header"},X=["onClick"],F={class:"pageName"},K={class:"pageVisit"},j={key:0,class:"topmenu-description"},q={class:"topmenubox-button"},H={__name:"Header",props:{title:{type:String,default:""},subtitle:{type:String,default:""},showBackButton:{type:Boolean,default:!0},backButtonTitle:{type:String,default:"Назад"},backEvent:{type:Function,default:null},dropdownItems:{type:Array,default:()=>[]},dropdownTitle:{type:String,default:"Останні відвідані розділи"},visitLabel:{type:String,default:"Останнє відвідування"},trackPageName:{type:String,default:""},trackPagePath:{type:String,default:""},appId:{type:String,default:""}},emits:["back","navigate"],setup(t,{emit:v}){const a=t;o.setSenderId(a.appId||o.getSenderId());const c=v,m=e.ref(null),i=e.ref(!1),k=e.ref([]),d=e.ref({});o.isInsideIframe()&&a.trackPageName&&o.trackVisit(a.trackPageName,a.trackPagePath||`/${a.trackPageName}`);const r=e.ref(null);o.isInsideIframe()&&o.getLocalStorageData("rocketMode").then(async n=>{r.value=n,await o.getLocalStorageData("fallbackRocketMode")===null&&o.setLocalStorage("fallbackRocketMode",n===!0||n==="true"?"true":"false"),o.setRocketMode(!0)}),e.onUnmounted(()=>{S()}),o.isInsideIframe()&&o.getWindowData("lang").then(n=>{n!=null&&(d.value=n)});function y(n){try{if(!n)return;const u=typeof n=="string"?JSON.parse(n):n;u!=null&&u.pages&&(k.value=Object.values(u.pages))}catch{}}y(localStorage.componentStats),o.isInsideIframe()&&o.getLocalStorageData("componentStats").then(n=>{n!=null&&(localStorage.setItem("componentStats",JSON.stringify(n)),y(n))});const p=e.computed(()=>[...a.dropdownItems.length?a.dropdownItems:k.value].sort((u,E)=>E.lastVisit-u.lastVisit)),g=()=>{p.value.length&&(i.value=!i.value)},h=()=>{i.value=!1},b=n=>{c("navigate",n.path),o.isInsideIframe()&&o.navigate(n.path),h()},w=n=>{if(!n)return"";const u=d.value[n]||n;return u.charAt(0).toUpperCase()+u.slice(1)},s=n=>{const E=Date.now()-n,N=Math.floor(E/1e3),C=Math.floor(N/60),$=Math.floor(C/60),D=Math.floor($/24);return D>0?`${D}д тому`:$>0?`${$}год тому`:C>0?`${C}хв тому`:`${N}с тому`},l=n=>{m.value&&!m.value.contains(n.target)&&h()};e.onMounted(()=>{document.addEventListener("click",l,!0)}),e.onUnmounted(()=>{document.removeEventListener("click",l,!0)});const f=e.computed(()=>a.backEvent||a.showBackButton&&o.isInsideIframe()),S=()=>{if(r.value!==null){const n=r.value===!0||r.value==="true";o.setRocketMode(n)}},V=()=>p.value.find(n=>n.name!==a.trackPageName&&n.path),L=async()=>{if(a.backEvent)return S(),a.backEvent();let n=V();if(!n&&o.isInsideIframe()){const u=await o.getLocalStorageData("componentStats");u&&(y(u),n=V())}S(),n?o.navigate(n.path):o.exit()};return(n,u)=>(e.openBlock(),e.createElementBlock("header",M,[e.createElementVNode("div",z,[e.createElementVNode("div",P,[f.value?(e.openBlock(),e.createElementBlock("button",{key:0,class:"btn-back",onClick:L,title:t.backButtonTitle},[(e.openBlock(),e.createElementBlock("svg",A,[...u[0]||(u[0]=[e.createElementVNode("path",{fill:"currentColor",d:"M225.923,354.706c-8.098,0-16.195-3.092-22.369-9.263L9.27,151.157c-12.359-12.359-12.359-32.397,0-44.751c12.354-12.354,32.388-12.354,44.748,0l171.905,171.915l171.906-171.909c12.359-12.354,32.391-12.354,44.744,0c12.365,12.354,12.365,32.392,0,44.751L248.292,345.449C242.115,351.621,234.018,354.706,225.923,354.706z"},null,-1)])]))],8,O)):e.createCommentVNode("",!0),e.createElementVNode("div",{ref_key:"dropdownRef",ref:m,class:"titleAndDesc"},[e.createElementVNode("button",{class:e.normalizeClass(["title-dropdown-toggle",{"title-dropdown-toggle-active":p.value.length}]),onClick:g},[e.renderSlot(n.$slots,"title",{},()=>[e.createElementVNode("h4",W,[e.createElementVNode("span",R,e.toDisplayString(t.title),1),p.value.length?(e.openBlock(),e.createElementBlock("svg",{key:0,class:e.normalizeClass(["arrow",{open:i.value}]),width:"12",height:"12",viewBox:"0 0 451.847 451.847",style:{"flex-shrink":"0"}},[...u[1]||(u[1]=[e.createElementVNode("path",{fill:"currentColor",d:"M225.923,354.706c-8.098,0-16.195-3.092-22.369-9.263L9.27,151.157c-12.359-12.359-12.359-32.397,0-44.751c12.354-12.354,32.388-12.354,44.748,0l171.905,171.915l171.906-171.909c12.359-12.354,32.391-12.354,44.744,0c12.365,12.354,12.365,32.392,0,44.751L248.292,345.449C242.115,351.621,234.018,354.706,225.923,354.706z"},null,-1)])],2)):e.createCommentVNode("",!0)])],!0)],2),i.value&&p.value.length?(e.openBlock(),e.createElementBlock("div",_,[e.createElementVNode("div",U,e.toDisplayString(t.dropdownTitle),1),u[2]||(u[2]=e.createElementVNode("div",{class:"title-dropdown-divider"},null,-1)),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(p.value,(E,N)=>(e.openBlock(),e.createElementBlock("div",{key:N,class:"title-dropdown-item",onClick:C=>b(E)},[e.createElementVNode("p",F,e.toDisplayString(w(E.name)),1),e.createElementVNode("small",K," ("+e.toDisplayString(t.visitLabel)+" "+e.toDisplayString(s(E.lastVisit))+") ",1)],8,X))),128))])):e.createCommentVNode("",!0),e.renderSlot(n.$slots,"subtitle",{},()=>[t.subtitle?(e.openBlock(),e.createElementBlock("p",j,e.toDisplayString(t.subtitle),1)):e.createCommentVNode("",!0)],!0)],512)]),e.createElementVNode("div",q,[u[3]||(u[3]=e.createElementVNode("div",null,null,-1)),e.renderSlot(n.$slots,"default",{},void 0,!0),u[4]||(u[4]=e.createElementVNode("div",null,null,-1))])])]))}},J=B(H,[["__scopeId","data-v-ad8f398f"]]),G={class:"sky-dialog-overlay"},Q={key:0,class:"sky-dialog-subtitle"},Y=["title"],Z={key:0,class:"sky-dialog-swipe-area"},ee={key:0,class:"sky-dialog-footer"},te={__name:"DialogModal",props:{modelValue:{type:Boolean,default:!1},title:{type:String,default:""},subtitle:{type:String,default:""},zIndex:{type:[Number,String],default:null},closeText:{type:String,default:"Закрити"},closeOnEsc:{type:Boolean,default:!0},hasButtons:{type:Boolean,default:null}},emits:["update:modelValue","close","save"],setup(t,{emit:v}){const a=e.useSlots(),c=t,m=v,i=e.ref(null),k=e.ref(null),d=e.ref(0),r=e.computed(()=>{try{return o.isIosWebview()}catch{return!1}}),y=e.computed(()=>{try{return o.isAndroidWebview()}catch{return!1}}),p=e.computed(()=>c.hasButtons!==null?c.hasButtons:!!a.buttons),g=()=>{m("update:modelValue",!1),m("close")},h=l=>{l.key==="Escape"&&c.closeOnEsc&&c.modelValue&&g(),l.key==="Enter"&&c.modelValue&&m("save")},b=l=>{l.touches[0].clientX<35&&(d.value=l.touches[0].clientX)},w=l=>{d.value>0&&d.value<35&&l.changedTouches[0].clientX-d.value>50&&g(),d.value=0},s=()=>{if(!(!y.value||!i.value))try{if(typeof Android<"u"&&Android.getDisplayCutoutTop){const l=Android.getDisplayCutoutTop();if(l&&window.devicePixelRatio>1){const f=l/window.devicePixelRatio;i.value.style.paddingTop=f+"px"}}}catch{}};return e.watch(()=>c.modelValue,l=>{l?(document.body.style.overflow="hidden",e.nextTick(()=>{s()})):document.body.style.overflow=""}),e.onMounted(()=>{document.addEventListener("keydown",h),window.addEventListener("resize",s)}),e.onUnmounted(()=>{document.removeEventListener("keydown",h),window.removeEventListener("resize",s),document.body.style.overflow=""}),(l,f)=>(e.openBlock(),e.createBlock(e.Teleport,{to:"body"},[t.modelValue?(e.openBlock(),e.createElementBlock("div",{key:0,class:"sky-dialogbox sky-dialogbox-classic",style:e.normalizeStyle([t.zIndex?{"z-index":t.zIndex}:null])},[e.createElementVNode("div",G,[e.createElementVNode("div",{ref_key:"dialogContent",ref:i,class:"sky-dialog-content"},[e.createElementVNode("div",{class:e.normalizeClass(["sky-dialog-title",{"sky-dialog-title-with-subtitle":t.subtitle}])},[e.createTextVNode(e.toDisplayString(t.title)+" ",1),t.subtitle?(e.openBlock(),e.createElementBlock("span",Q,e.toDisplayString(t.subtitle),1)):e.createCommentVNode("",!0)],2),e.createElementVNode("button",{class:"sky-dialog-close",title:t.closeText,onClick:g},[...f[0]||(f[0]=[e.createElementVNode("svg",{viewBox:"0 0 16 16",width:"16",height:"16"},[e.createElementVNode("line",{x1:"1",y1:"15",x2:"15",y2:"1",stroke:"currentColor","stroke-width":"2"}),e.createElementVNode("line",{x1:"1",y1:"1",x2:"15",y2:"15",stroke:"currentColor","stroke-width":"2"})],-1)])],8,Y),f[1]||(f[1]=e.createElementVNode("div",{class:"sky-dialog-clearfix"},null,-1)),e.createElementVNode("div",{ref_key:"dialogPaper",ref:k,class:e.normalizeClass(["sky-dialog-paper",{"sky-dialog-paper-no-footer":!p.value}]),onTouchstart:b,onTouchend:w},[r.value?(e.openBlock(),e.createElementBlock("div",Z)):e.createCommentVNode("",!0),e.renderSlot(l.$slots,"default",{},void 0,!0)],34),p.value?(e.openBlock(),e.createElementBlock("div",ee,[e.renderSlot(l.$slots,"buttons",{},void 0,!0)])):e.createCommentVNode("",!0)],512)])],4)):e.createCommentVNode("",!0)]))}},I=B(te,[["__scopeId","data-v-d1a407c7"]]),oe={class:"sky-dialog-overlay"},le={class:"sky-dialog-header"},ne=["title"],ae={width:"15",height:"15",viewBox:"0 0 451.847 451.847",style:{transform:"rotate(90deg)"}},se={key:0,class:"sky-dialog-subtitle"},de={key:0,class:"sky-dialog-swipe-area"},ie={key:0,class:"sky-dialog-footer"},re={__name:"DialogNext",props:{modelValue:{type:Boolean,default:!1},title:{type:String,default:""},subtitle:{type:String,default:""},zIndex:{type:[Number,String],default:null},closeText:{type:String,default:"Назад"},closeOnEsc:{type:Boolean,default:!0},hasButtons:{type:Boolean,default:null}},emits:["update:modelValue","close","save"],setup(t,{emit:v}){const a=e.useSlots(),c=t,m=v,i=e.ref(null),k=e.ref(null),d=e.ref(0),r=e.computed(()=>{try{return o.isIosWebview()}catch{return!1}}),y=e.computed(()=>{try{return o.isAndroidWebview()}catch{return!1}}),p=e.computed(()=>c.hasButtons!==null?c.hasButtons:!!a.buttons),g=()=>{m("update:modelValue",!1),m("close")},h=l=>{l.key==="Escape"&&c.closeOnEsc&&c.modelValue&&g(),l.key==="Enter"&&c.modelValue&&m("save")},b=l=>{l.touches[0].clientX<35&&(d.value=l.touches[0].clientX)},w=l=>{d.value>0&&d.value<35&&l.changedTouches[0].clientX-d.value>50&&g(),d.value=0},s=()=>{if(!(!y.value||!i.value))try{if(typeof Android<"u"&&Android.getDisplayCutoutTop){const l=Android.getDisplayCutoutTop();if(l&&window.devicePixelRatio>1){const f=l/window.devicePixelRatio;i.value.style.paddingTop=f+"px"}}}catch{}};return e.watch(()=>c.modelValue,l=>{l?(document.body.style.overflow="hidden",e.nextTick(()=>{s()})):document.body.style.overflow=""}),e.onMounted(()=>{document.addEventListener("keydown",h),window.addEventListener("resize",s)}),e.onUnmounted(()=>{document.removeEventListener("keydown",h),window.removeEventListener("resize",s),document.body.style.overflow=""}),(l,f)=>(e.openBlock(),e.createBlock(e.Teleport,{to:"body"},[t.modelValue?(e.openBlock(),e.createElementBlock("div",{key:0,class:"sky-dialogbox sky-dialogbox-next",style:e.normalizeStyle([t.zIndex?{"z-index":t.zIndex}:null])},[e.createElementVNode("div",oe,[e.createElementVNode("div",{ref_key:"dialogContent",ref:i,class:"sky-dialog-content"},[e.createElementVNode("div",le,[e.createElementVNode("button",{class:"sky-dialog-back",title:t.closeText,onClick:g},[(e.openBlock(),e.createElementBlock("svg",ae,[...f[0]||(f[0]=[e.createElementVNode("path",{fill:"currentColor",d:"M225.923,354.706c-8.098,0-16.195-3.092-22.369-9.263L9.27,151.157c-12.359-12.359-12.359-32.397,0-44.751c12.354-12.354,32.388-12.354,44.748,0l171.905,171.915l171.906-171.909c12.359-12.354,32.391-12.354,44.744,0c12.365,12.354,12.365,32.392,0,44.751L248.292,345.449C242.115,351.621,234.018,354.706,225.923,354.706z"},null,-1)])]))],8,ne),e.createElementVNode("div",{class:e.normalizeClass(["sky-dialog-title",{"sky-dialog-title-with-subtitle":t.subtitle}])},[e.createTextVNode(e.toDisplayString(t.title)+" ",1),t.subtitle?(e.openBlock(),e.createElementBlock("span",se,e.toDisplayString(t.subtitle),1)):e.createCommentVNode("",!0)],2)]),e.createElementVNode("div",{ref_key:"dialogPaper",ref:k,class:e.normalizeClass(["sky-dialog-paper",{"sky-dialog-paper-no-footer":!p.value}]),onTouchstart:b,onTouchend:w},[r.value?(e.openBlock(),e.createElementBlock("div",de)):e.createCommentVNode("",!0),e.renderSlot(l.$slots,"default",{},void 0,!0)],34),p.value?(e.openBlock(),e.createElementBlock("div",ie,[e.renderSlot(l.$slots,"buttons",{},void 0,!0)])):e.createCommentVNode("",!0)],512)])],4)):e.createCommentVNode("",!0)]))}},x=B(re,[["__scopeId","data-v-c2e2d8f9"]]),ce={__name:"Dialog",props:{modelValue:{type:Boolean,default:!1},title:{type:String,default:""},subtitle:{type:String,default:""},zIndex:{type:[Number,String],default:null},closeText:{type:String,default:""},closeOnEsc:{type:Boolean,default:!0},mode:{type:String,default:null,validator:t=>[null,"next","classic"].includes(t)}},emits:["update:modelValue","close","save"],setup(t,{emit:v}){const a=t,c=v,m=e.computed({get:()=>a.modelValue,set:d=>c("update:modelValue",d)}),i=e.ref(!0);e.onMounted(()=>{try{new URLSearchParams(window.location.search).get("rocketMode")==="false"?i.value=!1:i.value=!0}catch{i.value=!0}});const k=e.computed(()=>a.mode==="next"?x:a.mode==="classic"?I:i.value?x:I);return(d,r)=>(e.openBlock(),e.createBlock(e.resolveDynamicComponent(k.value),{modelValue:m.value,"onUpdate:modelValue":r[0]||(r[0]=y=>m.value=y),title:t.title,subtitle:t.subtitle,"z-index":t.zIndex,"close-text":t.closeText,"close-on-esc":t.closeOnEsc,"has-buttons":!!d.$slots.buttons,onClose:r[1]||(r[1]=y=>d.$emit("close")),onSave:r[2]||(r[2]=y=>d.$emit("save"))},e.createSlots({default:e.withCtx(()=>[e.renderSlot(d.$slots,"default")]),_:2},[d.$slots.buttons?{name:"buttons",fn:e.withCtx(()=>[e.renderSlot(d.$slots,"buttons")]),key:"0"}:void 0]),1064,["modelValue","title","subtitle","z-index","close-text","close-on-esc","has-buttons"]))}},ue={props:{to:{type:String,default:"body"}}};function me(t,v,a,c,m,i){return e.openBlock(),e.createBlock(e.Teleport,{to:a.to},[e.renderSlot(t.$slots,"default")],8,["to"])}const T=B(ue,[["render",me]]),fe={class:"sky-modal-header"},ke=["title"],ye={width:"15",height:"15",viewBox:"0 0 451.847 451.847",style:{transform:"rotate(90deg)"}},ve={class:"sky-modal-title-wrapper"},pe={class:"sky-modal-title"},ge={key:0,class:"sky-modal-subtitle"},he={class:"sky-modal-body"},be={key:0,class:"sky-modal-footer"},we={__name:"Modal",props:{modelValue:{type:Boolean,default:!1},title:{type:String,default:""},subtitle:{type:String,default:""},closeTitle:{type:String,default:"Закрити"},closeOnOverlay:{type:Boolean,default:!0},closeOnEsc:{type:Boolean,default:!0},width:{type:String,default:"100%"},height:{type:String,default:"100%"}},emits:["update:modelValue","close"],setup(t,{emit:v}){const a=t,c=v,m=e.computed(()=>({width:a.width,height:a.height})),i=()=>{c("update:modelValue",!1),c("close")},k=()=>{a.closeOnOverlay&&i()},d=r=>{r.key==="Escape"&&a.closeOnEsc&&a.modelValue&&i()};return e.watch(()=>a.modelValue,r=>{r?document.body.style.overflow="hidden":document.body.style.overflow=""}),e.onMounted(()=>{document.addEventListener("keydown",d)}),e.onUnmounted(()=>{document.removeEventListener("keydown",d),document.body.style.overflow=""}),(r,y)=>(e.openBlock(),e.createBlock(T,{to:"body"},{default:e.withCtx(()=>[t.modelValue?(e.openBlock(),e.createElementBlock("div",{key:0,class:"sky-modal-overlay",onMousedown:e.withModifiers(k,["self"])},[e.createElementVNode("div",{class:"sky-modal",style:e.normalizeStyle(m.value)},[e.createElementVNode("div",fe,[e.createElementVNode("button",{class:"sky-modal-back",onClick:i,title:t.closeTitle},[(e.openBlock(),e.createElementBlock("svg",ye,[...y[0]||(y[0]=[e.createElementVNode("path",{fill:"currentColor",d:"M225.923,354.706c-8.098,0-16.195-3.092-22.369-9.263L9.27,151.157c-12.359-12.359-12.359-32.397,0-44.751c12.354-12.354,32.388-12.354,44.748,0l171.905,171.915l171.906-171.909c12.359-12.354,32.391-12.354,44.744,0c12.365,12.354,12.365,32.392,0,44.751L248.292,345.449C242.115,351.621,234.018,354.706,225.923,354.706z"},null,-1)])]))],8,ke),e.createElementVNode("div",ve,[e.createElementVNode("h4",pe,e.toDisplayString(t.title),1),t.subtitle?(e.openBlock(),e.createElementBlock("div",ge,e.toDisplayString(t.subtitle),1)):e.createCommentVNode("",!0)])]),e.createElementVNode("div",he,[e.renderSlot(r.$slots,"default",{},void 0,!0)]),r.$slots.footer?(e.openBlock(),e.createElementBlock("div",be,[y[1]||(y[1]=e.createElementVNode("div",null,null,-1)),e.renderSlot(r.$slots,"footer",{},void 0,!0),y[2]||(y[2]=e.createElementVNode("div",null,null,-1))])):e.createCommentVNode("",!0)],4)],32)):e.createCommentVNode("",!0)]),_:3}))}},Ee=B(we,[["__scopeId","data-v-e16b0dc3"]]),Be=["disabled"],Se={key:0,class:"sky-btn-spinner"},Ve={__name:"SkyButton",props:{variant:{type:String,default:"primary",validator:t=>["primary","danger","secondary","outline"].includes(t)},loading:{type:Boolean,default:!1},disabled:{type:Boolean,default:!1},block:{type:Boolean,default:!1},icon:{type:Boolean,default:!1}},setup(t){return(v,a)=>(e.openBlock(),e.createElementBlock("button",e.mergeProps({class:["sky-btn",[`sky-btn-${t.variant}`,{"sky-btn-block":t.block,"sky-btn-loading":t.loading,"sky-btn-icon":t.icon}]],disabled:t.disabled||t.loading},v.$attrs),[t.loading?(e.openBlock(),e.createElementBlock("span",Se)):e.createCommentVNode("",!0),e.renderSlot(v.$slots,"default",{},void 0,!0)],16,Be))}},Ne=B(Ve,[["__scopeId","data-v-0d61fbfd"]]),Ce=["disabled"],$e={key:0,class:"sky-select-dropdown"},Ie=["onClick","onMouseenter"],xe={key:0,class:"sky-select-check",viewBox:"0 0 16 16",fill:"none","aria-hidden":"true"},De={__name:"SkySelect",props:{modelValue:{default:null},options:{type:Array,default:()=>[]},placeholder:{type:String,default:""},disabled:{type:Boolean,default:!1},block:{type:Boolean,default:!1}},emits:["update:modelValue"],setup(t,{emit:v}){const a=t,c=v,m=e.ref(null),i=e.ref(!1),k=e.ref(-1),d=e.computed(()=>a.options.map(s=>typeof s=="string"?{label:s,value:s}:s)),r=e.computed(()=>d.value.find(s=>s.value===a.modelValue)??null);function y(){a.disabled||(i.value?g():p())}function p(){i.value=!0,k.value=d.value.findIndex(s=>s.value===a.modelValue),document.addEventListener("mousedown",b)}function g(){i.value=!1,document.removeEventListener("mousedown",b)}function h(s){c("update:modelValue",s.value),g()}function b(s){var l;(l=m.value)!=null&&l.contains(s.target)||g()}function w(s){if(!i.value){(s.key==="Enter"||s.key===" ")&&(s.preventDefault(),p());return}s.key==="Escape"?g():s.key==="ArrowDown"?(s.preventDefault(),k.value=Math.min(k.value+1,d.value.length-1)):s.key==="ArrowUp"?(s.preventDefault(),k.value=Math.max(k.value-1,0)):s.key==="Enter"&&(s.preventDefault(),k.value>=0&&h(d.value[k.value]))}return e.onBeforeUnmount(()=>{document.removeEventListener("mousedown",b)}),(s,l)=>(e.openBlock(),e.createElementBlock("div",{ref_key:"root",ref:m,class:e.normalizeClass(["sky-select",{"sky-select-block":t.block,"sky-select-open":i.value,"sky-select-disabled":t.disabled}])},[e.createElementVNode("button",{type:"button",class:"sky-select-trigger",disabled:t.disabled,onClick:y,onKeydown:w},[e.createElementVNode("span",{class:e.normalizeClass(["sky-select-value",{"sky-select-placeholder":r.value===null}])},e.toDisplayString(r.value?r.value.label:t.placeholder),3),l[0]||(l[0]=e.createElementVNode("svg",{class:"sky-select-chevron",viewBox:"0 0 16 16",fill:"none","aria-hidden":"true"},[e.createElementVNode("path",{d:"M4 6l4 4 4-4",stroke:"currentColor","stroke-width":"1.5","stroke-linecap":"round","stroke-linejoin":"round"})],-1))],40,Ce),i.value?(e.openBlock(),e.createElementBlock("div",$e,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(d.value,(f,S)=>(e.openBlock(),e.createElementBlock("div",{key:f.value,class:e.normalizeClass(["sky-select-option",{"sky-select-option-selected":f.value===t.modelValue,"sky-select-option-focused":S===k.value}]),onClick:V=>h(f),onMouseenter:V=>k.value=S},[e.createElementVNode("span",null,e.toDisplayString(f.label),1),f.value===t.modelValue?(e.openBlock(),e.createElementBlock("svg",xe,[...l[1]||(l[1]=[e.createElementVNode("path",{d:"M3 8l4 4 6-6",stroke:"currentColor","stroke-width":"1.5","stroke-linecap":"round","stroke-linejoin":"round"},null,-1)])])):e.createCommentVNode("",!0)],42,Ie))),128))])):e.createCommentVNode("",!0)],2))}},Te=B(De,[["__scopeId","data-v-5ca23325"]]);exports.SkyserviceAPI=o.SkyserviceAPI;exports.exit=o.exit;exports.getBack=o.getBack;exports.getCompany=o.getCompany;exports.getLang=o.getLang;exports.getLocalStorageData=o.getLocalStorageData;exports.getProductCategories=o.getProductCategories;exports.getSenderId=o.getSenderId;exports.getStoreData=o.getStoreData;exports.getToken=o.getToken;exports.getUser=o.getUser;exports.getWindowData=o.getWindowData;exports.isAndroidWebview=o.isAndroidWebview;exports.isCefWebview=o.isCefWebview;exports.isInIframe=o.isInIframe;exports.isInsideIframe=o.isInsideIframe;exports.isIosWebview=o.isIosWebview;exports.isWebview=o.isWebview;exports.navigate=o.navigate;exports.notify=o.notify;exports.notifyError=o.notifyError;exports.notifyWarn=o.notifyWarn;exports.onMessage=o.onMessage;exports.openCrispChat=o.openCrispChat;exports.openExternalLink=o.openExternalLink;exports.setLocalStorage=o.setLocalStorage;exports.setRocketMode=o.setRocketMode;exports.setSenderId=o.setSenderId;exports.trackVisit=o.trackVisit;exports.webviewCheck=o.webviewCheck;exports.BaseTeleport=T;exports.Dialog=ce;exports.DialogModal=I;exports.DialogNext=x;exports.Header=J;exports.Modal=Ee;exports.SkyButton=Ne;exports.SkySelect=Te;
|
package/dist/vue-dev-kit.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { ref as b, onUnmounted as P, computed as S, onMounted as D, openBlock as i, createElementBlock as r, createElementVNode as t, createCommentVNode as g, normalizeClass as E, renderSlot as x, toDisplayString as $, Fragment as G, renderList as Q, useSlots as Y, watch as F, nextTick as Z, createBlock as z, Teleport as U, normalizeStyle as W, createTextVNode as ee, resolveDynamicComponent as se, createSlots as ne, withCtx as X, withModifiers as ae, mergeProps as ie, onBeforeUnmount as de } from "vue";
|
|
2
|
-
import { A as ue, f as re, o as I, B as ce, c as _, y as fe, z as j, k as ye, r as H, e as ve, p as te, l as oe } from "./api-
|
|
3
|
-
import { S as bt, g as wt, a as $t, b as St, d as xt, h as Bt, i as Ct, j as Et, m as Vt, n as Tt, q as It, s as Lt, t as Mt, u as Pt, v as Dt, w as zt, x as Ot, C as At } from "./api-
|
|
2
|
+
import { A as ue, f as re, o as I, B as ce, c as _, y as fe, z as j, k as ye, r as H, e as ve, p as te, l as oe } from "./api-Eeo-WwNi.js";
|
|
3
|
+
import { S as bt, g as wt, a as $t, b as St, d as xt, h as Bt, i as Ct, j as Et, m as Vt, n as Tt, q as It, s as Lt, t as Mt, u as Pt, v as Dt, w as zt, x as Ot, C as At } from "./api-Eeo-WwNi.js";
|
|
4
4
|
import "ua-parser-js";
|
|
5
5
|
const L = (e, p) => {
|
|
6
6
|
const s = e.__vccOpts || e;
|
package/package.json
CHANGED
package/dist/api-JFgUnzEe.cjs
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
"use strict";const k=require("ua-parser-js"),v="DASHBOARD",b=5e3;let E=0,f=null;function A(){return`sdk_${Date.now()}_${++E}`}function L(){return"APP_"+Math.random().toString(36).slice(2,10)}function C(t){f=t}function w(){return f||(f=L()),f}function a(t){window.parent.postMessage({...t,sender:w(),target:t.target||v},"*")}function p(t,e,r=b){return y()?new Promise(n=>{const o=A(),i=w(),c=setTimeout(()=>{window.removeEventListener("message",u),n(null)},r);function u(S){const s=S.data;(s==null?void 0:s.type)==="DATA_RESPONSE"&&(s==null?void 0:s.requestId)===o&&(!s.target||s.target===i)&&(clearTimeout(c),window.removeEventListener("message",u),n(s.data??null))}window.addEventListener("message",u),a({type:"DATA_REQUEST",requestId:o,source:t,key:e})}):Promise.resolve(null)}function P(t){a({type:"navigate",path:t})}function m(){a({type:"exit"})}const T=m;function g(t){return p("store",t)}function l(t){return p("localStorage",t)}function _(t){return p("window",t)}function D(){return g("company")}function W(){return g("user")}function R(){return l("token")}function U(){return l("lang")}function $(){return g("productCategories")}function M(t,e){a({type:"setLocalStorage",key:t,value:e})}function O(t){a({type:"setRocketMode",value:t})}function q(t,e){a({type:"trackVisit",name:t,path:e})}function x(t){a({type:"openExternalLink",url:t})}function B(){a({type:"openCrispChat"})}function N(t){a({type:"notification",text:t})}function j(t){a({type:"notification",text:t,variant:"error"})}function G(t){a({type:"notification",text:t,variant:"warn"})}function y(){try{return window.self!==window.top}catch{return!0}}const V=y;function F(t){function e(r){var n;((n=r.data)==null?void 0:n.sender)===v&&t(r.data)}return window.addEventListener("message",e),()=>window.removeEventListener("message",e)}function d(){if(typeof window>"u")return"browser";if(window.webkit!=null&&window.webkit.messageHandlers!==void 0)try{if(k(navigator.userAgent).browser.name==="WebKit")return"ios_webview"}catch(t){console.error(t)}return typeof Android<"u"?"android_webview":typeof window.cefQuery<"u"?"cef_webview":"browser"}function H(){return d()==="ios_webview"}function Q(){return d()==="android_webview"}function z(){return d()==="cef_webview"}function J(){return d()!=="browser"}const K="https://api.cabinet.developer.skyservice.online";class h{constructor(e){this.token=e.token,this.companyId=e.companyId,this.appId=e.appId,this.developerId=e.developerId;const r=e.domain.replace("dashboard","api");this.baseUrl=r.startsWith("http")?r:`https://${r}`}static create(e){return new h(e)}async get(e){const r=new URLSearchParams({token:this.token,companyId:this.companyId,...e}),n=await fetch(`${this.baseUrl}/?${r}`);if(!n.ok)throw new Error(`Skyservice API error: ${n.status}`);const o=await n.json();if(o.status!=="done")throw new Error(`Skyservice API returned status: ${o.status}`);return o.data}async post(e,r,n){const o=new URLSearchParams({token:this.token,...r}),i=await fetch(`${e}/?${o}`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(n)});if(!i.ok)throw new Error(`Skyservice API error: ${i.status}`);return i.json()}async getTradepoints(e){const r=await this.get({section:"tradepoints",action:"getTradepoints"});return e!=null&&e.includeDeleted?r.items:r.items.filter(n=>!n.deleted&&!n.frozen)}async getCategoryTree(e){const r=await this.get({section:"productCategory",action:"getCategories",...e?{tradepointId:String(e)}:{}});return I(r,e)}async getProducts(e){const r=await this.get({section:"products",action:"getProducts",pagelimit:"9999",ot:"desc",of:"nomenclatureId",...e!=null&&e.tradepointId?{tradepointId:String(e.tradepointId)}:{}});return Z(r.items,e==null?void 0:e.includeInactive)}async setAppActive({isActive:e,settings:r}){const n=e?"activateApp":"deactivateApp",o={company_id:this.companyId,app_id:this.appId,...this.developerId!==void 0&&{developer_id:this.developerId},...e&&r!==void 0&&{settings:r}};return this.post(K,{section:"integrations",action:n},o)}}function I(t,e){var n,o;const r=[];for(const i of t){if(e!=null&&!((n=i.tradepointShow)==null?void 0:n[String(e)]))continue;const c={id:i.id,pid:i.pid,name:i.name,active:i.active,background:i.background,show:i.show};i.img&&(c.img=i.img),(o=i.children)!=null&&o.length&&(c.children=I(i.children,e)),r.push(c)}return r}const Y=new Set(["product","techcard"]),X="/img/no.png";function Z(t,e){const r=[];for(const n of t)Y.has(n.type)&&(!e&&!n.active||r.push({id:n.id,name:n.nomenclatureName,price:n.price,categoryId:n.categoryId,categoryName:n.categoryTitle||"",active:n.active,type:n.type,unit:n.unit,logo:n.logo&&n.logo!==X?n.logo:""}));return r}exports.SkyserviceAPI=h;exports.exit=m;exports.getBack=T;exports.getCompany=D;exports.getLang=U;exports.getLocalStorageData=l;exports.getProductCategories=$;exports.getSenderId=w;exports.getStoreData=g;exports.getToken=R;exports.getUser=W;exports.getWindowData=_;exports.isAndroidWebview=Q;exports.isCefWebview=z;exports.isInIframe=V;exports.isInsideIframe=y;exports.isIosWebview=H;exports.isWebview=J;exports.navigate=P;exports.notify=N;exports.notifyError=j;exports.notifyWarn=G;exports.onMessage=F;exports.openCrispChat=B;exports.openExternalLink=x;exports.setLocalStorage=M;exports.setRocketMode=O;exports.setSenderId=C;exports.trackVisit=q;exports.webviewCheck=d;
|