cloudcommerce 0.9.0 → 0.9.1
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/.vscode/extensions.json +3 -1
- package/.vscode/settings.json +5 -1
- package/CHANGELOG.md +10 -0
- package/ecomplus-stores/monocard/.devcontainer/devcontainer.json +1 -1
- package/ecomplus-stores/monocard/.gitpod.yml +3 -0
- package/ecomplus-stores/monocard/functions/core/package.json +1 -1
- package/ecomplus-stores/monocard/functions/events/package.json +2 -2
- package/ecomplus-stores/monocard/functions/modules/package.json +2 -2
- package/ecomplus-stores/monocard/functions/passport/package.json +2 -2
- package/ecomplus-stores/monocard/functions/ssr/package.json +8 -8
- package/ecomplus-stores/monocard/package.json +1 -1
- package/ecomplus-stores/monocard/scripts/install.sh +6 -1
- package/ecomplus-stores/tia-sonia/.devcontainer/devcontainer.json +3 -0
- package/ecomplus-stores/tia-sonia/.gitpod.yml +3 -0
- package/ecomplus-stores/tia-sonia/scripts/install.sh +6 -1
- package/package.json +10 -10
- package/packages/api/package.json +1 -1
- package/packages/apps/correios/package.json +2 -2
- package/packages/apps/custom-payment/package.json +1 -1
- package/packages/apps/custom-shipping/package.json +1 -1
- package/packages/apps/datafrete/package.json +4 -4
- package/packages/apps/discounts/package.json +1 -1
- package/packages/apps/emails/package.json +2 -2
- package/packages/apps/fb-conversions/package.json +3 -3
- package/packages/apps/frenet/package.json +4 -4
- package/packages/apps/galaxpay/package.json +4 -4
- package/packages/apps/google-analytics/package.json +4 -4
- package/packages/apps/infinitepay/package.json +4 -4
- package/packages/apps/jadlog/package.json +2 -2
- package/packages/apps/loyalty-points/package.json +1 -1
- package/packages/apps/melhor-envio/package.json +4 -4
- package/packages/apps/mercadopago/package.json +4 -4
- package/packages/apps/pagarme/package.json +4 -4
- package/packages/apps/paghiper/package.json +4 -4
- package/packages/apps/pix/package.json +4 -4
- package/packages/apps/tiny-erp/package.json +4 -4
- package/packages/apps/webhooks/package.json +4 -4
- package/packages/cli/lib/build.js +2 -0
- package/packages/cli/lib/cli.js +2 -2
- package/packages/cli/package.json +1 -1
- package/packages/cli/src/build.ts +2 -0
- package/packages/cli/src/cli.ts +2 -2
- package/packages/config/lib/config.js +13 -2
- package/packages/config/lib/config.js.map +1 -1
- package/packages/config/lib/defaults.d.ts +1 -0
- package/packages/config/lib/defaults.js +2 -0
- package/packages/config/lib/defaults.js.map +1 -1
- package/packages/config/package.json +1 -1
- package/packages/config/src/config.ts +13 -1
- package/packages/config/src/defaults.ts +2 -0
- package/packages/emails/package.json +2 -2
- package/packages/events/package.json +3 -3
- package/packages/firebase/package.json +4 -4
- package/packages/i18n/package.json +1 -1
- package/packages/modules/package.json +4 -4
- package/packages/passport/package.json +3 -3
- package/packages/ssr/package.json +5 -5
- package/packages/storefront/dist/client/_astro/Carousel.ef27cf12.js +1 -0
- package/packages/storefront/dist/client/_astro/HeroSlider.276b893c.js +1 -0
- package/packages/storefront/dist/client/_astro/{PitchBar.1c993792.js → PitchBar.ff1445b5.js} +1 -1
- package/packages/storefront/dist/client/_astro/{ShopHeader.e901fad5.js → ShopHeader.89b60037.js} +1 -1
- package/packages/storefront/dist/client/_astro/{firebase-app.247497b8.js → firebase-app.2840bd36.js} +111 -111
- package/packages/storefront/dist/client/sw.js +1 -1
- package/packages/storefront/dist/server/chunks/pages/{all.b15cad2d.mjs → all.2ca6d33d.mjs} +10 -16
- package/packages/storefront/dist/server/entry.mjs +2 -2
- package/packages/storefront/package.json +6 -6
- package/packages/storefront/src/lib/components/Carousel.vue +9 -14
- package/packages/types/package.json +1 -1
- package/packages/storefront/dist/client/_astro/Carousel.dfb3f26a.js +0 -1
- package/packages/storefront/dist/client/_astro/HeroSlider.34436243.js +0 -1
package/packages/cli/lib/cli.js
CHANGED
|
@@ -4,7 +4,7 @@ import {
|
|
|
4
4
|
$, argv, fs, echo, chalk,
|
|
5
5
|
} from 'zx';
|
|
6
6
|
import login from './login.js';
|
|
7
|
-
import build from './build.js';
|
|
7
|
+
import build, { prepareCodebases } from './build.js';
|
|
8
8
|
import { siginGcloudAndSetIAM, createServiceAccountKey } from './setup-gcloud.js';
|
|
9
9
|
import createGhSecrets from './setup-gh.js';
|
|
10
10
|
|
|
@@ -144,7 +144,7 @@ Finish by saving the following secrets to your GitHub repository:
|
|
|
144
144
|
`;
|
|
145
145
|
}
|
|
146
146
|
if (argv._.includes('dev') || !argv._.length) {
|
|
147
|
-
await
|
|
147
|
+
await prepareCodebases();
|
|
148
148
|
return $`npm --prefix "${path.join(pwd, 'functions/ssr')}" run dev`;
|
|
149
149
|
}
|
|
150
150
|
return $`echo 'Hello from @cloudcommerce/cli'`;
|
package/packages/cli/src/cli.ts
CHANGED
|
@@ -8,7 +8,7 @@ import {
|
|
|
8
8
|
chalk,
|
|
9
9
|
} from 'zx';
|
|
10
10
|
import login from './login';
|
|
11
|
-
import build from './build';
|
|
11
|
+
import build, { prepareCodebases } from './build';
|
|
12
12
|
import { siginGcloudAndSetIAM, createServiceAccountKey } from './setup-gcloud';
|
|
13
13
|
import createGhSecrets from './setup-gh';
|
|
14
14
|
|
|
@@ -176,7 +176,7 @@ Finish by saving the following secrets to your GitHub repository:
|
|
|
176
176
|
}
|
|
177
177
|
|
|
178
178
|
if (argv._.includes('dev') || !argv._.length) {
|
|
179
|
-
await
|
|
179
|
+
await prepareCodebases();
|
|
180
180
|
return $`npm --prefix "${path.join(pwd, 'functions/ssr')}" run dev`;
|
|
181
181
|
}
|
|
182
182
|
return $`echo 'Hello from @cloudcommerce/cli'`;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import Deepmerge from '@fastify/deepmerge';
|
|
2
2
|
import {
|
|
3
|
-
DEFAULT_LANG, DEFAULT_CURRENCY, DEFAULT_CURRENCY_SYMBOL, DEFAULT_COUNTRY_CODE,
|
|
3
|
+
DEFAULT_LANG, DEFAULT_CURRENCY, DEFAULT_CURRENCY_SYMBOL, DEFAULT_COUNTRY_CODE, DEV_FALLBACK_STORE_ID,
|
|
4
4
|
} from './defaults.js';
|
|
5
5
|
|
|
6
6
|
// @ts-ignore
|
|
@@ -16,10 +16,11 @@ _env.ECOM_LANG = _env.ECOM_LANG || DEFAULT_LANG;
|
|
|
16
16
|
_env.ECOM_CURRENCY = _env.ECOM_CURRENCY || DEFAULT_CURRENCY;
|
|
17
17
|
_env.ECOM_CURRENCY_SYMBOL = _env.ECOM_CURRENCY_SYMBOL || DEFAULT_CURRENCY_SYMBOL;
|
|
18
18
|
_env.ECOM_COUNTRY_CODE = _env.ECOM_COUNTRY_CODE || DEFAULT_COUNTRY_CODE;
|
|
19
|
+
let isNoStoreWarned = false;
|
|
19
20
|
|
|
20
21
|
export default {
|
|
21
22
|
get() {
|
|
22
|
-
|
|
23
|
+
const config = {
|
|
23
24
|
lang: _env.ECOM_LANG,
|
|
24
25
|
currency: _env.ECOM_CURRENCY,
|
|
25
26
|
currencySymbol: _env.ECOM_CURRENCY_SYMBOL,
|
|
@@ -27,6 +28,16 @@ export default {
|
|
|
27
28
|
storeId: Number(_env.ECOM_STORE_ID),
|
|
28
29
|
...self.config,
|
|
29
30
|
};
|
|
31
|
+
if (!config.storeId && _env.DEV === true) {
|
|
32
|
+
config.storeId = DEV_FALLBACK_STORE_ID;
|
|
33
|
+
if (!isNoStoreWarned) {
|
|
34
|
+
// eslint-disable-next-line no-console
|
|
35
|
+
console.warn('[@cloudcommerce/config] `storeId` is not set, '
|
|
36
|
+
+ `using dev-only fallback ${DEV_FALLBACK_STORE_ID}`);
|
|
37
|
+
isNoStoreWarned = true;
|
|
38
|
+
}
|
|
39
|
+
}
|
|
40
|
+
return config;
|
|
30
41
|
},
|
|
31
42
|
set(config) {
|
|
32
43
|
const { cmsSettings } = config;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AACA,OAAO,SAAS,MAAM,oBAAoB,CAAC;AAC3C,OAAO,EACL,YAAY,EACZ,gBAAgB,EAChB,uBAAuB,EACvB,oBAAoB,
|
|
1
|
+
{"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AACA,OAAO,SAAS,MAAM,oBAAoB,CAAC;AAC3C,OAAO,EACL,YAAY,EACZ,gBAAgB,EAChB,uBAAuB,EACvB,oBAAoB,EACpB,qBAAqB,GACtB,MAAM,YAAY,CAAC;AAWpB,aAAa;AACb,MAAM,IAAI,GAAwB,MAAM,CAAC,IAAI,CAAC,GAAG;OAC5C,CAAC,OAAO,OAAO,KAAK,QAAQ,IAAI,OAAO,EAAE,GAAG,CAAC;OAC7C,UAAU,CAAC;AAEhB,MAAM,SAAS,GAAG,SAAS,EAAE,CAAC;AAE9B,MAAM,IAAI,GAAG,UAAU,CAAC,eAAe,IAAI;IACzC,MAAM,EAAE,EAAE;CACX,CAAC;AACF,UAAU,CAAC,eAAe,GAAG,IAAI,CAAC;AAClC,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,SAAS,IAAI,YAAY,CAAC;AAChD,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,aAAa,IAAI,gBAAgB,CAAC;AAC5D,IAAI,CAAC,oBAAoB,GAAG,IAAI,CAAC,oBAAoB,IAAI,uBAAuB,CAAC;AACjF,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC,iBAAiB,IAAI,oBAAoB,CAAC;AACxE,IAAI,eAAe,GAAG,KAAK,CAAC;AAE5B,eAAe;IACb,GAAG;QACD,MAAM,MAAM,GAAG;YACb,IAAI,EAAE,IAAI,CAAC,SAAS;YACpB,QAAQ,EAAE,IAAI,CAAC,aAAa;YAC5B,cAAc,EAAE,IAAI,CAAC,oBAAoB;YACzC,WAAW,EAAE,IAAI,CAAC,iBAAiB;YACnC,OAAO,EAAE,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC;YACnC,GAAG,IAAI,CAAC,MAAM;SACf,CAAC;QACF,IAAI,CAAC,MAAM,CAAC,OAAO,IAAI,IAAI,CAAC,GAAG,KAAK,IAAI,EAAE;YACxC,MAAM,CAAC,OAAO,GAAG,qBAAqB,CAAC;YACvC,IAAI,CAAC,eAAe,EAAE;gBACpB,sCAAsC;gBACtC,OAAO,CAAC,IAAI,CAAC,gDAAgD;sBACzD,2BAA2B,qBAAqB,EAAE,CAAC,CAAC;gBACxD,eAAe,GAAG,IAAI,CAAC;aACxB;SACF;QACD,OAAO,MAAM,CAAC;IAChB,CAAC;IACD,GAAG,CAAC,MAA2B;QAC7B,MAAM,EAAE,WAAW,EAAE,GAAG,MAAM,CAAC;QAC/B,IAAI,WAAW,EAAE;YACf,MAAM,CAAC,IAAI,GAAG,MAAM,CAAC,IAAI,IAAI,WAAW,CAAC,IAAI,CAAC;YAC9C,MAAM,CAAC,QAAQ,GAAG,MAAM,CAAC,QAAQ,IAAI,WAAW,CAAC,QAAQ,CAAC;YAC1D,MAAM,CAAC,cAAc,GAAG,MAAM,CAAC,cAAc,IAAI,WAAW,CAAC,eAAe,CAAC;YAC7E,MAAM,CAAC,WAAW,GAAG,MAAM,CAAC,cAAc,IAAI,WAAW,CAAC,YAAY,CAAC;SACxE;QACD,IAAI,CAAC,MAAM,GAAG,SAAS,CAAC,IAAI,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QAC7C,IAAI,MAAM,CAAC,OAAO,EAAE;YAClB,IAAI,CAAC,aAAa,GAAG,MAAM,CAAC,OAAO,CAAC;SACrC;QACD,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC;QACpD,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,aAAa,IAAI,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC;QAChE,IAAI,CAAC,oBAAoB,GAAG,IAAI,CAAC,oBAAoB,IAAI,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC;QACpF,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC,iBAAiB,IAAI,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC;IAC7E,CAAC;CACF,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"defaults.js","sourceRoot":"","sources":["../src/defaults.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,YAAY,GAAG,OAAO,CAAC;AAEpC,MAAM,CAAC,MAAM,gBAAgB,GAAG,KAAK,CAAC;AAEtC,MAAM,CAAC,MAAM,uBAAuB,GAAG,IAAI,CAAC;AAE5C,MAAM,CAAC,MAAM,oBAAoB,GAAG,IAAI,CAAC"}
|
|
1
|
+
{"version":3,"file":"defaults.js","sourceRoot":"","sources":["../src/defaults.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,YAAY,GAAG,OAAO,CAAC;AAEpC,MAAM,CAAC,MAAM,gBAAgB,GAAG,KAAK,CAAC;AAEtC,MAAM,CAAC,MAAM,uBAAuB,GAAG,IAAI,CAAC;AAE5C,MAAM,CAAC,MAAM,oBAAoB,GAAG,IAAI,CAAC;AAEzC,MAAM,CAAC,MAAM,qBAAqB,GAAG,IAAI,CAAC"}
|
|
@@ -5,6 +5,7 @@ import {
|
|
|
5
5
|
DEFAULT_CURRENCY,
|
|
6
6
|
DEFAULT_CURRENCY_SYMBOL,
|
|
7
7
|
DEFAULT_COUNTRY_CODE,
|
|
8
|
+
DEV_FALLBACK_STORE_ID,
|
|
8
9
|
} from './defaults';
|
|
9
10
|
|
|
10
11
|
type BaseConfig = {
|
|
@@ -31,10 +32,11 @@ _env.ECOM_LANG = _env.ECOM_LANG || DEFAULT_LANG;
|
|
|
31
32
|
_env.ECOM_CURRENCY = _env.ECOM_CURRENCY || DEFAULT_CURRENCY;
|
|
32
33
|
_env.ECOM_CURRENCY_SYMBOL = _env.ECOM_CURRENCY_SYMBOL || DEFAULT_CURRENCY_SYMBOL;
|
|
33
34
|
_env.ECOM_COUNTRY_CODE = _env.ECOM_COUNTRY_CODE || DEFAULT_COUNTRY_CODE;
|
|
35
|
+
let isNoStoreWarned = false;
|
|
34
36
|
|
|
35
37
|
export default {
|
|
36
38
|
get(): BaseConfig {
|
|
37
|
-
|
|
39
|
+
const config = {
|
|
38
40
|
lang: _env.ECOM_LANG,
|
|
39
41
|
currency: _env.ECOM_CURRENCY,
|
|
40
42
|
currencySymbol: _env.ECOM_CURRENCY_SYMBOL,
|
|
@@ -42,6 +44,16 @@ export default {
|
|
|
42
44
|
storeId: Number(_env.ECOM_STORE_ID),
|
|
43
45
|
...self.config,
|
|
44
46
|
};
|
|
47
|
+
if (!config.storeId && _env.DEV === true) {
|
|
48
|
+
config.storeId = DEV_FALLBACK_STORE_ID;
|
|
49
|
+
if (!isNoStoreWarned) {
|
|
50
|
+
// eslint-disable-next-line no-console
|
|
51
|
+
console.warn('[@cloudcommerce/config] `storeId` is not set, '
|
|
52
|
+
+ `using dev-only fallback ${DEV_FALLBACK_STORE_ID}`);
|
|
53
|
+
isNoStoreWarned = true;
|
|
54
|
+
}
|
|
55
|
+
}
|
|
56
|
+
return config;
|
|
45
57
|
},
|
|
46
58
|
set(config: Partial<BaseConfig>) {
|
|
47
59
|
const { cmsSettings } = config;
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@cloudcommerce/emails",
|
|
3
3
|
"type": "module",
|
|
4
|
-
"version": "0.9.
|
|
4
|
+
"version": "0.9.1",
|
|
5
5
|
"description": "E-Com Plus Cloud Commerce",
|
|
6
6
|
"main": "lib/index.js",
|
|
7
7
|
"types": "lib/index.d.ts",
|
|
@@ -23,7 +23,7 @@
|
|
|
23
23
|
},
|
|
24
24
|
"dependencies": {
|
|
25
25
|
"@cloudcommerce/firebase": "workspace:*",
|
|
26
|
-
"axios": "^1.3.
|
|
26
|
+
"axios": "^1.3.6",
|
|
27
27
|
"ejs": "^3.1.9",
|
|
28
28
|
"nodemailer": "^6.9.1"
|
|
29
29
|
},
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@cloudcommerce/events",
|
|
3
3
|
"type": "module",
|
|
4
|
-
"version": "0.9.
|
|
4
|
+
"version": "0.9.1",
|
|
5
5
|
"description": "E-Com Plus Cloud Commerce app events",
|
|
6
6
|
"main": "lib/index.js",
|
|
7
7
|
"exports": {
|
|
@@ -40,8 +40,8 @@
|
|
|
40
40
|
"@cloudcommerce/app-tiny-erp": "workspace:*",
|
|
41
41
|
"@cloudcommerce/app-webhooks": "workspace:*",
|
|
42
42
|
"@cloudcommerce/firebase": "workspace:*",
|
|
43
|
-
"firebase-admin": "^11.
|
|
44
|
-
"firebase-functions": "^4.
|
|
43
|
+
"firebase-admin": "^11.7.0",
|
|
44
|
+
"firebase-functions": "^4.3.0",
|
|
45
45
|
"source-map-support": "^0.5.21"
|
|
46
46
|
},
|
|
47
47
|
"devDependencies": {
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@cloudcommerce/firebase",
|
|
3
3
|
"type": "module",
|
|
4
|
-
"version": "0.9.
|
|
4
|
+
"version": "0.9.1",
|
|
5
5
|
"description": "E-Com Plus Cloud Commerce on Firebase",
|
|
6
6
|
"main": "lib/index.js",
|
|
7
7
|
"types": "lib/index.d.ts",
|
|
@@ -31,9 +31,9 @@
|
|
|
31
31
|
"dependencies": {
|
|
32
32
|
"@cloudcommerce/api": "workspace:*",
|
|
33
33
|
"@cloudcommerce/config": "workspace:*",
|
|
34
|
-
"@google-cloud/pubsub": "^3.
|
|
35
|
-
"firebase-admin": "^11.
|
|
36
|
-
"firebase-functions": "^4.
|
|
34
|
+
"@google-cloud/pubsub": "^3.5.0",
|
|
35
|
+
"firebase-admin": "^11.7.0",
|
|
36
|
+
"firebase-functions": "^4.3.0",
|
|
37
37
|
"source-map-support": "^0.5.21"
|
|
38
38
|
},
|
|
39
39
|
"devDependencies": {
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@cloudcommerce/modules",
|
|
3
3
|
"type": "module",
|
|
4
|
-
"version": "0.9.
|
|
4
|
+
"version": "0.9.1",
|
|
5
5
|
"description": "E-Com Plus Cloud Commerce modules API",
|
|
6
6
|
"main": "lib/index.cjs",
|
|
7
7
|
"exports": {
|
|
@@ -44,9 +44,9 @@
|
|
|
44
44
|
"@ecomplus/utils": "1.5.0-rc.3",
|
|
45
45
|
"ajv": "^8.12.0",
|
|
46
46
|
"ajv-formats": "^2.1.1",
|
|
47
|
-
"axios": "^1.3.
|
|
48
|
-
"firebase-admin": "^11.
|
|
49
|
-
"firebase-functions": "^4.
|
|
47
|
+
"axios": "^1.3.6",
|
|
48
|
+
"firebase-admin": "^11.7.0",
|
|
49
|
+
"firebase-functions": "^4.3.0",
|
|
50
50
|
"source-map-support": "^0.5.21"
|
|
51
51
|
},
|
|
52
52
|
"devDependencies": {
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@cloudcommerce/passport",
|
|
3
3
|
"type": "module",
|
|
4
|
-
"version": "0.9.
|
|
4
|
+
"version": "0.9.1",
|
|
5
5
|
"description": "E-Com Plus Cloud Commerce customers authentication (passport) API",
|
|
6
6
|
"main": "lib/index.js",
|
|
7
7
|
"exports": {
|
|
@@ -25,8 +25,8 @@
|
|
|
25
25
|
"dependencies": {
|
|
26
26
|
"@cloudcommerce/api": "workspace:*",
|
|
27
27
|
"@cloudcommerce/firebase": "workspace:*",
|
|
28
|
-
"firebase-admin": "^11.
|
|
29
|
-
"firebase-functions": "^4.
|
|
28
|
+
"firebase-admin": "^11.7.0",
|
|
29
|
+
"firebase-functions": "^4.3.0",
|
|
30
30
|
"source-map-support": "^0.5.21"
|
|
31
31
|
},
|
|
32
32
|
"devDependencies": {
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@cloudcommerce/ssr",
|
|
3
3
|
"type": "module",
|
|
4
|
-
"version": "0.9.
|
|
4
|
+
"version": "0.9.1",
|
|
5
5
|
"description": "E-Com Plus Cloud Commerce storefront SSR",
|
|
6
6
|
"main": "lib/index.js",
|
|
7
7
|
"exports": {
|
|
@@ -28,12 +28,12 @@
|
|
|
28
28
|
"@cloudcommerce/firebase": "workspace:*",
|
|
29
29
|
"@cloudcommerce/i18n": "workspace:*",
|
|
30
30
|
"@ecomplus/utils": "1.5.0-rc.3",
|
|
31
|
-
"@headlessui/vue": "^1.7.
|
|
31
|
+
"@headlessui/vue": "^1.7.13",
|
|
32
32
|
"@vueuse/core": "10.0.2",
|
|
33
33
|
"astro": "2.3.0",
|
|
34
|
-
"firebase-admin": "^11.
|
|
35
|
-
"firebase-functions": "^4.
|
|
36
|
-
"semver": "^7.
|
|
34
|
+
"firebase-admin": "^11.7.0",
|
|
35
|
+
"firebase-functions": "^4.3.0",
|
|
36
|
+
"semver": "^7.5.0",
|
|
37
37
|
"vue": "^3.2.47"
|
|
38
38
|
},
|
|
39
39
|
"devDependencies": {
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{a as K,c as M,b as q}from"./index.9018a8da.js";import{d as H,_ as $,z as G,o as b,a as D,q as f,b as U,n as N,j as c,k as v,t as j,c as A,l as J,C as Q,K as X,A as Y,g as Z,w as S,h as ee,e as O,G as te,H as ae}from"./_plugin-vue_export-helper.0c2b7f88.js";const F=Symbol("carousel"),oe=H({__name:"CarouselControl",props:{direction:{default:1}},setup(n,{expose:r}){r();const{changeSlide:l}=G(F),t={changeSlide:l};return Object.defineProperty(t,"__isScriptSetup",{enumerable:!1,value:!0}),t}}),le=["aria-label","data-carousel-control"];function ne(n,r,l,t,s,o){return b(),D("button",{type:"button","aria-label":l.direction>0?"Próximo":"Anterior",onClick:r[0]||(r[0]=p=>t.changeSlide(l.direction)),class:N(["group absolute top-0",l.direction>0?"right-0":"left-0"]),"data-carousel-control":l.direction>0?"next":"previous"},[f(n.$slots,"default",{},()=>[U("i",{class:N(["m-0",l.direction>0?"i-chevron-right group-active:translate-x-1":"i-chevron-left group-active:-translate-x-1"])},null,2)])],10,le)}const re=$(oe,[["render",ne]]);const se=H({__name:"Carousel",props:{as:{default:"ul"},modelValue:{default:1},autoplay:null},emits:["update:modelValue"],setup(n,{expose:r,emit:l}){r();const t=n,s=c(t.modelValue-1);v(j(t,"modelValue"),e=>{s.value=e-1}),v(s,(e,a)=>{e!==a&&l("update:modelValue",e+1)});const o=c(null),{x:p,isScrolling:w,arrivedState:h}=K(o),B=A(()=>h.left),W=A(()=>h.right),u=c([]),m=c(0),_=c(0),L=c(0),T=()=>{o.value&&(m.value=o.value.scrollWidth,_.value=o.value.offsetWidth)},I=()=>{if(!o.value)return;let e=[...o.value.children];e.length===1&&e[0].tagName.endsWith("SLOT")&&(e=[...e[0].children]),u.value=e.map(a=>({offsetLeft:a.offsetLeft,width:a.offsetWidth}))},P=e=>{let a=s.value+e;a>=u.value.length?(a=0,e=-e):a<0&&(a=u.value.length-1,e=-e);const E=u.value[a]?.width||0;return E?E*e:0},g=()=>{const e=u.value.findIndex(a=>Math.abs(a.offsetLeft-p.value)<=5);e>-1&&(s.value=e||0)},V=()=>{const e=m.value-_.value;L.value=u.value.findIndex(({offsetLeft:a})=>a>=e-5)};let i;const d=()=>{t.autoplay&&(clearTimeout(i),i=setTimeout(()=>{x(1)},t.autoplay))},x=e=>{const a=P(e);a&&(o.value?.scrollBy({left:a,behavior:"smooth"}),d())};v(w,e=>{e?clearTimeout(i):(g(),d())});const k=c(null),z=M(k);v(z,e=>{e?clearTimeout(i):d()});const C=()=>{o.value&&(T(),I(),g(),V())},y=q(()=>{o.value&&(o.value.scrollLeft=0,C())},400);J(()=>{C(),Q(()=>{o.value&&[...o.value.children].forEach(e=>{e.setAttribute("tabindex","0")})}),d(),window.addEventListener("resize",y)}),X(()=>{window.removeEventListener("resize",y),clearTimeout(i)}),Y(F,{autoplay:j(t,"autoplay"),changeSlide:x,isBoundLeft:B,isBoundRight:W});const R={props:t,emit:l,currentIndex:s,wrapper:o,currentPos:p,isScrolling:w,arrivedState:h,isBoundLeft:B,isBoundRight:W,slidesWidth:u,wrapperScrollWidth:m,wrapperVisibleWidth:_,indexCount:L,calcWrapperWidth:T,calcSlidesWidth:I,calcNextWidth:P,calcCurrentIndex:g,calcIndexCount:V,get autoplayTimer(){return i},set autoplayTimer(e){i=e},restartAutoplay:d,changeSlide:x,carousel:k,isHovered:z,calcOnInit:C,onResize:y,CarouselControl:re};return Object.defineProperty(R,"__isScriptSetup",{enumerable:!1,value:!0}),R}}),ue={ref:"carousel",class:"relative","data-carousel":""};function ie(n,r,l,t,s,o){return b(),D("div",ue,[(b(),Z(ee(l.as),{ref:"wrapper",class:"flex overflow-x-scroll overflow-y-hidden list-none m-0 p-0","data-carousel-wrapper":""},{default:S(()=>[f(n.$slots,"default")]),_:3},512)),f(n.$slots,"controls",te(ae({changeSlide:t.changeSlide,isBoundLeft:t.isBoundLeft,isBoundRight:t.isBoundRight,currentPage:t.currentIndex+1,pageCount:t.indexCount+1})),()=>[O(t.CarouselControl,{direction:-1},{default:S(()=>[f(n.$slots,"previous")]),_:3}),O(t.CarouselControl,null,{default:S(()=>[f(n.$slots,"next")]),_:3})])],512)}const fe=$(se,[["render",ie]]);export{fe as C,re as a};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{v as b}from"./runtime-dom.esm-bundler.1fd80976.js";import{p as u}from"./modules-info.2a72e536.js";import{c as f,_ as v,d as g,a as o,e as d,w as p,o as s,f as y,b as n,F as w,r as C,n as _,q as S,g as k,h as H,v as T,u as m,i as h}from"./_plugin-vue_export-helper.0c2b7f88.js";import{C as B,a as N}from"./Carousel.ef27cf12.js";import"./session-utm.ac492493.js";import"./idle-callback.889bf0ea.js";import"./format-money.f09b89ed.js";import"./index.9018a8da.js";const V=a=>({parsedSlides:f(()=>a.slides.map(e=>{const r=e.title?u(e.title).value:"",l=e.subtitle?u(e.subtitle).value:"",x=e.buttonText?u(e.buttonText).value:"";return{...e,hasHeader:!!(r||l||x)}}))}),D=g({__name:"HeroSlider",props:{autoplay:null,slides:null},setup(a,{expose:i}){i();const e=a,{parsedSlides:r}=V(e),l={props:e,parsedSlides:r,Carousel:B,CarouselControl:N};return Object.defineProperty(l,"__isScriptSetup",{enumerable:!1,value:!0}),l}}),z={class:"relative mx-auto"},F=["href"],L={key:0,class:"basis-1/2 grow-0 p-12 xl:ps-32 mb-3 md:mb-0"},P={key:0,class:"text-lg mt-4 md:mt-6"},j=["href"],q={class:"absolute z-10 top-1/2 -mt-8 w-screen xl:max-w-screen-xl xl:left-1/2 -ms-[640px] text-3xl leading-none text-base-400 opacity-60"},E={class:"relative"};function O(a,i,e,r,l,x){return s(),o("section",z,[d(r.Carousel,{autoplay:e.autoplay},{controls:p(()=>[y(n("div",q,[n("div",E,[d(r.CarouselControl,{direction:-1,class:"p-3 rounded-full hover:bg-white/40 hover:text-primary"}),d(r.CarouselControl,{class:"p-3 rounded-full hover:bg-white/40 hover:text-primary"})])],512),[[b,r.parsedSlides.length>1]])]),default:p(()=>[(s(!0),o(w,null,C(r.parsedSlides,(t,c)=>(s(),o("li",{key:c,class:"shrink-0 basis-full h-full secondary"},[n("div",{class:_(["w-screen max-w-screen-2xl mx-auto overflow-x-hidden",t.hasHeader?"grid grid-cols-1 md:grid-cols-2 items-center":null])},[n("a",{href:t.href,class:_(t.hasHeader?"basis-1/2 grow-0 md:order-last":null)},[S(a.$slots,`picture-${c}`)],10,F),t.hasHeader?(s(),o("div",L,[(s(),k(H(c===0?"h2":"h3"),{class:"mt-1 text-3xl xl:text-5xl font-black"},{default:p(()=>[T(m(t.title),1)]),_:2},1024)),t.subtitle?(s(),o("p",P,m(t.subtitle),1)):h("",!0),t.buttonText?(s(),o("a",{key:1,href:t.buttonLink,class:"not-prose inline-block min-w-[150px] mt-7 md:mt-10 bg-white text-primary text-lg font-bold px-6 py-2.5 rounded hover:bg-primary-100 active:ring-3 ring-white/30"},m(t.buttonText),9,j)):h("",!0)])):h("",!0)],2)]))),128))]),_:3},8,["autoplay"])])}const U=v(D,[["render",O]]);export{U as default};
|
package/packages/storefront/dist/client/_astro/{PitchBar.1c993792.js → PitchBar.ff1445b5.js}
RENAMED
|
@@ -1 +1 @@
|
|
|
1
|
-
import{v as _}from"./runtime-dom.esm-bundler.1fd80976.js";import{p as h}from"./modules-info.2a72e536.js";import{c as u,_ as f,d as C,a as n,b as m,e as c,w as d,o as r,f as b,F as v,r as x,g,h as k,n as S,i as y}from"./_plugin-vue_export-helper.0c2b7f88.js";import{C as B,a as V}from"./Carousel.
|
|
1
|
+
import{v as _}from"./runtime-dom.esm-bundler.1fd80976.js";import{p as h}from"./modules-info.2a72e536.js";import{c as u,_ as f,d as C,a as n,b as m,e as c,w as d,o as r,f as b,F as v,r as x,g,h as k,n as S,i as y}from"./_plugin-vue_export-helper.0c2b7f88.js";import{C as B,a as V}from"./Carousel.ef27cf12.js";import"./session-utm.ac492493.js";import"./idle-callback.889bf0ea.js";import"./format-money.f09b89ed.js";import"./index.9018a8da.js";const w=a=>{const s=u(()=>a.slides.map(({html:e})=>h(e).value)),t=u(()=>s.value.filter(e=>e).length);return{parsedContents:s,countValidSlides:t}},P=C({__name:"PitchBar",props:{slides:null},setup(a,{expose:s}){s();const t=a,{parsedContents:e,countValidSlides:p}=w(t),l={props:t,parsedContents:e,countValidSlides:p,Carousel:B,CarouselControl:V};return Object.defineProperty(l,"__isScriptSetup",{enumerable:!1,value:!0}),l}}),L={class:"bg-base-100 relative z-20"},N={class:"container md:w-2/3 mx-auto px-3 py-1"},z=["innerHTML"],D={class:"text-xl leading-none text-base-400"};function F(a,s,t,e,p,l){return r(),n("div",L,[m("div",N,[c(e.Carousel,{autoplay:e.countValidSlides>1?7e3:void 0},{controls:d(()=>[b(m("div",D,[c(e.CarouselControl,{direction:-1,class:"pr-2 bg-base-100 hover:text-base-700"}),c(e.CarouselControl,{class:"pl-2 bg-base-100 hover:text-base-700"})],512),[[_,e.countValidSlides>1]])]),default:d(()=>[(r(!0),n(v,null,x(t.slides,(o,i)=>(r(),n("li",{key:i,class:"shrink-0 basis-full h-full text-center"},[(r(),g(k(o.href?"ALink":"span"),{href:o.href,target:o.target,class:S(["inline-block px-8",o.href?"hover:underline":null])},{default:d(()=>[e.parsedContents[i]?(r(),n("span",{key:0,innerHTML:e.parsedContents[i],class:"prose text-sm text-base-800"},null,8,z)):y("",!0)]),_:2},1032,["href","target","class"]))]))),128))]),_:1},8,["autoplay"])])])}const G=f(P,[["render",F]]);export{G as default};
|
package/packages/storefront/dist/client/_astro/{ShopHeader.e901fad5.js → ShopHeader.89b60037.js}
RENAMED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{u as gt,a as bt,p as yt,b as _t}from"./index.9018a8da.js";import{j as k,c as S,k as ne,l as ae,d as A,t as wt,_ as U,m as ee,o as w,g as L,w as E,a as I,n as $,p as Ke,b as _,q as te,i as R,T as St,e as O,s as Ne,h as xt,u as C,F as j,r as Y,v as Q,x as kt,y as de,z as fe,A as ve,B as J,C as re,D as Me,E as Pt,G as We,H as ze,I as Le,J as Fe}from"./_plugin-vue_export-helper.0c2b7f88.js";import{w as It}from"./runtime-dom.esm-bundler.1fd80976.js";import{_ as Et}from"./preload-helper.101896b7.js";import{i as Ot}from"./idle-callback.889bf0ea.js";const Tt=e=>{if(e){if(e.display_name)return e.display_name;if(e.name&&e.name.given_name)return e.name.given_name}return""},Mt=Tt,Ct=e=>{const{header:n,canSetStyles:o,canCreateHeightDiv:t,isShownOnScrollDown:r}={canSetStyles:!0,canCreateHeightDiv:!0,...e},{ready:a,start:l}=gt(100,{controls:!0,immediate:!1}),s=k(0),c=k(0);let u;const{y:i}=bt(document),m=S(()=>a.value&&i.value>c.value*1.2),v=k("none");ne(m,async d=>{o&&n.value&&(n.value.style.position=d?"sticky":""),u&&(u.style.height=d?`${s.value}px`:""),d?(await yt(300),v.value="opacity var(--transition-slow), transform var(--transition)"):(l(),v.value="none")});const f=k(!1);return ne(i,(d,p)=>{f.value=d>0&&d<p}),ae(()=>{if(!n.value)throw new Error("<header> (props.header) not set");const d=()=>{const h=n.value;s.value=h.offsetHeight,c.value=s.value+window.pageYOffset+h.getBoundingClientRect().top,l()},p=n.value.getElementsByTagName("IMG");let b=!0;for(let h=0;h<p.length;h++){const y=p[h];(!y.complete||y.naturalHeight===0)&&(b=!1,y.onload=d)}b&&d(),window.addEventListener("resize",_t(d,300)),o&&(n.value.style.willChange="transform",ne([m,f],([h,y])=>{let x="",P="";h&&(!y||r)&&(x="0",P="translateY(-100%)");const M=n.value;M.style.opacity=x,M.style.transform=P}),ne(v,h=>{n.value.style.transition=h})),t&&(u=document.createElement("div"),n.value.parentElement?.insertBefore(u,n.value))}),{staticHeight:s,staticY:c,isSticky:m,isScrollUp:f,transition:v}},$t=(e,n)=>{const o=e.filter(({name:t,slug:r,parent:a})=>t&&r&&!a);return n?.length&&o.sort((t,r)=>{const a=n.indexOf(t.slug),l=n.indexOf(r.slug);return a>-1?l===-1||a<l?-1:1:l>-1?1:0}),o},At=(e,n,o=!1)=>{const t=e.filter(({name:r,slug:a,parent:l})=>r&&a&&l?l._id===n._id||l.slug&&l.slug===n.slug:!1);return o&&t.sort((r,a)=>r.name<a.name?-1:1),t},Nt=({header:e,categories:n,menuCategorySlugs:o,menuRandomCategories:t=7,isAlphabeticalSortSubmenu:r})=>{const{isSticky:a,staticHeight:l,staticY:s}=Ct({header:e}),c=S(()=>a.value?e.value?.offsetHeight:s.value),u=$t(n,o),i=p=>At(n,p,!!r),m=p=>({...p,subcategories:i(p).map(b=>m(b))}),v=u.map(m);let f=0;const d=v.filter(({slug:p})=>o?.includes(p)?!0:f<t?(f+=1,!0):!1);return{isSticky:a,staticHeight:l,staticY:s,positionY:c,mainCategories:u,getSubcategories:i,getCategoryTree:m,categoryTrees:v,inlineMenuTrees:d}},Lt=A({__name:"Drawer",props:{modelValue:{type:Boolean,default:!1},placement:{default:"start"},position:{default:"fixed"},hasCloseButton:{type:Boolean,default:!0}},emits:["update:modelValue"],setup(e,{expose:n,emit:o}){n();const t=e,r=()=>o("update:modelValue",!1),a=k(null),l=f=>{a.value?.contains(f.target)||r()},s=f=>{f.key==="Escape"&&r()},c=k(0);ne(wt(t,"modelValue"),async f=>{f?(c.value=window.innerWidth-document.documentElement.clientWidth,document.body.style.overflow="hidden",document.body.style.paddingRight=`${c.value}px`,setTimeout(()=>{document.addEventListener("click",l,{passive:!0}),document.addEventListener("keydown",s,{passive:!0})},500)):(document.body.style.overflow="",document.body.style.paddingRight="",document.removeEventListener("click",l),document.removeEventListener("keydown",s))});const u=S(()=>{switch(t.placement){case"start":return"left";case"end":return"right";case"top":return"down";default:return"up"}}),i=S(()=>t.position==="fixed"),m=S(()=>t.placement==="start"||t.placement==="end"),v={props:t,emit:o,close:r,drawer:a,outsideClickListener:l,escClickListener:s,scrollbarWidth:c,slideTo:u,isFixed:i,isPlacementX:m};return Object.defineProperty(v,"__isScriptSetup",{enumerable:!1,value:!0}),v}}),Ft=["open","data-drawer"],Dt={class:"relative h-full"},Rt=["onClick"],jt=_("i",{class:"i-close text-base-400 text-3xl"},null,-1),Bt={key:0,class:"fixed top-0 left-0 w-screen h-screen bg-black/50 z-40","data-drawer-backdrop":""};function Ht(e,n,o,t,r,a){const l=ee("Fade");return w(),L(l,{slide:t.slideTo,speed:"slow","is-floating":""},{default:E(()=>[o.modelValue?(w(),I("dialog",{key:0,ref:"drawer",class:$(["w-screen shadow p-0 m-0 z-50",[o.position,t.isFixed?`top-0 left-0 ${t.isPlacementX?"h-screen":""}`:null,t.isPlacementX?"max-w-sm":null]]),style:Ke({maxWidth:t.isPlacementX?void 0:`calc(100vw - ${t.scrollbarWidth}px)`}),open:o.modelValue,"data-drawer":o.placement},[_("div",Dt,[o.hasCloseButton?(w(),I("button",{key:0,type:"button","aria-label":"Fechar",onClick:It(t.close,["prevent"]),class:$(["absolute top-2",o.placement==="end"?"left-2":"right-2"]),"data-drawer-close":""},[te(e.$slots,"close",{},()=>[jt])],10,Rt)):R("",!0),te(e.$slots,"default")]),(w(),L(St,{to:"#teleported-top"},[O(l,null,{default:E(()=>[o.modelValue?(w(),I("div",Bt)):R("",!0)]),_:1})]))],14,Ft)):R("",!0)]),_:3},8,["slide"])}const Vt=U(Lt,[["render",Ht]]);globalThis.__apiCache||(globalThis.__apiCache={});const ce={BASE_URL:'"/"',MODE:"production",DEV:!1,PROD:!0,SSR:!1,SITE:'"https://ecom2-002.web.app"',ASSETS_PREFIX:void 0};class De extends Error{constructor(n,o,t,r=!1){o?(super(o.statusText),this.data=o.data,this.statusCode=o.status):super(t||"Request error"),this.config=n,this.response=o,this.isTimeout=r}}const Ut={middleware(e){const n={...e.headers};if(!e.isNoAuth)if(e.accessToken)n.Authorization=`Bearer ${e.accessToken}`;else{const a=e.authenticationId||ce.ECOM_AUTHENTICATION_ID,l=e.apiKey||ce.ECOM_API_KEY;if(a&&l){const s=`${a}:${l}`,c=typeof Buffer=="function"?Buffer.from(s).toString("base64"):btoa(s);n.Authorization=`Basic ${c}`}}let o=e.baseUrl||ce.API_BASE_URL||"https://ecomplus.io/v2";const{endpoint:t,params:r}=e;if(t!=="login"&&t!=="authenticate"&&t!=="ask-auth-callback"&&t!=="check-username"){const a=e.storeId||ce.ECOM_STORE_ID;if(!a)throw new Error("`storeId` must be set in config or `ECOM_STORE_ID` env var");o+=`/:${a}`;const l=e.lang||ce.ECOM_LANG;l&&(o+=`,lang:${l}`)}if(o+=`/${t}`,r){if(typeof r=="string")o+=`?${r}`;else if(typeof r=="object"){const a=new URLSearchParams;Object.keys(r).forEach(l=>{const s=r[l];Array.isArray(s)?s.forEach(c=>{a.append(l,c)}):a.append(l,s)}),o+=`?${a.toString()}`}}return{url:o,headers:n}}},D=async(e,n=0)=>{const{url:o,headers:t}=Ut.middleware(e),{method:r="get",timeout:a=2e4,maxRetries:l=3,cacheMaxAge:s=6e5}=e,c=r==="get"&&(e.canCache||e.canCache===void 0&&ce.SSR);let u;if(c){u=`${o}${JSON.stringify(t)}`;const b=globalThis.__apiCache[u];if(b&&Date.now()-b.timestamp<=s)return{...b.res,config:e}}const i=e.body||e.data;let m;i&&(m=JSON.stringify(i),t["Content-Type"]="application/json",t["Content-Length"]=m.length.toString());const v=new AbortController;let f=!1;const d=setTimeout(()=>{v.abort(),f=!0},a);let p;try{p=await(e.fetch||fetch)(o,{method:r,headers:t,body:m,signal:v.signal})}catch(b){throw new De(e,p,b.message,f)}if(clearTimeout(d),p){if(p.ok){const h={...p,data:await p.json()};return c&&u&&(globalThis.__apiCache[u]={timestamp:Date.now(),res:h}),{...h,config:e}}const{status:b}=p;if(l<n&&(b===429||b>=500)){const h=p.headers.get("retry-after");return new Promise((y,x)=>{setTimeout(()=>{D(e,n+1).then(y).catch(x)},h&&parseInt(h,10)||5e3)})}}try{p.data=await p?.json()}catch{}throw new De(e,p)},Kt=(e,n)=>D({...n,endpoint:e}),Wt=(e,n,o)=>D({...o,method:"post",endpoint:e,body:n}),zt=(e,n,o)=>D({...o,method:"put",endpoint:e,body:n}),Gt=(e,n,o)=>D({...o,method:"patch",endpoint:e,body:n}),Ge=(e,n)=>D({...n,method:"delete",endpoint:e});D.get=Kt;D.post=Wt;D.put=zt;D.patch=Gt;D.del=Ge;D.delete=Ge;const Yt=(e,n,o=globalThis.localStorage)=>{if(!o)return Ne(n);let t;const r=o.getItem(e);if(r)try{t=JSON.parse(r)}catch{t=null,o.removeItem(e)}const a=Ne(t||n);return ne(a,()=>{o.setItem(e,JSON.stringify(a))}),a},Ye="SESSION",Ee={customer:{display_name:"",main_email:""},auth:null},B=Yt(Ye,Ee),Ce=S(()=>{const{auth:e}=B;return e&&new Date(e.expires).getTime()-Date.now()>1e3*10}),Xe=S(()=>B.customer),he=S(()=>Mt(Xe.value)),Re=S({get(){return Xe.value.main_email},set(e){B.customer.main_email=e}});let oe;const Je=S(()=>Ce.value||!!oe?.currentUser?.emailVerified),$e=()=>{B.auth=Ee.auth,B.customer=Ee.customer,localStorage.removeItem(Ye),oe.signOut()},qe=(e="Not authenticated")=>{const n=new Error(e);throw n.isNoAuth=!0,n},Qe=async()=>{const e=await oe.currentUser?.getIdToken();if(!e){qe("Can't get Firebase user ID token");return}const{domain:n}=window.storefront.settings;try{const o=await fetch(`https://${n}/api/passport/token`,{method:"POST",headers:{"Content-Type":"application/json",Authorization:`Bearer ${e}`}});B.auth=await o.json()}catch(o){console.error(o)}},Xt=async()=>(Ce.value||await Qe(),B.auth?B.auth.access_token:qe()),Jt=async()=>{const e=await Xt(),n=B.auth,{data:o}=await D.get(`customers/${n.customer_id}`,{accessToken:e});return B.customer=o,o};let je=!1;const Ze=(e=!window.location.pathname.startsWith("/app/"))=>{if(je)return;je=!0;const n=()=>Et(()=>import("./firebase-app.247497b8.js"),[]).then(({getAuth:o,onAuthStateChanged:t,isSignInWithEmailLink:r,signInWithEmailLink:a})=>{if(oe=o(),t(oe,async l=>{if(l){if(l.displayName&&!he.value&&(B.customer.display_name=l.displayName),l.email&&(!Re.value||l.emailVerified)&&(B.customer.main_email=l.email),l.emailVerified){const s=l.email!==Re.value;(s||!Ce.value)&&(await Qe(),(s||!he.value)&&await Jt())}}else $e()}),r(oe,window.location.href)){const s=new URLSearchParams(window.location.search).get("email");s&&a(oe,s,window.location.href).then(()=>window.localStorage.removeItem("emailForSignIn")).catch(console.error)}}).catch(console.error);e?Ot(n):n()},{settings:Be,context:tr}=globalThis.storefront,qt=["whatsapp","instagram","facebook","twitter","youtube","tiktok","pinterest"],ye={};qt.forEach(e=>{Be[e]&&(ye[e]=Be[e])});const Qt=A({__name:"AccountLink",props:{to:null,accountUrl:{default:globalThis.storefront.settings.account_url||"/app/account"},returnUrl:{default:globalThis.location?.href},isSignUp:{type:Boolean}},setup(e,{expose:n}){n();const o=e,t=S(()=>{let a=o.accountUrl;if(!o.to)return o.isSignUp?a+="?sign_up&":a+="?",`${a}return_url=${o.returnUrl}`;const{settings:l}=globalThis.storefront;return o.to==="orders"&&l.orders_url?l.orders_url:o.to==="favorites"&&l.favorites_url?l.favorites_url:`${a}/${o.to}`}),r={props:o,href:t};return Object.defineProperty(r,"__isScriptSetup",{enumerable:!1,value:!0}),r}}),Zt=["href"];function en(e,n,o,t,r,a){return w(),I("a",{href:t.href},[te(e.$slots,"default")],8,Zt)}const et=U(Qt,[["render",en]]);let pe;pe=navigator.userAgent,document.body?document.body.offsetWidth:window.screen.width;pe.includes("Safari")&&pe.includes("Chrome");const tn=/iPad|iPhone|iPod/.test(pe)&&!window.MSStream,nn=tn||/Android|webOS|BlackBerry|IEMobile|Opera Mini/i.test(pe),on=A({__name:"SocialNetworkIcon",props:{as:{default:"i"},network:null},setup(e,{expose:n}){n();const o=e,t=S(()=>{switch(o.network){case"facebook":return"i-facebook";case"instagram":return"i-instagram";case"whatsapp":return"i-whatsapp";case"youtube":return"i-youtube";case"pinterest":return"i-pinterest";case"tiktok":return"i-tiktok";case"twitter":return"i-twitter";default:return""}}),r={props:o,iconClassName:t};return Object.defineProperty(r,"__isScriptSetup",{enumerable:!1,value:!0}),r}});function rn(e,n,o,t,r,a){return w(),L(xt(o.as),{class:$(t.iconClassName)},null,8,["class"])}const an=U(on,[["render",rn]]),ln=A({__name:"SocialNetworkLink",props:{network:null,href:null,message:null},setup(e,{expose:n}){n();const o=e,t=S(()=>{let a=o.href||ye[o.network]||"";if(o.network==="whatsapp"){const l=a.replace(/[^+\d]/g,"");a=`https://${nn?"api":"web"}.whatsapp.com/send?phone=`+encodeURIComponent(l.charAt(0)==="+"?l:`+55${l}`),o.message&&(a+=`&text=${encodeURIComponent(o.message)}`)}return a}),r={props:o,fixedHref:t,SocialNetworkIcon:an};return Object.defineProperty(r,"__isScriptSetup",{enumerable:!1,value:!0}),r}});function sn(e,n,o,t,r,a){const l=ee("ALink");return w(),L(l,{href:t.fixedHref},{default:E(()=>[te(e.$slots,"default",{},()=>[O(t.SocialNetworkIcon,{network:o.network},null,8,["network"]),te(e.$slots,"append")])]),_:3},8,["href"])}const tt=U(ln,[["render",sn]]),un=A({__name:"ShopSidenavCategory",props:{categoryTree:null},setup(e,{expose:n}){n();const o=k(!1),t=k(!0);ne(o,a=>{a?setTimeout(()=>{t.value=!1},25):t.value=!0});const r={isOpen:o,isFaded:t};return Object.defineProperty(r,"__isScriptSetup",{enumerable:!1,value:!0}),r}}),cn={class:"text-lg text-base-800"},dn=["href"],pn=["href"],fn={class:"inline"};function vn(e,n,o,t,r,a){const l=ee("AImg"),s=ee("ShopSidenavCategory",!0);return w(),I("li",cn,[o.categoryTree.subcategories.length?(w(),I("details",{key:0,class:"bg-white overflow-y-auto overflow-x-hidden z-10 open:absolute open:top-0 open:left-0 open:w-full open:h-full",onToggle:n[0]||(n[0]=c=>t.isOpen=!t.isOpen)},[_("summary",{class:$(["cursor-pointer list-none px-6 py-3 active:bg-base-100 transition-colors",t.isOpen?"bg-base-100":null])},[_("i",{class:$(t.isOpen?"i-arrow-left text-lg":"i-arrow-right float-right mb-0 mt-1 text-xl text-base-500")},null,2),!t.isOpen&&o.categoryTree.icon?(w(),L(l,{key:0,picture:o.categoryTree.icon,class:"w-auto h-5 inline mr-3"},null,8,["picture"])):R("",!0),_("h3",{class:$(["inline",t.isOpen?"ml-4 text-base":null])},C(o.categoryTree.name),3)],2),_("ul",{class:$(["mt-2 transition-opacity",t.isFaded?"opacity-20":"opacity-100"]),tabindex:"-1"},[(w(!0),I(j,null,Y(o.categoryTree.subcategories,c=>(w(),L(s,{key:c._id,"category-tree":c},null,8,["category-tree"]))),128)),_("li",null,[_("a",{href:`/${o.categoryTree.slug}`,class:"block px-6 py-3 text-base underline active:bg-base-200"},C("Ver toda a categoria $1".replace("$1",o.categoryTree.name)),9,dn)])],2)],32)):(w(),I("a",{key:1,href:`/${o.categoryTree.slug}`,class:"block px-6 py-3 active:bg-base-200"},[!t.isOpen&&o.categoryTree.icon?(w(),L(l,{key:0,picture:o.categoryTree.icon,class:"w-auto h-5 inline mr-3"},null,8,["picture"])):R("",!0),_("h3",fn,C(o.categoryTree.name),1)],8,pn))])}const mn=U(un,[["render",vn]]),hn=A({__name:"ShopSidenav",props:{categoryTrees:null},setup(e,{expose:n}){n(),ae(()=>Ze());const o={get customerName(){return he},get isLogged(){return Je},get logout(){return $e},get socialNetworks(){return ye},AccountLink:et,SocialNetworkLink:tt,ShopSidenavCategory:mn};return Object.defineProperty(o,"__isScriptSetup",{enumerable:!1,value:!0}),o}}),gn={class:"flex flex-col h-full"},bn={class:"py-4 grow"},yn={class:"relative h-full"},_n={class:"text-base"},wn={class:"flex items-center px-2 py-4 bg-base-100"},Sn=_("i",{class:"i-account text-4xl text-base-500 m-0"},null,-1),xn={class:"leading-tight"},kn=_("small",{class:"block lowercase font-semibold text-primary"},C("Meus pedidos")+", "+C("Minha conta"),-1),Pn=_("span",{class:"text-base-600"},C("Sair"),-1),In=_("i",{class:"i-logout text-lg ml-1"},null,-1),En=[Pn,In],On={class:"flex gap-3 p-4 bg-base-200 text-xl text-base-700"};function Tn(e,n,o,t,r,a){return w(),I("aside",gn,[_("nav",bn,[_("ul",yn,[(w(!0),I(j,null,Y(o.categoryTrees,l=>(w(),L(t.ShopSidenavCategory,{key:l._id,"category-tree":l},null,8,["category-tree"]))),128))])]),_("footer",_n,[_("div",wn,[O(t.AccountLink,{class:"p-2 grow flex items-center gap-3"},{default:E(()=>[Sn,_("span",xn,[Q(C(`Olá ${t.customerName||"Visitante"}`)+" ",1),kn])]),_:1}),t.isLogged?(w(),I("button",{key:0,onClick:n[0]||(n[0]=(...l)=>t.logout&&t.logout(...l)),class:"p-2 text-right text-base-800"},En)):R("",!0)]),_("ul",On,[(w(!0),I(j,null,Y(t.socialNetworks,(l,s)=>(w(),I("li",{key:s},[O(t.SocialNetworkLink,{network:s,class:"p-1 active:text-primary"},null,8,["network"])]))),128))])])])}const Mn=U(hn,[["render",Tn]]);function K(e,n,...o){if(e in n){let r=n[e];return typeof r=="function"?r(...o):r}let t=new Error(`Tried to handle "${e}" but there is no handler defined. Only defined handlers are: ${Object.keys(n).map(r=>`"${r}"`).join(", ")}.`);throw Error.captureStackTrace&&Error.captureStackTrace(t,K),t}var le=(e=>(e[e.None=0]="None",e[e.RenderStrategy=1]="RenderStrategy",e[e.Static=2]="Static",e))(le||{}),Cn=(e=>(e[e.Unmount=0]="Unmount",e[e.Hidden=1]="Hidden",e))(Cn||{});function W({visible:e=!0,features:n=0,ourProps:o,theirProps:t,...r}){var a;let l=ot(t,o),s=Object.assign(r,{props:l});if(e||n&2&&l.static)return Pe(s);if(n&1){let c=(a=l.unmount)==null||a?0:1;return K(c,{[0](){return null},[1](){return Pe({...r,props:{...l,hidden:!0,style:{display:"none"}}})}})}return Pe(s)}function Pe({props:e,attrs:n,slots:o,slot:t,name:r}){var a,l;let{as:s,...c}=$n(e,["unmount","static"]),u=(a=o.default)==null?void 0:a.call(o,t),i={};if(t){let m=!1,v=[];for(let[f,d]of Object.entries(t))typeof d=="boolean"&&(m=!0),d===!0&&v.push(f);m&&(i["data-headlessui-state"]=v.join(" "))}if(s==="template"){if(u=nt(u??[]),Object.keys(c).length>0||Object.keys(n).length>0){let[m,...v]=u??[];if(!An(m)||v.length>0)throw new Error(['Passing props on "template"!',"",`The current component <${r} /> is rendering a "template".`,"However we need to passthrough the following props:",Object.keys(c).concat(Object.keys(n)).map(p=>p.trim()).filter((p,b,h)=>h.indexOf(p)===b).sort((p,b)=>p.localeCompare(b)).map(p=>` - ${p}`).join(`
|
|
1
|
+
import{u as gt,a as bt,p as yt,b as _t}from"./index.9018a8da.js";import{j as k,c as S,k as ne,l as ae,d as A,t as wt,_ as U,m as ee,o as w,g as L,w as E,a as I,n as $,p as Ke,b as _,q as te,i as R,T as St,e as O,s as Ne,h as xt,u as C,F as j,r as Y,v as Q,x as kt,y as de,z as fe,A as ve,B as J,C as re,D as Me,E as Pt,G as We,H as ze,I as Le,J as Fe}from"./_plugin-vue_export-helper.0c2b7f88.js";import{w as It}from"./runtime-dom.esm-bundler.1fd80976.js";import{_ as Et}from"./preload-helper.101896b7.js";import{i as Ot}from"./idle-callback.889bf0ea.js";const Tt=e=>{if(e){if(e.display_name)return e.display_name;if(e.name&&e.name.given_name)return e.name.given_name}return""},Mt=Tt,Ct=e=>{const{header:n,canSetStyles:o,canCreateHeightDiv:t,isShownOnScrollDown:r}={canSetStyles:!0,canCreateHeightDiv:!0,...e},{ready:a,start:l}=gt(100,{controls:!0,immediate:!1}),s=k(0),c=k(0);let u;const{y:i}=bt(document),m=S(()=>a.value&&i.value>c.value*1.2),v=k("none");ne(m,async d=>{o&&n.value&&(n.value.style.position=d?"sticky":""),u&&(u.style.height=d?`${s.value}px`:""),d?(await yt(300),v.value="opacity var(--transition-slow), transform var(--transition)"):(l(),v.value="none")});const f=k(!1);return ne(i,(d,p)=>{f.value=d>0&&d<p}),ae(()=>{if(!n.value)throw new Error("<header> (props.header) not set");const d=()=>{const h=n.value;s.value=h.offsetHeight,c.value=s.value+window.pageYOffset+h.getBoundingClientRect().top,l()},p=n.value.getElementsByTagName("IMG");let b=!0;for(let h=0;h<p.length;h++){const y=p[h];(!y.complete||y.naturalHeight===0)&&(b=!1,y.onload=d)}b&&d(),window.addEventListener("resize",_t(d,300)),o&&(n.value.style.willChange="transform",ne([m,f],([h,y])=>{let x="",P="";h&&(!y||r)&&(x="0",P="translateY(-100%)");const M=n.value;M.style.opacity=x,M.style.transform=P}),ne(v,h=>{n.value.style.transition=h})),t&&(u=document.createElement("div"),n.value.parentElement?.insertBefore(u,n.value))}),{staticHeight:s,staticY:c,isSticky:m,isScrollUp:f,transition:v}},$t=(e,n)=>{const o=e.filter(({name:t,slug:r,parent:a})=>t&&r&&!a);return n?.length&&o.sort((t,r)=>{const a=n.indexOf(t.slug),l=n.indexOf(r.slug);return a>-1?l===-1||a<l?-1:1:l>-1?1:0}),o},At=(e,n,o=!1)=>{const t=e.filter(({name:r,slug:a,parent:l})=>r&&a&&l?l._id===n._id||l.slug&&l.slug===n.slug:!1);return o&&t.sort((r,a)=>r.name<a.name?-1:1),t},Nt=({header:e,categories:n,menuCategorySlugs:o,menuRandomCategories:t=7,isAlphabeticalSortSubmenu:r})=>{const{isSticky:a,staticHeight:l,staticY:s}=Ct({header:e}),c=S(()=>a.value?e.value?.offsetHeight:s.value),u=$t(n,o),i=p=>At(n,p,!!r),m=p=>({...p,subcategories:i(p).map(b=>m(b))}),v=u.map(m);let f=0;const d=v.filter(({slug:p})=>o?.includes(p)?!0:f<t?(f+=1,!0):!1);return{isSticky:a,staticHeight:l,staticY:s,positionY:c,mainCategories:u,getSubcategories:i,getCategoryTree:m,categoryTrees:v,inlineMenuTrees:d}},Lt=A({__name:"Drawer",props:{modelValue:{type:Boolean,default:!1},placement:{default:"start"},position:{default:"fixed"},hasCloseButton:{type:Boolean,default:!0}},emits:["update:modelValue"],setup(e,{expose:n,emit:o}){n();const t=e,r=()=>o("update:modelValue",!1),a=k(null),l=f=>{a.value?.contains(f.target)||r()},s=f=>{f.key==="Escape"&&r()},c=k(0);ne(wt(t,"modelValue"),async f=>{f?(c.value=window.innerWidth-document.documentElement.clientWidth,document.body.style.overflow="hidden",document.body.style.paddingRight=`${c.value}px`,setTimeout(()=>{document.addEventListener("click",l,{passive:!0}),document.addEventListener("keydown",s,{passive:!0})},500)):(document.body.style.overflow="",document.body.style.paddingRight="",document.removeEventListener("click",l),document.removeEventListener("keydown",s))});const u=S(()=>{switch(t.placement){case"start":return"left";case"end":return"right";case"top":return"down";default:return"up"}}),i=S(()=>t.position==="fixed"),m=S(()=>t.placement==="start"||t.placement==="end"),v={props:t,emit:o,close:r,drawer:a,outsideClickListener:l,escClickListener:s,scrollbarWidth:c,slideTo:u,isFixed:i,isPlacementX:m};return Object.defineProperty(v,"__isScriptSetup",{enumerable:!1,value:!0}),v}}),Ft=["open","data-drawer"],Dt={class:"relative h-full"},Rt=["onClick"],jt=_("i",{class:"i-close text-base-400 text-3xl"},null,-1),Bt={key:0,class:"fixed top-0 left-0 w-screen h-screen bg-black/50 z-40","data-drawer-backdrop":""};function Ht(e,n,o,t,r,a){const l=ee("Fade");return w(),L(l,{slide:t.slideTo,speed:"slow","is-floating":""},{default:E(()=>[o.modelValue?(w(),I("dialog",{key:0,ref:"drawer",class:$(["w-screen shadow p-0 m-0 z-50",[o.position,t.isFixed?`top-0 left-0 ${t.isPlacementX?"h-screen":""}`:null,t.isPlacementX?"max-w-sm":null]]),style:Ke({maxWidth:t.isPlacementX?void 0:`calc(100vw - ${t.scrollbarWidth}px)`}),open:o.modelValue,"data-drawer":o.placement},[_("div",Dt,[o.hasCloseButton?(w(),I("button",{key:0,type:"button","aria-label":"Fechar",onClick:It(t.close,["prevent"]),class:$(["absolute top-2",o.placement==="end"?"left-2":"right-2"]),"data-drawer-close":""},[te(e.$slots,"close",{},()=>[jt])],10,Rt)):R("",!0),te(e.$slots,"default")]),(w(),L(St,{to:"#teleported-top"},[O(l,null,{default:E(()=>[o.modelValue?(w(),I("div",Bt)):R("",!0)]),_:1})]))],14,Ft)):R("",!0)]),_:3},8,["slide"])}const Vt=U(Lt,[["render",Ht]]);globalThis.__apiCache||(globalThis.__apiCache={});const ce={BASE_URL:'"/"',MODE:"production",DEV:!1,PROD:!0,SSR:!1,SITE:'"https://ecom2-002.web.app"',ASSETS_PREFIX:void 0};class De extends Error{constructor(n,o,t,r=!1){o?(super(o.statusText),this.data=o.data,this.statusCode=o.status):super(t||"Request error"),this.config=n,this.response=o,this.isTimeout=r}}const Ut={middleware(e){const n={...e.headers};if(!e.isNoAuth)if(e.accessToken)n.Authorization=`Bearer ${e.accessToken}`;else{const a=e.authenticationId||ce.ECOM_AUTHENTICATION_ID,l=e.apiKey||ce.ECOM_API_KEY;if(a&&l){const s=`${a}:${l}`,c=typeof Buffer=="function"?Buffer.from(s).toString("base64"):btoa(s);n.Authorization=`Basic ${c}`}}let o=e.baseUrl||ce.API_BASE_URL||"https://ecomplus.io/v2";const{endpoint:t,params:r}=e;if(t!=="login"&&t!=="authenticate"&&t!=="ask-auth-callback"&&t!=="check-username"){const a=e.storeId||ce.ECOM_STORE_ID;if(!a)throw new Error("`storeId` must be set in config or `ECOM_STORE_ID` env var");o+=`/:${a}`;const l=e.lang||ce.ECOM_LANG;l&&(o+=`,lang:${l}`)}if(o+=`/${t}`,r){if(typeof r=="string")o+=`?${r}`;else if(typeof r=="object"){const a=new URLSearchParams;Object.keys(r).forEach(l=>{const s=r[l];Array.isArray(s)?s.forEach(c=>{a.append(l,c)}):a.append(l,s)}),o+=`?${a.toString()}`}}return{url:o,headers:n}}},D=async(e,n=0)=>{const{url:o,headers:t}=Ut.middleware(e),{method:r="get",timeout:a=2e4,maxRetries:l=3,cacheMaxAge:s=6e5}=e,c=r==="get"&&(e.canCache||e.canCache===void 0&&ce.SSR);let u;if(c){u=`${o}${JSON.stringify(t)}`;const b=globalThis.__apiCache[u];if(b&&Date.now()-b.timestamp<=s)return{...b.res,config:e}}const i=e.body||e.data;let m;i&&(m=JSON.stringify(i),t["Content-Type"]="application/json",t["Content-Length"]=m.length.toString());const v=new AbortController;let f=!1;const d=setTimeout(()=>{v.abort(),f=!0},a);let p;try{p=await(e.fetch||fetch)(o,{method:r,headers:t,body:m,signal:v.signal})}catch(b){throw new De(e,p,b.message,f)}if(clearTimeout(d),p){if(p.ok){const h={...p,data:await p.json()};return c&&u&&(globalThis.__apiCache[u]={timestamp:Date.now(),res:h}),{...h,config:e}}const{status:b}=p;if(l<n&&(b===429||b>=500)){const h=p.headers.get("retry-after");return new Promise((y,x)=>{setTimeout(()=>{D(e,n+1).then(y).catch(x)},h&&parseInt(h,10)||5e3)})}}try{p.data=await p?.json()}catch{}throw new De(e,p)},Kt=(e,n)=>D({...n,endpoint:e}),Wt=(e,n,o)=>D({...o,method:"post",endpoint:e,body:n}),zt=(e,n,o)=>D({...o,method:"put",endpoint:e,body:n}),Gt=(e,n,o)=>D({...o,method:"patch",endpoint:e,body:n}),Ge=(e,n)=>D({...n,method:"delete",endpoint:e});D.get=Kt;D.post=Wt;D.put=zt;D.patch=Gt;D.del=Ge;D.delete=Ge;const Yt=(e,n,o=globalThis.localStorage)=>{if(!o)return Ne(n);let t;const r=o.getItem(e);if(r)try{t=JSON.parse(r)}catch{t=null,o.removeItem(e)}const a=Ne(t||n);return ne(a,()=>{o.setItem(e,JSON.stringify(a))}),a},Ye="SESSION",Ee={customer:{display_name:"",main_email:""},auth:null},B=Yt(Ye,Ee),Ce=S(()=>{const{auth:e}=B;return e&&new Date(e.expires).getTime()-Date.now()>1e3*10}),Xe=S(()=>B.customer),he=S(()=>Mt(Xe.value)),Re=S({get(){return Xe.value.main_email},set(e){B.customer.main_email=e}});let oe;const Je=S(()=>Ce.value||!!oe?.currentUser?.emailVerified),$e=()=>{B.auth=Ee.auth,B.customer=Ee.customer,localStorage.removeItem(Ye),oe.signOut()},qe=(e="Not authenticated")=>{const n=new Error(e);throw n.isNoAuth=!0,n},Qe=async()=>{const e=await oe.currentUser?.getIdToken();if(!e){qe("Can't get Firebase user ID token");return}const{domain:n}=window.storefront.settings;try{const o=await fetch(`https://${n}/api/passport/token`,{method:"POST",headers:{"Content-Type":"application/json",Authorization:`Bearer ${e}`}});B.auth=await o.json()}catch(o){console.error(o)}},Xt=async()=>(Ce.value||await Qe(),B.auth?B.auth.access_token:qe()),Jt=async()=>{const e=await Xt(),n=B.auth,{data:o}=await D.get(`customers/${n.customer_id}`,{accessToken:e});return B.customer=o,o};let je=!1;const Ze=(e=!window.location.pathname.startsWith("/app/"))=>{if(je)return;je=!0;const n=()=>Et(()=>import("./firebase-app.2840bd36.js"),[]).then(({getAuth:o,onAuthStateChanged:t,isSignInWithEmailLink:r,signInWithEmailLink:a})=>{if(oe=o(),t(oe,async l=>{if(l){if(l.displayName&&!he.value&&(B.customer.display_name=l.displayName),l.email&&(!Re.value||l.emailVerified)&&(B.customer.main_email=l.email),l.emailVerified){const s=l.email!==Re.value;(s||!Ce.value)&&(await Qe(),(s||!he.value)&&await Jt())}}else $e()}),r(oe,window.location.href)){const s=new URLSearchParams(window.location.search).get("email");s&&a(oe,s,window.location.href).then(()=>window.localStorage.removeItem("emailForSignIn")).catch(console.error)}}).catch(console.error);e?Ot(n):n()},{settings:Be,context:tr}=globalThis.storefront,qt=["whatsapp","instagram","facebook","twitter","youtube","tiktok","pinterest"],ye={};qt.forEach(e=>{Be[e]&&(ye[e]=Be[e])});const Qt=A({__name:"AccountLink",props:{to:null,accountUrl:{default:globalThis.storefront.settings.account_url||"/app/account"},returnUrl:{default:globalThis.location?.href},isSignUp:{type:Boolean}},setup(e,{expose:n}){n();const o=e,t=S(()=>{let a=o.accountUrl;if(!o.to)return o.isSignUp?a+="?sign_up&":a+="?",`${a}return_url=${o.returnUrl}`;const{settings:l}=globalThis.storefront;return o.to==="orders"&&l.orders_url?l.orders_url:o.to==="favorites"&&l.favorites_url?l.favorites_url:`${a}/${o.to}`}),r={props:o,href:t};return Object.defineProperty(r,"__isScriptSetup",{enumerable:!1,value:!0}),r}}),Zt=["href"];function en(e,n,o,t,r,a){return w(),I("a",{href:t.href},[te(e.$slots,"default")],8,Zt)}const et=U(Qt,[["render",en]]);let pe;pe=navigator.userAgent,document.body?document.body.offsetWidth:window.screen.width;pe.includes("Safari")&&pe.includes("Chrome");const tn=/iPad|iPhone|iPod/.test(pe)&&!window.MSStream,nn=tn||/Android|webOS|BlackBerry|IEMobile|Opera Mini/i.test(pe),on=A({__name:"SocialNetworkIcon",props:{as:{default:"i"},network:null},setup(e,{expose:n}){n();const o=e,t=S(()=>{switch(o.network){case"facebook":return"i-facebook";case"instagram":return"i-instagram";case"whatsapp":return"i-whatsapp";case"youtube":return"i-youtube";case"pinterest":return"i-pinterest";case"tiktok":return"i-tiktok";case"twitter":return"i-twitter";default:return""}}),r={props:o,iconClassName:t};return Object.defineProperty(r,"__isScriptSetup",{enumerable:!1,value:!0}),r}});function rn(e,n,o,t,r,a){return w(),L(xt(o.as),{class:$(t.iconClassName)},null,8,["class"])}const an=U(on,[["render",rn]]),ln=A({__name:"SocialNetworkLink",props:{network:null,href:null,message:null},setup(e,{expose:n}){n();const o=e,t=S(()=>{let a=o.href||ye[o.network]||"";if(o.network==="whatsapp"){const l=a.replace(/[^+\d]/g,"");a=`https://${nn?"api":"web"}.whatsapp.com/send?phone=`+encodeURIComponent(l.charAt(0)==="+"?l:`+55${l}`),o.message&&(a+=`&text=${encodeURIComponent(o.message)}`)}return a}),r={props:o,fixedHref:t,SocialNetworkIcon:an};return Object.defineProperty(r,"__isScriptSetup",{enumerable:!1,value:!0}),r}});function sn(e,n,o,t,r,a){const l=ee("ALink");return w(),L(l,{href:t.fixedHref},{default:E(()=>[te(e.$slots,"default",{},()=>[O(t.SocialNetworkIcon,{network:o.network},null,8,["network"]),te(e.$slots,"append")])]),_:3},8,["href"])}const tt=U(ln,[["render",sn]]),un=A({__name:"ShopSidenavCategory",props:{categoryTree:null},setup(e,{expose:n}){n();const o=k(!1),t=k(!0);ne(o,a=>{a?setTimeout(()=>{t.value=!1},25):t.value=!0});const r={isOpen:o,isFaded:t};return Object.defineProperty(r,"__isScriptSetup",{enumerable:!1,value:!0}),r}}),cn={class:"text-lg text-base-800"},dn=["href"],pn=["href"],fn={class:"inline"};function vn(e,n,o,t,r,a){const l=ee("AImg"),s=ee("ShopSidenavCategory",!0);return w(),I("li",cn,[o.categoryTree.subcategories.length?(w(),I("details",{key:0,class:"bg-white overflow-y-auto overflow-x-hidden z-10 open:absolute open:top-0 open:left-0 open:w-full open:h-full",onToggle:n[0]||(n[0]=c=>t.isOpen=!t.isOpen)},[_("summary",{class:$(["cursor-pointer list-none px-6 py-3 active:bg-base-100 transition-colors",t.isOpen?"bg-base-100":null])},[_("i",{class:$(t.isOpen?"i-arrow-left text-lg":"i-arrow-right float-right mb-0 mt-1 text-xl text-base-500")},null,2),!t.isOpen&&o.categoryTree.icon?(w(),L(l,{key:0,picture:o.categoryTree.icon,class:"w-auto h-5 inline mr-3"},null,8,["picture"])):R("",!0),_("h3",{class:$(["inline",t.isOpen?"ml-4 text-base":null])},C(o.categoryTree.name),3)],2),_("ul",{class:$(["mt-2 transition-opacity",t.isFaded?"opacity-20":"opacity-100"]),tabindex:"-1"},[(w(!0),I(j,null,Y(o.categoryTree.subcategories,c=>(w(),L(s,{key:c._id,"category-tree":c},null,8,["category-tree"]))),128)),_("li",null,[_("a",{href:`/${o.categoryTree.slug}`,class:"block px-6 py-3 text-base underline active:bg-base-200"},C("Ver toda a categoria $1".replace("$1",o.categoryTree.name)),9,dn)])],2)],32)):(w(),I("a",{key:1,href:`/${o.categoryTree.slug}`,class:"block px-6 py-3 active:bg-base-200"},[!t.isOpen&&o.categoryTree.icon?(w(),L(l,{key:0,picture:o.categoryTree.icon,class:"w-auto h-5 inline mr-3"},null,8,["picture"])):R("",!0),_("h3",fn,C(o.categoryTree.name),1)],8,pn))])}const mn=U(un,[["render",vn]]),hn=A({__name:"ShopSidenav",props:{categoryTrees:null},setup(e,{expose:n}){n(),ae(()=>Ze());const o={get customerName(){return he},get isLogged(){return Je},get logout(){return $e},get socialNetworks(){return ye},AccountLink:et,SocialNetworkLink:tt,ShopSidenavCategory:mn};return Object.defineProperty(o,"__isScriptSetup",{enumerable:!1,value:!0}),o}}),gn={class:"flex flex-col h-full"},bn={class:"py-4 grow"},yn={class:"relative h-full"},_n={class:"text-base"},wn={class:"flex items-center px-2 py-4 bg-base-100"},Sn=_("i",{class:"i-account text-4xl text-base-500 m-0"},null,-1),xn={class:"leading-tight"},kn=_("small",{class:"block lowercase font-semibold text-primary"},C("Meus pedidos")+", "+C("Minha conta"),-1),Pn=_("span",{class:"text-base-600"},C("Sair"),-1),In=_("i",{class:"i-logout text-lg ml-1"},null,-1),En=[Pn,In],On={class:"flex gap-3 p-4 bg-base-200 text-xl text-base-700"};function Tn(e,n,o,t,r,a){return w(),I("aside",gn,[_("nav",bn,[_("ul",yn,[(w(!0),I(j,null,Y(o.categoryTrees,l=>(w(),L(t.ShopSidenavCategory,{key:l._id,"category-tree":l},null,8,["category-tree"]))),128))])]),_("footer",_n,[_("div",wn,[O(t.AccountLink,{class:"p-2 grow flex items-center gap-3"},{default:E(()=>[Sn,_("span",xn,[Q(C(`Olá ${t.customerName||"Visitante"}`)+" ",1),kn])]),_:1}),t.isLogged?(w(),I("button",{key:0,onClick:n[0]||(n[0]=(...l)=>t.logout&&t.logout(...l)),class:"p-2 text-right text-base-800"},En)):R("",!0)]),_("ul",On,[(w(!0),I(j,null,Y(t.socialNetworks,(l,s)=>(w(),I("li",{key:s},[O(t.SocialNetworkLink,{network:s,class:"p-1 active:text-primary"},null,8,["network"])]))),128))])])])}const Mn=U(hn,[["render",Tn]]);function K(e,n,...o){if(e in n){let r=n[e];return typeof r=="function"?r(...o):r}let t=new Error(`Tried to handle "${e}" but there is no handler defined. Only defined handlers are: ${Object.keys(n).map(r=>`"${r}"`).join(", ")}.`);throw Error.captureStackTrace&&Error.captureStackTrace(t,K),t}var le=(e=>(e[e.None=0]="None",e[e.RenderStrategy=1]="RenderStrategy",e[e.Static=2]="Static",e))(le||{}),Cn=(e=>(e[e.Unmount=0]="Unmount",e[e.Hidden=1]="Hidden",e))(Cn||{});function W({visible:e=!0,features:n=0,ourProps:o,theirProps:t,...r}){var a;let l=ot(t,o),s=Object.assign(r,{props:l});if(e||n&2&&l.static)return Pe(s);if(n&1){let c=(a=l.unmount)==null||a?0:1;return K(c,{[0](){return null},[1](){return Pe({...r,props:{...l,hidden:!0,style:{display:"none"}}})}})}return Pe(s)}function Pe({props:e,attrs:n,slots:o,slot:t,name:r}){var a,l;let{as:s,...c}=$n(e,["unmount","static"]),u=(a=o.default)==null?void 0:a.call(o,t),i={};if(t){let m=!1,v=[];for(let[f,d]of Object.entries(t))typeof d=="boolean"&&(m=!0),d===!0&&v.push(f);m&&(i["data-headlessui-state"]=v.join(" "))}if(s==="template"){if(u=nt(u??[]),Object.keys(c).length>0||Object.keys(n).length>0){let[m,...v]=u??[];if(!An(m)||v.length>0)throw new Error(['Passing props on "template"!',"",`The current component <${r} /> is rendering a "template".`,"However we need to passthrough the following props:",Object.keys(c).concat(Object.keys(n)).map(p=>p.trim()).filter((p,b,h)=>h.indexOf(p)===b).sort((p,b)=>p.localeCompare(b)).map(p=>` - ${p}`).join(`
|
|
2
2
|
`),"","You can apply a few solutions:",['Add an `as="..."` prop, to ensure that we render an actual element instead of a "template".',"Render a single element as the child so that we can forward the props onto that element."].map(p=>` - ${p}`).join(`
|
|
3
3
|
`)].join(`
|
|
4
4
|
`));let f=ot((l=m.props)!=null?l:{},c),d=kt(m,f);for(let p in f)p.startsWith("on")&&(d.props||(d.props={}),d.props[p]=f[p]);return d}return Array.isArray(u)&&u.length===1?u[0]:u}return de(s,Object.assign({},c,i),{default:()=>u})}function nt(e){return e.flatMap(n=>n.type===j?nt(n.children):[n])}function ot(...e){if(e.length===0)return{};if(e.length===1)return e[0];let n={},o={};for(let t of e)for(let r in t)r.startsWith("on")&&typeof t[r]=="function"?(o[r]!=null||(o[r]=[]),o[r].push(t[r])):n[r]=t[r];if(n.disabled||n["aria-disabled"])return Object.assign(n,Object.fromEntries(Object.keys(o).map(t=>[t,void 0])));for(let t in o)Object.assign(n,{[t](r,...a){let l=o[t];for(let s of l){if(r instanceof Event&&r.defaultPrevented)return;s(r,...a)}}});return n}function $n(e,n=[]){let o=Object.assign({},e);for(let t of n)t in o&&delete o[t];return o}function An(e){return e==null?!1:typeof e.type=="string"||typeof e.type=="object"||typeof e.type=="function"}let Nn=0;function Ln(){return++Nn}function X(){return Ln()}var T=(e=>(e.Space=" ",e.Enter="Enter",e.Escape="Escape",e.Backspace="Backspace",e.Delete="Delete",e.ArrowLeft="ArrowLeft",e.ArrowUp="ArrowUp",e.ArrowRight="ArrowRight",e.ArrowDown="ArrowDown",e.Home="Home",e.End="End",e.PageUp="PageUp",e.PageDown="PageDown",e.Tab="Tab",e))(T||{});function Fn(e){throw new Error("Unexpected object: "+e)}var F=(e=>(e[e.First=0]="First",e[e.Previous=1]="Previous",e[e.Next=2]="Next",e[e.Last=3]="Last",e[e.Specific=4]="Specific",e[e.Nothing=5]="Nothing",e))(F||{});function Dn(e,n){let o=n.resolveItems();if(o.length<=0)return null;let t=n.resolveActiveIndex(),r=t??-1,a=(()=>{switch(e.focus){case 0:return o.findIndex(l=>!n.resolveDisabled(l));case 1:{let l=o.slice().reverse().findIndex((s,c,u)=>r!==-1&&u.length-c-1>=r?!1:!n.resolveDisabled(s));return l===-1?l:o.length-1-l}case 2:return o.findIndex((l,s)=>s<=r?!1:!n.resolveDisabled(l));case 3:{let l=o.slice().reverse().findIndex(s=>!n.resolveDisabled(s));return l===-1?l:o.length-1-l}case 4:return o.findIndex(l=>n.resolveId(l)===e.id);case 5:return null;default:Fn(e)}})();return a===-1?t:a}function g(e){var n;return e==null||e.value==null?null:(n=e.value.$el)!=null?n:e.value}let rt=Symbol("Context");var V=(e=>(e[e.Open=1]="Open",e[e.Closed=2]="Closed",e[e.Closing=4]="Closing",e[e.Opening=8]="Opening",e))(V||{});function Ae(){return fe(rt,null)}function at(e){ve(rt,e)}function He(e,n){if(e)return e;let o=n??"button";if(typeof o=="string"&&o.toLowerCase()==="button")return"button"}function lt(e,n){let o=k(He(e.value.type,e.value.as));return ae(()=>{o.value=He(e.value.type,e.value.as)}),J(()=>{var t;o.value||g(n)&&g(n)instanceof HTMLButtonElement&&!((t=g(n))!=null&&t.hasAttribute("type"))&&(o.value="button")}),o}var Rn=Object.defineProperty,jn=(e,n,o)=>n in e?Rn(e,n,{enumerable:!0,configurable:!0,writable:!0,value:o}):e[n]=o,Ve=(e,n,o)=>(jn(e,typeof n!="symbol"?n+"":n,o),o);class Bn{constructor(){Ve(this,"current",this.detect()),Ve(this,"currentId",0)}set(n){this.current!==n&&(this.currentId=0,this.current=n)}reset(){this.set(this.detect())}nextId(){return++this.currentId}get isServer(){return this.current==="server"}get isClient(){return this.current==="client"}detect(){return typeof window>"u"||typeof document>"u"?"server":"client"}}let _e=new Bn;function se(e){if(_e.isServer)return null;if(e instanceof Node)return e.ownerDocument;if(e!=null&&e.hasOwnProperty("value")){let n=g(e);if(n)return n.ownerDocument}return document}function Hn({container:e,accept:n,walk:o,enabled:t}){J(()=>{let r=e.value;if(!r||t!==void 0&&!t.value)return;let a=se(e);if(!a)return;let l=Object.assign(c=>n(c),{acceptNode:n}),s=a.createTreeWalker(r,NodeFilter.SHOW_ELEMENT,l,!1);for(;s.nextNode();)o(s.currentNode)})}let Oe=["[contentEditable=true]","[tabindex]","a[href]","area[href]","button:not([disabled])","iframe","input:not([disabled])","select:not([disabled])","textarea:not([disabled])"].map(e=>`${e}:not([tabindex='-1'])`).join(",");var H=(e=>(e[e.First=1]="First",e[e.Previous=2]="Previous",e[e.Next=4]="Next",e[e.Last=8]="Last",e[e.WrapAround=16]="WrapAround",e[e.NoScroll=32]="NoScroll",e))(H||{}),ge=(e=>(e[e.Error=0]="Error",e[e.Overflow=1]="Overflow",e[e.Success=2]="Success",e[e.Underflow=3]="Underflow",e))(ge||{}),Vn=(e=>(e[e.Previous=-1]="Previous",e[e.Next=1]="Next",e))(Vn||{});function me(e=document.body){return e==null?[]:Array.from(e.querySelectorAll(Oe)).sort((n,o)=>Math.sign((n.tabIndex||Number.MAX_SAFE_INTEGER)-(o.tabIndex||Number.MAX_SAFE_INTEGER)))}var we=(e=>(e[e.Strict=0]="Strict",e[e.Loose=1]="Loose",e))(we||{});function Se(e,n=0){var o;return e===((o=se(e))==null?void 0:o.body)?!1:K(n,{[0](){return e.matches(Oe)},[1](){let t=e;for(;t!==null;){if(t.matches(Oe))return!0;t=t.parentElement}return!1}})}function st(e){let n=se(e);re(()=>{n&&!Se(n.activeElement,0)&&Kn(e)})}var Un=(e=>(e[e.Keyboard=0]="Keyboard",e[e.Mouse=1]="Mouse",e))(Un||{});typeof window<"u"&&typeof document<"u"&&(document.addEventListener("keydown",e=>{e.metaKey||e.altKey||e.ctrlKey||(document.documentElement.dataset.headlessuiFocusVisible="")},!0),document.addEventListener("click",e=>{e.detail===1?delete document.documentElement.dataset.headlessuiFocusVisible:e.detail===0&&(document.documentElement.dataset.headlessuiFocusVisible="")},!0));function Kn(e){e?.focus({preventScroll:!0})}let Wn=["textarea","input"].join(",");function zn(e){var n,o;return(o=(n=e?.matches)==null?void 0:n.call(e,Wn))!=null?o:!1}function it(e,n=o=>o){return e.slice().sort((o,t)=>{let r=n(o),a=n(t);if(r===null||a===null)return 0;let l=r.compareDocumentPosition(a);return l&Node.DOCUMENT_POSITION_FOLLOWING?-1:l&Node.DOCUMENT_POSITION_PRECEDING?1:0})}function Gn(e,n){return Z(me(),n,{relativeTo:e})}function Z(e,n,{sorted:o=!0,relativeTo:t=null,skipElements:r=[]}={}){var a;let l=(a=Array.isArray(e)?e.length>0?e[0].ownerDocument:document:e?.ownerDocument)!=null?a:document,s=Array.isArray(e)?o?it(e):e:me(e);r.length>0&&s.length>1&&(s=s.filter(d=>!r.includes(d))),t=t??l.activeElement;let c=(()=>{if(n&5)return 1;if(n&10)return-1;throw new Error("Missing Focus.First, Focus.Previous, Focus.Next or Focus.Last")})(),u=(()=>{if(n&1)return 0;if(n&2)return Math.max(0,s.indexOf(t))-1;if(n&4)return Math.max(0,s.indexOf(t))+1;if(n&8)return s.length-1;throw new Error("Missing Focus.First, Focus.Previous, Focus.Next or Focus.Last")})(),i=n&32?{preventScroll:!0}:{},m=0,v=s.length,f;do{if(m>=v||m+v<=0)return 0;let d=u+m;if(n&16)d=(d+v)%v;else{if(d<0)return 3;if(d>=v)return 1}f=s[d],f?.focus(i),m+=c}while(f!==l.activeElement);return n&6&&zn(f)&&f.select(),2}function Ie(e,n,o){_e.isServer||J(t=>{document.addEventListener(e,n,o),t(()=>document.removeEventListener(e,n,o))})}function ut(e,n,o=S(()=>!0)){function t(a,l){if(!o.value||a.defaultPrevented)return;let s=l(a);if(s===null||!s.getRootNode().contains(s))return;let c=function u(i){return typeof i=="function"?u(i()):Array.isArray(i)||i instanceof Set?i:[i]}(e);for(let u of c){if(u===null)continue;let i=u instanceof HTMLElement?u:g(u);if(i!=null&&i.contains(s)||a.composed&&a.composedPath().includes(i))return}return!Se(s,we.Loose)&&s.tabIndex!==-1&&a.preventDefault(),n(a,s)}let r=k(null);Ie("mousedown",a=>{var l,s;o.value&&(r.value=((s=(l=a.composedPath)==null?void 0:l.call(a))==null?void 0:s[0])||a.target)},!0),Ie("click",a=>{r.value&&(t(a,()=>r.value),r.value=null)},!0),Ie("blur",a=>t(a,()=>window.document.activeElement instanceof HTMLIFrameElement?window.document.activeElement:null),!0)}var be=(e=>(e[e.None=1]="None",e[e.Focusable=2]="Focusable",e[e.Hidden=4]="Hidden",e))(be||{});let Te=A({name:"Hidden",props:{as:{type:[Object,String],default:"div"},features:{type:Number,default:1}},setup(e,{slots:n,attrs:o}){return()=>{let{features:t,...r}=e,a={"aria-hidden":(t&2)===2?!0:void 0,style:{position:"fixed",top:1,left:1,width:1,height:0,padding:0,margin:-1,overflow:"hidden",clip:"rect(0, 0, 0, 0)",whiteSpace:"nowrap",borderWidth:"0",...(t&4)===4&&(t&2)!==2&&{display:"none"}}};return W({ourProps:a,theirProps:r,slot:{},attrs:o,slots:n,name:"Hidden"})}}});function Ue(e){return[e.screenX,e.screenY]}function Yn(){let e=k([-1,-1]);return{wasMoved(n){let o=Ue(n);return e.value[0]===o[0]&&e.value[1]===o[1]?!1:(e.value=o,!0)},update(n){e.value=Ue(n)}}}function Xn(e,n,o){_e.isServer||J(t=>{window.addEventListener(e,n,o),t(()=>window.removeEventListener(e,n,o))})}var G=(e=>(e[e.Forwards=0]="Forwards",e[e.Backwards=1]="Backwards",e))(G||{});function ct(){let e=k(0);return Xn("keydown",n=>{n.key==="Tab"&&(e.value=n.shiftKey?1:0)}),e}function Jn(e,n,o,t){_e.isServer||J(r=>{e=e??window,e.addEventListener(n,o,t),r(()=>e.removeEventListener(n,o,t))})}var qn=(e=>(e[e.Open=0]="Open",e[e.Closed=1]="Closed",e))(qn||{}),Qn=(e=>(e[e.Pointer=0]="Pointer",e[e.Other=1]="Other",e))(Qn||{});function Zn(e){requestAnimationFrame(()=>requestAnimationFrame(e))}let dt=Symbol("MenuContext");function xe(e){let n=fe(dt,null);if(n===null){let o=new Error(`<${e} /> is missing a parent <Menu /> component.`);throw Error.captureStackTrace&&Error.captureStackTrace(o,xe),o}return n}let eo=A({name:"Menu",props:{as:{type:[Object,String],default:"template"}},setup(e,{slots:n,attrs:o}){let t=k(1),r=k(null),a=k(null),l=k([]),s=k(""),c=k(null),u=k(1);function i(v=f=>f){let f=c.value!==null?l.value[c.value]:null,d=it(v(l.value.slice()),b=>g(b.dataRef.domRef)),p=f?d.indexOf(f):null;return p===-1&&(p=null),{items:d,activeItemIndex:p}}let m={menuState:t,buttonRef:r,itemsRef:a,items:l,searchQuery:s,activeItemIndex:c,activationTrigger:u,closeMenu:()=>{t.value=1,c.value=null},openMenu:()=>t.value=0,goToItem(v,f,d){let p=i(),b=Dn(v===F.Specific?{focus:F.Specific,id:f}:{focus:v},{resolveItems:()=>p.items,resolveActiveIndex:()=>p.activeItemIndex,resolveId:h=>h.id,resolveDisabled:h=>h.dataRef.disabled});s.value="",c.value=b,u.value=d??1,l.value=p.items},search(v){let f=s.value!==""?0:1;s.value+=v.toLowerCase();let d=(c.value!==null?l.value.slice(c.value+f).concat(l.value.slice(0,c.value+f)):l.value).find(b=>b.dataRef.textValue.startsWith(s.value)&&!b.dataRef.disabled),p=d?l.value.indexOf(d):-1;p===-1||p===c.value||(c.value=p,u.value=1)},clearSearch(){s.value=""},registerItem(v,f){let d=i(p=>[...p,{id:v,dataRef:f}]);l.value=d.items,c.value=d.activeItemIndex,u.value=1},unregisterItem(v){let f=i(d=>{let p=d.findIndex(b=>b.id===v);return p!==-1&&d.splice(p,1),d});l.value=f.items,c.value=f.activeItemIndex,u.value=1}};return ut([r,a],(v,f)=>{var d;m.closeMenu(),Se(f,we.Loose)||(v.preventDefault(),(d=g(r))==null||d.focus())},S(()=>t.value===0)),ve(dt,m),at(S(()=>K(t.value,{[0]:V.Open,[1]:V.Closed}))),()=>{let v={open:t.value===0,close:m.closeMenu};return W({ourProps:{},theirProps:e,slot:v,slots:n,attrs:o,name:"Menu"})}}}),to=A({name:"MenuButton",props:{disabled:{type:Boolean,default:!1},as:{type:[Object,String],default:"button"},id:{type:String,default:()=>`headlessui-menu-button-${X()}`}},setup(e,{attrs:n,slots:o,expose:t}){let r=xe("MenuButton");t({el:r.buttonRef,$el:r.buttonRef});function a(u){switch(u.key){case T.Space:case T.Enter:case T.ArrowDown:u.preventDefault(),u.stopPropagation(),r.openMenu(),re(()=>{var i;(i=g(r.itemsRef))==null||i.focus({preventScroll:!0}),r.goToItem(F.First)});break;case T.ArrowUp:u.preventDefault(),u.stopPropagation(),r.openMenu(),re(()=>{var i;(i=g(r.itemsRef))==null||i.focus({preventScroll:!0}),r.goToItem(F.Last)});break}}function l(u){switch(u.key){case T.Space:u.preventDefault();break}}function s(u){e.disabled||(r.menuState.value===0?(r.closeMenu(),re(()=>{var i;return(i=g(r.buttonRef))==null?void 0:i.focus({preventScroll:!0})})):(u.preventDefault(),r.openMenu(),Zn(()=>{var i;return(i=g(r.itemsRef))==null?void 0:i.focus({preventScroll:!0})})))}let c=lt(S(()=>({as:e.as,type:n.type})),r.buttonRef);return()=>{var u;let i={open:r.menuState.value===0},{id:m,...v}=e,f={ref:r.buttonRef,id:m,type:c.value,"aria-haspopup":"menu","aria-controls":(u=g(r.itemsRef))==null?void 0:u.id,"aria-expanded":e.disabled?void 0:r.menuState.value===0,onKeydown:a,onKeyup:l,onClick:s};return W({ourProps:f,theirProps:v,slot:i,attrs:n,slots:o,name:"MenuButton"})}}}),no=A({name:"MenuItems",props:{as:{type:[Object,String],default:"div"},static:{type:Boolean,default:!1},unmount:{type:Boolean,default:!0},id:{type:String,default:()=>`headlessui-menu-items-${X()}`}},setup(e,{attrs:n,slots:o,expose:t}){let r=xe("MenuItems"),a=k(null);t({el:r.itemsRef,$el:r.itemsRef}),Hn({container:S(()=>g(r.itemsRef)),enabled:S(()=>r.menuState.value===0),accept(i){return i.getAttribute("role")==="menuitem"?NodeFilter.FILTER_REJECT:i.hasAttribute("role")?NodeFilter.FILTER_SKIP:NodeFilter.FILTER_ACCEPT},walk(i){i.setAttribute("role","none")}});function l(i){var m;switch(a.value&&clearTimeout(a.value),i.key){case T.Space:if(r.searchQuery.value!=="")return i.preventDefault(),i.stopPropagation(),r.search(i.key);case T.Enter:if(i.preventDefault(),i.stopPropagation(),r.activeItemIndex.value!==null){let v=r.items.value[r.activeItemIndex.value];(m=g(v.dataRef.domRef))==null||m.click()}r.closeMenu(),st(g(r.buttonRef));break;case T.ArrowDown:return i.preventDefault(),i.stopPropagation(),r.goToItem(F.Next);case T.ArrowUp:return i.preventDefault(),i.stopPropagation(),r.goToItem(F.Previous);case T.Home:case T.PageUp:return i.preventDefault(),i.stopPropagation(),r.goToItem(F.First);case T.End:case T.PageDown:return i.preventDefault(),i.stopPropagation(),r.goToItem(F.Last);case T.Escape:i.preventDefault(),i.stopPropagation(),r.closeMenu(),re(()=>{var v;return(v=g(r.buttonRef))==null?void 0:v.focus({preventScroll:!0})});break;case T.Tab:i.preventDefault(),i.stopPropagation(),r.closeMenu(),re(()=>Gn(g(r.buttonRef),i.shiftKey?H.Previous:H.Next));break;default:i.key.length===1&&(r.search(i.key),a.value=setTimeout(()=>r.clearSearch(),350));break}}function s(i){switch(i.key){case T.Space:i.preventDefault();break}}let c=Ae(),u=S(()=>c!==null?(c.value&V.Open)===V.Open:r.menuState.value===0);return()=>{var i,m;let v={open:r.menuState.value===0},{id:f,...d}=e,p={"aria-activedescendant":r.activeItemIndex.value===null||(i=r.items.value[r.activeItemIndex.value])==null?void 0:i.id,"aria-labelledby":(m=g(r.buttonRef))==null?void 0:m.id,id:f,onKeydown:l,onKeyup:s,role:"menu",tabIndex:0,ref:r.itemsRef};return W({ourProps:p,theirProps:d,slot:v,attrs:n,slots:o,features:le.RenderStrategy|le.Static,visible:u.value,name:"MenuItems"})}}}),oo=A({name:"MenuItem",inheritAttrs:!1,props:{as:{type:[Object,String],default:"template"},disabled:{type:Boolean,default:!1},id:{type:String,default:()=>`headlessui-menu-item-${X()}`}},setup(e,{slots:n,attrs:o,expose:t}){let r=xe("MenuItem"),a=k(null);t({el:a,$el:a});let l=S(()=>r.activeItemIndex.value!==null?r.items.value[r.activeItemIndex.value].id===e.id:!1),s=S(()=>({disabled:e.disabled,textValue:"",domRef:a}));ae(()=>{var d,p;let b=(p=(d=g(a))==null?void 0:d.textContent)==null?void 0:p.toLowerCase().trim();b!==void 0&&(s.value.textValue=b)}),ae(()=>r.registerItem(e.id,s)),Me(()=>r.unregisterItem(e.id)),J(()=>{r.menuState.value===0&&l.value&&r.activationTrigger.value!==0&&re(()=>{var d,p;return(p=(d=g(a))==null?void 0:d.scrollIntoView)==null?void 0:p.call(d,{block:"nearest"})})});function c(d){if(e.disabled)return d.preventDefault();r.closeMenu(),st(g(r.buttonRef))}function u(){if(e.disabled)return r.goToItem(F.Nothing);r.goToItem(F.Specific,e.id)}let i=Yn();function m(d){i.update(d)}function v(d){i.wasMoved(d)&&(e.disabled||l.value||r.goToItem(F.Specific,e.id,0))}function f(d){i.wasMoved(d)&&(e.disabled||l.value&&r.goToItem(F.Nothing))}return()=>{let{disabled:d}=e,p={active:l.value,disabled:d,close:r.closeMenu},{id:b,...h}=e;return W({ourProps:{id:b,ref:a,role:"menuitem",tabIndex:d===!0?void 0:-1,"aria-disabled":d===!0?!0:void 0,disabled:void 0,onClick:c,onFocus:u,onPointerenter:m,onMouseenter:m,onPointermove:v,onMousemove:v,onPointerleave:f,onMouseleave:f},theirProps:{...o,...h},slot:p,attrs:o,slots:n,name:"MenuItem"})}}});var ro=(e=>(e[e.Open=0]="Open",e[e.Closed=1]="Closed",e))(ro||{});let pt=Symbol("PopoverContext");function ke(e){let n=fe(pt,null);if(n===null){let o=new Error(`<${e} /> is missing a parent <${ht.name} /> component.`);throw Error.captureStackTrace&&Error.captureStackTrace(o,ke),o}return n}let ft=Symbol("PopoverGroupContext");function vt(){return fe(ft,null)}let mt=Symbol("PopoverPanelContext");function ao(){return fe(mt,null)}let ht=A({name:"Popover",props:{as:{type:[Object,String],default:"div"}},setup(e,{slots:n,attrs:o,expose:t}){var r;let a=k(null);t({el:a,$el:a});let l=k(1),s=k(null),c=k(null),u=k(null),i=k(null),m=S(()=>se(a)),v=S(()=>{var y,x;if(!g(s)||!g(i))return!1;for(let ue of document.querySelectorAll("body > *"))if(Number(ue?.contains(g(s)))^Number(ue?.contains(g(i))))return!0;let P=me(),M=P.indexOf(g(s)),N=(M+P.length-1)%P.length,q=(M+1)%P.length,z=P[N],ie=P[q];return!((y=g(i))!=null&&y.contains(z))&&!((x=g(i))!=null&&x.contains(ie))}),f={popoverState:l,buttonId:k(null),panelId:k(null),panel:i,button:s,isPortalled:v,beforePanelSentinel:c,afterPanelSentinel:u,togglePopover(){l.value=K(l.value,{[0]:1,[1]:0})},closePopover(){l.value!==1&&(l.value=1)},close(y){f.closePopover();let x=(()=>y?y instanceof HTMLElement?y:y.value instanceof HTMLElement?g(y):g(f.button):g(f.button))();x?.focus()}};ve(pt,f),at(S(()=>K(l.value,{[0]:V.Open,[1]:V.Closed})));let d={buttonId:f.buttonId,panelId:f.panelId,close(){f.closePopover()}},p=vt(),b=p?.registerPopover;function h(){var y,x,P,M;return(M=p?.isFocusWithinPopoverGroup())!=null?M:((y=m.value)==null?void 0:y.activeElement)&&(((x=g(s))==null?void 0:x.contains(m.value.activeElement))||((P=g(i))==null?void 0:P.contains(m.value.activeElement)))}return J(()=>b?.(d)),Jn((r=m.value)==null?void 0:r.defaultView,"focus",y=>{var x,P;l.value===0&&(h()||s&&i&&y.target!==window&&((x=g(f.beforePanelSentinel))!=null&&x.contains(y.target)||(P=g(f.afterPanelSentinel))!=null&&P.contains(y.target)||f.closePopover()))},!0),ut([s,i],(y,x)=>{var P;f.closePopover(),Se(x,we.Loose)||(y.preventDefault(),(P=g(s))==null||P.focus())},S(()=>l.value===0)),()=>{let y={open:l.value===0,close:f.close};return W({theirProps:e,ourProps:{ref:a},slot:y,slots:n,attrs:o,name:"Popover"})}}}),lo=A({name:"PopoverButton",props:{as:{type:[Object,String],default:"button"},disabled:{type:[Boolean],default:!1},id:{type:String,default:()=>`headlessui-popover-button-${X()}`}},inheritAttrs:!1,setup(e,{attrs:n,slots:o,expose:t}){let r=ke("PopoverButton"),a=S(()=>se(r.button));t({el:r.button,$el:r.button}),ae(()=>{r.buttonId.value=e.id}),Me(()=>{r.buttonId.value=null});let l=vt(),s=l?.closeOthers,c=ao(),u=S(()=>c===null?!1:c.value===r.panelId.value),i=k(null),m=`headlessui-focus-sentinel-${X()}`;u.value||J(()=>{r.button.value=i.value});let v=lt(S(()=>({as:e.as,type:n.type})),i);function f(h){var y,x,P,M,N;if(u.value){if(r.popoverState.value===1)return;switch(h.key){case T.Space:case T.Enter:h.preventDefault(),(x=(y=h.target).click)==null||x.call(y),r.closePopover(),(P=g(r.button))==null||P.focus();break}}else switch(h.key){case T.Space:case T.Enter:h.preventDefault(),h.stopPropagation(),r.popoverState.value===1&&s?.(r.buttonId.value),r.togglePopover();break;case T.Escape:if(r.popoverState.value!==0)return s?.(r.buttonId.value);if(!g(r.button)||(M=a.value)!=null&&M.activeElement&&!((N=g(r.button))!=null&&N.contains(a.value.activeElement)))return;h.preventDefault(),h.stopPropagation(),r.closePopover();break}}function d(h){u.value||h.key===T.Space&&h.preventDefault()}function p(h){var y,x;e.disabled||(u.value?(r.closePopover(),(y=g(r.button))==null||y.focus()):(h.preventDefault(),h.stopPropagation(),r.popoverState.value===1&&s?.(r.buttonId.value),r.togglePopover(),(x=g(r.button))==null||x.focus()))}function b(h){h.preventDefault(),h.stopPropagation()}return()=>{let h=r.popoverState.value===0,y={open:h},{id:x,...P}=e,M=u.value?{ref:i,type:v.value,onKeydown:f,onClick:p}:{ref:i,id:x,type:v.value,"aria-expanded":e.disabled?void 0:r.popoverState.value===0,"aria-controls":g(r.panel)?r.panelId.value:void 0,disabled:e.disabled?!0:void 0,onKeydown:f,onKeyup:d,onClick:p,onMousedown:b},N=ct();function q(){let z=g(r.panel);if(!z)return;function ie(){K(N.value,{[G.Forwards]:()=>Z(z,H.First),[G.Backwards]:()=>Z(z,H.Last)})===ge.Error&&Z(me().filter(ue=>ue.dataset.headlessuiFocusGuard!=="true"),K(N.value,{[G.Forwards]:H.Next,[G.Backwards]:H.Previous}),{relativeTo:g(r.button)})}ie()}return de(j,[W({ourProps:M,theirProps:{...n,...P},slot:y,attrs:n,slots:o,name:"PopoverButton"}),h&&!u.value&&r.isPortalled.value&&de(Te,{id:m,features:be.Focusable,"data-headlessui-focus-guard":!0,as:"button",type:"button",onFocus:q})])}}});A({name:"PopoverOverlay",props:{as:{type:[Object,String],default:"div"},static:{type:Boolean,default:!1},unmount:{type:Boolean,default:!0}},setup(e,{attrs:n,slots:o}){let t=ke("PopoverOverlay"),r=`headlessui-popover-overlay-${X()}`,a=Ae(),l=S(()=>a!==null?(a.value&V.Open)===V.Open:t.popoverState.value===0);function s(){t.closePopover()}return()=>{let c={open:t.popoverState.value===0};return W({ourProps:{id:r,"aria-hidden":!0,onClick:s},theirProps:e,slot:c,attrs:n,slots:o,features:le.RenderStrategy|le.Static,visible:l.value,name:"PopoverOverlay"})}}});let so=A({name:"PopoverPanel",props:{as:{type:[Object,String],default:"div"},static:{type:Boolean,default:!1},unmount:{type:Boolean,default:!0},focus:{type:Boolean,default:!1},id:{type:String,default:()=>`headlessui-popover-panel-${X()}`}},inheritAttrs:!1,setup(e,{attrs:n,slots:o,expose:t}){let{focus:r}=e,a=ke("PopoverPanel"),l=S(()=>se(a.panel)),s=`headlessui-focus-sentinel-before-${X()}`,c=`headlessui-focus-sentinel-after-${X()}`;t({el:a.panel,$el:a.panel}),ae(()=>{a.panelId.value=e.id}),Me(()=>{a.panelId.value=null}),ve(mt,a.panelId),J(()=>{var b,h;if(!r||a.popoverState.value!==0||!a.panel)return;let y=(b=l.value)==null?void 0:b.activeElement;(h=g(a.panel))!=null&&h.contains(y)||Z(g(a.panel),H.First)});let u=Ae(),i=S(()=>u!==null?(u.value&V.Open)===V.Open:a.popoverState.value===0);function m(b){var h,y;switch(b.key){case T.Escape:if(a.popoverState.value!==0||!g(a.panel)||l.value&&!((h=g(a.panel))!=null&&h.contains(l.value.activeElement)))return;b.preventDefault(),b.stopPropagation(),a.closePopover(),(y=g(a.button))==null||y.focus();break}}function v(b){var h,y,x,P,M;let N=b.relatedTarget;N&&g(a.panel)&&((h=g(a.panel))!=null&&h.contains(N)||(a.closePopover(),((x=(y=g(a.beforePanelSentinel))==null?void 0:y.contains)!=null&&x.call(y,N)||(M=(P=g(a.afterPanelSentinel))==null?void 0:P.contains)!=null&&M.call(P,N))&&N.focus({preventScroll:!0})))}let f=ct();function d(){let b=g(a.panel);if(!b)return;function h(){K(f.value,{[G.Forwards]:()=>{var y;Z(b,H.First)===ge.Error&&((y=g(a.afterPanelSentinel))==null||y.focus())},[G.Backwards]:()=>{var y;(y=g(a.button))==null||y.focus({preventScroll:!0})}})}h()}function p(){let b=g(a.panel);if(!b)return;function h(){K(f.value,{[G.Forwards]:()=>{let y=g(a.button),x=g(a.panel);if(!y)return;let P=me(),M=P.indexOf(y),N=P.slice(0,M+1),q=[...P.slice(M+1),...N];for(let z of q.slice())if(z.dataset.headlessuiFocusGuard==="true"||x!=null&&x.contains(z)){let ie=q.indexOf(z);ie!==-1&&q.splice(ie,1)}Z(q,H.First,{sorted:!1})},[G.Backwards]:()=>{var y;Z(b,H.Previous)===ge.Error&&((y=g(a.button))==null||y.focus())}})}h()}return()=>{let b={open:a.popoverState.value===0,close:a.close},{id:h,focus:y,...x}=e,P={ref:a.panel,id:h,onKeydown:m,onFocusout:r&&a.popoverState.value===0?v:void 0,tabIndex:-1};return W({ourProps:P,theirProps:{...n,...x},attrs:n,slot:b,slots:{...o,default:(...M)=>{var N;return[de(j,[i.value&&a.isPortalled.value&&de(Te,{id:s,ref:a.beforePanelSentinel,features:be.Focusable,"data-headlessui-focus-guard":!0,as:"button",type:"button",onFocus:d}),(N=o.default)==null?void 0:N.call(o,...M),i.value&&a.isPortalled.value&&de(Te,{id:c,ref:a.afterPanelSentinel,features:be.Focusable,"data-headlessui-focus-guard":!0,as:"button",type:"button",onFocus:p})])]}},features:le.RenderStrategy|le.Static,visible:i.value,name:"PopoverPanel"})}}});A({name:"PopoverGroup",props:{as:{type:[Object,String],default:"div"}},setup(e,{attrs:n,slots:o,expose:t}){let r=k(null),a=Pt([]),l=S(()=>se(r));t({el:r,$el:r});function s(m){let v=a.value.indexOf(m);v!==-1&&a.value.splice(v,1)}function c(m){return a.value.push(m),()=>{s(m)}}function u(){var m;let v=l.value;if(!v)return!1;let f=v.activeElement;return(m=g(r))!=null&&m.contains(f)?!0:a.value.some(d=>{var p,b;return((p=v.getElementById(d.buttonId.value))==null?void 0:p.contains(f))||((b=v.getElementById(d.panelId.value))==null?void 0:b.contains(f))})}function i(m){for(let v of a.value)v.buttonId.value!==m&&v.close()}return ve(ft,{registerPopover:c,unregisterPopover:s,isFocusWithinPopoverGroup:u,closeOthers:i}),()=>W({ourProps:{ref:r},theirProps:e,slot:{},attrs:n,slots:o,name:"PopoverGroup"})}});const io=e=>{const n=S(()=>e.categoryTree.pictures?.[0]),o=S(()=>e.categoryTree.subcategories.filter(({subcategories:c})=>c.length)),t=S(()=>{let c=o.value.length;return n.value&&(c+=1),o.value.length<e.categoryTree.subcategories.length&&(c+=1),c}),r=S(()=>(e.megaMenuMaxCols||7)>=t.value),a=S(()=>r.value?e.categoryTree.subcategories.filter(({subcategories:c})=>!c.length):e.categoryTree.subcategories),l=S(()=>r.value?e.categoryTree.subcategories.filter(({subcategories:c})=>c.length):e.categoryTree.subcategories),s=S(()=>r.value?t.value:n.value?2:1);return{categoryPicture:n,isMegaMenu:r,subcategoryLinks:a,subcategoryCols:l,countMenuCols:s}},uo=A({__name:"ShopHeaderSubmenu",props:{categoryTree:null},setup(e,{expose:n}){n();const o=e,{categoryPicture:t,subcategoryLinks:r,subcategoryCols:a,countMenuCols:l}=io(o),s={props:o,categoryPicture:t,subcategoryLinks:r,subcategoryCols:a,countMenuCols:l,get Popover(){return ht},get PopoverButton(){return lo},get PopoverPanel(){return so}};return Object.defineProperty(s,"__isScriptSetup",{enumerable:!1,value:!0}),s}}),co={class:"relative"},po={class:"flex gap-6 w-full"},fo={key:0,class:"flex-1"},vo=["href"],mo=["href"],ho={class:"text-sm text-base-600 mt-1 mb-1.5"},go=["href"],bo=["href"];function yo(e,n,o,t,r,a){const l=ee("AImg"),s=ee("Fade");return w(),L(t.Popover,null,{default:E(({open:c})=>[O(t.PopoverButton,{class:"outline-none"},{default:E(()=>[te(e.$slots,"button",We(ze({open:c})))]),_:2},1024),_("div",co,[O(s,null,{default:E(()=>[O(t.PopoverPanel,{class:$(["absolute z-20 top-3 left-1/2 -translate-x-1/2 !transform px-6 py-4 rounded-md backdrop-blur-md shadow bg-white/80 text-base text-base-700",t.countMenuCols===1?"w-60":t.countMenuCols===2?`w-screen ${t.categoryPicture?"max-w-lg":"max-w-sm"}`:t.countMenuCols===3?`w-screen ${t.categoryPicture?"max-w-xl":"max-w-md"}`:t.countMenuCols<6?"w-screen max-w-3xl":"w-screen max-w-5xl"])},{default:E(()=>[_("div",po,[t.subcategoryLinks.length?(w(),I("ul",fo,[(w(!0),I(j,null,Y(t.subcategoryLinks,(u,i)=>(w(),I("li",{key:`link-${i}`,class:$(t.subcategoryLinks.length>10?"text-sm mb-1":"mb-2")},[_("a",{href:`/${u.slug}`,class:"hover:text-primary"},[_("h3",null,C(u.name),1)],8,vo)],2))),128))])):R("",!0),(w(!0),I(j,null,Y(t.subcategoryCols,(u,i)=>(w(),I("div",{key:u._id,class:"flex-1"},[_("a",{href:`/${u.slug}`,class:"hover:text-primary"},[_("h3",null,C(u.name),1)],8,mo),_("ul",ho,[(w(!0),I(j,null,Y(u.subcategories,(m,v)=>(w(),I("li",{key:`${i}-${v}`,class:"mb-0.5"},[_("a",{href:`/${m.slug}`,class:"hover:text-primary hover:underline"},[_("h3",null,C(m.name),1)],8,go)]))),128))])]))),128)),t.categoryPicture?(w(),I("div",{key:1,class:$(t.countMenuCols===2?"basis-1/2":t.countMenuCols<5?"basis-2/5":"basis-1/3")},[O(l,{picture:t.categoryPicture,class:"ml-auto rounded"},null,8,["picture"])],2)):R("",!0)]),_("a",{href:`/${o.categoryTree.slug}`,class:"block mt-1 text-xs text-base-600 leading-snug underline"},C("Ver toda a categoria $1".replace("$1",o.categoryTree.name)),9,bo)]),_:1},8,["class"])]),_:1})])]),_:3})}const _o=U(uo,[["render",yo]]),wo=A({__name:"ShopHeaderMenu",props:{inlineMenuTrees:null},setup(e,{expose:n}){n();const o=e,t=S(()=>!!o.inlineMenuTrees.find(({subcategories:a})=>!a.length)),r={props:o,hasOneLevelSubcategories:t,ShopHeaderSubmenu:_o};return Object.defineProperty(r,"__isScriptSetup",{enumerable:!1,value:!0}),r}}),So={class:"hover:text-primary group"},xo=["href"],ko={class:"inline"};function Po(e,n,o,t,r,a){return w(),I("nav",null,[_("ul",{class:$(["flex gap-4 xl:gap-5 text-base-700",o.inlineMenuTrees.length<7?"text-base":"text-sm"])},[(w(!0),I(j,null,Y(o.inlineMenuTrees,(l,s)=>(w(),I("li",{key:s},[l.subcategories.length?(w(),L(t.ShopHeaderSubmenu,{key:0,"category-tree":l},{button:E(({open:c})=>[_("span",So,[_("h3",{class:$(["group-hover:underline inline",[o.inlineMenuTrees.length<7?"decoration-2":null,c?"underline":null]])},C(l.name),3),t.hasOneLevelSubcategories?(w(),I("i",{key:0,class:$(["i-chevron-down ml-1 transition-transform text-base-400 group-hover:text-primary-subtle",c?"rotate-180":null])},null,2)):R("",!0)])]),_:2},1032,["category-tree"])):(w(),I("a",{key:1,href:`/${l.slug}`,class:$(["hover:text-primary hover:underline",o.inlineMenuTrees.length<7?"decoration-2":null])},[_("h3",ko,C(l.name),1)],10,xo))]))),128))],2)])}const Io=U(wo,[["render",Po]]),Eo={},Oo={class:"w-full h-40 bg-base-300"};function To(e,n){return w(),I("div",Oo)}const Mo=U(Eo,[["render",To]]),Co=A({__name:"AccountMenu",props:{serviceLinks:null},setup(e,{expose:n}){n();const o={get Menu(){return eo},get MenuButton(){return to},get MenuItems(){return no},get MenuItem(){return oo},get socialNetworks(){return ye},get customerName(){return he},get initializeFirebaseAuth(){return Ze},get isLogged(){return Je},get logout(){return $e},AccountLink:et,SocialNetworkLink:tt};return Object.defineProperty(o,"__isScriptSetup",{enumerable:!1,value:!0}),o}}),$o={key:0},Ao={class:"p-3 text-base-600"},No={class:"list-none"},Lo=_("i",{class:"i-favorites mr-1"},null,-1),Fo={class:"flex justify-center gap-2 p-2 text-base-500 text-base"},Do=_("span",{class:"text-base-600"},C("Sair"),-1),Ro=_("i",{class:"i-logout text-lg ml-1"},null,-1),jo=[Do,Ro];function Bo(e,n,o,t,r,a){const l=ee("ALink"),s=ee("Fade");return w(),L(t.Menu,{as:"div",class:"relative text-center text-sm text-base-800"},{default:E(({open:c})=>[c?(w(),I("div",$o,[n[0]||(Le(-1),n[0]=_("span",null,[Q(C(t.initializeFirebaseAuth()),1)]),Le(1),n[0])])):R("",!0),O(t.MenuButton,{class:"outline-none"},{default:E(()=>[te(e.$slots,"button",We(ze({open:c})))]),_:2},1024),O(s,null,{default:E(()=>[O(t.MenuItems,{class:"absolute -right-8 mt-2 w-56 rounded-md shadow ring-1 ring-black ring-opacity-5 bg-white divide-y divide-base-100 focus:outline-none"},{default:E(()=>[_("div",Ao,[Q(C(`Olá ${t.customerName||"Visitante"}`)+" ",1),O(t.AccountLink,{class:"block py-1.5 rounded primary hover:primary-bold my-1"},{default:E(()=>[Q(C("Acessar minha conta"))]),_:1}),t.isLogged?R("",!0):(w(),L(t.AccountLink,{key:0,class:"block font-medium text-primary hover:text-primary-bold","is-sign-up":""},{default:E(()=>[Q(C("Criar uma conta"))]),_:1}))]),_("ul",No,[O(t.MenuItem,{as:"li"},{default:E(({active:u})=>[O(t.AccountLink,{to:"orders",class:$(["block p-2",u?"bg-base-100 text-primary":null])},{default:E(()=>[Q(C("Meus pedidos"))]),_:2},1032,["class"])]),_:1}),O(t.MenuItem,{as:"li"},{default:E(({active:u})=>[O(t.AccountLink,{to:"favorites",class:$(["block p-2",u?"bg-base-100 text-primary":null])},{default:E(()=>[Lo,Q(" "+C("Meus favoritos"))]),_:2},1032,["class"])]),_:1}),(w(!0),I(j,null,Y(o.serviceLinks,({title:u,href:i},m)=>(w(),L(t.MenuItem,{as:"li",key:`s-${m}`},{default:E(({active:v})=>[O(l,{href:i,class:$(["block p-2",v?"bg-base-100 text-primary":null])},{default:E(()=>[Q(C(u),1)]),_:2},1032,["href","class"])]),_:2},1024))),128)),O(t.MenuItem,{as:"li"},{default:E(()=>[_("div",Fo,[(w(!0),I(j,null,Y(t.socialNetworks,(u,i)=>(w(),I("span",{key:i},[O(t.SocialNetworkLink,{network:i,class:"p-1 hover:text-primary"},null,8,["network"])]))),128))])]),_:1}),t.isLogged?(w(),L(t.MenuItem,{key:0,as:"li"},{default:E(()=>[_("button",{onClick:n[1]||(n[1]=(...u)=>t.logout&&t.logout(...u)),class:"p-2 text-right text-base-800"},jo)]),_:1})):R("",!0)])]),_:1})]),_:1})]),_:3})}const Ho=U(Co,[["render",Bo]]),Vo=A({__name:"ShopHeader",props:{categories:null,menuCategorySlugs:null,menuRandomCategories:null,isAlphabeticalSortSubmenu:{type:Boolean},serviceLinks:null},setup(e,{expose:n}){n();const o=e,t=k(null),{isSticky:r,positionY:a,categoryTrees:l,inlineMenuTrees:s}=Nt({...o,header:t}),c=k(!1),u=k(!1),i={props:o,header:t,isSticky:r,positionY:a,categoryTrees:l,inlineMenuTrees:s,isSidenavOpen:c,isSearchOpen:u,Drawer:Vt,ShopSidenav:Mn,ShopHeaderMenu:Io,SearchModal:Mo,AccountMenu:Ho};return Object.defineProperty(i,"__isScriptSetup",{enumerable:!1,value:!0}),i}}),Uo={class:"container 2xl:max-w-7xl mx-auto px-1 lg:pr-3 lg:pl-5 xl:pr-7 xl:pl-9 2xl:pr-0 2xl:pl-2 flex md:grid grid-flow-col grid-cols-3 lg:grid-cols-none lg:auto-cols-max justify-between items-center"},Ko={class:"basis-1/4 lg:hidden"},Wo={class:"basis-1/4 px-2 flex justify-end items-center gap-3 lg:gap-4 text-base-800"},zo=_("i",{class:"i-search w-7 h-7 hover:text-primary hover:scale-110 active:scale-125"},null,-1),Go=[zo],Yo=_("button",{"aria-label":"Abrir carrinho"},[_("i",{class:"i-shopping-cart w-7 h-7 hover:text-primary hover:scale-110 active:scale-125"})],-1);function Xo(e,n,o,t,r,a){return w(),I("header",{ref:"header",class:$(["relative top-0 z-50 transition-colors",[t.isSticky&&!t.isSidenavOpen?"bg-white/80":"bg-white",t.isSticky?"backdrop-blur-md shadow py-2 md:py-3":"py-3 sm:py-4 md:py-5"]])},[_("div",Uo,[_("div",Ko,[_("button",{class:"px-2 my-1","aria-label":"Abrir/fechar menu",onClick:n[0]||(n[0]=l=>t.isSidenavOpen=!t.isSidenavOpen)},[_("i",{class:$(["text-base-500 text-3xl",t.isSidenavOpen?"i-close":"i-menu"])},null,2)])]),te(e.$slots,"logo"),O(t.ShopHeaderMenu,Fe({class:"hidden lg:block"},{inlineMenuTrees:t.inlineMenuTrees}),null,16),_("div",Wo,[_("button",{"aria-label":"Buscar produtos",onClick:n[1]||(n[1]=l=>t.isSearchOpen=!t.isSearchOpen)},Go),O(t.AccountMenu,{class:"hidden sm:block","aria-label":"Minha conta","service-links":o.serviceLinks},{button:E(({open:l})=>[_("i",{class:$(["i-account w-7 h-7 hover:text-primary hover:scale-110 active:scale-125",l?"text-black scale-110":null])},null,2)]),_:1},8,["service-links"]),Yo])]),O(t.Drawer,{modelValue:t.isSidenavOpen,"onUpdate:modelValue":n[2]||(n[2]=l=>t.isSidenavOpen=l),"has-close-button":!1,position:"absolute",class:$(t.isSticky?"mt-2 md:mt-3":"mt-3 sm:mt-4 md:mt-5"),style:Ke({height:`calc(100vh - ${t.positionY}px + .5rem)`})},{default:E(()=>[O(t.ShopSidenav,Fe({class:"bg-white pt-6"},{categoryTrees:t.categoryTrees}),null,16)]),_:1},8,["modelValue","class","style"]),O(t.Drawer,{modelValue:t.isSearchOpen,"onUpdate:modelValue":n[3]||(n[3]=l=>t.isSearchOpen=l),"has-close-button":!1,placement:"top"},{default:E(()=>[O(t.SearchModal)]),_:1},8,["modelValue"])],2)}const nr=U(Vo,[["render",Xo]]);export{nr as default};
|