Remove cookie consent popup
This commit is contained in:
1
.astro/data-store.json
Normal file
1
.astro/data-store.json
Normal file
@@ -0,0 +1 @@
|
|||||||
|
[["Map",1,2],"meta::meta",["Map",3,4,5,6,7,8],"astro-config-digest","{\"root\":{},\"srcDir\":{},\"publicDir\":{},\"outDir\":{},\"cacheDir\":{},\"site\":\"https://www.moreminimore.com\",\"compressHTML\":true,\"base\":\"/\",\"trailingSlash\":\"ignore\",\"output\":\"server\",\"scopedStyleStrategy\":\"attribute\",\"build\":{\"format\":\"directory\",\"client\":{},\"server\":{},\"assets\":\"_astro\",\"serverEntry\":\"entry.mjs\",\"redirects\":false,\"inlineStylesheets\":\"auto\",\"concurrency\":1},\"server\":{\"open\":false,\"host\":\"0.0.0.0\",\"port\":3001,\"streaming\":true,\"allowedHosts\":[\"0.0.0.0\",\"0.0.0.0\",\"0.0.0.0\",\"0.0.0.0\"]},\"redirects\":{},\"image\":{\"endpoint\":{\"route\":\"/_image\",\"entrypoint\":\"astro/assets/endpoint/dev\"},\"service\":{\"entrypoint\":\"astro/assets/services/sharp\",\"config\":{}},\"domains\":[],\"remotePatterns\":[],\"responsiveStyles\":false},\"devToolbar\":{\"enabled\":true},\"markdown\":{\"syntaxHighlight\":{\"type\":\"shiki\",\"excludeLangs\":[\"math\"]},\"shikiConfig\":{\"langs\":[],\"langAlias\":{},\"theme\":\"github-dark\",\"themes\":{},\"wrap\":false,\"transformers\":[]},\"remarkPlugins\":[],\"rehypePlugins\":[],\"remarkRehype\":{},\"gfm\":true,\"smartypants\":{\"backticks\":true,\"closingQuotes\":{\"double\":\"”\",\"single\":\"’\"},\"dashes\":true,\"ellipses\":true,\"openingQuotes\":{\"double\":\"“\",\"single\":\"‘\"},\"quotes\":true}},\"security\":{\"checkOrigin\":true,\"allowedDomains\":[],\"csp\":false,\"actionBodySizeLimit\":1048576,\"serverIslandBodySizeLimit\":1048576},\"env\":{\"schema\":{},\"validateSecrets\":false},\"prerenderConflictBehavior\":\"warn\",\"experimental\":{\"clientPrerender\":false,\"contentIntellisense\":false,\"chromeDevtoolsWorkspace\":false,\"svgo\":false,\"rustCompiler\":false,\"queuedRendering\":{\"enabled\":false}},\"legacy\":{\"collectionsBackwardsCompat\":false},\"session\":{\"driver\":{\"entrypoint\":\"unstorage/drivers/fs-lite\",\"config\":{\"base\":\"/Users/kunthawatgreethong/Gitea/moreminimore-new/node_modules/.astro/sessions\"}}}}","astro-version","6.1.8","content-config-digest","29418499c0163d6c"]
|
||||||
5
.astro/settings.json
Normal file
5
.astro/settings.json
Normal file
@@ -0,0 +1,5 @@
|
|||||||
|
{
|
||||||
|
"_variables": {
|
||||||
|
"lastUpdateCheck": 1776819533824
|
||||||
|
}
|
||||||
|
}
|
||||||
1
dist/client/_astro/Layout.B7dzA6iv.css
vendored
1
dist/client/_astro/Layout.B7dzA6iv.css
vendored
File diff suppressed because one or more lines are too long
1
dist/client/_astro/Layout.DIzBATpC.css
vendored
Normal file
1
dist/client/_astro/Layout.DIzBATpC.css
vendored
Normal file
File diff suppressed because one or more lines are too long
@@ -1,6 +1,6 @@
|
|||||||
import { c as createComponent } from './astro-component_Y0jc7Trv.mjs';
|
import { c as createComponent } from './astro-component_BaTxfI_2.mjs';
|
||||||
import 'piccolore';
|
import 'piccolore';
|
||||||
import { k as createRenderInstruction, m as maybeRenderHead, f as addAttribute, r as renderTemplate, l as renderHead, h as renderComponent, n as renderSlot } from './server_CW1mBpZH.mjs';
|
import { k as createRenderInstruction, m as maybeRenderHead, f as addAttribute, r as renderTemplate, l as renderHead, h as renderComponent, n as renderSlot } from './server_CWPsUuvN.mjs';
|
||||||
import 'clsx';
|
import 'clsx';
|
||||||
|
|
||||||
async function renderScript(result, id) {
|
async function renderScript(result, id) {
|
||||||
@@ -1,8 +1,8 @@
|
|||||||
import 'html-escaper';
|
import 'html-escaper';
|
||||||
import { Traverse } from 'neotraverse/modern';
|
import { Traverse } from 'neotraverse/modern';
|
||||||
import * as z from 'zod/v4';
|
import * as z from 'zod/v4';
|
||||||
import { i as generateCspDigest, s as spreadAttributes, u as unescapeHTML, r as renderTemplate, A as AstroError, j as UnknownContentCollectionError } from './server_CW1mBpZH.mjs';
|
import { i as generateCspDigest, s as spreadAttributes, u as unescapeHTML, r as renderTemplate, A as AstroError, j as UnknownContentCollectionError } from './server_CWPsUuvN.mjs';
|
||||||
import { c as createComponent } from './astro-component_Y0jc7Trv.mjs';
|
import { c as createComponent } from './astro-component_BaTxfI_2.mjs';
|
||||||
import 'clsx';
|
import 'clsx';
|
||||||
import { removeBase, isRemotePath } from '@astrojs/internal-helpers/path';
|
import { removeBase, isRemotePath } from '@astrojs/internal-helpers/path';
|
||||||
import { b as VALID_INPUT_FORMATS } from './consts_BLFvATRa.mjs';
|
import { b as VALID_INPUT_FORMATS } from './consts_BLFvATRa.mjs';
|
||||||
@@ -1,8 +1,8 @@
|
|||||||
import { c as createComponent } from './astro-component_Y0jc7Trv.mjs';
|
import { c as createComponent } from './astro-component_BaTxfI_2.mjs';
|
||||||
import 'piccolore';
|
import 'piccolore';
|
||||||
import { h as renderComponent, r as renderTemplate, m as maybeRenderHead, f as addAttribute } from './server_CW1mBpZH.mjs';
|
import { h as renderComponent, r as renderTemplate, m as maybeRenderHead, f as addAttribute } from './server_CWPsUuvN.mjs';
|
||||||
import { $ as $$Layout } from './Layout_DdK69uya.mjs';
|
import { $ as $$Layout } from './Layout_C5ObnTcG.mjs';
|
||||||
import { g as getCollection } from './_astro_content_Beg-Bg2V.mjs';
|
import { g as getCollection } from './_astro_content_DoK7oWIE.mjs';
|
||||||
|
|
||||||
async function getStaticPaths() {
|
async function getStaticPaths() {
|
||||||
const posts = await getCollection("blog");
|
const posts = await getCollection("blog");
|
||||||
@@ -1,7 +1,7 @@
|
|||||||
import { c as createComponent } from './astro-component_Y0jc7Trv.mjs';
|
import { c as createComponent } from './astro-component_BaTxfI_2.mjs';
|
||||||
import 'piccolore';
|
import 'piccolore';
|
||||||
import { h as renderComponent, r as renderTemplate, m as maybeRenderHead, u as unescapeHTML } from './server_CW1mBpZH.mjs';
|
import { h as renderComponent, r as renderTemplate, m as maybeRenderHead, u as unescapeHTML } from './server_CWPsUuvN.mjs';
|
||||||
import { $ as $$Layout } from './Layout_DdK69uya.mjs';
|
import { $ as $$Layout } from './Layout_C5ObnTcG.mjs';
|
||||||
|
|
||||||
var __freeze = Object.freeze;
|
var __freeze = Object.freeze;
|
||||||
var __defProp = Object.defineProperty;
|
var __defProp = Object.defineProperty;
|
||||||
@@ -1,7 +1,7 @@
|
|||||||
import { c as createComponent } from './astro-component_Y0jc7Trv.mjs';
|
import { c as createComponent } from './astro-component_BaTxfI_2.mjs';
|
||||||
import 'piccolore';
|
import 'piccolore';
|
||||||
import { h as renderComponent, r as renderTemplate, m as maybeRenderHead, u as unescapeHTML } from './server_CW1mBpZH.mjs';
|
import { h as renderComponent, r as renderTemplate, m as maybeRenderHead, u as unescapeHTML } from './server_CWPsUuvN.mjs';
|
||||||
import { $ as $$Layout } from './Layout_DdK69uya.mjs';
|
import { $ as $$Layout } from './Layout_C5ObnTcG.mjs';
|
||||||
|
|
||||||
var __freeze = Object.freeze;
|
var __freeze = Object.freeze;
|
||||||
var __defProp = Object.defineProperty;
|
var __defProp = Object.defineProperty;
|
||||||
@@ -1,4 +1,4 @@
|
|||||||
import { A as AstroError, o as InvalidComponentArgs } from './server_CW1mBpZH.mjs';
|
import { A as AstroError, o as InvalidComponentArgs } from './server_CWPsUuvN.mjs';
|
||||||
|
|
||||||
function validateArgs(args) {
|
function validateArgs(args) {
|
||||||
if (args.length !== 3) return false;
|
if (args.length !== 3) return false;
|
||||||
@@ -1,7 +1,7 @@
|
|||||||
import { c as createComponent } from './astro-component_Y0jc7Trv.mjs';
|
import { c as createComponent } from './astro-component_BaTxfI_2.mjs';
|
||||||
import 'piccolore';
|
import 'piccolore';
|
||||||
import { h as renderComponent, r as renderTemplate, m as maybeRenderHead } from './server_CW1mBpZH.mjs';
|
import { h as renderComponent, r as renderTemplate, m as maybeRenderHead } from './server_CWPsUuvN.mjs';
|
||||||
import { $ as $$Layout, r as renderScript } from './Layout_DdK69uya.mjs';
|
import { $ as $$Layout, r as renderScript } from './Layout_C5ObnTcG.mjs';
|
||||||
|
|
||||||
const $$ConsentLogs = createComponent(($$result, $$props, $$slots) => {
|
const $$ConsentLogs = createComponent(($$result, $$props, $$slots) => {
|
||||||
return renderTemplate`${renderComponent($$result, "Layout", $$Layout, { "title": "Consent Logs", "description": "Cookie consent logs - Admin only", "data-astro-cid-5yvbipfl": true }, { "default": ($$result2) => renderTemplate` ${maybeRenderHead()}<section class="page-header" data-astro-cid-5yvbipfl> <div class="container" data-astro-cid-5yvbipfl> <h1 data-astro-cid-5yvbipfl>Consent Logs</h1> <p data-astro-cid-5yvbipfl>Cookie consent records</p> </div> </section> <section class="content" data-astro-cid-5yvbipfl> <div class="container" data-astro-cid-5yvbipfl> <p data-astro-cid-5yvbipfl>This is the admin page for viewing cookie consent logs.</p> <p data-astro-cid-5yvbipfl>Logs are stored locally in the browser's localStorage.</p> <div id="consent-logs" data-astro-cid-5yvbipfl> <p data-astro-cid-5yvbipfl>Loading consent logs...</p> </div> <button id="clear-logs" class="btn-secondary" data-astro-cid-5yvbipfl>Clear Logs</button> </div> </section> ` })} ${renderScript($$result, "/Users/kunthawatgreethong/Gitea/moreminimore-new/src/pages/admin/consent-logs.astro?astro&type=script&index=0&lang.ts")}`;
|
return renderTemplate`${renderComponent($$result, "Layout", $$Layout, { "title": "Consent Logs", "description": "Cookie consent logs - Admin only", "data-astro-cid-5yvbipfl": true }, { "default": ($$result2) => renderTemplate` ${maybeRenderHead()}<section class="page-header" data-astro-cid-5yvbipfl> <div class="container" data-astro-cid-5yvbipfl> <h1 data-astro-cid-5yvbipfl>Consent Logs</h1> <p data-astro-cid-5yvbipfl>Cookie consent records</p> </div> </section> <section class="content" data-astro-cid-5yvbipfl> <div class="container" data-astro-cid-5yvbipfl> <p data-astro-cid-5yvbipfl>This is the admin page for viewing cookie consent logs.</p> <p data-astro-cid-5yvbipfl>Logs are stored locally in the browser's localStorage.</p> <div id="consent-logs" data-astro-cid-5yvbipfl> <p data-astro-cid-5yvbipfl>Loading consent logs...</p> </div> <button id="clear-logs" class="btn-secondary" data-astro-cid-5yvbipfl>Clear Logs</button> </div> </section> ` })} ${renderScript($$result, "/Users/kunthawatgreethong/Gitea/moreminimore-new/src/pages/admin/consent-logs.astro?astro&type=script&index=0&lang.ts")}`;
|
||||||
@@ -1,7 +1,7 @@
|
|||||||
import { c as createComponent } from './astro-component_Y0jc7Trv.mjs';
|
import { c as createComponent } from './astro-component_BaTxfI_2.mjs';
|
||||||
import 'piccolore';
|
import 'piccolore';
|
||||||
import { h as renderComponent, r as renderTemplate, m as maybeRenderHead } from './server_CW1mBpZH.mjs';
|
import { h as renderComponent, r as renderTemplate, m as maybeRenderHead } from './server_CWPsUuvN.mjs';
|
||||||
import { $ as $$Layout } from './Layout_DdK69uya.mjs';
|
import { $ as $$Layout } from './Layout_C5ObnTcG.mjs';
|
||||||
|
|
||||||
const $$ContactUs = createComponent(($$result, $$props, $$slots) => {
|
const $$ContactUs = createComponent(($$result, $$props, $$slots) => {
|
||||||
return renderTemplate`${renderComponent($$result, "Layout", $$Layout, { "title": "ติดต่อเรา", "description": "ติดต่อทีมงาน MoreminiMore สำหรับปรึกษาฟรี", "data-astro-cid-5c24fmmt": true }, { "default": ($$result2) => renderTemplate` ${maybeRenderHead()}<section class="page-header" data-astro-cid-5c24fmmt> <div class="container" data-astro-cid-5c24fmmt> <h1 data-astro-cid-5c24fmmt>ติดต่อเรา</h1> <p data-astro-cid-5c24fmmt>พร้อมให้บริการ ปรึกษาฟรี!</p> </div> </section> <section class="content" data-astro-cid-5c24fmmt> <div class="container contact-grid" data-astro-cid-5c24fmmt> <div class="contact-info" data-astro-cid-5c24fmmt> <h2 data-astro-cid-5c24fmmt>ข้อมูลการติดต่อ</h2> <div class="info-item" data-astro-cid-5c24fmmt> <strong data-astro-cid-5c24fmmt>โทร:</strong> <span data-astro-cid-5c24fmmt>080-995-5945</span> </div> <div class="info-item" data-astro-cid-5c24fmmt> <strong data-astro-cid-5c24fmmt>อีเมล:</strong> <span data-astro-cid-5c24fmmt>contact@moreminimore.com</span> </div> <div class="info-item" data-astro-cid-5c24fmmt> <strong data-astro-cid-5c24fmmt>ที่อยู่:</strong> <span data-astro-cid-5c24fmmt>53 หมู่ 1 ต.บ้านแพ้ว อ.บ้านแพ้ว สมุทรสาคร 74120</span> </div> </div> <div class="contact-form" data-astro-cid-5c24fmmt> <h2 data-astro-cid-5c24fmmt>ส่งข้อความ</h2> <form data-astro-cid-5c24fmmt> <div class="form-group" data-astro-cid-5c24fmmt> <label for="name" data-astro-cid-5c24fmmt>ชื่อ</label> <input type="text" id="name" name="name" required data-astro-cid-5c24fmmt> </div> <div class="form-group" data-astro-cid-5c24fmmt> <label for="email" data-astro-cid-5c24fmmt>อีเมล</label> <input type="email" id="email" name="email" required data-astro-cid-5c24fmmt> </div> <div class="form-group" data-astro-cid-5c24fmmt> <label for="phone" data-astro-cid-5c24fmmt>เบอร์โทร</label> <input type="tel" id="phone" name="phone" data-astro-cid-5c24fmmt> </div> <div class="form-group" data-astro-cid-5c24fmmt> <label for="message" data-astro-cid-5c24fmmt>ข้อความ</label> <textarea id="message" name="message" rows="5" required data-astro-cid-5c24fmmt></textarea> </div> <button type="submit" class="btn-primary" data-astro-cid-5c24fmmt>ส่งข้อความ</button> </form> </div> </div> </section> ` })}`;
|
return renderTemplate`${renderComponent($$result, "Layout", $$Layout, { "title": "ติดต่อเรา", "description": "ติดต่อทีมงาน MoreminiMore สำหรับปรึกษาฟรี", "data-astro-cid-5c24fmmt": true }, { "default": ($$result2) => renderTemplate` ${maybeRenderHead()}<section class="page-header" data-astro-cid-5c24fmmt> <div class="container" data-astro-cid-5c24fmmt> <h1 data-astro-cid-5c24fmmt>ติดต่อเรา</h1> <p data-astro-cid-5c24fmmt>พร้อมให้บริการ ปรึกษาฟรี!</p> </div> </section> <section class="content" data-astro-cid-5c24fmmt> <div class="container contact-grid" data-astro-cid-5c24fmmt> <div class="contact-info" data-astro-cid-5c24fmmt> <h2 data-astro-cid-5c24fmmt>ข้อมูลการติดต่อ</h2> <div class="info-item" data-astro-cid-5c24fmmt> <strong data-astro-cid-5c24fmmt>โทร:</strong> <span data-astro-cid-5c24fmmt>080-995-5945</span> </div> <div class="info-item" data-astro-cid-5c24fmmt> <strong data-astro-cid-5c24fmmt>อีเมล:</strong> <span data-astro-cid-5c24fmmt>contact@moreminimore.com</span> </div> <div class="info-item" data-astro-cid-5c24fmmt> <strong data-astro-cid-5c24fmmt>ที่อยู่:</strong> <span data-astro-cid-5c24fmmt>53 หมู่ 1 ต.บ้านแพ้ว อ.บ้านแพ้ว สมุทรสาคร 74120</span> </div> </div> <div class="contact-form" data-astro-cid-5c24fmmt> <h2 data-astro-cid-5c24fmmt>ส่งข้อความ</h2> <form data-astro-cid-5c24fmmt> <div class="form-group" data-astro-cid-5c24fmmt> <label for="name" data-astro-cid-5c24fmmt>ชื่อ</label> <input type="text" id="name" name="name" required data-astro-cid-5c24fmmt> </div> <div class="form-group" data-astro-cid-5c24fmmt> <label for="email" data-astro-cid-5c24fmmt>อีเมล</label> <input type="email" id="email" name="email" required data-astro-cid-5c24fmmt> </div> <div class="form-group" data-astro-cid-5c24fmmt> <label for="phone" data-astro-cid-5c24fmmt>เบอร์โทร</label> <input type="tel" id="phone" name="phone" data-astro-cid-5c24fmmt> </div> <div class="form-group" data-astro-cid-5c24fmmt> <label for="message" data-astro-cid-5c24fmmt>ข้อความ</label> <textarea id="message" name="message" rows="5" required data-astro-cid-5c24fmmt></textarea> </div> <button type="submit" class="btn-primary" data-astro-cid-5c24fmmt>ส่งข้อความ</button> </form> </div> </div> </section> ` })}`;
|
||||||
@@ -1,7 +1,7 @@
|
|||||||
import { c as createComponent } from './astro-component_Y0jc7Trv.mjs';
|
import { c as createComponent } from './astro-component_BaTxfI_2.mjs';
|
||||||
import 'piccolore';
|
import 'piccolore';
|
||||||
import { h as renderComponent, r as renderTemplate, m as maybeRenderHead } from './server_CW1mBpZH.mjs';
|
import { h as renderComponent, r as renderTemplate, m as maybeRenderHead } from './server_CWPsUuvN.mjs';
|
||||||
import { $ as $$Layout } from './Layout_DdK69uya.mjs';
|
import { $ as $$Layout } from './Layout_C5ObnTcG.mjs';
|
||||||
|
|
||||||
const $$Faq = createComponent(($$result, $$props, $$slots) => {
|
const $$Faq = createComponent(($$result, $$props, $$slots) => {
|
||||||
return renderTemplate`${renderComponent($$result, "Layout", $$Layout, { "title": "คำถามที่พบบ่อย", "description": "คำตอบสำหรับคำถามที่พบบ่อยเกี่ยวกับบริการของ MoreminiMore", "data-astro-cid-6kmwghhu": true }, { "default": ($$result2) => renderTemplate` ${maybeRenderHead()}<section class="page-header" data-astro-cid-6kmwghhu> <div class="container" data-astro-cid-6kmwghhu> <h1 data-astro-cid-6kmwghhu>คำถามที่พบบ่อย</h1> </div> </section> <section class="content" data-astro-cid-6kmwghhu> <div class="container" data-astro-cid-6kmwghhu> <details data-astro-cid-6kmwghhu> <summary data-astro-cid-6kmwghhu>ทำไมต้องมีเว็บไซต์?</summary> <p data-astro-cid-6kmwghhu>เว็บไซต์คือหน้าบ้านของธุรกิจในยุคดิจิทัล ลูกค้าจำนวนมากค้นหาข้อ<EFBFBD><EFBFBD>ูลออนไลน์ก่อนตัดสินใจซื้อ</p> </details> <details data-astro-cid-6kmwghhu> <summary data-astro-cid-6kmwghhu>ระบบอัตโนมัติทางการตลาดคืออะไร?</summary> <p data-astro-cid-6kmwghhu>คือระบบที่ช่วยทำงานทางการตลาดโดยอัตโนมัติ เช่น ส่งอีเมล ตอบ LINE ดูแล Social Media</p> </details> <details data-astro-cid-6kmwghhu> <summary data-astro-cid-6kmwghhu>AI ช่วยธุรกิจได้อย่างไร?</summary> <p data-astro-cid-6kmwghhu>AI ช่วยตอบลูกค้า วิเคราะห์ข้อมูล สร้างเนื้อหา และทำงานซ้ำๆ แทนคน</p> </details> </div> </section> ` })}`;
|
return renderTemplate`${renderComponent($$result, "Layout", $$Layout, { "title": "คำถามที่พบบ่อย", "description": "คำตอบสำหรับคำถามที่พบบ่อยเกี่ยวกับบริการของ MoreminiMore", "data-astro-cid-6kmwghhu": true }, { "default": ($$result2) => renderTemplate` ${maybeRenderHead()}<section class="page-header" data-astro-cid-6kmwghhu> <div class="container" data-astro-cid-6kmwghhu> <h1 data-astro-cid-6kmwghhu>คำถามที่พบบ่อย</h1> </div> </section> <section class="content" data-astro-cid-6kmwghhu> <div class="container" data-astro-cid-6kmwghhu> <details data-astro-cid-6kmwghhu> <summary data-astro-cid-6kmwghhu>ทำไมต้องมีเว็บไซต์?</summary> <p data-astro-cid-6kmwghhu>เว็บไซต์คือหน้าบ้านของธุรกิจในยุคดิจิทัล ลูกค้าจำนวนมากค้นหาข้อ<EFBFBD><EFBFBD>ูลออนไลน์ก่อนตัดสินใจซื้อ</p> </details> <details data-astro-cid-6kmwghhu> <summary data-astro-cid-6kmwghhu>ระบบอัตโนมัติทางการตลาดคืออะไร?</summary> <p data-astro-cid-6kmwghhu>คือระบบที่ช่วยทำงานทางการตลาดโดยอัตโนมัติ เช่น ส่งอีเมล ตอบ LINE ดูแล Social Media</p> </details> <details data-astro-cid-6kmwghhu> <summary data-astro-cid-6kmwghhu>AI ช่วยธุรกิจได้อย่างไร?</summary> <p data-astro-cid-6kmwghhu>AI ช่วยตอบลูกค้า วิเคราะห์ข้อมูล สร้างเนื้อหา และทำงานซ้ำๆ แทนคน</p> </details> </div> </section> ` })}`;
|
||||||
@@ -1,7 +1,7 @@
|
|||||||
import { c as createComponent } from './astro-component_Y0jc7Trv.mjs';
|
import { c as createComponent } from './astro-component_BaTxfI_2.mjs';
|
||||||
import 'piccolore';
|
import 'piccolore';
|
||||||
import { h as renderComponent, r as renderTemplate, m as maybeRenderHead, u as unescapeHTML } from './server_CW1mBpZH.mjs';
|
import { h as renderComponent, r as renderTemplate, m as maybeRenderHead, u as unescapeHTML } from './server_CWPsUuvN.mjs';
|
||||||
import { $ as $$Layout } from './Layout_DdK69uya.mjs';
|
import { $ as $$Layout } from './Layout_C5ObnTcG.mjs';
|
||||||
|
|
||||||
var __freeze = Object.freeze;
|
var __freeze = Object.freeze;
|
||||||
var __defProp = Object.defineProperty;
|
var __defProp = Object.defineProperty;
|
||||||
@@ -1,8 +1,8 @@
|
|||||||
import { c as createComponent } from './astro-component_Y0jc7Trv.mjs';
|
import { c as createComponent } from './astro-component_BaTxfI_2.mjs';
|
||||||
import 'piccolore';
|
import 'piccolore';
|
||||||
import { h as renderComponent, r as renderTemplate, m as maybeRenderHead, f as addAttribute } from './server_CW1mBpZH.mjs';
|
import { h as renderComponent, r as renderTemplate, m as maybeRenderHead, f as addAttribute } from './server_CWPsUuvN.mjs';
|
||||||
import { $ as $$Layout } from './Layout_DdK69uya.mjs';
|
import { $ as $$Layout } from './Layout_C5ObnTcG.mjs';
|
||||||
import { g as getCollection } from './_astro_content_Beg-Bg2V.mjs';
|
import { g as getCollection } from './_astro_content_DoK7oWIE.mjs';
|
||||||
|
|
||||||
const $$Index = createComponent(async ($$result, $$props, $$slots) => {
|
const $$Index = createComponent(async ($$result, $$props, $$slots) => {
|
||||||
const posts = await getCollection("blog");
|
const posts = await getCollection("blog");
|
||||||
@@ -1,7 +1,7 @@
|
|||||||
import { c as createComponent } from './astro-component_Y0jc7Trv.mjs';
|
import { c as createComponent } from './astro-component_BaTxfI_2.mjs';
|
||||||
import 'piccolore';
|
import 'piccolore';
|
||||||
import { h as renderComponent, r as renderTemplate, m as maybeRenderHead, u as unescapeHTML } from './server_CW1mBpZH.mjs';
|
import { h as renderComponent, r as renderTemplate, m as maybeRenderHead, u as unescapeHTML } from './server_CWPsUuvN.mjs';
|
||||||
import { $ as $$Layout } from './Layout_DdK69uya.mjs';
|
import { $ as $$Layout } from './Layout_C5ObnTcG.mjs';
|
||||||
|
|
||||||
var __freeze = Object.freeze;
|
var __freeze = Object.freeze;
|
||||||
var __defProp = Object.defineProperty;
|
var __defProp = Object.defineProperty;
|
||||||
@@ -1,8 +1,8 @@
|
|||||||
import { joinPaths, isRemotePath, removeQueryString, isParentDirectory } from '@astrojs/internal-helpers/path';
|
import { joinPaths, isRemotePath, removeQueryString, isParentDirectory } from '@astrojs/internal-helpers/path';
|
||||||
import { isRemoteAllowed } from '@astrojs/internal-helpers/remote';
|
import { isRemoteAllowed } from '@astrojs/internal-helpers/remote';
|
||||||
import { A as AstroError, N as NoImageMetadata, F as FailedToFetchRemoteImageDimensions, R as RemoteImageNotAllowed, E as ExpectedImage, L as LocalImageUsedWrongly, M as MissingImageDimension, U as UnsupportedImageFormat, I as IncompatibleDescriptorOptions, a as UnsupportedImageConversion, b as InvalidImageService, c as ExpectedImageOptions, d as ExpectedNotESMImage, e as ImageMissingAlt, m as maybeRenderHead, f as addAttribute, s as spreadAttributes, r as renderTemplate, g as FontFamilyNotFound, u as unescapeHTML } from './server_CW1mBpZH.mjs';
|
import { A as AstroError, N as NoImageMetadata, F as FailedToFetchRemoteImageDimensions, R as RemoteImageNotAllowed, E as ExpectedImage, L as LocalImageUsedWrongly, M as MissingImageDimension, U as UnsupportedImageFormat, I as IncompatibleDescriptorOptions, a as UnsupportedImageConversion, b as InvalidImageService, c as ExpectedImageOptions, d as ExpectedNotESMImage, e as ImageMissingAlt, m as maybeRenderHead, f as addAttribute, s as spreadAttributes, r as renderTemplate, g as FontFamilyNotFound, u as unescapeHTML } from './server_CWPsUuvN.mjs';
|
||||||
import { D as DEFAULT_OUTPUT_FORMAT, V as VALID_SUPPORTED_FORMATS, a as DEFAULT_HASH_PROPS } from './consts_BLFvATRa.mjs';
|
import { D as DEFAULT_OUTPUT_FORMAT, V as VALID_SUPPORTED_FORMATS, a as DEFAULT_HASH_PROPS } from './consts_BLFvATRa.mjs';
|
||||||
import { c as createComponent } from './astro-component_Y0jc7Trv.mjs';
|
import { c as createComponent } from './astro-component_BaTxfI_2.mjs';
|
||||||
import 'clsx';
|
import 'clsx';
|
||||||
import * as mime from 'mrmime';
|
import * as mime from 'mrmime';
|
||||||
import 'piccolore';
|
import 'piccolore';
|
||||||
@@ -1441,7 +1441,7 @@ async function getConfiguredImageService() {
|
|||||||
if (!globalThis?.astroAsset?.imageService) {
|
if (!globalThis?.astroAsset?.imageService) {
|
||||||
const { default: service } = await import(
|
const { default: service } = await import(
|
||||||
// @ts-expect-error
|
// @ts-expect-error
|
||||||
'./sharp_EalPyCjR.mjs'
|
'./sharp_DbSshwO9.mjs'
|
||||||
).catch((e) => {
|
).catch((e) => {
|
||||||
const error = new AstroError(InvalidImageService);
|
const error = new AstroError(InvalidImageService);
|
||||||
error.cause = e;
|
error.cause = e;
|
||||||
22
dist/server/chunks/portfolio_BfApnBuw.mjs
vendored
22
dist/server/chunks/portfolio_BfApnBuw.mjs
vendored
@@ -1,22 +0,0 @@
|
|||||||
import { c as createComponent } from './astro-component_Y0jc7Trv.mjs';
|
|
||||||
import 'piccolore';
|
|
||||||
import { h as renderComponent, r as renderTemplate, m as maybeRenderHead } from './server_CW1mBpZH.mjs';
|
|
||||||
import { $ as $$Layout } from './Layout_DdK69uya.mjs';
|
|
||||||
|
|
||||||
const $$Portfolio = createComponent(($$result, $$props, $$slots) => {
|
|
||||||
return renderTemplate`${renderComponent($$result, "Layout", $$Layout, { "title": "ผลงาน", "description": "ตัวอย่างผลงานการพัฒนาเว็บไซต์และระบบของ MoreminiMore", "data-astro-cid-hcjuqwdu": true }, { "default": ($$result2) => renderTemplate` ${maybeRenderHead()}<section class="page-header" data-astro-cid-hcjuqwdu> <div class="container" data-astro-cid-hcjuqwdu> <h1 data-astro-cid-hcjuqwdu>ผลงานของเรา</h1> <p data-astro-cid-hcjuqwdu>ตัวอย่างผลงานที่ผ่านมา</p> </div> </section> <section class="content" data-astro-cid-hcjuqwdu> <div class="container" data-astro-cid-hcjuqwdu> <p data-astro-cid-hcjuqwdu>ผลงานกำลังจะมาเร็วๆ นี้</p> </div> </section> ` })}`;
|
|
||||||
}, "/Users/kunthawatgreethong/Gitea/moreminimore-new/src/pages/portfolio.astro", void 0);
|
|
||||||
|
|
||||||
const $$file = "/Users/kunthawatgreethong/Gitea/moreminimore-new/src/pages/portfolio.astro";
|
|
||||||
const $$url = "/portfolio";
|
|
||||||
|
|
||||||
const _page = /*#__PURE__*/Object.freeze(/*#__PURE__*/Object.defineProperty({
|
|
||||||
__proto__: null,
|
|
||||||
default: $$Portfolio,
|
|
||||||
file: $$file,
|
|
||||||
url: $$url
|
|
||||||
}, Symbol.toStringTag, { value: 'Module' }));
|
|
||||||
|
|
||||||
const page = () => _page;
|
|
||||||
|
|
||||||
export { page };
|
|
||||||
116
dist/server/chunks/portfolio_C2GFYLDK.mjs
vendored
Normal file
116
dist/server/chunks/portfolio_C2GFYLDK.mjs
vendored
Normal file
@@ -0,0 +1,116 @@
|
|||||||
|
import { c as createComponent } from './astro-component_BaTxfI_2.mjs';
|
||||||
|
import 'piccolore';
|
||||||
|
import { h as renderComponent, r as renderTemplate, m as maybeRenderHead, f as addAttribute } from './server_CWPsUuvN.mjs';
|
||||||
|
import { $ as $$Layout, r as renderScript } from './Layout_C5ObnTcG.mjs';
|
||||||
|
|
||||||
|
const $$Portfolio = createComponent(($$result, $$props, $$slots) => {
|
||||||
|
const portfolioItems = [
|
||||||
|
{
|
||||||
|
name: "Lungfinler",
|
||||||
|
url: "https://lungfinler.com",
|
||||||
|
category: "webdev",
|
||||||
|
thumbnail: "/images/portfolio/lungfinler.png",
|
||||||
|
description: "Digital Agency - บริการด้านการสร้างแบรนด์ กราฟิกดีไซน์ และถ่ายภาพสินค้าคุณภาพสูง",
|
||||||
|
services: ["Website", "Branding", "Graphic Design"]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: "Jet Industries",
|
||||||
|
url: "https://jetindustries.co.th",
|
||||||
|
category: "webdev",
|
||||||
|
thumbnail: "/images/portfolio/jetindustries.png",
|
||||||
|
description: "ผู้ผลิตพลาสติกฉีดขึ้นรูปอย่างแม่นยำ (Precision Plastic Injection Molding) มีประสบการณ์กว่า 40 ปี",
|
||||||
|
services: ["Website", "Industrial"]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: "สำนักงานกฎหมาย ตถาตา",
|
||||||
|
url: "https://lawyernoom.com",
|
||||||
|
category: "webdev",
|
||||||
|
thumbnail: "/images/portfolio/lawyernoom.png",
|
||||||
|
description: "สำนักงานกฎหมายโดย ทนายความ คมสัน ศรีวนิชย์ - บริการด้านคดีความ คดีแพ่ง คดีอาญา",
|
||||||
|
services: ["Website", "Legal"]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: "Underdog Marketing",
|
||||||
|
url: "https://underdog.run",
|
||||||
|
category: "webdev",
|
||||||
|
thumbnail: "/images/portfolio/underdog.png",
|
||||||
|
description: "บล็อกการตลาดและการขายสไตล์ ลุยไม่ยั้ง โดย บุ้ง ดีดติ่งหู",
|
||||||
|
services: ["Website", "Content Marketing"]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: "Baofuling Shop",
|
||||||
|
url: "https://baofulingshop.com",
|
||||||
|
category: "ecommerce",
|
||||||
|
thumbnail: "/images/portfolio/baofuling.png",
|
||||||
|
description: "ร้านค้าออนไลน์ครีมบัวหิมะและผลิตภัณฑ์ความงามจีน",
|
||||||
|
services: ["E-commerce", "Beauty"]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: "เทรนเนอร์ซันนี่",
|
||||||
|
url: "https://trainersunny.com",
|
||||||
|
category: "webdev",
|
||||||
|
thumbnail: "/images/portfolio/trainersunny.png",
|
||||||
|
description: "ผู้เชี่ยวชาญด้านการพัฒนาบุคลากรและ Soft Skill",
|
||||||
|
services: ["Website", "Training"]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: "เลือดจระเข้วานิไทย",
|
||||||
|
url: "https://เลือดจระเข้วานิไทย.com",
|
||||||
|
category: "ecommerce",
|
||||||
|
thumbnail: "/images/portfolio/luadjob.png",
|
||||||
|
description: "ตัวแทนจำหน่ายเลือดจระเข้วานิไทยอย่างเป็นทางการ",
|
||||||
|
services: ["E-commerce", "Health"]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: "ทวนทอง 99",
|
||||||
|
url: "https://tuanthong99.com",
|
||||||
|
category: "ecommerce",
|
||||||
|
thumbnail: "/images/portfolio/tuanthong.png",
|
||||||
|
description: "ร้านค้าออนไลน์สมุนไพรไทยคุณภาพสูง",
|
||||||
|
services: ["E-commerce", "Thai Herbal"]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: "Odoo Portal",
|
||||||
|
url: "https://odooportal.com",
|
||||||
|
category: "marketing",
|
||||||
|
thumbnail: "/images/portfolio/odooportal.png",
|
||||||
|
description: "ตัวแทนจำหน่าย Odoo อย่างเป็นทางการในประเทศไทย",
|
||||||
|
services: ["Odoo ERP", "System Implementation"]
|
||||||
|
}
|
||||||
|
];
|
||||||
|
const categories = [
|
||||||
|
{ id: "all", name: "ทั้งหมด" },
|
||||||
|
{ id: "webdev", name: "พัฒนาเว็บไซต์" },
|
||||||
|
{ id: "ecommerce", name: "อีคอมเมิร์ซ" },
|
||||||
|
{ id: "marketing", name: "ที่ปรึกษาการตลาด" }
|
||||||
|
];
|
||||||
|
return renderTemplate`${renderComponent($$result, "Layout", $$Layout, { "title": "ผลงานของเรา | MoreminiMore - รับทำเว็บไซต์ SEO AI Chatbot", "data-astro-cid-hcjuqwdu": true }, { "default": ($$result2) => renderTemplate` ${maybeRenderHead()}<section class="relative py-32 overflow-hidden bg-black" data-astro-cid-hcjuqwdu> <!-- Background with geometric pattern --> <div class="absolute inset-0" data-astro-cid-hcjuqwdu> <div class="absolute inset-0 bg-gradient-to-br from-gray-900 via-black to-gray-900" data-astro-cid-hcjuqwdu></div> <!-- Decorative circles --> <div class="absolute top-20 left-10 w-64 h-64 border border-white/5 rounded-full" data-astro-cid-hcjuqwdu></div> <div class="absolute bottom-20 right-10 w-96 h-96 border border-primary/10 rounded-full" data-astro-cid-hcjuqwdu></div> <div class="absolute top-1/2 left-1/2 -translate-x-1/2 -translate-y-1/2 w-[600px] h-[600px] border border-white/5 rounded-full" data-astro-cid-hcjuqwdu></div> </div> <div class="container mx-auto px-4 relative z-10" data-astro-cid-hcjuqwdu> <div class="text-center" data-astro-cid-hcjuqwdu> <h1 class="text-6xl md:text-7xl lg:text-8xl font-bold text-white mb-6 tracking-tight" data-astro-cid-hcjuqwdu>
|
||||||
|
ผลงาน
|
||||||
|
</h1> <p class="text-xl md:text-2xl text-gray-400 max-w-2xl mx-auto" data-astro-cid-hcjuqwdu>
|
||||||
|
รวมผลงานพัฒนาเว็บไซต์และโปรเจกต์ที่เราภาคภูมิใจ
|
||||||
|
</p> </div> </div> </section> <section class="py-8 bg-black border-b border-gray-800 sticky top-0 z-50" data-astro-cid-hcjuqwdu> <div class="container mx-auto px-4" data-astro-cid-hcjuqwdu> <div class="flex flex-wrap justify-center gap-3" id="category-filters" data-astro-cid-hcjuqwdu> ${categories.map((cat) => renderTemplate`<button class="filter-btn px-6 py-2.5 rounded-full font-medium transition-all duration-300 text-sm"${addAttribute(cat.id, "data-category")} data-astro-cid-hcjuqwdu> ${cat.name} </button>`)} </div> </div> </section> <section class="py-16 bg-black" data-astro-cid-hcjuqwdu> <div class="container mx-auto px-4" data-astro-cid-hcjuqwdu> <div class="columns-1 md:columns-2 lg:columns-3 gap-6 space-y-6" id="portfolio-grid" data-astro-cid-hcjuqwdu> ${portfolioItems.map((item, index) => renderTemplate`<article class="portfolio-card break-inside-avoid group relative rounded-2xl overflow-hidden bg-gray-900"${addAttribute(item.category, "data-category")}${addAttribute(`animation-delay: ${index * 0.05}s`, "style")} data-astro-cid-hcjuqwdu> <!-- Image --> <div class="relative" data-astro-cid-hcjuqwdu> <img${addAttribute(item.thumbnail, "src")}${addAttribute(item.name, "alt")} class="w-full h-auto object-cover" loading="lazy" data-astro-cid-hcjuqwdu> <!-- Gradient Overlay --> <div class="absolute inset-0 bg-gradient-to-t from-black via-black/40 to-transparent opacity-60 group-hover:opacity-90 transition-opacity duration-500" data-astro-cid-hcjuqwdu></div> <!-- Hover Content --> <div class="absolute inset-0 flex flex-col justify-end p-6 opacity-0 group-hover:opacity-100 transition-all duration-500 translate-y-4 group-hover:translate-y-0" data-astro-cid-hcjuqwdu> <span class="inline-block bg-primary text-black text-xs font-bold px-3 py-1 rounded-full mb-3 self-start" data-astro-cid-hcjuqwdu> ${item.category === "webdev" ? "เว็บไซต์" : item.category === "ecommerce" ? "อีคอมเมิร์ซ" : "ที่ปรึกษา"} </span> <a${addAttribute(item.url, "href")} target="_blank" rel="noopener noreferrer" class="bg-white text-black px-5 py-2.5 rounded-full font-semibold text-sm self-start hover:bg-primary transition-colors inline-flex items-center gap-2" data-astro-cid-hcjuqwdu>
|
||||||
|
เยี่ยมชมเว็บไซต์
|
||||||
|
<svg class="w-4 h-4" fill="none" stroke="currentColor" viewBox="0 0 24 24" data-astro-cid-hcjuqwdu><path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M10 6H6a2 2 0 00-2 2v10a2 2 0 002 2h10a2 2 0 002-2v-4M14 4h6m0 0v6m0-6L10 14" data-astro-cid-hcjuqwdu></path></svg> </a> </div> </div> <!-- Content (visible on mobile, hidden on hover) --> <div class="p-5 group-hover:opacity-0 transition-opacity duration-300" data-astro-cid-hcjuqwdu> <h3 class="text-xl font-bold text-white mb-2" data-astro-cid-hcjuqwdu>${item.name}</h3> <p class="text-gray-400 text-sm mb-3 line-clamp-2" data-astro-cid-hcjuqwdu>${item.description}</p> <div class="flex flex-wrap gap-2" data-astro-cid-hcjuqwdu> ${item.services.slice(0, 3).map((service) => renderTemplate`<span class="bg-gray-800 text-gray-300 px-2 py-1 rounded text-xs" data-astro-cid-hcjuqwdu> ${service} </span>`)} </div> </div> </article>`)} </div> <!-- Empty State --> <div id="empty-state" class="hidden text-center py-20" data-astro-cid-hcjuqwdu> <svg class="w-20 h-20 mx-auto mb-6 text-gray-700" fill="none" stroke="currentColor" viewBox="0 0 24 24" data-astro-cid-hcjuqwdu> <path stroke-linecap="round" stroke-linejoin="round" stroke-width="1.5" d="M21 21l-6-6m2-5a7 7 0 11-14 0 7 7 0 0114 0z" data-astro-cid-hcjuqwdu></path> </svg> <h3 class="text-2xl font-bold text-white mb-2" data-astro-cid-hcjuqwdu>ไม่พบผลงาน</h3> <p class="text-gray-500" data-astro-cid-hcjuqwdu>ลองเลือกหมวดหมู่อื่นๆ ดูนะครับ</p> </div> </div> </section> <section class="py-20 bg-gray-900" data-astro-cid-hcjuqwdu> <div class="container mx-auto px-4" data-astro-cid-hcjuqwdu> <div class="grid grid-cols-2 md:grid-cols-4 gap-8 text-center" data-astro-cid-hcjuqwdu> <div data-astro-cid-hcjuqwdu> <div class="text-5xl font-bold text-primary mb-2" data-astro-cid-hcjuqwdu>50+</div> <div class="text-gray-400" data-astro-cid-hcjuqwdu>โปรเจกต์</div> </div> <div data-astro-cid-hcjuqwdu> <div class="text-5xl font-bold text-primary mb-2" data-astro-cid-hcjuqwdu>40+</div> <div class="text-gray-400" data-astro-cid-hcjuqwdu>ลูกค้า</div> </div> <div data-astro-cid-hcjuqwdu> <div class="text-5xl font-bold text-primary mb-2" data-astro-cid-hcjuqwdu>5+</div> <div class="text-gray-400" data-astro-cid-hcjuqwdu>ปีประสบการณ์</div> </div> <div data-astro-cid-hcjuqwdu> <div class="text-5xl font-bold text-primary mb-2" data-astro-cid-hcjuqwdu>100%</div> <div class="text-gray-400" data-astro-cid-hcjuqwdu>ความพึงพอใจ</div> </div> </div> </div> </section> <section class="py-20 bg-primary" data-astro-cid-hcjuqwdu> <div class="container mx-auto px-4" data-astro-cid-hcjuqwdu> <div class="max-w-3xl mx-auto text-center" data-astro-cid-hcjuqwdu> <h2 class="text-3xl md:text-4xl font-bold mb-6 text-black" data-astro-cid-hcjuqwdu>
|
||||||
|
อยากได้เว็บไซต์แบบนี้บ้าง?
|
||||||
|
</h2> <p class="text-lg text-gray-800 mb-8" data-astro-cid-hcjuqwdu>
|
||||||
|
ปรึกษาฟรี! เราพร้อมช่วยวิเคราะห์และออกแบบเว็บไซต์ที่เหมาะกับธุรกิจของคุณ
|
||||||
|
</p> <div class="flex flex-col sm:flex-row gap-4 justify-center" data-astro-cid-hcjuqwdu> <a href="/contact-us" class="bg-black text-primary px-8 py-4 rounded-full font-bold text-lg hover:bg-gray-900 transition-all duration-300 hover:scale-105 inline-flex items-center justify-center" data-astro-cid-hcjuqwdu>
|
||||||
|
ปรึกษาฟรี
|
||||||
|
</a> <a href="tel:0809955945" class="bg-white text-black px-8 py-4 rounded-full font-bold text-lg hover:bg-gray-100 transition-all duration-300 hover:scale-105 inline-flex items-center justify-center" data-astro-cid-hcjuqwdu>
|
||||||
|
080-995-5945
|
||||||
|
</a> </div> </div> </div> </section> ${renderScript($$result2, "/Users/kunthawatgreethong/Gitea/moreminimore-new/src/pages/portfolio.astro?astro&type=script&index=0&lang.ts")} ` })}`;
|
||||||
|
}, "/Users/kunthawatgreethong/Gitea/moreminimore-new/src/pages/portfolio.astro", void 0);
|
||||||
|
|
||||||
|
const $$file = "/Users/kunthawatgreethong/Gitea/moreminimore-new/src/pages/portfolio.astro";
|
||||||
|
const $$url = "/portfolio";
|
||||||
|
|
||||||
|
const _page = /*#__PURE__*/Object.freeze(/*#__PURE__*/Object.defineProperty({
|
||||||
|
__proto__: null,
|
||||||
|
default: $$Portfolio,
|
||||||
|
file: $$file,
|
||||||
|
url: $$url
|
||||||
|
}, Symbol.toStringTag, { value: 'Module' }));
|
||||||
|
|
||||||
|
const page = () => _page;
|
||||||
|
|
||||||
|
export { page };
|
||||||
@@ -1,7 +1,7 @@
|
|||||||
import { c as createComponent } from './astro-component_Y0jc7Trv.mjs';
|
import { c as createComponent } from './astro-component_BaTxfI_2.mjs';
|
||||||
import 'piccolore';
|
import 'piccolore';
|
||||||
import { h as renderComponent, r as renderTemplate, m as maybeRenderHead } from './server_CW1mBpZH.mjs';
|
import { h as renderComponent, r as renderTemplate, m as maybeRenderHead } from './server_CWPsUuvN.mjs';
|
||||||
import { $ as $$Layout } from './Layout_DdK69uya.mjs';
|
import { $ as $$Layout } from './Layout_C5ObnTcG.mjs';
|
||||||
|
|
||||||
const $$PrivacyPolicy = createComponent(($$result, $$props, $$slots) => {
|
const $$PrivacyPolicy = createComponent(($$result, $$props, $$slots) => {
|
||||||
return renderTemplate`${renderComponent($$result, "Layout", $$Layout, { "title": "นโยบายความเป็นส่วนตัว", "description": "นโยบายความเป็นส่วนตัว - บริษัท มอร์มินิมอร์ จำกัด", "data-astro-cid-3llnt6j6": true }, { "default": ($$result2) => renderTemplate` ${maybeRenderHead()}<section class="page-header" data-astro-cid-3llnt6j6> <div class="container" data-astro-cid-3llnt6j6> <h1 data-astro-cid-3llnt6j6>นโยบายความเป็นส่วนตัว</h1> </div> </section> <section class="content" data-astro-cid-3llnt6j6> <div class="container" data-astro-cid-3llnt6j6> <h2 data-astro-cid-3llnt6j6>นโยบายความเป็นส่วนตัว (Privacy Policy)</h2> <p data-astro-cid-3llnt6j6>บริษัท มอร์มินิมอร์ จำกัด ตระหนักถึงความสำคัญของข้อมูลส่วนบุคคล จึงได้จัดทำนโยบายความเป็นส่วนตัวฉบับนี้ขึ้นเพื่อแจ้งให้ท่านทราบเกี่ยวกับการเก็บรวบรวม ใช้ และเปิดเผยข้อมูลส่วนบุคคลของท่าน</p> <h3 data-astro-cid-3llnt6j6>1. ข้อมูลที่เก็บรวบรวม</h3> <ul data-astro-cid-3llnt6j6> <li data-astro-cid-3llnt6j6>ข้อมูลที่ท่านให้เรา เช่น ชื่อ อีเมล เบอร์โทร</li> <li data-astro-cid-3llnt6j6>ข้อมูลการใช้งานเว็บไซต์</li> <li data-astro-cid-3llnt6j6>ข้อมูลจากคุกกี้</li> </ul> <h3 data-astro-cid-3llnt6j6>2. วัตถุประสงค์ในการใช้ข้อมูล</h3> <ul data-astro-cid-3llnt6j6> <li data-astro-cid-3llnt6j6>เพื่อให้บริการแก่ท่าน</li> <li data-astro-cid-3llnt6j6>เพื่อติดต่อสื่อสารกับท่าน</li> <li data-astro-cid-3llnt6j6>เพื่อปรับปรุงบริการ</li> </ul> <h3 data-astro-cid-3llnt6j6>3. การคุ้มครองข้อมูล</h3> <p data-astro-cid-3llnt6j6>เราจะเก็บรักษาข้อมูลส่วนบุคคลของท่านอย่างปลอดภัยและเป็นความลับ</p> <h3 data-astro-cid-3llnt6j6>4. ติดต่อเรา</h3> <p data-astro-cid-3llnt6j6>หากท่านมีคำถามเกี่ยวกับนโยบายความเป็นส่วนตัวนี้ กรุณาติดต่อเราที่:</p> <ul data-astro-cid-3llnt6j6> <li data-astro-cid-3llnt6j6>โทร: 080-995-5945</li> <li data-astro-cid-3llnt6j6>อีเมล: contact@moreminimore.com</li> </ul> <p data-astro-cid-3llnt6j6><em data-astro-cid-3llnt6j6>อัปเดตล่าสุด: ${(/* @__PURE__ */ new Date()).toLocaleDateString("th-TH")}</em></p> </div> </section> ` })}`;
|
return renderTemplate`${renderComponent($$result, "Layout", $$Layout, { "title": "นโยบายความเป็นส่วนตัว", "description": "นโยบายความเป็นส่วนตัว - บริษัท มอร์มินิมอร์ จำกัด", "data-astro-cid-3llnt6j6": true }, { "default": ($$result2) => renderTemplate` ${maybeRenderHead()}<section class="page-header" data-astro-cid-3llnt6j6> <div class="container" data-astro-cid-3llnt6j6> <h1 data-astro-cid-3llnt6j6>นโยบายความเป็นส่วนตัว</h1> </div> </section> <section class="content" data-astro-cid-3llnt6j6> <div class="container" data-astro-cid-3llnt6j6> <h2 data-astro-cid-3llnt6j6>นโยบายความเป็นส่วนตัว (Privacy Policy)</h2> <p data-astro-cid-3llnt6j6>บริษัท มอร์มินิมอร์ จำกัด ตระหนักถึงความสำคัญของข้อมูลส่วนบุคคล จึงได้จัดทำนโยบายความเป็นส่วนตัวฉบับนี้ขึ้นเพื่อแจ้งให้ท่านทราบเกี่ยวกับการเก็บรวบรวม ใช้ และเปิดเผยข้อมูลส่วนบุคคลของท่าน</p> <h3 data-astro-cid-3llnt6j6>1. ข้อมูลที่เก็บรวบรวม</h3> <ul data-astro-cid-3llnt6j6> <li data-astro-cid-3llnt6j6>ข้อมูลที่ท่านให้เรา เช่น ชื่อ อีเมล เบอร์โทร</li> <li data-astro-cid-3llnt6j6>ข้อมูลการใช้งานเว็บไซต์</li> <li data-astro-cid-3llnt6j6>ข้อมูลจากคุกกี้</li> </ul> <h3 data-astro-cid-3llnt6j6>2. วัตถุประสงค์ในการใช้ข้อมูล</h3> <ul data-astro-cid-3llnt6j6> <li data-astro-cid-3llnt6j6>เพื่อให้บริการแก่ท่าน</li> <li data-astro-cid-3llnt6j6>เพื่อติดต่อสื่อสารกับท่าน</li> <li data-astro-cid-3llnt6j6>เพื่อปรับปรุงบริการ</li> </ul> <h3 data-astro-cid-3llnt6j6>3. การคุ้มครองข้อมูล</h3> <p data-astro-cid-3llnt6j6>เราจะเก็บรักษาข้อมูลส่วนบุคคลของท่านอย่างปลอดภัยและเป็นความลับ</p> <h3 data-astro-cid-3llnt6j6>4. ติดต่อเรา</h3> <p data-astro-cid-3llnt6j6>หากท่านมีคำถามเกี่ยวกับนโยบายความเป็นส่วนตัวนี้ กรุณาติดต่อเราที่:</p> <ul data-astro-cid-3llnt6j6> <li data-astro-cid-3llnt6j6>โทร: 080-995-5945</li> <li data-astro-cid-3llnt6j6>อีเมล: contact@moreminimore.com</li> </ul> <p data-astro-cid-3llnt6j6><em data-astro-cid-3llnt6j6>อัปเดตล่าสุด: ${(/* @__PURE__ */ new Date()).toLocaleDateString("th-TH")}</em></p> </div> </section> ` })}`;
|
||||||
File diff suppressed because one or more lines are too long
@@ -1,5 +1,5 @@
|
|||||||
import { A as AstroError, p as MissingSharp } from './server_CW1mBpZH.mjs';
|
import { A as AstroError, p as MissingSharp } from './server_CWPsUuvN.mjs';
|
||||||
import { b as baseService, p as parseQuality } from './node_CXM37Qne.mjs';
|
import { b as baseService, p as parseQuality } from './node_DRadDSiJ.mjs';
|
||||||
|
|
||||||
let sharp;
|
let sharp;
|
||||||
const qualityTable = {
|
const qualityTable = {
|
||||||
@@ -1,7 +1,7 @@
|
|||||||
import { c as createComponent } from './astro-component_Y0jc7Trv.mjs';
|
import { c as createComponent } from './astro-component_BaTxfI_2.mjs';
|
||||||
import 'piccolore';
|
import 'piccolore';
|
||||||
import { h as renderComponent, r as renderTemplate, m as maybeRenderHead, u as unescapeHTML } from './server_CW1mBpZH.mjs';
|
import { h as renderComponent, r as renderTemplate, m as maybeRenderHead, u as unescapeHTML } from './server_CWPsUuvN.mjs';
|
||||||
import { $ as $$Layout } from './Layout_DdK69uya.mjs';
|
import { $ as $$Layout } from './Layout_C5ObnTcG.mjs';
|
||||||
|
|
||||||
var __freeze = Object.freeze;
|
var __freeze = Object.freeze;
|
||||||
var __defProp = Object.defineProperty;
|
var __defProp = Object.defineProperty;
|
||||||
@@ -1,7 +1,7 @@
|
|||||||
import { c as createComponent } from './astro-component_Y0jc7Trv.mjs';
|
import { c as createComponent } from './astro-component_BaTxfI_2.mjs';
|
||||||
import 'piccolore';
|
import 'piccolore';
|
||||||
import { h as renderComponent, r as renderTemplate, m as maybeRenderHead } from './server_CW1mBpZH.mjs';
|
import { h as renderComponent, r as renderTemplate, m as maybeRenderHead } from './server_CWPsUuvN.mjs';
|
||||||
import { $ as $$Layout } from './Layout_DdK69uya.mjs';
|
import { $ as $$Layout } from './Layout_C5ObnTcG.mjs';
|
||||||
|
|
||||||
const $$TermsAndConditions = createComponent(($$result, $$props, $$slots) => {
|
const $$TermsAndConditions = createComponent(($$result, $$props, $$slots) => {
|
||||||
return renderTemplate`${renderComponent($$result, "Layout", $$Layout, { "title": "ข้อกำหนดการใช้งาน", "description": "ข้อกำหนดการใช้งานเว็บไซต์ - บริษัท มอร์มินิมอร์ จำกัด", "data-astro-cid-uh6gtrza": true }, { "default": ($$result2) => renderTemplate` ${maybeRenderHead()}<section class="page-header" data-astro-cid-uh6gtrza> <div class="container" data-astro-cid-uh6gtrza> <h1 data-astro-cid-uh6gtrza>ข้อกำหนดการใช้งาน</h1> </div> </section> <section class="content" data-astro-cid-uh6gtrza> <div class="container" data-astro-cid-uh6gtrza> <h2 data-astro-cid-uh6gtrza>ข้อกำหนดและเงื่อนไขการใช้งาน</h2> <p data-astro-cid-uh6gtrza>การเข้าใช้งานเว็บไซต์นี้ ถือว่าท่านยอมรับข้อกำหนดและเงื่อนไขต่อไปนี้</p> <h3 data-astro-cid-uh6gtrza>1. การยอมรับเงื่อนไข</h3> <p data-astro-cid-uh6gtrza>ท่านตกลงที่จะใช้งานเว็บไซต์ตามข้อกำหนดและเงื่อนไขที่ระบุไว้</p> <h3 data-astro-cid-uh6gtrza>2. ลิขสิทธิ์</h3> <p data-astro-cid-uh6gtrza>เนื้อหาทั้งหมดบนเว็บไซต์นี้เป็นลิขสิทธิ์ของบริษัท มอร์มินิมอร์ จำกัด</p> <h3 data-astro-cid-uh6gtrza>3. การห้ามใช้งาน</h3> <p data-astro-cid-uh6gtrza>ท่านไม่สามารถ:</p> <ul data-astro-cid-uh6gtrza> <li data-astro-cid-uh6gtrza>คัดลอกหรือเผยแพร่เนื้อหาโดยไม่ได้รับอนุญาต</li> <li data-astro-cid-uh6gtrza>ใช้งานเว็บไซต์ในทางที่ผิดกฎหมาย</li> <li data-astro-cid-uh6gtrza>รบกวนการทำงานของเว็บไซต์</li> </ul> <h3 data-astro-cid-uh6gtrza>4. ข้อจำกัดความรับผิด</h3> <p data-astro-cid-uh6gtrza>เราไม่รับผิดชอบต่อความเสียหายใดๆ ที่เกิดจากการใช้งานเว็บไซต์นี้</p> <h3 data-astro-cid-uh6gtrza>5. ติดต่อเรา</h3> <p data-astro-cid-uh6gtrza>หากท่านมีคำถามเกี่ยวกับข้อกำหนดนี้ กรุณาติดต่อเราที่ contact@moreminimore.com</p> <p data-astro-cid-uh6gtrza><em data-astro-cid-uh6gtrza>อัปเดตล่าสุด: ${(/* @__PURE__ */ new Date()).toLocaleDateString("th-TH")}</em></p> </div> </section> ` })}`;
|
return renderTemplate`${renderComponent($$result, "Layout", $$Layout, { "title": "ข้อกำหนดการใช้งาน", "description": "ข้อกำหนดการใช้งานเว็บไซต์ - บริษัท มอร์มินิมอร์ จำกัด", "data-astro-cid-uh6gtrza": true }, { "default": ($$result2) => renderTemplate` ${maybeRenderHead()}<section class="page-header" data-astro-cid-uh6gtrza> <div class="container" data-astro-cid-uh6gtrza> <h1 data-astro-cid-uh6gtrza>ข้อกำหนดการใช้งาน</h1> </div> </section> <section class="content" data-astro-cid-uh6gtrza> <div class="container" data-astro-cid-uh6gtrza> <h2 data-astro-cid-uh6gtrza>ข้อกำหนดและเงื่อนไขการใช้งาน</h2> <p data-astro-cid-uh6gtrza>การเข้าใช้งานเว็บไซต์นี้ ถือว่าท่านยอมรับข้อกำหนดและเงื่อนไขต่อไปนี้</p> <h3 data-astro-cid-uh6gtrza>1. การยอมรับเงื่อนไข</h3> <p data-astro-cid-uh6gtrza>ท่านตกลงที่จะใช้งานเว็บไซต์ตามข้อกำหนดและเงื่อนไขที่ระบุไว้</p> <h3 data-astro-cid-uh6gtrza>2. ลิขสิทธิ์</h3> <p data-astro-cid-uh6gtrza>เนื้อหาทั้งหมดบนเว็บไซต์นี้เป็นลิขสิทธิ์ของบริษัท มอร์มินิมอร์ จำกัด</p> <h3 data-astro-cid-uh6gtrza>3. การห้ามใช้งาน</h3> <p data-astro-cid-uh6gtrza>ท่านไม่สามารถ:</p> <ul data-astro-cid-uh6gtrza> <li data-astro-cid-uh6gtrza>คัดลอกหรือเผยแพร่เนื้อหาโดยไม่ได้รับอนุญาต</li> <li data-astro-cid-uh6gtrza>ใช้งานเว็บไซต์ในทางที่ผิดกฎหมาย</li> <li data-astro-cid-uh6gtrza>รบกวนการทำงานของเว็บไซต์</li> </ul> <h3 data-astro-cid-uh6gtrza>4. ข้อจำกัดความรับผิด</h3> <p data-astro-cid-uh6gtrza>เราไม่รับผิดชอบต่อความเสียหายใดๆ ที่เกิดจากการใช้งานเว็บไซต์นี้</p> <h3 data-astro-cid-uh6gtrza>5. ติดต่อเรา</h3> <p data-astro-cid-uh6gtrza>หากท่านมีคำถามเกี่ยวกับข้อกำหนดนี้ กรุณาติดต่อเราที่ contact@moreminimore.com</p> <p data-astro-cid-uh6gtrza><em data-astro-cid-uh6gtrza>อัปเดตล่าสุด: ${(/* @__PURE__ */ new Date()).toLocaleDateString("th-TH")}</em></p> </div> </section> ` })}`;
|
||||||
@@ -1,7 +1,7 @@
|
|||||||
import { c as createComponent } from './astro-component_Y0jc7Trv.mjs';
|
import { c as createComponent } from './astro-component_BaTxfI_2.mjs';
|
||||||
import 'piccolore';
|
import 'piccolore';
|
||||||
import { h as renderComponent, r as renderTemplate, m as maybeRenderHead } from './server_CW1mBpZH.mjs';
|
import { h as renderComponent, r as renderTemplate, m as maybeRenderHead } from './server_CWPsUuvN.mjs';
|
||||||
import { $ as $$Layout } from './Layout_DdK69uya.mjs';
|
import { $ as $$Layout } from './Layout_C5ObnTcG.mjs';
|
||||||
|
|
||||||
const $$WebDevelopment = createComponent(($$result, $$props, $$slots) => {
|
const $$WebDevelopment = createComponent(($$result, $$props, $$slots) => {
|
||||||
return renderTemplate`${renderComponent($$result, "Layout", $$Layout, { "title": "บริการพัฒนาเว็บไซต์", "description": "บริการพัฒนาเว็บไซต์สวยงามและทันสมัยสำหรับธุรกิจ SMEs", "data-astro-cid-5jmbf5qv": true }, { "default": ($$result2) => renderTemplate` ${maybeRenderHead()}<section class="page-header" data-astro-cid-5jmbf5qv> <div class="container" data-astro-cid-5jmbf5qv> <h1 data-astro-cid-5jmbf5qv>บริการพัฒนาเว็บไซต์</h1> <p data-astro-cid-5jmbf5qv>เราพัฒนาเว็บไซต์ที่ตอบโจทย์ธุรกิจของคุณ</p> </div> </section> <section class="content" data-astro-cid-5jmbf5qv> <div class="container" data-astro-cid-5jmbf5qv> <h2 data-astro-cid-5jmbf5qv>ทำไมต้องมีเว็บไซต์?</h2> <ul data-astro-cid-5jmbf5qv> <li data-astro-cid-5jmbf5qv>เป็นหน้าบ้านดิจิทัลของธุรกิจ</li> <li data-astro-cid-5jmbf5qv>สร้างความน่าเชื่อถือ</li> <li data-astro-cid-5jmbf5qv>เข้าถึงลูกค้าได้ตลอด 24 ชั่วโมง</li> <li data-astro-cid-5jmbf5qv>เพิ่มโอกาสในการขาย</li> </ul> <h2 data-astro-cid-5jmbf5qv>รูปแบบเว็บไซต์</h2> <ul data-astro-cid-5jmbf5qv> <li data-astro-cid-5jmbf5qv>เว็บไซต์บริษัท/องค์กร</li> <li data-astro-cid-5jmbf5qv>เว็บไซต์ร้านค้าออนไลน์</li> <li data-astro-cid-5jmbf5qv>Landing Page</li> <li data-astro-cid-5jmbf5qv>ระบบหลังร้าน</li> </ul> <a href="/contact-us" class="btn-primary" data-astro-cid-5jmbf5qv>สอบถามราคา</a> </div> </section> ` })}`;
|
return renderTemplate`${renderComponent($$result, "Layout", $$Layout, { "title": "บริการพัฒนาเว็บไซต์", "description": "บริการพัฒนาเว็บไซต์สวยงามและทันสมัยสำหรับธุรกิจ SMEs", "data-astro-cid-5jmbf5qv": true }, { "default": ($$result2) => renderTemplate` ${maybeRenderHead()}<section class="page-header" data-astro-cid-5jmbf5qv> <div class="container" data-astro-cid-5jmbf5qv> <h1 data-astro-cid-5jmbf5qv>บริการพัฒนาเว็บไซต์</h1> <p data-astro-cid-5jmbf5qv>เราพัฒนาเว็บไซต์ที่ตอบโจทย์ธุรกิจของคุณ</p> </div> </section> <section class="content" data-astro-cid-5jmbf5qv> <div class="container" data-astro-cid-5jmbf5qv> <h2 data-astro-cid-5jmbf5qv>ทำไมต้องมีเว็บไซต์?</h2> <ul data-astro-cid-5jmbf5qv> <li data-astro-cid-5jmbf5qv>เป็นหน้าบ้านดิจิทัลของธุรกิจ</li> <li data-astro-cid-5jmbf5qv>สร้างความน่าเชื่อถือ</li> <li data-astro-cid-5jmbf5qv>เข้าถึงลูกค้าได้ตลอด 24 ชั่วโมง</li> <li data-astro-cid-5jmbf5qv>เพิ่มโอกาสในการขาย</li> </ul> <h2 data-astro-cid-5jmbf5qv>รูปแบบเว็บไซต์</h2> <ul data-astro-cid-5jmbf5qv> <li data-astro-cid-5jmbf5qv>เว็บไซต์บริษัท/องค์กร</li> <li data-astro-cid-5jmbf5qv>เว็บไซต์ร้านค้าออนไลน์</li> <li data-astro-cid-5jmbf5qv>Landing Page</li> <li data-astro-cid-5jmbf5qv>ระบบหลังร้าน</li> </ul> <a href="/contact-us" class="btn-primary" data-astro-cid-5jmbf5qv>สอบถามราคา</a> </div> </section> ` })}`;
|
||||||
2
dist/server/entry.mjs
vendored
2
dist/server/entry.mjs
vendored
@@ -1,4 +1,4 @@
|
|||||||
export { q as handler, t as options, v as startServer } from './chunks/server_CW1mBpZH.mjs';
|
export { q as handler, t as options, v as startServer } from './chunks/server_CWPsUuvN.mjs';
|
||||||
import '@astrojs/internal-helpers/path';
|
import '@astrojs/internal-helpers/path';
|
||||||
import '@astrojs/internal-helpers/remote';
|
import '@astrojs/internal-helpers/remote';
|
||||||
import 'piccolore';
|
import 'piccolore';
|
||||||
|
|||||||
71
node_modules/.vite/deps/_metadata.json
generated
vendored
71
node_modules/.vite/deps/_metadata.json
generated
vendored
@@ -1,32 +1,79 @@
|
|||||||
{
|
{
|
||||||
"hash": "54ca2ad6",
|
"hash": "c18ba7cb",
|
||||||
"configHash": "b72eebe6",
|
"configHash": "c6e51eb4",
|
||||||
"lockfileHash": "46a9de66",
|
"lockfileHash": "46a9de66",
|
||||||
"browserHash": "2780b9ac",
|
"browserHash": "716ff31a",
|
||||||
"optimized": {
|
"optimized": {
|
||||||
"astro > aria-query": {
|
"astro > aria-query": {
|
||||||
"src": "../../aria-query/lib/index.js",
|
"src": "../../aria-query/lib/index.js",
|
||||||
"file": "astro_n_aria-query.js",
|
"file": "astro___aria-query.js",
|
||||||
"fileHash": "c18eadfb",
|
"fileHash": "3327338a",
|
||||||
"needsInterop": true
|
"needsInterop": true
|
||||||
},
|
},
|
||||||
"astro > axobject-query": {
|
"astro > axobject-query": {
|
||||||
"src": "../../axobject-query/lib/index.js",
|
"src": "../../axobject-query/lib/index.js",
|
||||||
"file": "astro_n_axobject-query.js",
|
"file": "astro___axobject-query.js",
|
||||||
"fileHash": "5e6b6b3e",
|
"fileHash": "f6c9ad86",
|
||||||
"needsInterop": true
|
"needsInterop": true
|
||||||
},
|
},
|
||||||
"astro > html-escaper": {
|
"astro > html-escaper": {
|
||||||
"src": "../../html-escaper/esm/index.js",
|
"src": "../../html-escaper/esm/index.js",
|
||||||
"file": "astro_n_html-escaper.js",
|
"file": "astro___html-escaper.js",
|
||||||
"fileHash": "1f9347b8",
|
"fileHash": "53bd5b1c",
|
||||||
|
"needsInterop": false
|
||||||
|
},
|
||||||
|
"astro/runtime/client/dev-toolbar/entrypoint.js": {
|
||||||
|
"src": "../../astro/dist/runtime/client/dev-toolbar/entrypoint.js",
|
||||||
|
"file": "astro_runtime_client_dev-toolbar_entrypoint__js.js",
|
||||||
|
"fileHash": "1eafd925",
|
||||||
"needsInterop": false
|
"needsInterop": false
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"chunks": {
|
"chunks": {
|
||||||
"chunk-CFx7f7Oh": {
|
"toolbar-2H5PSQQU": {
|
||||||
"file": "chunk-CFx7f7Oh.js",
|
"file": "toolbar-2H5PSQQU.js"
|
||||||
"isDynamicEntry": false
|
},
|
||||||
|
"ui-library-EVFCBMCE": {
|
||||||
|
"file": "ui-library-EVFCBMCE.js"
|
||||||
|
},
|
||||||
|
"chunk-HNT3PLDI": {
|
||||||
|
"file": "chunk-HNT3PLDI.js"
|
||||||
|
},
|
||||||
|
"astro-IQQQXCO3": {
|
||||||
|
"file": "astro-IQQQXCO3.js"
|
||||||
|
},
|
||||||
|
"chunk-ZUETELRC": {
|
||||||
|
"file": "chunk-ZUETELRC.js"
|
||||||
|
},
|
||||||
|
"audit-KGECZA7G": {
|
||||||
|
"file": "audit-KGECZA7G.js"
|
||||||
|
},
|
||||||
|
"chunk-WTIA47ZU": {
|
||||||
|
"file": "chunk-WTIA47ZU.js"
|
||||||
|
},
|
||||||
|
"chunk-WDCEFGHP": {
|
||||||
|
"file": "chunk-WDCEFGHP.js"
|
||||||
|
},
|
||||||
|
"xray-XH6VIXDC": {
|
||||||
|
"file": "xray-XH6VIXDC.js"
|
||||||
|
},
|
||||||
|
"chunk-LEAOZWS7": {
|
||||||
|
"file": "chunk-LEAOZWS7.js"
|
||||||
|
},
|
||||||
|
"chunk-PXGSXSC7": {
|
||||||
|
"file": "chunk-PXGSXSC7.js"
|
||||||
|
},
|
||||||
|
"settings-K4OHAGC2": {
|
||||||
|
"file": "settings-K4OHAGC2.js"
|
||||||
|
},
|
||||||
|
"chunk-WM2KMMIK": {
|
||||||
|
"file": "chunk-WM2KMMIK.js"
|
||||||
|
},
|
||||||
|
"chunk-LEX3GG7N": {
|
||||||
|
"file": "chunk-LEX3GG7N.js"
|
||||||
|
},
|
||||||
|
"chunk-5WRI5ZAA": {
|
||||||
|
"file": "chunk-5WRI5ZAA.js"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
433
node_modules/.vite/deps/astro-IQQQXCO3.js
generated
vendored
Normal file
433
node_modules/.vite/deps/astro-IQQQXCO3.js
generated
vendored
Normal file
@@ -0,0 +1,433 @@
|
|||||||
|
import {
|
||||||
|
isDefinedIcon
|
||||||
|
} from "./chunk-ZUETELRC.js";
|
||||||
|
import {
|
||||||
|
closeOnOutsideClick,
|
||||||
|
createWindowElement,
|
||||||
|
synchronizePlacementOnUpdate
|
||||||
|
} from "./chunk-WM2KMMIK.js";
|
||||||
|
import "./chunk-LEX3GG7N.js";
|
||||||
|
import "./chunk-5WRI5ZAA.js";
|
||||||
|
|
||||||
|
// node_modules/astro/dist/runtime/client/dev-toolbar/apps/utils/icons.js
|
||||||
|
function randomFromArray(list) {
|
||||||
|
return list[Math.floor(Math.random() * list.length)];
|
||||||
|
}
|
||||||
|
var categoryIcons = new Map(
|
||||||
|
Object.entries({
|
||||||
|
frameworks: ["puzzle", "grid"],
|
||||||
|
adapters: ["puzzle", "grid", "compress"],
|
||||||
|
"css+ui": ["compress", "grid", "image", "resizeImage", "puzzle"],
|
||||||
|
"performance+seo": ["approveUser", "checkCircle", "compress", "robot", "searchFile", "sitemap"],
|
||||||
|
analytics: ["checkCircle", "compress", "searchFile"],
|
||||||
|
accessibility: ["approveUser", "checkCircle"],
|
||||||
|
other: ["checkCircle", "grid", "puzzle", "sitemap"]
|
||||||
|
})
|
||||||
|
);
|
||||||
|
function iconForIntegration(integration) {
|
||||||
|
const icons = integration.categories.filter((category) => categoryIcons.has(category)).flatMap((category) => categoryIcons.get(category));
|
||||||
|
return randomFromArray(icons);
|
||||||
|
}
|
||||||
|
var iconColors = [
|
||||||
|
"#BC52EE",
|
||||||
|
"#6D6AF0",
|
||||||
|
"#52EEBD",
|
||||||
|
"#52B7EE",
|
||||||
|
"#52EE55",
|
||||||
|
"#B7EE52",
|
||||||
|
"#EEBD52",
|
||||||
|
"#EE5552",
|
||||||
|
"#EE52B7",
|
||||||
|
"#858B98"
|
||||||
|
];
|
||||||
|
function colorForIntegration() {
|
||||||
|
return randomFromArray(iconColors);
|
||||||
|
}
|
||||||
|
|
||||||
|
// node_modules/astro/dist/runtime/client/dev-toolbar/apps/astro.js
|
||||||
|
var astroLogo = '<svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 99 26" width="100"><path fill="#fff" d="M6.70402 22.1453c-1.17459-1.0737-1.51748-3.3297-1.02811-4.9641.84853 1.0304 2.02424 1.3569 3.24204 1.5411 1.88005.2844 3.72635.178 5.47285-.6813.1998-.0984.3844-.2292.6027-.3617.1639.4755.2065.9554.1493 1.4439-.1392 1.1898-.7313 2.1088-1.673 2.8054-.3765.2787-.775.5278-1.1639.7905-1.1948.8075-1.518 1.7544-1.0691 3.1318.0107.0336.0202.0671.0444.149-.6101-.273-1.0557-.6705-1.39518-1.1931-.3586-.5517-.52921-1.1619-.53819-1.8221-.00449-.3213-.00449-.6455-.0477-.9623-.10551-.7722-.46804-1.118-1.15102-1.1379-.70094-.0205-1.2554.4129-1.40244 1.0953-.01122.0523-.02749.1041-.04377.1649l.00112.0006Z"/><path fill="url(#paint0_linear_386_2739)" d="M6.70402 22.1453c-1.17459-1.0737-1.51748-3.3297-1.02811-4.9641.84853 1.0304 2.02424 1.3569 3.24204 1.5411 1.88005.2844 3.72635.178 5.47285-.6813.1998-.0984.3844-.2292.6027-.3617.1639.4755.2065.9554.1493 1.4439-.1392 1.1898-.7313 2.1088-1.673 2.8054-.3765.2787-.775.5278-1.1639.7905-1.1948.8075-1.518 1.7544-1.0691 3.1318.0107.0336.0202.0671.0444.149-.6101-.273-1.0557-.6705-1.39518-1.1931-.3586-.5517-.52921-1.1619-.53819-1.8221-.00449-.3213-.00449-.6455-.0477-.9623-.10551-.7722-.46804-1.118-1.15102-1.1379-.70094-.0205-1.2554.4129-1.40244 1.0953-.01122.0523-.02749.1041-.04377.1649l.00112.0006Z"/><path fill="#fff" d="M0 16.909s3.47815-1.6944 6.96603-1.6944l2.62973-8.13858c.09846-.39359.38592-.66106.71044-.66106.3246 0 .612.26747.7105.66106l2.6297 8.13858c4.1309 0 6.966 1.6944 6.966 1.6944S14.7045.814589 14.693.782298C14.5234.306461 14.2371 0 13.8512 0H6.76183c-.38593 0-.66063.306461-.84174.782298C5.90733.81398 0 16.909 0 16.909ZM36.671 11.7318c0 1.4262-1.7739 2.2779-4.2302 2.2779-1.5985 0-2.1638-.3962-2.1638-1.2281 0-.8715.7018-1.2875 2.3003-1.2875 1.4426 0 2.6707.0198 4.0937.1981v.0396Zm.0195-1.7629c-.8772-.19808-2.2028-.31693-3.7818-.31693-4.6006 0-6.7644 1.08943-6.7644 3.62483 0 2.6344 1.4815 3.6446 4.9125 3.6446 2.9046 0 4.8735-.7328 5.5947-2.5354h.117c-.0195.4358-.039.8716-.039 1.2083 0 .931.156 1.0102.9162 1.0102h3.5869c-.1949-.5546-.3119-2.1194-.3119-3.4663 0-1.446.0585-2.5355.0585-4.00123 0-2.99098-1.7934-4.89253-7.4077-4.89253-2.4173 0-5.1074.41596-7.1543 1.03.1949.81213.4679 2.45617.6043 3.5258 1.774-.83193 4.2887-1.18847 6.2381-1.18847 2.6902 0 3.4309.61404 3.4309 1.86193v.4952ZM46.5325 12.5637c-.4874.0594-1.1502.0594-1.8325.0594-.7213 0-1.3841-.0198-1.8324-.0792 0 .1585-.0195.3367-.0195.4952 0 2.476 1.618 3.922 7.3102 3.922 5.3609 0 7.0958-1.4262 7.0958-3.9418 0-2.3769-1.1501-3.5456-6.238-3.8031-3.9573-.17827-4.3082-.61404-4.3082-1.10924 0-.57442.5068-.87154 3.158-.87154 2.7487 0 3.4894.37635 3.4894 1.16866v.17827c.3899-.01981 1.0917-.03961 1.813-.03961.6823 0 1.423.0198 1.8519.05942 0-.17827.0195-.33674.0195-.47539 0-2.91175-2.4172-3.86252-7.0958-3.86252-5.2634 0-7.0373 1.2875-7.0373 3.8031 0 2.25805 1.423 3.66445 6.472 3.88235 3.7233.1188 4.1327.5348 4.1327 1.1092 0 .6141-.6043.8914-3.2165.8914-3.0021 0-3.7623-.416-3.7623-1.2677v-.1189ZM63.6883 2.125c-1.423 1.32712-3.9768 2.65425-5.3998 3.01079.0195.73289.0195 2.07982.0195 2.81271l1.3061.01981c-.0195 1.40635-.039 3.10979-.039 4.23889 0 2.6344 1.3841 4.6152 5.6922 4.6152 1.813 0 3.0216-.1981 4.5226-.515-.1559-.9706-.3314-2.4562-.3898-3.5852-.8968.2971-2.0274.4556-3.275.4556-1.735 0-2.4368-.4754-2.4368-1.8422 0-1.1884 0-2.29767.0195-3.32768 2.2223.01981 4.4446.05943 5.7507.09904-.0195-1.03.0195-2.51559.078-3.50598-1.8909.03961-4.0157.05942-5.7702.05942.0195-.87154.039-1.70347.0585-2.5354h-.1365ZM75.3313 7.35427c.0195-1.03001.039-1.90156.0585-2.75329h-3.9183c.0585 1.70347.0585 3.44656.0585 6.00172 0 2.5553-.0195 4.3182-.0585 6.0018h4.4836c-.078-1.1885-.0975-3.189-.0975-4.8925 0-2.69388 1.0917-3.46638 3.5674-3.46638 1.1502 0 1.9689.13865 2.6902.39615.0195-1.01019.2144-2.97117.3314-3.84271-.7408-.21789-1.5595-.35655-2.5537-.35655-2.1249-.0198-3.6844.85174-4.4056 2.93156l-.156-.0198ZM94.8501 10.5235c0 2.1591-1.5595 3.1693-4.0157 3.1693-2.4368 0-3.9963-.9508-3.9963-3.1693 0-2.21846 1.579-3.05039 3.9963-3.05039 2.4367 0 4.0157.89135 4.0157 3.05039Zm4.0743-.099c0-4.29832-3.353-6.21968-8.09-6.21968-4.7566 0-7.9926 1.92136-7.9926 6.21968 0 4.2785 3.0216 6.5762 7.9731 6.5762 4.9904 0 8.1095-2.2977 8.1095-6.5762Z"/><defs><linearGradient id="paint0_linear_386_2739" x1="5.46011" x2="16.8017" y1="25.9999" y2="20.6412" gradientUnits="userSpaceOnUse"><stop stop-color="#D83333"/><stop offset="1" stop-color="#F041FF"/></linearGradient></defs></svg>';
|
||||||
|
var integrationData;
|
||||||
|
var astro_default = {
|
||||||
|
id: "astro:home",
|
||||||
|
name: "Menu",
|
||||||
|
icon: "astro:logo",
|
||||||
|
async init(canvas, eventTarget) {
|
||||||
|
createCanvas();
|
||||||
|
document.addEventListener("astro:after-swap", createCanvas);
|
||||||
|
eventTarget.addEventListener("app-toggled", async (event) => {
|
||||||
|
resetDebugButton();
|
||||||
|
if (!(event instanceof CustomEvent)) return;
|
||||||
|
if (event.detail.state === true) {
|
||||||
|
if (!integrationData) fetchIntegrationData();
|
||||||
|
}
|
||||||
|
});
|
||||||
|
closeOnOutsideClick(eventTarget);
|
||||||
|
synchronizePlacementOnUpdate(eventTarget, canvas);
|
||||||
|
function fetchIntegrationData() {
|
||||||
|
fetch("https://astro.build/api/v1/dev-overlay/", {
|
||||||
|
cache: "no-cache"
|
||||||
|
}).then((res) => res.json()).then((data) => {
|
||||||
|
integrationData = data;
|
||||||
|
integrationData.data = integrationData.data.map((integration) => {
|
||||||
|
return integration;
|
||||||
|
});
|
||||||
|
refreshIntegrationList();
|
||||||
|
});
|
||||||
|
}
|
||||||
|
function createCanvas() {
|
||||||
|
const links = [
|
||||||
|
{
|
||||||
|
icon: "bug",
|
||||||
|
name: "Report a Bug",
|
||||||
|
link: "https://github.com/withastro/astro/issues/new/choose"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
icon: "lightbulb",
|
||||||
|
name: "Feedback",
|
||||||
|
link: "https://github.com/withastro/roadmap/discussions/new/choose"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
icon: "file-search",
|
||||||
|
name: "Documentation",
|
||||||
|
link: "https://docs.astro.build"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
icon: '<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 17 14"><path fill="currentColor" d="M14.3451 1.9072c-1.0375-.47613-2.1323-.81595-3.257-1.010998-.0102-.001716-.0207-.000234-.03.004243s-.017.011728-.022.020757c-.141.249998-.297.576998-.406.832998-1.2124-.18399-2.44561-.18399-3.658 0-.12159-.28518-.25914-.56328-.412-.832998-.00513-.00893-.01285-.016098-.02213-.02056-.00928-.004462-.0197-.00601-.02987-.00444-1.125.193998-2.22.533998-3.257 1.010998-.00888.00339-.0163.00975-.021.018-2.074 3.099-2.643004 6.122-2.364004 9.107.001.014.01.028.021.037 1.207724.8946 2.558594 1.5777 3.995004 2.02.01014.0032.02103.0031.03111-.0003.01007-.0034.01878-.01.02489-.0187.308-.42.582-.863.818-1.329.00491-.0096.0066-.0205.0048-.0312-.00181-.0106-.007-.0204-.0148-.0278-.00517-.0049-.0113-.0086-.018-.011-.43084-.1656-.84811-.3645-1.248-.595-.01117-.0063-.01948-.0167-.0232-.029-.00373-.0123-.00258-.0255.0032-.037.0034-.0074.00854-.014.015-.019.084-.063.168-.129.248-.195.00706-.0057.01554-.0093.02453-.0106.00898-.0012.01813 0 .02647.0036 2.619 1.196 5.454 1.196 8.041 0 .0086-.0037.0181-.0051.0275-.0038.0093.0012.0181.0049.0255.0108.08.066.164.132.248.195.0068.005.0123.0116.0159.0192.0036.0076.0053.016.0049.0244-.0003.0084-.0028.0166-.0072.0238-.0043.0072-.0104.0133-.0176.0176-.399.2326-.8168.4313-1.249.594-.0069.0025-.0132.0065-.0183.0117-.0052.0051-.0092.0114-.0117.0183-.0023.0067-.0032.0138-.0027.0208.0005.0071.0024.0139.0057.0202.24.465.515.909.817 1.329.0061.0087.0148.0153.0249.0187.0101.0034.021.0035.0311.0003 1.4388-.441 2.7919-1.1241 4.001-2.02.0061-.0042.0111-.0097.0147-.0161.0037-.0064.0058-.0135.0063-.0209.334-3.451-.559-6.449-2.366-9.106-.0018-.00439-.0045-.00834-.008-.01162-.0034-.00327-.0075-.00578-.012-.00738Zm-8.198 7.307c-.789 0-1.438-.724-1.438-1.612 0-.889.637-1.613 1.438-1.613.807 0 1.45.73 1.438 1.613 0 .888-.637 1.612-1.438 1.612Zm5.316 0c-.788 0-1.438-.724-1.438-1.612 0-.889.637-1.613 1.438-1.613.807 0 1.451.73 1.438 1.613 0 .888-.631 1.612-1.438 1.612Z"/></svg>',
|
||||||
|
name: "Community",
|
||||||
|
link: "https://astro.build/chat"
|
||||||
|
}
|
||||||
|
];
|
||||||
|
const { latestAstroVersion, version, debugInfo } = window.__astro_dev_toolbar__ ?? {};
|
||||||
|
const windowComponent = createWindowElement(
|
||||||
|
`<style>
|
||||||
|
#buttons-container {
|
||||||
|
display: flex;
|
||||||
|
gap: 16px;
|
||||||
|
justify-content: center;
|
||||||
|
}
|
||||||
|
|
||||||
|
#buttons-container astro-dev-toolbar-card {
|
||||||
|
flex: 1;
|
||||||
|
}
|
||||||
|
|
||||||
|
footer {
|
||||||
|
display: flex;
|
||||||
|
justify-content: center;
|
||||||
|
gap: 24px;
|
||||||
|
}
|
||||||
|
|
||||||
|
footer a {
|
||||||
|
color: rgba(145, 152, 173, 1);
|
||||||
|
}
|
||||||
|
|
||||||
|
footer a:hover {
|
||||||
|
color: rgba(204, 206, 216, 1);
|
||||||
|
}
|
||||||
|
|
||||||
|
#main-container {
|
||||||
|
display: flex;
|
||||||
|
flex-direction: column;
|
||||||
|
height: 100%;
|
||||||
|
gap: 24px;
|
||||||
|
}
|
||||||
|
|
||||||
|
p {
|
||||||
|
margin-top: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
header {
|
||||||
|
display: flex;
|
||||||
|
justify-content: space-between;
|
||||||
|
align-items: center;
|
||||||
|
}
|
||||||
|
|
||||||
|
header section {
|
||||||
|
display: flex;
|
||||||
|
gap: 0.8em;
|
||||||
|
}
|
||||||
|
|
||||||
|
h2 {
|
||||||
|
color: white;
|
||||||
|
margin: 0;
|
||||||
|
font-size: 18px;
|
||||||
|
}
|
||||||
|
|
||||||
|
a {
|
||||||
|
color: rgba(224, 204, 250, 1);
|
||||||
|
}
|
||||||
|
|
||||||
|
a:hover {
|
||||||
|
color: #f4ecfd;
|
||||||
|
}
|
||||||
|
|
||||||
|
#integration-list-wrapper {
|
||||||
|
position: relative;
|
||||||
|
--offset: 24px;
|
||||||
|
overflow-x: auto;
|
||||||
|
overflow-y: hidden;
|
||||||
|
margin-left: calc(var(--offset) * -1);
|
||||||
|
margin-right: calc(var(--offset) * -1);
|
||||||
|
padding-left: var(--offset);
|
||||||
|
padding-right: var(--offset);
|
||||||
|
height: 210px;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Pseudo-elements to fade cards as they scroll out of viewport */
|
||||||
|
#integration-list-wrapper::before,
|
||||||
|
#integration-list-wrapper::after {
|
||||||
|
content: '';
|
||||||
|
height: 192px;
|
||||||
|
display: block;
|
||||||
|
position: fixed;
|
||||||
|
width: var(--offset);
|
||||||
|
top: 106px;
|
||||||
|
background: red;
|
||||||
|
}
|
||||||
|
|
||||||
|
#integration-list-wrapper::before {
|
||||||
|
left: -1px;
|
||||||
|
border-left: 1px solid rgba(52, 56, 65, 1);
|
||||||
|
background: linear-gradient(to right, rgba(19, 21, 26, 1), rgba(19, 21, 26, 0));
|
||||||
|
}
|
||||||
|
|
||||||
|
#integration-list-wrapper::after {
|
||||||
|
right: -1px;
|
||||||
|
border-right: 1px solid rgba(52, 56, 65, 1);
|
||||||
|
background: linear-gradient(to left, rgba(19, 21, 26, 1), rgba(19, 21, 26, 0));
|
||||||
|
}
|
||||||
|
|
||||||
|
#integration-list-wrapper::-webkit-scrollbar {
|
||||||
|
width: 5px;
|
||||||
|
height: 8px;
|
||||||
|
background-color: rgba(255, 255, 255, 0.08); /* or add it to the track */
|
||||||
|
border-radius: 4px;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* This is wild but gives us a gap on either side of the container */
|
||||||
|
#integration-list-wrapper::-webkit-scrollbar-button:start:decrement,
|
||||||
|
#integration-list-wrapper::-webkit-scrollbar-button:end:increment {
|
||||||
|
display: block;
|
||||||
|
width: 24px;
|
||||||
|
background-color: #13151A;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Removes arrows on both sides */
|
||||||
|
#integration-list-wrapper::-webkit-scrollbar-button:horizontal:start:increment,
|
||||||
|
#integration-list-wrapper::-webkit-scrollbar-button:horizontal:end:decrement {
|
||||||
|
display: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
#integration-list-wrapper::-webkit-scrollbar-track-piece {
|
||||||
|
border-radius: 4px;
|
||||||
|
}
|
||||||
|
|
||||||
|
#integration-list-wrapper::-webkit-scrollbar-thumb {
|
||||||
|
background-color: rgba(255, 255, 255, 0.3);
|
||||||
|
border-radius: 4px;
|
||||||
|
}
|
||||||
|
|
||||||
|
#integration-list {
|
||||||
|
margin-top: 1em;
|
||||||
|
display: flex;
|
||||||
|
gap: 16px;
|
||||||
|
padding-bottom: 1em;
|
||||||
|
}
|
||||||
|
|
||||||
|
#integration-list::after {
|
||||||
|
content: " ";
|
||||||
|
display: inline-block;
|
||||||
|
white-space: pre;
|
||||||
|
width: 1px;
|
||||||
|
height: 1px;
|
||||||
|
}
|
||||||
|
|
||||||
|
#integration-list astro-dev-toolbar-card, .integration-skeleton {
|
||||||
|
min-width: 240px;
|
||||||
|
height: 160px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.integration-skeleton {
|
||||||
|
animation: pulse 2s calc(var(--i, 0) * 250ms) cubic-bezier(0.4, 0, 0.6, 1) infinite;
|
||||||
|
background-color: rgba(35, 38, 45, 1);
|
||||||
|
border-radius: 8px;
|
||||||
|
}
|
||||||
|
|
||||||
|
@keyframes pulse {
|
||||||
|
0%, 100% {
|
||||||
|
opacity: 1;
|
||||||
|
}
|
||||||
|
50% {
|
||||||
|
opacity: .5;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
#integration-list astro-dev-toolbar-card .integration-image {
|
||||||
|
width: 40px;
|
||||||
|
height: 40px;
|
||||||
|
background-color: var(--integration-image-background, white);
|
||||||
|
border-radius: 9999px;
|
||||||
|
display: flex;
|
||||||
|
justify-content: center;
|
||||||
|
align-items: center;
|
||||||
|
margin-bottom: 8px;
|
||||||
|
}
|
||||||
|
|
||||||
|
#integration-list astro-dev-toolbar-card img {
|
||||||
|
width: 24px;
|
||||||
|
height: 24px;
|
||||||
|
}
|
||||||
|
|
||||||
|
#integration-list astro-dev-toolbar-card astro-dev-toolbar-icon {
|
||||||
|
width: 24px;
|
||||||
|
height: 24px;
|
||||||
|
color: #fff;
|
||||||
|
}
|
||||||
|
|
||||||
|
#links {
|
||||||
|
margin: auto 0;
|
||||||
|
display: flex;
|
||||||
|
justify-content: center;
|
||||||
|
gap: 24px;
|
||||||
|
}
|
||||||
|
|
||||||
|
#links a {
|
||||||
|
text-decoration: none;
|
||||||
|
align-items: center;
|
||||||
|
display: flex;
|
||||||
|
flex-direction: column;
|
||||||
|
gap: 0.7em;
|
||||||
|
flex: 1;
|
||||||
|
white-space: nowrap;
|
||||||
|
font-weight: 600;
|
||||||
|
color: white;
|
||||||
|
}
|
||||||
|
|
||||||
|
#links a:hover {
|
||||||
|
color: rgba(145, 152, 173, 1);
|
||||||
|
}
|
||||||
|
|
||||||
|
#links astro-dev-toolbar-icon {
|
||||||
|
width: 1.5em;
|
||||||
|
height: 1.5em;
|
||||||
|
display: block;
|
||||||
|
}
|
||||||
|
|
||||||
|
#integration-list astro-dev-toolbar-card svg {
|
||||||
|
width: 24px;
|
||||||
|
height: 24px;
|
||||||
|
vertical-align: bottom;
|
||||||
|
}
|
||||||
|
|
||||||
|
#integration-list astro-dev-toolbar-card h3 {
|
||||||
|
margin: 0;
|
||||||
|
margin-bottom: 8px;
|
||||||
|
color: white;
|
||||||
|
white-space: nowrap;
|
||||||
|
}
|
||||||
|
|
||||||
|
#integration-list astro-dev-toolbar-card p {
|
||||||
|
font-size: 14px;
|
||||||
|
}
|
||||||
|
|
||||||
|
@media (forced-colors: active) {
|
||||||
|
svg path[fill="#fff"] {
|
||||||
|
fill: black;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
</style>
|
||||||
|
|
||||||
|
<header>
|
||||||
|
<section>
|
||||||
|
${astroLogo}
|
||||||
|
<astro-dev-toolbar-badge badge-style="gray" size="large">${version}</astro-dev-toolbar-badge>
|
||||||
|
${latestAstroVersion ? `<astro-dev-toolbar-badge badge-style="green" size="large">${latestAstroVersion} available!</astro-dev-toolbar-badge>
|
||||||
|
` : ""}
|
||||||
|
</section>
|
||||||
|
<astro-dev-toolbar-button id="copy-debug-button">Copy debug info <astro-dev-toolbar-icon icon="copy" /></astro-dev-toolbar-button>
|
||||||
|
</header>
|
||||||
|
<hr />
|
||||||
|
|
||||||
|
<div id="main-container">
|
||||||
|
<div>
|
||||||
|
<header><h2>Featured integrations</h2><a href="https://astro.build/integrations/" target="_blank">View all</a></header>
|
||||||
|
<div id="integration-list-wrapper">
|
||||||
|
<section id="integration-list">
|
||||||
|
<div class="integration-skeleton" style="--i:0;"></div>
|
||||||
|
<div class="integration-skeleton" style="--i:1;"></div>
|
||||||
|
<div class="integration-skeleton" style="--i:2;"></div>
|
||||||
|
<div class="integration-skeleton" style="--i:3;"></div>
|
||||||
|
<div class="integration-skeleton" style="--i:4;"></div>
|
||||||
|
</section>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<section id="links">
|
||||||
|
${links.map(
|
||||||
|
(link) => `<a href="${link.link}" target="_blank"><astro-dev-toolbar-icon ${isDefinedIcon(link.icon) ? `icon="${link.icon}">` : `>${link.icon}`}</astro-dev-toolbar-icon>${link.name}</a>`
|
||||||
|
).join("")}
|
||||||
|
</section>
|
||||||
|
</div>
|
||||||
|
`
|
||||||
|
);
|
||||||
|
const copyDebugButton = windowComponent.querySelector("#copy-debug-button");
|
||||||
|
copyDebugButton?.addEventListener("click", () => {
|
||||||
|
navigator.clipboard.writeText("```\n" + debugInfo + "\n```");
|
||||||
|
copyDebugButton.textContent = "Copied to clipboard!";
|
||||||
|
setTimeout(() => {
|
||||||
|
resetDebugButton();
|
||||||
|
}, 3500);
|
||||||
|
});
|
||||||
|
canvas.append(windowComponent);
|
||||||
|
if (integrationData) refreshIntegrationList();
|
||||||
|
}
|
||||||
|
function resetDebugButton() {
|
||||||
|
const copyDebugButton = canvas.querySelector("#copy-debug-button");
|
||||||
|
if (!copyDebugButton) return;
|
||||||
|
copyDebugButton.innerHTML = 'Copy debug info <astro-dev-toolbar-icon icon="copy" />';
|
||||||
|
}
|
||||||
|
function refreshIntegrationList() {
|
||||||
|
const integrationList = canvas.querySelector("#integration-list");
|
||||||
|
if (!integrationList) return;
|
||||||
|
integrationList.innerHTML = "";
|
||||||
|
const fragment = document.createDocumentFragment();
|
||||||
|
for (const integration of integrationData.data) {
|
||||||
|
const integrationComponent = document.createElement("astro-dev-toolbar-card");
|
||||||
|
integrationComponent.link = integration.homepageUrl;
|
||||||
|
const integrationContainer = document.createElement("div");
|
||||||
|
integrationContainer.className = "integration-container";
|
||||||
|
const integrationImage = document.createElement("div");
|
||||||
|
integrationImage.className = "integration-image";
|
||||||
|
if (integration.image) {
|
||||||
|
const img = document.createElement("img");
|
||||||
|
img.src = integration.image;
|
||||||
|
img.alt = integration.title;
|
||||||
|
integrationImage.append(img);
|
||||||
|
} else {
|
||||||
|
const icon = document.createElement("astro-dev-toolbar-icon");
|
||||||
|
icon.icon = iconForIntegration(integration);
|
||||||
|
integrationImage.append(icon);
|
||||||
|
integrationImage.style.setProperty(
|
||||||
|
"--integration-image-background",
|
||||||
|
colorForIntegration()
|
||||||
|
);
|
||||||
|
}
|
||||||
|
integrationContainer.append(integrationImage);
|
||||||
|
let integrationTitle = document.createElement("h3");
|
||||||
|
integrationTitle.textContent = integration.title;
|
||||||
|
if (integration.official || integration.categories.includes("official")) {
|
||||||
|
integrationTitle.innerHTML += ' <svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 21 20"><rect width="19" height="19" x="1.16602" y=".5" fill="url(#paint0_linear_917_1096)" fill-opacity=".33" rx="9.5"/><path fill="#fff" d="M15.139 6.80657c-.062-.06248-.1357-.11208-.217-.14592-.0812-.03385-.1683-.05127-.2563-.05127-.0881 0-.1752.01742-.2564.05127-.0813.03384-.155.08344-.217.14592L9.22566 11.7799 7.13899 9.68657c-.06435-.06216-.14031-.11103-.22355-.14383-.08323-.03281-.17211-.04889-.26157-.04735-.08945.00155-.17773.0207-.25978.05637a.68120694.68120694 0 0 0-.21843.15148c-.06216.06435-.11104.14031-.14384.22355-.0328.08321-.04889.17211-.04734.26161.00154.0894.0207.1777.05636.2597.03566.0821.08714.1563.15148.2185l2.56 2.56c.06198.0625.13571.1121.21695.1459s.16838.0513.25639.0513c.088 0 .17514-.0175.25638-.0513s.15497-.0834.21695-.1459L15.139 7.78657c.0677-.06242.1217-.13819.1586-.22253.0369-.08433.056-.1754.056-.26747 0-.09206-.0191-.18313-.056-.26747-.0369-.08433-.0909-.1601-.1586-.22253Z"/><rect width="19" height="19" x="1.16602" y=".5" stroke="url(#paint1_linear_917_1096)" rx="9.5"/><defs><linearGradient id="paint0_linear_917_1096" x1="20.666" x2="-3.47548" y1=".00000136" y2="10.1345" gradientUnits="userSpaceOnUse"><stop stop-color="#4AF2C8"/><stop offset="1" stop-color="#2F4CB3"/></linearGradient><linearGradient id="paint1_linear_917_1096" x1="20.666" x2="-3.47548" y1=".00000136" y2="10.1345" gradientUnits="userSpaceOnUse"><stop stop-color="#4AF2C8"/><stop offset="1" stop-color="#2F4CB3"/></linearGradient></defs></svg>';
|
||||||
|
}
|
||||||
|
integrationContainer.append(integrationTitle);
|
||||||
|
const integrationDescription = document.createElement("p");
|
||||||
|
integrationDescription.textContent = integration.description.length > 90 ? integration.description.slice(0, 90) + "…" : integration.description;
|
||||||
|
integrationContainer.append(integrationDescription);
|
||||||
|
integrationComponent.append(integrationContainer);
|
||||||
|
fragment.append(integrationComponent);
|
||||||
|
}
|
||||||
|
integrationList.append(fragment);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
};
|
||||||
|
export {
|
||||||
|
astro_default as default
|
||||||
|
};
|
||||||
|
//# sourceMappingURL=astro-IQQQXCO3.js.map
|
||||||
7
node_modules/.vite/deps/astro-IQQQXCO3.js.map
generated
vendored
Normal file
7
node_modules/.vite/deps/astro-IQQQXCO3.js.map
generated
vendored
Normal file
File diff suppressed because one or more lines are too long
5
node_modules/.vite/deps/astro___aria-query.js
generated
vendored
Normal file
5
node_modules/.vite/deps/astro___aria-query.js
generated
vendored
Normal file
@@ -0,0 +1,5 @@
|
|||||||
|
import {
|
||||||
|
require_lib
|
||||||
|
} from "./chunk-WDCEFGHP.js";
|
||||||
|
import "./chunk-5WRI5ZAA.js";
|
||||||
|
export default require_lib();
|
||||||
7
node_modules/.vite/deps/astro___aria-query.js.map
generated
vendored
Normal file
7
node_modules/.vite/deps/astro___aria-query.js.map
generated
vendored
Normal file
@@ -0,0 +1,7 @@
|
|||||||
|
{
|
||||||
|
"version": 3,
|
||||||
|
"sources": [],
|
||||||
|
"sourcesContent": [],
|
||||||
|
"mappings": "",
|
||||||
|
"names": []
|
||||||
|
}
|
||||||
5
node_modules/.vite/deps/astro___axobject-query.js
generated
vendored
Normal file
5
node_modules/.vite/deps/astro___axobject-query.js
generated
vendored
Normal file
@@ -0,0 +1,5 @@
|
|||||||
|
import {
|
||||||
|
require_lib
|
||||||
|
} from "./chunk-WTIA47ZU.js";
|
||||||
|
import "./chunk-5WRI5ZAA.js";
|
||||||
|
export default require_lib();
|
||||||
7
node_modules/.vite/deps/astro___axobject-query.js.map
generated
vendored
Normal file
7
node_modules/.vite/deps/astro___axobject-query.js.map
generated
vendored
Normal file
@@ -0,0 +1,7 @@
|
|||||||
|
{
|
||||||
|
"version": 3,
|
||||||
|
"sources": [],
|
||||||
|
"sourcesContent": [],
|
||||||
|
"mappings": "",
|
||||||
|
"names": []
|
||||||
|
}
|
||||||
9
node_modules/.vite/deps/astro___html-escaper.js
generated
vendored
Normal file
9
node_modules/.vite/deps/astro___html-escaper.js
generated
vendored
Normal file
@@ -0,0 +1,9 @@
|
|||||||
|
import {
|
||||||
|
escape,
|
||||||
|
unescape
|
||||||
|
} from "./chunk-PXGSXSC7.js";
|
||||||
|
import "./chunk-5WRI5ZAA.js";
|
||||||
|
export {
|
||||||
|
escape,
|
||||||
|
unescape
|
||||||
|
};
|
||||||
7
node_modules/.vite/deps/astro___html-escaper.js.map
generated
vendored
Normal file
7
node_modules/.vite/deps/astro___html-escaper.js.map
generated
vendored
Normal file
@@ -0,0 +1,7 @@
|
|||||||
|
{
|
||||||
|
"version": 3,
|
||||||
|
"sources": [],
|
||||||
|
"sourcesContent": [],
|
||||||
|
"mappings": "",
|
||||||
|
"names": []
|
||||||
|
}
|
||||||
6391
node_modules/.vite/deps/astro_n_aria-query.js
generated
vendored
6391
node_modules/.vite/deps/astro_n_aria-query.js
generated
vendored
File diff suppressed because it is too large
Load Diff
1
node_modules/.vite/deps/astro_n_aria-query.js.map
generated
vendored
1
node_modules/.vite/deps/astro_n_aria-query.js.map
generated
vendored
File diff suppressed because one or more lines are too long
2703
node_modules/.vite/deps/astro_n_axobject-query.js
generated
vendored
2703
node_modules/.vite/deps/astro_n_axobject-query.js
generated
vendored
File diff suppressed because it is too large
Load Diff
1
node_modules/.vite/deps/astro_n_axobject-query.js.map
generated
vendored
1
node_modules/.vite/deps/astro_n_axobject-query.js.map
generated
vendored
File diff suppressed because one or more lines are too long
67
node_modules/.vite/deps/astro_n_html-escaper.js
generated
vendored
67
node_modules/.vite/deps/astro_n_html-escaper.js
generated
vendored
@@ -1,67 +0,0 @@
|
|||||||
//#region node_modules/html-escaper/esm/index.js
|
|
||||||
/**
|
|
||||||
* Copyright (C) 2017-present by Andrea Giammarchi - @WebReflection
|
|
||||||
*
|
|
||||||
* Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
||||||
* of this software and associated documentation files (the "Software"), to deal
|
|
||||||
* in the Software without restriction, including without limitation the rights
|
|
||||||
* to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
||||||
* copies of the Software, and to permit persons to whom the Software is
|
|
||||||
* furnished to do so, subject to the following conditions:
|
|
||||||
*
|
|
||||||
* The above copyright notice and this permission notice shall be included in
|
|
||||||
* all copies or substantial portions of the Software.
|
|
||||||
*
|
|
||||||
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
||||||
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
||||||
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
||||||
* AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
||||||
* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
||||||
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
|
||||||
* THE SOFTWARE.
|
|
||||||
*/
|
|
||||||
var { replace } = "";
|
|
||||||
var es = /&(?:amp|#38|lt|#60|gt|#62|apos|#39|quot|#34);/g;
|
|
||||||
var ca = /[&<>'"]/g;
|
|
||||||
var esca = {
|
|
||||||
"&": "&",
|
|
||||||
"<": "<",
|
|
||||||
">": ">",
|
|
||||||
"'": "'",
|
|
||||||
"\"": """
|
|
||||||
};
|
|
||||||
var pe = (m) => esca[m];
|
|
||||||
/**
|
|
||||||
* Safely escape HTML entities such as `&`, `<`, `>`, `"`, and `'`.
|
|
||||||
* @param {string} es the input to safely escape
|
|
||||||
* @returns {string} the escaped input, and it **throws** an error if
|
|
||||||
* the input type is unexpected, except for boolean and numbers,
|
|
||||||
* converted as string.
|
|
||||||
*/
|
|
||||||
var escape = (es) => replace.call(es, ca, pe);
|
|
||||||
var unes = {
|
|
||||||
"&": "&",
|
|
||||||
"&": "&",
|
|
||||||
"<": "<",
|
|
||||||
"<": "<",
|
|
||||||
">": ">",
|
|
||||||
">": ">",
|
|
||||||
"'": "'",
|
|
||||||
"'": "'",
|
|
||||||
""": "\"",
|
|
||||||
""": "\""
|
|
||||||
};
|
|
||||||
var cape = (m) => unes[m];
|
|
||||||
/**
|
|
||||||
* Safely unescape previously escaped entities such as `&`, `<`, `>`, `"`,
|
|
||||||
* and `'`.
|
|
||||||
* @param {string} un a previously escaped string
|
|
||||||
* @returns {string} the unescaped input, and it **throws** an error if
|
|
||||||
* the input type is unexpected, except for boolean and numbers,
|
|
||||||
* converted as string.
|
|
||||||
*/
|
|
||||||
var unescape = (un) => replace.call(un, es, cape);
|
|
||||||
//#endregion
|
|
||||||
export { escape, unescape };
|
|
||||||
|
|
||||||
//# sourceMappingURL=astro_n_html-escaper.js.map
|
|
||||||
1
node_modules/.vite/deps/astro_n_html-escaper.js.map
generated
vendored
1
node_modules/.vite/deps/astro_n_html-escaper.js.map
generated
vendored
@@ -1 +0,0 @@
|
|||||||
{"version":3,"file":"astro_n_html-escaper.js","names":[],"sources":["../../html-escaper/esm/index.js"],"sourcesContent":["/**\n * Copyright (C) 2017-present by Andrea Giammarchi - @WebReflection\n *\n * Permission is hereby granted, free of charge, to any person obtaining a copy\n * of this software and associated documentation files (the \"Software\"), to deal\n * in the Software without restriction, including without limitation the rights\n * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n * copies of the Software, and to permit persons to whom the Software is\n * furnished to do so, subject to the following conditions:\n *\n * The above copyright notice and this permission notice shall be included in\n * all copies or substantial portions of the Software.\n *\n * THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\n * THE SOFTWARE.\n */\n\nconst {replace} = '';\n\n// escape\nconst es = /&(?:amp|#38|lt|#60|gt|#62|apos|#39|quot|#34);/g;\nconst ca = /[&<>'\"]/g;\n\nconst esca = {\n '&': '&',\n '<': '<',\n '>': '>',\n \"'\": ''',\n '\"': '"'\n};\nconst pe = m => esca[m];\n\n/**\n * Safely escape HTML entities such as `&`, `<`, `>`, `\"`, and `'`.\n * @param {string} es the input to safely escape\n * @returns {string} the escaped input, and it **throws** an error if\n * the input type is unexpected, except for boolean and numbers,\n * converted as string.\n */\nexport const escape = es => replace.call(es, ca, pe);\n\n\n// unescape\nconst unes = {\n '&': '&',\n '&': '&',\n '<': '<',\n '<': '<',\n '>': '>',\n '>': '>',\n ''': \"'\",\n ''': \"'\",\n '"': '\"',\n '"': '\"'\n};\nconst cape = m => unes[m];\n\n/**\n * Safely unescape previously escaped entities such as `&`, `<`, `>`, `\"`,\n * and `'`.\n * @param {string} un a previously escaped string\n * @returns {string} the unescaped input, and it **throws** an error if\n * the input type is unexpected, except for boolean and numbers,\n * converted as string.\n */\nexport const unescape = un => replace.call(un, es, cape);\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;AAsBA,IAAM,EAAC,YAAW;AAGlB,IAAM,KAAK;AACX,IAAM,KAAK;AAEX,IAAM,OAAO;CACX,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,MAAK;CACN;AACD,IAAM,MAAK,MAAK,KAAK;;;;;;;;AASrB,IAAa,UAAS,OAAM,QAAQ,KAAK,IAAI,IAAI,GAAG;AAIpD,IAAM,OAAO;CACX,SAAS;CACT,SAAS;CACT,QAAQ;CACR,SAAS;CACT,QAAQ;CACR,SAAS;CACT,UAAU;CACV,SAAS;CACT,UAAU;CACV,SAAS;CACV;AACD,IAAM,QAAO,MAAK,KAAK;;;;;;;;;AAUvB,IAAa,YAAW,OAAM,QAAQ,KAAK,IAAI,IAAI,KAAK"}
|
|
||||||
241
node_modules/.vite/deps/astro_runtime_client_dev-toolbar_entrypoint__js.js
generated
vendored
Normal file
241
node_modules/.vite/deps/astro_runtime_client_dev-toolbar_entrypoint__js.js
generated
vendored
Normal file
@@ -0,0 +1,241 @@
|
|||||||
|
import {
|
||||||
|
ToolbarAppEventTarget
|
||||||
|
} from "./chunk-HNT3PLDI.js";
|
||||||
|
import {
|
||||||
|
settings
|
||||||
|
} from "./chunk-LEX3GG7N.js";
|
||||||
|
import "./chunk-5WRI5ZAA.js";
|
||||||
|
|
||||||
|
// node_modules/astro/dist/runtime/client/dev-toolbar/entrypoint.js
|
||||||
|
import { loadDevToolbarApps } from "astro:toolbar:internal";
|
||||||
|
var overlay;
|
||||||
|
document.addEventListener("DOMContentLoaded", async () => {
|
||||||
|
const [
|
||||||
|
customAppsDefinitions,
|
||||||
|
{ default: astroDevToolApp },
|
||||||
|
{ default: astroAuditApp },
|
||||||
|
{ default: astroXrayApp },
|
||||||
|
{ default: astroSettingsApp },
|
||||||
|
{ AstroDevToolbar, DevToolbarCanvas, getAppIcon },
|
||||||
|
{
|
||||||
|
DevToolbarCard,
|
||||||
|
DevToolbarHighlight,
|
||||||
|
DevToolbarTooltip,
|
||||||
|
DevToolbarWindow,
|
||||||
|
DevToolbarToggle,
|
||||||
|
DevToolbarButton,
|
||||||
|
DevToolbarBadge,
|
||||||
|
DevToolbarIcon,
|
||||||
|
DevToolbarSelect,
|
||||||
|
DevToolbarRadioCheckbox
|
||||||
|
}
|
||||||
|
] = await Promise.all([
|
||||||
|
loadDevToolbarApps(),
|
||||||
|
import("./astro-IQQQXCO3.js"),
|
||||||
|
import("./audit-KGECZA7G.js"),
|
||||||
|
import("./xray-XH6VIXDC.js"),
|
||||||
|
import("./settings-K4OHAGC2.js"),
|
||||||
|
import("./toolbar-2H5PSQQU.js"),
|
||||||
|
import("./ui-library-EVFCBMCE.js")
|
||||||
|
]);
|
||||||
|
customElements.define("astro-dev-toolbar", AstroDevToolbar);
|
||||||
|
customElements.define("astro-dev-toolbar-window", DevToolbarWindow);
|
||||||
|
customElements.define("astro-dev-toolbar-app-canvas", DevToolbarCanvas);
|
||||||
|
customElements.define("astro-dev-toolbar-tooltip", DevToolbarTooltip);
|
||||||
|
customElements.define("astro-dev-toolbar-highlight", DevToolbarHighlight);
|
||||||
|
customElements.define("astro-dev-toolbar-card", DevToolbarCard);
|
||||||
|
customElements.define("astro-dev-toolbar-toggle", DevToolbarToggle);
|
||||||
|
customElements.define("astro-dev-toolbar-button", DevToolbarButton);
|
||||||
|
customElements.define("astro-dev-toolbar-badge", DevToolbarBadge);
|
||||||
|
customElements.define("astro-dev-toolbar-icon", DevToolbarIcon);
|
||||||
|
customElements.define("astro-dev-toolbar-select", DevToolbarSelect);
|
||||||
|
customElements.define("astro-dev-toolbar-radio-checkbox", DevToolbarRadioCheckbox);
|
||||||
|
overlay = document.createElement("astro-dev-toolbar");
|
||||||
|
const notificationLevels = ["error", "warning", "info"];
|
||||||
|
const notificationSVGs = {
|
||||||
|
error: '<svg viewBox="0 0 10 10" style="--fill:var(--fill-default);--fill-default:#B33E66;--fill-hover:#E3AFC1;"><rect width="9" height="9" x=".5" y=".5" fill="var(--fill)" stroke="#13151A" stroke-width="2" rx="4.5"/></svg>',
|
||||||
|
warning: '<svg width="12" height="10" fill="none" style="--fill:var(--fill-default);--fill-default:#B58A2D;--fill-hover:#D5B776;"><path fill="var(--fill)" stroke="#13151A" stroke-width="2" d="M7.29904 1.25c-.57735-1-2.02073-1-2.59808 0l-3.4641 6C.65951 8.25 1.3812 9.5 2.5359 9.5h6.9282c1.1547 0 1.8764-1.25 1.299-2.25l-3.46406-6Z"/></svg>',
|
||||||
|
info: '<svg viewBox="0 0 10 10" style="--fill:var(--fill-default);--fill-default:#3645D9;--fill-hover:#BDC3FF;"><rect width="9" height="9" x=".5" y=".5" fill="var(--fill)" stroke="#13151A" stroke-width="2" rx="1.5"/></svg>'
|
||||||
|
};
|
||||||
|
const prepareApp = (appDefinition, builtIn) => {
|
||||||
|
const eventTarget = new ToolbarAppEventTarget();
|
||||||
|
const app = {
|
||||||
|
...appDefinition,
|
||||||
|
builtIn,
|
||||||
|
active: false,
|
||||||
|
status: "loading",
|
||||||
|
notification: { state: false, level: void 0 },
|
||||||
|
eventTarget
|
||||||
|
};
|
||||||
|
eventTarget.addEventListener("toggle-notification", (evt) => {
|
||||||
|
if (!(evt instanceof CustomEvent)) return;
|
||||||
|
const target = overlay.shadowRoot?.querySelector(`[data-app-id="${app.id}"]`);
|
||||||
|
if (!target) return;
|
||||||
|
const notificationElement = target.querySelector(".notification");
|
||||||
|
if (!notificationElement) return;
|
||||||
|
let newState = evt.detail.state ?? true;
|
||||||
|
let level = notificationLevels.includes(evt?.detail?.level) ? evt.detail.level : "error";
|
||||||
|
app.notification.state = newState;
|
||||||
|
if (newState) app.notification.level = level;
|
||||||
|
notificationElement.toggleAttribute("data-active", newState);
|
||||||
|
if (newState) {
|
||||||
|
notificationElement.setAttribute("data-level", level);
|
||||||
|
notificationElement.innerHTML = notificationSVGs[level];
|
||||||
|
}
|
||||||
|
});
|
||||||
|
const onToggleApp = async (evt) => {
|
||||||
|
let newState = void 0;
|
||||||
|
if (evt instanceof CustomEvent) {
|
||||||
|
newState = evt.detail.state ?? true;
|
||||||
|
}
|
||||||
|
await overlay.setAppStatus(app, newState);
|
||||||
|
};
|
||||||
|
eventTarget.addEventListener("toggle-app", onToggleApp);
|
||||||
|
return app;
|
||||||
|
};
|
||||||
|
const astroMoreApp = {
|
||||||
|
id: "astro:more",
|
||||||
|
name: "More",
|
||||||
|
icon: "dots-three",
|
||||||
|
init(canvas, eventTarget) {
|
||||||
|
const hiddenApps = apps.filter((p) => !p.builtIn).slice(overlay.customAppsToShow);
|
||||||
|
createDropdown();
|
||||||
|
document.addEventListener("astro:after-swap", createDropdown);
|
||||||
|
function createDropdown() {
|
||||||
|
const style = document.createElement("style");
|
||||||
|
style.innerHTML = `
|
||||||
|
#dropdown {
|
||||||
|
background: rgba(19, 21, 26, 1);
|
||||||
|
border: 1px solid rgba(52, 56, 65, 1);
|
||||||
|
border-radius: 12px;
|
||||||
|
box-shadow: 0px 0px 0px 0px rgba(19, 21, 26, 0.30), 0px 1px 2px 0px rgba(19, 21, 26, 0.29), 0px 4px 4px 0px rgba(19, 21, 26, 0.26), 0px 10px 6px 0px rgba(19, 21, 26, 0.15), 0px 17px 7px 0px rgba(19, 21, 26, 0.04), 0px 26px 7px 0px rgba(19, 21, 26, 0.01);
|
||||||
|
width: 192px;
|
||||||
|
padding: 8px;
|
||||||
|
z-index: 2000000010;
|
||||||
|
transform: translate(-50%, 0%);
|
||||||
|
position: fixed;
|
||||||
|
bottom: 72px;
|
||||||
|
left: 50%;
|
||||||
|
}
|
||||||
|
|
||||||
|
.notification {
|
||||||
|
display: none;
|
||||||
|
position: absolute;
|
||||||
|
top: -4px;
|
||||||
|
right: -5px;
|
||||||
|
width: 12px;
|
||||||
|
height: 10px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.notification svg {
|
||||||
|
display: block;
|
||||||
|
}
|
||||||
|
|
||||||
|
#dropdown:not([data-no-notification]) .notification[data-active] {
|
||||||
|
display: block;
|
||||||
|
}
|
||||||
|
|
||||||
|
#dropdown button {
|
||||||
|
border: 0;
|
||||||
|
background: transparent;
|
||||||
|
color: white;
|
||||||
|
font-family: system-ui, sans-serif;
|
||||||
|
font-size: 14px;
|
||||||
|
white-space: nowrap;
|
||||||
|
text-decoration: none;
|
||||||
|
margin: 0;
|
||||||
|
display: flex;
|
||||||
|
align-items: center;
|
||||||
|
width: 100%;
|
||||||
|
padding: 8px;
|
||||||
|
border-radius: 8px;
|
||||||
|
}
|
||||||
|
|
||||||
|
#dropdown button:hover, #dropdown button:focus-visible {
|
||||||
|
background: #FFFFFF20;
|
||||||
|
cursor: pointer;
|
||||||
|
}
|
||||||
|
|
||||||
|
#dropdown button.active {
|
||||||
|
background: rgba(71, 78, 94, 1);
|
||||||
|
}
|
||||||
|
|
||||||
|
#dropdown .icon {
|
||||||
|
position: relative;
|
||||||
|
height: 20px;
|
||||||
|
width: 20px;
|
||||||
|
padding: 1px;
|
||||||
|
margin-right: 0.5em;
|
||||||
|
}
|
||||||
|
|
||||||
|
#dropdown .icon svg {
|
||||||
|
max-height: 100%;
|
||||||
|
max-width: 100%;
|
||||||
|
}
|
||||||
|
`;
|
||||||
|
canvas.append(style);
|
||||||
|
const dropdown = document.createElement("div");
|
||||||
|
dropdown.id = "dropdown";
|
||||||
|
dropdown.toggleAttribute("data-no-notification", settings.config.disableAppNotification);
|
||||||
|
for (const app of hiddenApps) {
|
||||||
|
const buttonContainer = document.createElement("div");
|
||||||
|
buttonContainer.classList.add("item");
|
||||||
|
const button = document.createElement("button");
|
||||||
|
button.setAttribute("data-app-id", app.id);
|
||||||
|
const iconContainer = document.createElement("div");
|
||||||
|
const iconElement = document.createElement("template");
|
||||||
|
iconElement.innerHTML = app.icon ? getAppIcon(app.icon) : "?";
|
||||||
|
iconContainer.append(iconElement.content.cloneNode(true));
|
||||||
|
const notification = document.createElement("div");
|
||||||
|
notification.classList.add("notification");
|
||||||
|
iconContainer.append(notification);
|
||||||
|
iconContainer.classList.add("icon");
|
||||||
|
button.append(iconContainer);
|
||||||
|
button.append(document.createTextNode(app.name));
|
||||||
|
button.addEventListener("click", () => {
|
||||||
|
overlay.toggleAppStatus(app);
|
||||||
|
});
|
||||||
|
buttonContainer.append(button);
|
||||||
|
dropdown.append(buttonContainer);
|
||||||
|
app.eventTarget.addEventListener("toggle-notification", (evt) => {
|
||||||
|
if (!(evt instanceof CustomEvent)) return;
|
||||||
|
let newState = evt.detail.state ?? true;
|
||||||
|
let level = notificationLevels.includes(evt?.detail?.level) ? evt.detail.level : "error";
|
||||||
|
notification.toggleAttribute("data-active", newState);
|
||||||
|
if (newState) {
|
||||||
|
notification.setAttribute("data-level", level);
|
||||||
|
notification.innerHTML = notificationSVGs[level];
|
||||||
|
}
|
||||||
|
app.notification.state = newState;
|
||||||
|
if (newState) app.notification.level = level;
|
||||||
|
eventTarget.dispatchEvent(
|
||||||
|
new CustomEvent("toggle-notification", {
|
||||||
|
detail: {
|
||||||
|
state: hiddenApps.some((p) => p.notification.state === true),
|
||||||
|
level: ["error", "warning", "info"].find(
|
||||||
|
(notificationLevel) => hiddenApps.some(
|
||||||
|
(p) => p.notification.state === true && p.notification.level === notificationLevel
|
||||||
|
)
|
||||||
|
) ?? "error"
|
||||||
|
}
|
||||||
|
})
|
||||||
|
);
|
||||||
|
});
|
||||||
|
}
|
||||||
|
canvas.append(dropdown);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
};
|
||||||
|
const apps = [
|
||||||
|
...[astroDevToolApp, astroXrayApp, astroAuditApp, astroSettingsApp, astroMoreApp].map(
|
||||||
|
(appDef) => prepareApp(appDef, true)
|
||||||
|
),
|
||||||
|
...customAppsDefinitions.map((appDef) => prepareApp(appDef, false))
|
||||||
|
];
|
||||||
|
overlay.apps = apps;
|
||||||
|
document.body.append(overlay);
|
||||||
|
document.addEventListener("astro:after-swap", () => {
|
||||||
|
document.body.append(overlay);
|
||||||
|
});
|
||||||
|
});
|
||||||
|
//# sourceMappingURL=astro_runtime_client_dev-toolbar_entrypoint__js.js.map
|
||||||
7
node_modules/.vite/deps/astro_runtime_client_dev-toolbar_entrypoint__js.js.map
generated
vendored
Normal file
7
node_modules/.vite/deps/astro_runtime_client_dev-toolbar_entrypoint__js.js.map
generated
vendored
Normal file
File diff suppressed because one or more lines are too long
1580
node_modules/.vite/deps/audit-KGECZA7G.js
generated
vendored
Normal file
1580
node_modules/.vite/deps/audit-KGECZA7G.js
generated
vendored
Normal file
File diff suppressed because it is too large
Load Diff
7
node_modules/.vite/deps/audit-KGECZA7G.js.map
generated
vendored
Normal file
7
node_modules/.vite/deps/audit-KGECZA7G.js.map
generated
vendored
Normal file
File diff suppressed because one or more lines are too long
30
node_modules/.vite/deps/chunk-5WRI5ZAA.js
generated
vendored
Normal file
30
node_modules/.vite/deps/chunk-5WRI5ZAA.js
generated
vendored
Normal file
@@ -0,0 +1,30 @@
|
|||||||
|
var __create = Object.create;
|
||||||
|
var __defProp = Object.defineProperty;
|
||||||
|
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
||||||
|
var __getOwnPropNames = Object.getOwnPropertyNames;
|
||||||
|
var __getProtoOf = Object.getPrototypeOf;
|
||||||
|
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
||||||
|
var __commonJS = (cb, mod) => function __require() {
|
||||||
|
return mod || (0, cb[__getOwnPropNames(cb)[0]])((mod = { exports: {} }).exports, mod), mod.exports;
|
||||||
|
};
|
||||||
|
var __copyProps = (to, from, except, desc) => {
|
||||||
|
if (from && typeof from === "object" || typeof from === "function") {
|
||||||
|
for (let key of __getOwnPropNames(from))
|
||||||
|
if (!__hasOwnProp.call(to, key) && key !== except)
|
||||||
|
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
||||||
|
}
|
||||||
|
return to;
|
||||||
|
};
|
||||||
|
var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
|
||||||
|
// If the importer is in node compatibility mode or this is not an ESM
|
||||||
|
// file that has been converted to a CommonJS file using a Babel-
|
||||||
|
// compatible transform (i.e. "__esModule" has not been set), then set
|
||||||
|
// "default" to the CommonJS "module.exports" for node compatibility.
|
||||||
|
isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
|
||||||
|
mod
|
||||||
|
));
|
||||||
|
|
||||||
|
export {
|
||||||
|
__commonJS,
|
||||||
|
__toESM
|
||||||
|
};
|
||||||
7
node_modules/.vite/deps/chunk-5WRI5ZAA.js.map
generated
vendored
Normal file
7
node_modules/.vite/deps/chunk-5WRI5ZAA.js.map
generated
vendored
Normal file
@@ -0,0 +1,7 @@
|
|||||||
|
{
|
||||||
|
"version": 3,
|
||||||
|
"sources": [],
|
||||||
|
"sourcesContent": [],
|
||||||
|
"mappings": "",
|
||||||
|
"names": []
|
||||||
|
}
|
||||||
4
node_modules/.vite/deps/chunk-CFx7f7Oh.js
generated
vendored
4
node_modules/.vite/deps/chunk-CFx7f7Oh.js
generated
vendored
@@ -1,4 +0,0 @@
|
|||||||
//#region \0rolldown/runtime.js
|
|
||||||
var __commonJSMin = (cb, mod) => () => (mod || (cb((mod = { exports: {} }).exports, mod), cb = null), mod.exports);
|
|
||||||
//#endregion
|
|
||||||
export { __commonJSMin as t };
|
|
||||||
88
node_modules/.vite/deps/chunk-HNT3PLDI.js
generated
vendored
Normal file
88
node_modules/.vite/deps/chunk-HNT3PLDI.js
generated
vendored
Normal file
@@ -0,0 +1,88 @@
|
|||||||
|
// node_modules/astro/dist/runtime/client/dev-toolbar/helpers.js
|
||||||
|
var ToolbarAppEventTarget = class extends EventTarget {
|
||||||
|
constructor() {
|
||||||
|
super();
|
||||||
|
}
|
||||||
|
/**
|
||||||
|
* Toggle the notification state of the toolbar
|
||||||
|
* @param options - The notification options
|
||||||
|
* @param options.state - The state of the notification
|
||||||
|
* @param options.level - The level of the notification, optional when state is false
|
||||||
|
*/
|
||||||
|
toggleNotification(options) {
|
||||||
|
this.dispatchEvent(
|
||||||
|
new CustomEvent("toggle-notification", {
|
||||||
|
detail: {
|
||||||
|
state: options.state,
|
||||||
|
level: options.state === true ? options.level : void 0
|
||||||
|
}
|
||||||
|
})
|
||||||
|
);
|
||||||
|
}
|
||||||
|
/**
|
||||||
|
* Toggle the app state on or off
|
||||||
|
* @param options - The app state options
|
||||||
|
* @param options.state - The new state of the app
|
||||||
|
*/
|
||||||
|
toggleState(options) {
|
||||||
|
this.dispatchEvent(
|
||||||
|
new CustomEvent("toggle-app", {
|
||||||
|
detail: {
|
||||||
|
state: options.state
|
||||||
|
}
|
||||||
|
})
|
||||||
|
);
|
||||||
|
}
|
||||||
|
/**
|
||||||
|
* Fired when the app is toggled on or off
|
||||||
|
* @param callback - The callback to run when the event is fired, takes an object with the new state
|
||||||
|
*/
|
||||||
|
onToggled(callback) {
|
||||||
|
this.addEventListener("app-toggled", (evt) => {
|
||||||
|
if (!(evt instanceof CustomEvent)) return;
|
||||||
|
callback(evt.detail);
|
||||||
|
});
|
||||||
|
}
|
||||||
|
/**
|
||||||
|
* Fired when the toolbar placement is updated by the user
|
||||||
|
* @param callback - The callback to run when the event is fired, takes an object with the new placement
|
||||||
|
*/
|
||||||
|
onToolbarPlacementUpdated(callback) {
|
||||||
|
this.addEventListener("placement-updated", (evt) => {
|
||||||
|
if (!(evt instanceof CustomEvent)) return;
|
||||||
|
callback(evt.detail);
|
||||||
|
});
|
||||||
|
}
|
||||||
|
};
|
||||||
|
var serverHelpers = {
|
||||||
|
/**
|
||||||
|
* Send a message to the server, the payload can be any serializable data.
|
||||||
|
*
|
||||||
|
* The server can listen for this message in the `astro:server:config` hook of an Astro integration, using the `toolbar.on` method.
|
||||||
|
*
|
||||||
|
* @param event - The event name
|
||||||
|
* @param payload - The payload to send
|
||||||
|
*/
|
||||||
|
send: (event, payload) => {
|
||||||
|
if (import.meta.hot) {
|
||||||
|
import.meta.hot.send(event, payload);
|
||||||
|
}
|
||||||
|
},
|
||||||
|
/**
|
||||||
|
* Receive a message from the server.
|
||||||
|
* @param event - The event name
|
||||||
|
* @param callback - The callback to run when the event is received.
|
||||||
|
* The payload's content will be passed to the callback as an argument
|
||||||
|
*/
|
||||||
|
on: (event, callback) => {
|
||||||
|
if (import.meta.hot) {
|
||||||
|
import.meta.hot.on(event, callback);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
|
export {
|
||||||
|
ToolbarAppEventTarget,
|
||||||
|
serverHelpers
|
||||||
|
};
|
||||||
|
//# sourceMappingURL=chunk-HNT3PLDI.js.map
|
||||||
7
node_modules/.vite/deps/chunk-HNT3PLDI.js.map
generated
vendored
Normal file
7
node_modules/.vite/deps/chunk-HNT3PLDI.js.map
generated
vendored
Normal file
@@ -0,0 +1,7 @@
|
|||||||
|
{
|
||||||
|
"version": 3,
|
||||||
|
"sources": ["../../astro/dist/runtime/client/dev-toolbar/helpers.js"],
|
||||||
|
"sourcesContent": ["class ToolbarAppEventTarget extends EventTarget {\n constructor() {\n super();\n }\n /**\n * Toggle the notification state of the toolbar\n * @param options - The notification options\n * @param options.state - The state of the notification\n * @param options.level - The level of the notification, optional when state is false\n */\n toggleNotification(options) {\n this.dispatchEvent(\n new CustomEvent(\"toggle-notification\", {\n detail: {\n state: options.state,\n level: options.state === true ? options.level : void 0\n }\n })\n );\n }\n /**\n * Toggle the app state on or off\n * @param options - The app state options\n * @param options.state - The new state of the app\n */\n toggleState(options) {\n this.dispatchEvent(\n new CustomEvent(\"toggle-app\", {\n detail: {\n state: options.state\n }\n })\n );\n }\n /**\n * Fired when the app is toggled on or off\n * @param callback - The callback to run when the event is fired, takes an object with the new state\n */\n onToggled(callback) {\n this.addEventListener(\"app-toggled\", (evt) => {\n if (!(evt instanceof CustomEvent)) return;\n callback(evt.detail);\n });\n }\n /**\n * Fired when the toolbar placement is updated by the user\n * @param callback - The callback to run when the event is fired, takes an object with the new placement\n */\n onToolbarPlacementUpdated(callback) {\n this.addEventListener(\"placement-updated\", (evt) => {\n if (!(evt instanceof CustomEvent)) return;\n callback(evt.detail);\n });\n }\n}\nconst serverHelpers = {\n /**\n * Send a message to the server, the payload can be any serializable data.\n *\n * The server can listen for this message in the `astro:server:config` hook of an Astro integration, using the `toolbar.on` method.\n *\n * @param event - The event name\n * @param payload - The payload to send\n */\n send: (event, payload) => {\n if (import.meta.hot) {\n import.meta.hot.send(event, payload);\n }\n },\n /**\n * Receive a message from the server.\n * @param event - The event name\n * @param callback - The callback to run when the event is received.\n * The payload's content will be passed to the callback as an argument\n */\n on: (event, callback) => {\n if (import.meta.hot) {\n import.meta.hot.on(event, callback);\n }\n }\n};\nexport {\n ToolbarAppEventTarget,\n serverHelpers\n};\n"],
|
||||||
|
"mappings": ";AAAA,IAAM,wBAAN,cAAoC,YAAY;AAAA,EAC9C,cAAc;AACZ,UAAM;AAAA,EACR;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAOA,mBAAmB,SAAS;AAC1B,SAAK;AAAA,MACH,IAAI,YAAY,uBAAuB;AAAA,QACrC,QAAQ;AAAA,UACN,OAAO,QAAQ;AAAA,UACf,OAAO,QAAQ,UAAU,OAAO,QAAQ,QAAQ;AAAA,QAClD;AAAA,MACF,CAAC;AAAA,IACH;AAAA,EACF;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAMA,YAAY,SAAS;AACnB,SAAK;AAAA,MACH,IAAI,YAAY,cAAc;AAAA,QAC5B,QAAQ;AAAA,UACN,OAAO,QAAQ;AAAA,QACjB;AAAA,MACF,CAAC;AAAA,IACH;AAAA,EACF;AAAA;AAAA;AAAA;AAAA;AAAA,EAKA,UAAU,UAAU;AAClB,SAAK,iBAAiB,eAAe,CAAC,QAAQ;AAC5C,UAAI,EAAE,eAAe,aAAc;AACnC,eAAS,IAAI,MAAM;AAAA,IACrB,CAAC;AAAA,EACH;AAAA;AAAA;AAAA;AAAA;AAAA,EAKA,0BAA0B,UAAU;AAClC,SAAK,iBAAiB,qBAAqB,CAAC,QAAQ;AAClD,UAAI,EAAE,eAAe,aAAc;AACnC,eAAS,IAAI,MAAM;AAAA,IACrB,CAAC;AAAA,EACH;AACF;AACA,IAAM,gBAAgB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EASpB,MAAM,CAAC,OAAO,YAAY;AACxB,QAAI,YAAY,KAAK;AACnB,kBAAY,IAAI,KAAK,OAAO,OAAO;AAAA,IACrC;AAAA,EACF;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAOA,IAAI,CAAC,OAAO,aAAa;AACvB,QAAI,YAAY,KAAK;AACnB,kBAAY,IAAI,GAAG,OAAO,QAAQ;AAAA,IACpC;AAAA,EACF;AACF;",
|
||||||
|
"names": []
|
||||||
|
}
|
||||||
72
node_modules/.vite/deps/chunk-LEAOZWS7.js
generated
vendored
Normal file
72
node_modules/.vite/deps/chunk-LEAOZWS7.js
generated
vendored
Normal file
@@ -0,0 +1,72 @@
|
|||||||
|
// node_modules/astro/dist/runtime/client/dev-toolbar/apps/utils/highlight.js
|
||||||
|
function createHighlight(rect, icon, additionalAttributes) {
|
||||||
|
const highlight = document.createElement("astro-dev-toolbar-highlight");
|
||||||
|
if (icon) highlight.icon = icon;
|
||||||
|
if (additionalAttributes) {
|
||||||
|
for (const [key, value] of Object.entries(additionalAttributes)) {
|
||||||
|
highlight.setAttribute(key, value);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
highlight.tabIndex = 0;
|
||||||
|
if (rect.width === 0 || rect.height === 0) {
|
||||||
|
highlight.style.display = "none";
|
||||||
|
} else {
|
||||||
|
positionHighlight(highlight, rect);
|
||||||
|
}
|
||||||
|
return highlight;
|
||||||
|
}
|
||||||
|
function getElementsPositionInDocument(el) {
|
||||||
|
let isFixed = false;
|
||||||
|
let current = el;
|
||||||
|
while (current instanceof Element) {
|
||||||
|
let style = getComputedStyle(current);
|
||||||
|
if (style.position === "fixed") {
|
||||||
|
isFixed = true;
|
||||||
|
}
|
||||||
|
current = current.parentNode;
|
||||||
|
}
|
||||||
|
return {
|
||||||
|
isFixed
|
||||||
|
};
|
||||||
|
}
|
||||||
|
function positionHighlight(highlight, rect) {
|
||||||
|
highlight.style.display = "block";
|
||||||
|
const scrollY = highlight.style.position === "fixed" ? 0 : window.scrollY;
|
||||||
|
highlight.style.top = `${Math.max(rect.top + scrollY - 10, 0)}px`;
|
||||||
|
highlight.style.left = `${Math.max(rect.left + window.scrollX - 10, 0)}px`;
|
||||||
|
highlight.style.width = `${rect.width + 15}px`;
|
||||||
|
highlight.style.height = `${rect.height + 15}px`;
|
||||||
|
}
|
||||||
|
function attachTooltipToHighlight(highlight, tooltip, originalElement) {
|
||||||
|
highlight.shadowRoot.append(tooltip);
|
||||||
|
["mouseover", "focus"].forEach((event) => {
|
||||||
|
highlight.addEventListener(event, () => {
|
||||||
|
tooltip.dataset.show = "true";
|
||||||
|
const originalRect = originalElement.getBoundingClientRect();
|
||||||
|
const dialogRect = tooltip.getBoundingClientRect();
|
||||||
|
if (originalRect.top < dialogRect.height) {
|
||||||
|
tooltip.style.top = `${originalRect.height + 15}px`;
|
||||||
|
} else {
|
||||||
|
tooltip.style.top = `-${tooltip.offsetHeight}px`;
|
||||||
|
}
|
||||||
|
if (dialogRect.right > document.documentElement.clientWidth) {
|
||||||
|
tooltip.style.right = "0px";
|
||||||
|
} else if (dialogRect.left < 0) {
|
||||||
|
tooltip.style.left = "0px";
|
||||||
|
}
|
||||||
|
});
|
||||||
|
});
|
||||||
|
["mouseout", "blur"].forEach((event) => {
|
||||||
|
highlight.addEventListener(event, () => {
|
||||||
|
tooltip.dataset.show = "false";
|
||||||
|
});
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
export {
|
||||||
|
createHighlight,
|
||||||
|
getElementsPositionInDocument,
|
||||||
|
positionHighlight,
|
||||||
|
attachTooltipToHighlight
|
||||||
|
};
|
||||||
|
//# sourceMappingURL=chunk-LEAOZWS7.js.map
|
||||||
7
node_modules/.vite/deps/chunk-LEAOZWS7.js.map
generated
vendored
Normal file
7
node_modules/.vite/deps/chunk-LEAOZWS7.js.map
generated
vendored
Normal file
@@ -0,0 +1,7 @@
|
|||||||
|
{
|
||||||
|
"version": 3,
|
||||||
|
"sources": ["../../astro/dist/runtime/client/dev-toolbar/apps/utils/highlight.js"],
|
||||||
|
"sourcesContent": ["function createHighlight(rect, icon, additionalAttributes) {\n const highlight = document.createElement(\"astro-dev-toolbar-highlight\");\n if (icon) highlight.icon = icon;\n if (additionalAttributes) {\n for (const [key, value] of Object.entries(additionalAttributes)) {\n highlight.setAttribute(key, value);\n }\n }\n highlight.tabIndex = 0;\n if (rect.width === 0 || rect.height === 0) {\n highlight.style.display = \"none\";\n } else {\n positionHighlight(highlight, rect);\n }\n return highlight;\n}\nfunction getElementsPositionInDocument(el) {\n let isFixed = false;\n let current = el;\n while (current instanceof Element) {\n let style = getComputedStyle(current);\n if (style.position === \"fixed\") {\n isFixed = true;\n }\n current = current.parentNode;\n }\n return {\n isFixed\n };\n}\nfunction positionHighlight(highlight, rect) {\n highlight.style.display = \"block\";\n const scrollY = highlight.style.position === \"fixed\" ? 0 : window.scrollY;\n highlight.style.top = `${Math.max(rect.top + scrollY - 10, 0)}px`;\n highlight.style.left = `${Math.max(rect.left + window.scrollX - 10, 0)}px`;\n highlight.style.width = `${rect.width + 15}px`;\n highlight.style.height = `${rect.height + 15}px`;\n}\nfunction attachTooltipToHighlight(highlight, tooltip, originalElement) {\n highlight.shadowRoot.append(tooltip);\n [\"mouseover\", \"focus\"].forEach((event) => {\n highlight.addEventListener(event, () => {\n tooltip.dataset.show = \"true\";\n const originalRect = originalElement.getBoundingClientRect();\n const dialogRect = tooltip.getBoundingClientRect();\n if (originalRect.top < dialogRect.height) {\n tooltip.style.top = `${originalRect.height + 15}px`;\n } else {\n tooltip.style.top = `-${tooltip.offsetHeight}px`;\n }\n if (dialogRect.right > document.documentElement.clientWidth) {\n tooltip.style.right = \"0px\";\n } else if (dialogRect.left < 0) {\n tooltip.style.left = \"0px\";\n }\n });\n });\n [\"mouseout\", \"blur\"].forEach((event) => {\n highlight.addEventListener(event, () => {\n tooltip.dataset.show = \"false\";\n });\n });\n}\nexport {\n attachTooltipToHighlight,\n createHighlight,\n getElementsPositionInDocument,\n positionHighlight\n};\n"],
|
||||||
|
"mappings": ";AAAA,SAAS,gBAAgB,MAAM,MAAM,sBAAsB;AACzD,QAAM,YAAY,SAAS,cAAc,6BAA6B;AACtE,MAAI,KAAM,WAAU,OAAO;AAC3B,MAAI,sBAAsB;AACxB,eAAW,CAAC,KAAK,KAAK,KAAK,OAAO,QAAQ,oBAAoB,GAAG;AAC/D,gBAAU,aAAa,KAAK,KAAK;AAAA,IACnC;AAAA,EACF;AACA,YAAU,WAAW;AACrB,MAAI,KAAK,UAAU,KAAK,KAAK,WAAW,GAAG;AACzC,cAAU,MAAM,UAAU;AAAA,EAC5B,OAAO;AACL,sBAAkB,WAAW,IAAI;AAAA,EACnC;AACA,SAAO;AACT;AACA,SAAS,8BAA8B,IAAI;AACzC,MAAI,UAAU;AACd,MAAI,UAAU;AACd,SAAO,mBAAmB,SAAS;AACjC,QAAI,QAAQ,iBAAiB,OAAO;AACpC,QAAI,MAAM,aAAa,SAAS;AAC9B,gBAAU;AAAA,IACZ;AACA,cAAU,QAAQ;AAAA,EACpB;AACA,SAAO;AAAA,IACL;AAAA,EACF;AACF;AACA,SAAS,kBAAkB,WAAW,MAAM;AAC1C,YAAU,MAAM,UAAU;AAC1B,QAAM,UAAU,UAAU,MAAM,aAAa,UAAU,IAAI,OAAO;AAClE,YAAU,MAAM,MAAM,GAAG,KAAK,IAAI,KAAK,MAAM,UAAU,IAAI,CAAC,CAAC;AAC7D,YAAU,MAAM,OAAO,GAAG,KAAK,IAAI,KAAK,OAAO,OAAO,UAAU,IAAI,CAAC,CAAC;AACtE,YAAU,MAAM,QAAQ,GAAG,KAAK,QAAQ,EAAE;AAC1C,YAAU,MAAM,SAAS,GAAG,KAAK,SAAS,EAAE;AAC9C;AACA,SAAS,yBAAyB,WAAW,SAAS,iBAAiB;AACrE,YAAU,WAAW,OAAO,OAAO;AACnC,GAAC,aAAa,OAAO,EAAE,QAAQ,CAAC,UAAU;AACxC,cAAU,iBAAiB,OAAO,MAAM;AACtC,cAAQ,QAAQ,OAAO;AACvB,YAAM,eAAe,gBAAgB,sBAAsB;AAC3D,YAAM,aAAa,QAAQ,sBAAsB;AACjD,UAAI,aAAa,MAAM,WAAW,QAAQ;AACxC,gBAAQ,MAAM,MAAM,GAAG,aAAa,SAAS,EAAE;AAAA,MACjD,OAAO;AACL,gBAAQ,MAAM,MAAM,IAAI,QAAQ,YAAY;AAAA,MAC9C;AACA,UAAI,WAAW,QAAQ,SAAS,gBAAgB,aAAa;AAC3D,gBAAQ,MAAM,QAAQ;AAAA,MACxB,WAAW,WAAW,OAAO,GAAG;AAC9B,gBAAQ,MAAM,OAAO;AAAA,MACvB;AAAA,IACF,CAAC;AAAA,EACH,CAAC;AACD,GAAC,YAAY,MAAM,EAAE,QAAQ,CAAC,UAAU;AACtC,cAAU,iBAAiB,OAAO,MAAM;AACtC,cAAQ,QAAQ,OAAO;AAAA,IACzB,CAAC;AAAA,EACH,CAAC;AACH;",
|
||||||
|
"names": []
|
||||||
|
}
|
||||||
186
node_modules/.vite/deps/chunk-LEX3GG7N.js
generated
vendored
Normal file
186
node_modules/.vite/deps/chunk-LEX3GG7N.js
generated
vendored
Normal file
@@ -0,0 +1,186 @@
|
|||||||
|
// node_modules/astro/dist/runtime/client/dev-toolbar/settings.js
|
||||||
|
var defaultSettings = {
|
||||||
|
disableAppNotification: false,
|
||||||
|
verbose: false,
|
||||||
|
placement: "bottom-center"
|
||||||
|
};
|
||||||
|
var settings = getSettings();
|
||||||
|
function getSettings() {
|
||||||
|
let _settings = { ...defaultSettings };
|
||||||
|
const configPlacement = globalThis.__astro_dev_toolbar__?.placement;
|
||||||
|
if (configPlacement && isValidPlacement(configPlacement)) {
|
||||||
|
_settings.placement = configPlacement;
|
||||||
|
}
|
||||||
|
const toolbarSettings = localStorage.getItem("astro:dev-toolbar:settings");
|
||||||
|
if (toolbarSettings) {
|
||||||
|
_settings = { ..._settings, ...JSON.parse(toolbarSettings) };
|
||||||
|
}
|
||||||
|
function updateSetting(key, value) {
|
||||||
|
_settings[key] = value;
|
||||||
|
localStorage.setItem("astro:dev-toolbar:settings", JSON.stringify(_settings));
|
||||||
|
}
|
||||||
|
function log(message, level = "log") {
|
||||||
|
console[level](
|
||||||
|
`%cAstro`,
|
||||||
|
"background: linear-gradient(66.77deg, #D83333 0%, #F041FF 100%); color: white; padding-inline: 4px; border-radius: 2px; font-family: monospace;",
|
||||||
|
message
|
||||||
|
);
|
||||||
|
}
|
||||||
|
return {
|
||||||
|
get config() {
|
||||||
|
return _settings;
|
||||||
|
},
|
||||||
|
updateSetting,
|
||||||
|
logger: {
|
||||||
|
log,
|
||||||
|
warn: (message) => {
|
||||||
|
log(message, "warn");
|
||||||
|
},
|
||||||
|
error: (message) => {
|
||||||
|
log(message, "error");
|
||||||
|
},
|
||||||
|
verboseLog: (message) => {
|
||||||
|
if (_settings.verbose) {
|
||||||
|
log(message);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
};
|
||||||
|
}
|
||||||
|
|
||||||
|
// node_modules/astro/dist/runtime/client/dev-toolbar/ui-library/window.js
|
||||||
|
var placements = ["bottom-left", "bottom-center", "bottom-right"];
|
||||||
|
function isValidPlacement(value) {
|
||||||
|
return placements.map(String).includes(value);
|
||||||
|
}
|
||||||
|
var DevToolbarWindow = class extends HTMLElement {
|
||||||
|
shadowRoot;
|
||||||
|
_placement = defaultSettings.placement;
|
||||||
|
get placement() {
|
||||||
|
return this._placement;
|
||||||
|
}
|
||||||
|
set placement(value) {
|
||||||
|
if (!isValidPlacement(value)) {
|
||||||
|
settings.logger.error(
|
||||||
|
`Invalid placement: ${value}, expected one of ${placements.join(", ")}, got ${value}.`
|
||||||
|
);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
this._placement = value;
|
||||||
|
this.updateStyle();
|
||||||
|
}
|
||||||
|
static observedAttributes = ["placement"];
|
||||||
|
constructor() {
|
||||||
|
super();
|
||||||
|
this.shadowRoot = this.attachShadow({ mode: "open" });
|
||||||
|
}
|
||||||
|
async connectedCallback() {
|
||||||
|
this.shadowRoot.innerHTML = `
|
||||||
|
<style>
|
||||||
|
:host {
|
||||||
|
box-sizing: border-box;
|
||||||
|
display: flex;
|
||||||
|
flex-direction: column;
|
||||||
|
background: linear-gradient(0deg, #13151A, #13151A), linear-gradient(0deg, #343841, #343841);
|
||||||
|
border: 1px solid rgba(52, 56, 65, 1);
|
||||||
|
width: min(640px, 100%);
|
||||||
|
max-height: 480px;
|
||||||
|
border-radius: 12px;
|
||||||
|
padding: 24px;
|
||||||
|
font-family: ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
|
||||||
|
color: rgba(191, 193, 201, 1);
|
||||||
|
position: fixed;
|
||||||
|
z-index: 999999999;
|
||||||
|
bottom: 72px;
|
||||||
|
box-shadow: 0px 0px 0px 0px rgba(19, 21, 26, 0.30), 0px 1px 2px 0px rgba(19, 21, 26, 0.29), 0px 4px 4px 0px rgba(19, 21, 26, 0.26), 0px 10px 6px 0px rgba(19, 21, 26, 0.15), 0px 17px 7px 0px rgba(19, 21, 26, 0.04), 0px 26px 7px 0px rgba(19, 21, 26, 0.01);
|
||||||
|
}
|
||||||
|
|
||||||
|
@media (forced-colors: active) {
|
||||||
|
:host {
|
||||||
|
background: white;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
@media (max-width: 640px) {
|
||||||
|
:host {
|
||||||
|
border-radius: 0;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
::slotted(h1), ::slotted(h2), ::slotted(h3), ::slotted(h4), ::slotted(h5) {
|
||||||
|
font-weight: 600;
|
||||||
|
color: #fff;
|
||||||
|
}
|
||||||
|
|
||||||
|
::slotted(h1) {
|
||||||
|
font-size: 22px;
|
||||||
|
}
|
||||||
|
|
||||||
|
::slotted(h2) {
|
||||||
|
font-size: 20px;
|
||||||
|
}
|
||||||
|
|
||||||
|
::slotted(h3) {
|
||||||
|
font-size: 18px;
|
||||||
|
}
|
||||||
|
|
||||||
|
::slotted(h4) {
|
||||||
|
font-size: 16px;
|
||||||
|
}
|
||||||
|
|
||||||
|
::slotted(h5) {
|
||||||
|
font-size: 14px;
|
||||||
|
}
|
||||||
|
|
||||||
|
hr, ::slotted(hr) {
|
||||||
|
border: 1px solid rgba(27, 30, 36, 1);
|
||||||
|
margin: 1em 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
p, ::slotted(p) {
|
||||||
|
line-height: 1.5em;
|
||||||
|
}
|
||||||
|
</style>
|
||||||
|
<style id="selected-style"></style>
|
||||||
|
|
||||||
|
<slot />
|
||||||
|
`;
|
||||||
|
this.updateStyle();
|
||||||
|
}
|
||||||
|
attributeChangedCallback() {
|
||||||
|
if (this.hasAttribute("placement"))
|
||||||
|
this.placement = this.getAttribute("placement");
|
||||||
|
}
|
||||||
|
updateStyle() {
|
||||||
|
const style = this.shadowRoot.querySelector("#selected-style");
|
||||||
|
if (style) {
|
||||||
|
const styleMap = {
|
||||||
|
"bottom-left": `
|
||||||
|
:host {
|
||||||
|
left: 16px;
|
||||||
|
}
|
||||||
|
`,
|
||||||
|
"bottom-center": `
|
||||||
|
:host {
|
||||||
|
left: 50%;
|
||||||
|
transform: translateX(-50%);
|
||||||
|
}
|
||||||
|
`,
|
||||||
|
"bottom-right": `
|
||||||
|
:host {
|
||||||
|
right: 16px;
|
||||||
|
}
|
||||||
|
`
|
||||||
|
};
|
||||||
|
style.innerHTML = styleMap[this.placement];
|
||||||
|
}
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
|
export {
|
||||||
|
placements,
|
||||||
|
isValidPlacement,
|
||||||
|
DevToolbarWindow,
|
||||||
|
settings
|
||||||
|
};
|
||||||
|
//# sourceMappingURL=chunk-LEX3GG7N.js.map
|
||||||
7
node_modules/.vite/deps/chunk-LEX3GG7N.js.map
generated
vendored
Normal file
7
node_modules/.vite/deps/chunk-LEX3GG7N.js.map
generated
vendored
Normal file
File diff suppressed because one or more lines are too long
33
node_modules/.vite/deps/chunk-PXGSXSC7.js
generated
vendored
Normal file
33
node_modules/.vite/deps/chunk-PXGSXSC7.js
generated
vendored
Normal file
@@ -0,0 +1,33 @@
|
|||||||
|
// node_modules/html-escaper/esm/index.js
|
||||||
|
var { replace } = "";
|
||||||
|
var es = /&(?:amp|#38|lt|#60|gt|#62|apos|#39|quot|#34);/g;
|
||||||
|
var ca = /[&<>'"]/g;
|
||||||
|
var esca = {
|
||||||
|
"&": "&",
|
||||||
|
"<": "<",
|
||||||
|
">": ">",
|
||||||
|
"'": "'",
|
||||||
|
'"': """
|
||||||
|
};
|
||||||
|
var pe = (m) => esca[m];
|
||||||
|
var escape = (es2) => replace.call(es2, ca, pe);
|
||||||
|
var unes = {
|
||||||
|
"&": "&",
|
||||||
|
"&": "&",
|
||||||
|
"<": "<",
|
||||||
|
"<": "<",
|
||||||
|
">": ">",
|
||||||
|
">": ">",
|
||||||
|
"'": "'",
|
||||||
|
"'": "'",
|
||||||
|
""": '"',
|
||||||
|
""": '"'
|
||||||
|
};
|
||||||
|
var cape = (m) => unes[m];
|
||||||
|
var unescape = (un) => replace.call(un, es, cape);
|
||||||
|
|
||||||
|
export {
|
||||||
|
escape,
|
||||||
|
unescape
|
||||||
|
};
|
||||||
|
//# sourceMappingURL=chunk-PXGSXSC7.js.map
|
||||||
7
node_modules/.vite/deps/chunk-PXGSXSC7.js.map
generated
vendored
Normal file
7
node_modules/.vite/deps/chunk-PXGSXSC7.js.map
generated
vendored
Normal file
@@ -0,0 +1,7 @@
|
|||||||
|
{
|
||||||
|
"version": 3,
|
||||||
|
"sources": ["../../html-escaper/esm/index.js"],
|
||||||
|
"sourcesContent": ["/**\n * Copyright (C) 2017-present by Andrea Giammarchi - @WebReflection\n *\n * Permission is hereby granted, free of charge, to any person obtaining a copy\n * of this software and associated documentation files (the \"Software\"), to deal\n * in the Software without restriction, including without limitation the rights\n * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n * copies of the Software, and to permit persons to whom the Software is\n * furnished to do so, subject to the following conditions:\n *\n * The above copyright notice and this permission notice shall be included in\n * all copies or substantial portions of the Software.\n *\n * THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\n * THE SOFTWARE.\n */\n\nconst {replace} = '';\n\n// escape\nconst es = /&(?:amp|#38|lt|#60|gt|#62|apos|#39|quot|#34);/g;\nconst ca = /[&<>'\"]/g;\n\nconst esca = {\n '&': '&',\n '<': '<',\n '>': '>',\n \"'\": ''',\n '\"': '"'\n};\nconst pe = m => esca[m];\n\n/**\n * Safely escape HTML entities such as `&`, `<`, `>`, `\"`, and `'`.\n * @param {string} es the input to safely escape\n * @returns {string} the escaped input, and it **throws** an error if\n * the input type is unexpected, except for boolean and numbers,\n * converted as string.\n */\nexport const escape = es => replace.call(es, ca, pe);\n\n\n// unescape\nconst unes = {\n '&': '&',\n '&': '&',\n '<': '<',\n '<': '<',\n '>': '>',\n '>': '>',\n ''': \"'\",\n ''': \"'\",\n '"': '\"',\n '"': '\"'\n};\nconst cape = m => unes[m];\n\n/**\n * Safely unescape previously escaped entities such as `&`, `<`, `>`, `\"`,\n * and `'`.\n * @param {string} un a previously escaped string\n * @returns {string} the unescaped input, and it **throws** an error if\n * the input type is unexpected, except for boolean and numbers,\n * converted as string.\n */\nexport const unescape = un => replace.call(un, es, cape);\n"],
|
||||||
|
"mappings": ";AAsBA,IAAM,EAAC,QAAO,IAAI;AAGlB,IAAM,KAAK;AACX,IAAM,KAAK;AAEX,IAAM,OAAO;AAAA,EACX,KAAK;AAAA,EACL,KAAK;AAAA,EACL,KAAK;AAAA,EACL,KAAK;AAAA,EACL,KAAK;AACP;AACA,IAAM,KAAK,OAAK,KAAK,CAAC;AASf,IAAM,SAAS,CAAAA,QAAM,QAAQ,KAAKA,KAAI,IAAI,EAAE;AAInD,IAAM,OAAO;AAAA,EACX,SAAS;AAAA,EACT,SAAS;AAAA,EACT,QAAQ;AAAA,EACR,SAAS;AAAA,EACT,QAAQ;AAAA,EACR,SAAS;AAAA,EACT,UAAU;AAAA,EACV,SAAS;AAAA,EACT,UAAU;AAAA,EACV,SAAS;AACX;AACA,IAAM,OAAO,OAAK,KAAK,CAAC;AAUjB,IAAM,WAAW,QAAM,QAAQ,KAAK,IAAI,IAAI,IAAI;",
|
||||||
|
"names": ["es"]
|
||||||
|
}
|
||||||
6779
node_modules/.vite/deps/chunk-WDCEFGHP.js
generated
vendored
Normal file
6779
node_modules/.vite/deps/chunk-WDCEFGHP.js
generated
vendored
Normal file
File diff suppressed because it is too large
Load Diff
7
node_modules/.vite/deps/chunk-WDCEFGHP.js.map
generated
vendored
Normal file
7
node_modules/.vite/deps/chunk-WDCEFGHP.js.map
generated
vendored
Normal file
File diff suppressed because one or more lines are too long
54
node_modules/.vite/deps/chunk-WM2KMMIK.js
generated
vendored
Normal file
54
node_modules/.vite/deps/chunk-WM2KMMIK.js
generated
vendored
Normal file
@@ -0,0 +1,54 @@
|
|||||||
|
import {
|
||||||
|
settings
|
||||||
|
} from "./chunk-LEX3GG7N.js";
|
||||||
|
|
||||||
|
// node_modules/astro/dist/runtime/client/dev-toolbar/apps/utils/window.js
|
||||||
|
function createWindowElement(content, placement = settings.config.placement) {
|
||||||
|
const windowElement = document.createElement("astro-dev-toolbar-window");
|
||||||
|
windowElement.innerHTML = content;
|
||||||
|
windowElement.placement = placement;
|
||||||
|
return windowElement;
|
||||||
|
}
|
||||||
|
function closeOnOutsideClick(eventTarget, additionalCheck) {
|
||||||
|
function onPageClick(event) {
|
||||||
|
const target = event.target;
|
||||||
|
if (!target) return;
|
||||||
|
if (!target.closest) return;
|
||||||
|
if (target.closest("astro-dev-toolbar")) return;
|
||||||
|
if (additionalCheck && additionalCheck(target)) return;
|
||||||
|
eventTarget.dispatchEvent(
|
||||||
|
new CustomEvent("toggle-app", {
|
||||||
|
detail: {
|
||||||
|
state: false
|
||||||
|
}
|
||||||
|
})
|
||||||
|
);
|
||||||
|
}
|
||||||
|
eventTarget.addEventListener("app-toggled", (event) => {
|
||||||
|
if (event.detail.state === true) {
|
||||||
|
document.addEventListener("click", onPageClick, true);
|
||||||
|
} else {
|
||||||
|
document.removeEventListener("click", onPageClick, true);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
|
function synchronizePlacementOnUpdate(eventTarget, canvas) {
|
||||||
|
eventTarget.addEventListener("placement-updated", (evt) => {
|
||||||
|
if (!(evt instanceof CustomEvent)) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
const windowElement = canvas.querySelector("astro-dev-toolbar-window");
|
||||||
|
if (!windowElement) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
const event = evt;
|
||||||
|
windowElement.placement = event.detail.placement;
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
export {
|
||||||
|
createWindowElement,
|
||||||
|
closeOnOutsideClick,
|
||||||
|
synchronizePlacementOnUpdate
|
||||||
|
};
|
||||||
|
//# sourceMappingURL=chunk-WM2KMMIK.js.map
|
||||||
7
node_modules/.vite/deps/chunk-WM2KMMIK.js.map
generated
vendored
Normal file
7
node_modules/.vite/deps/chunk-WM2KMMIK.js.map
generated
vendored
Normal file
@@ -0,0 +1,7 @@
|
|||||||
|
{
|
||||||
|
"version": 3,
|
||||||
|
"sources": ["../../astro/dist/runtime/client/dev-toolbar/apps/utils/window.js"],
|
||||||
|
"sourcesContent": ["import { settings } from \"../../settings.js\";\nfunction createWindowElement(content, placement = settings.config.placement) {\n const windowElement = document.createElement(\"astro-dev-toolbar-window\");\n windowElement.innerHTML = content;\n windowElement.placement = placement;\n return windowElement;\n}\nfunction closeOnOutsideClick(eventTarget, additionalCheck) {\n function onPageClick(event) {\n const target = event.target;\n if (!target) return;\n if (!target.closest) return;\n if (target.closest(\"astro-dev-toolbar\")) return;\n if (additionalCheck && additionalCheck(target)) return;\n eventTarget.dispatchEvent(\n new CustomEvent(\"toggle-app\", {\n detail: {\n state: false\n }\n })\n );\n }\n eventTarget.addEventListener(\"app-toggled\", (event) => {\n if (event.detail.state === true) {\n document.addEventListener(\"click\", onPageClick, true);\n } else {\n document.removeEventListener(\"click\", onPageClick, true);\n }\n });\n}\nfunction synchronizePlacementOnUpdate(eventTarget, canvas) {\n eventTarget.addEventListener(\"placement-updated\", (evt) => {\n if (!(evt instanceof CustomEvent)) {\n return;\n }\n const windowElement = canvas.querySelector(\"astro-dev-toolbar-window\");\n if (!windowElement) {\n return;\n }\n const event = evt;\n windowElement.placement = event.detail.placement;\n });\n}\nexport {\n closeOnOutsideClick,\n createWindowElement,\n synchronizePlacementOnUpdate\n};\n"],
|
||||||
|
"mappings": ";;;;;AACA,SAAS,oBAAoB,SAAS,YAAY,SAAS,OAAO,WAAW;AAC3E,QAAM,gBAAgB,SAAS,cAAc,0BAA0B;AACvE,gBAAc,YAAY;AAC1B,gBAAc,YAAY;AAC1B,SAAO;AACT;AACA,SAAS,oBAAoB,aAAa,iBAAiB;AACzD,WAAS,YAAY,OAAO;AAC1B,UAAM,SAAS,MAAM;AACrB,QAAI,CAAC,OAAQ;AACb,QAAI,CAAC,OAAO,QAAS;AACrB,QAAI,OAAO,QAAQ,mBAAmB,EAAG;AACzC,QAAI,mBAAmB,gBAAgB,MAAM,EAAG;AAChD,gBAAY;AAAA,MACV,IAAI,YAAY,cAAc;AAAA,QAC5B,QAAQ;AAAA,UACN,OAAO;AAAA,QACT;AAAA,MACF,CAAC;AAAA,IACH;AAAA,EACF;AACA,cAAY,iBAAiB,eAAe,CAAC,UAAU;AACrD,QAAI,MAAM,OAAO,UAAU,MAAM;AAC/B,eAAS,iBAAiB,SAAS,aAAa,IAAI;AAAA,IACtD,OAAO;AACL,eAAS,oBAAoB,SAAS,aAAa,IAAI;AAAA,IACzD;AAAA,EACF,CAAC;AACH;AACA,SAAS,6BAA6B,aAAa,QAAQ;AACzD,cAAY,iBAAiB,qBAAqB,CAAC,QAAQ;AACzD,QAAI,EAAE,eAAe,cAAc;AACjC;AAAA,IACF;AACA,UAAM,gBAAgB,OAAO,cAAc,0BAA0B;AACrE,QAAI,CAAC,eAAe;AAClB;AAAA,IACF;AACA,UAAM,QAAQ;AACd,kBAAc,YAAY,MAAM,OAAO;AAAA,EACzC,CAAC;AACH;",
|
||||||
|
"names": []
|
||||||
|
}
|
||||||
3757
node_modules/.vite/deps/chunk-WTIA47ZU.js
generated
vendored
Normal file
3757
node_modules/.vite/deps/chunk-WTIA47ZU.js
generated
vendored
Normal file
File diff suppressed because one or more lines are too long
7
node_modules/.vite/deps/chunk-WTIA47ZU.js.map
generated
vendored
Normal file
7
node_modules/.vite/deps/chunk-WTIA47ZU.js.map
generated
vendored
Normal file
File diff suppressed because one or more lines are too long
48
node_modules/.vite/deps/chunk-ZUETELRC.js
generated
vendored
Normal file
48
node_modules/.vite/deps/chunk-ZUETELRC.js
generated
vendored
Normal file
File diff suppressed because one or more lines are too long
7
node_modules/.vite/deps/chunk-ZUETELRC.js.map
generated
vendored
Normal file
7
node_modules/.vite/deps/chunk-ZUETELRC.js.map
generated
vendored
Normal file
File diff suppressed because one or more lines are too long
213
node_modules/.vite/deps/settings-K4OHAGC2.js
generated
vendored
Normal file
213
node_modules/.vite/deps/settings-K4OHAGC2.js
generated
vendored
Normal file
@@ -0,0 +1,213 @@
|
|||||||
|
import {
|
||||||
|
closeOnOutsideClick,
|
||||||
|
createWindowElement,
|
||||||
|
synchronizePlacementOnUpdate
|
||||||
|
} from "./chunk-WM2KMMIK.js";
|
||||||
|
import {
|
||||||
|
isValidPlacement,
|
||||||
|
placements,
|
||||||
|
settings
|
||||||
|
} from "./chunk-LEX3GG7N.js";
|
||||||
|
import "./chunk-5WRI5ZAA.js";
|
||||||
|
|
||||||
|
// node_modules/astro/dist/runtime/client/dev-toolbar/apps/settings.js
|
||||||
|
var settingsRows = [
|
||||||
|
{
|
||||||
|
name: "Disable notifications",
|
||||||
|
description: "Hide notification badges in the toolbar.",
|
||||||
|
input: "checkbox",
|
||||||
|
settingKey: "disableAppNotification",
|
||||||
|
changeEvent: (evt) => {
|
||||||
|
if (evt.currentTarget instanceof HTMLInputElement) {
|
||||||
|
const devToolbar = document.querySelector("astro-dev-toolbar");
|
||||||
|
if (devToolbar) {
|
||||||
|
devToolbar.setNotificationVisible(!evt.currentTarget.checked);
|
||||||
|
}
|
||||||
|
settings.updateSetting("disableAppNotification", evt.currentTarget.checked);
|
||||||
|
const action = evt.currentTarget.checked ? "disabled" : "enabled";
|
||||||
|
settings.logger.verboseLog(`App notification badges ${action}`);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: "Verbose logging",
|
||||||
|
description: "Logs dev toolbar events in the browser console.",
|
||||||
|
input: "checkbox",
|
||||||
|
settingKey: "verbose",
|
||||||
|
changeEvent: (evt) => {
|
||||||
|
if (evt.currentTarget instanceof HTMLInputElement) {
|
||||||
|
settings.updateSetting("verbose", evt.currentTarget.checked);
|
||||||
|
const action = evt.currentTarget.checked ? "enabled" : "disabled";
|
||||||
|
settings.logger.verboseLog(`Verbose logging ${action}`);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: "Placement",
|
||||||
|
description: "Adjust the placement of the dev toolbar.",
|
||||||
|
input: "select",
|
||||||
|
settingKey: "placement",
|
||||||
|
changeEvent: (evt) => {
|
||||||
|
if (evt.currentTarget instanceof HTMLSelectElement) {
|
||||||
|
const placement = evt.currentTarget.value;
|
||||||
|
if (isValidPlacement(placement)) {
|
||||||
|
document.querySelector("astro-dev-toolbar")?.setToolbarPlacement(placement);
|
||||||
|
settings.updateSetting("placement", placement);
|
||||||
|
settings.logger.verboseLog(`Placement set to ${placement}`);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
];
|
||||||
|
var settings_default = {
|
||||||
|
id: "astro:settings",
|
||||||
|
name: "Settings",
|
||||||
|
icon: "gear",
|
||||||
|
init(canvas, eventTarget) {
|
||||||
|
createSettingsWindow();
|
||||||
|
document.addEventListener("astro:after-swap", createSettingsWindow);
|
||||||
|
closeOnOutsideClick(eventTarget);
|
||||||
|
synchronizePlacementOnUpdate(eventTarget, canvas);
|
||||||
|
function createSettingsWindow() {
|
||||||
|
const windowElement = createWindowElement(
|
||||||
|
`<style>
|
||||||
|
:host astro-dev-toolbar-window {
|
||||||
|
height: 480px;
|
||||||
|
overflow-y: auto;
|
||||||
|
color-scheme: dark;
|
||||||
|
|
||||||
|
--color-purple: rgba(224, 204, 250, 1);
|
||||||
|
}
|
||||||
|
header {
|
||||||
|
display: flex;
|
||||||
|
}
|
||||||
|
|
||||||
|
h2, h3 {
|
||||||
|
margin-top: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
.setting-row {
|
||||||
|
display: flex;
|
||||||
|
justify-content: space-between;
|
||||||
|
align-items: center;
|
||||||
|
}
|
||||||
|
|
||||||
|
h3 {
|
||||||
|
font-size: 16px;
|
||||||
|
font-weight: 400;
|
||||||
|
color: white;
|
||||||
|
margin-bottom: 4px;
|
||||||
|
}
|
||||||
|
|
||||||
|
label {
|
||||||
|
font-size: 14px;
|
||||||
|
line-height: 1.5rem;
|
||||||
|
}
|
||||||
|
|
||||||
|
h1 {
|
||||||
|
display: flex;
|
||||||
|
align-items: center;
|
||||||
|
gap: 8px;
|
||||||
|
font-weight: 600;
|
||||||
|
color: #fff;
|
||||||
|
margin: 0;
|
||||||
|
font-size: 22px;
|
||||||
|
}
|
||||||
|
|
||||||
|
astro-dev-toolbar-icon {
|
||||||
|
width: 1em;
|
||||||
|
height: 1em;
|
||||||
|
display: block;
|
||||||
|
}
|
||||||
|
|
||||||
|
code {
|
||||||
|
color: var(--color-purple);
|
||||||
|
border-color: #343841;
|
||||||
|
border-style: solid;
|
||||||
|
border-width: 1px;
|
||||||
|
border-radius: .4em;
|
||||||
|
background-color: #24262D;
|
||||||
|
padding: .3em;
|
||||||
|
}
|
||||||
|
|
||||||
|
label > section {
|
||||||
|
max-width: 67%;
|
||||||
|
}
|
||||||
|
label > section.full-width {
|
||||||
|
max-width: 100%;
|
||||||
|
}
|
||||||
|
p {
|
||||||
|
line-height: 1.5em;
|
||||||
|
}
|
||||||
|
a, a:visited {
|
||||||
|
color: var(--color-purple);
|
||||||
|
}
|
||||||
|
a:hover {
|
||||||
|
color: #f4ecfd;
|
||||||
|
}
|
||||||
|
</style>
|
||||||
|
<header>
|
||||||
|
<h1><astro-dev-toolbar-icon icon="gear"></astro-dev-toolbar-icon> Settings</h1>
|
||||||
|
</header>
|
||||||
|
|
||||||
|
<hr id="general"/>
|
||||||
|
|
||||||
|
<label class="setting-row">
|
||||||
|
<section class="full-width">
|
||||||
|
<h3>Hide toolbar</h3>
|
||||||
|
Run <code>astro preferences disable devToolbar</code> in your terminal to disable the toolbar. <a href="https://docs.astro.build/en/reference/cli-reference/#astro-preferences" target="_blank">Learn more</a>.
|
||||||
|
</section>
|
||||||
|
</label>
|
||||||
|
`
|
||||||
|
);
|
||||||
|
const general = windowElement.querySelector("#general");
|
||||||
|
for (const settingsRow of settingsRows) {
|
||||||
|
general.after(document.createElement("hr"));
|
||||||
|
general.after(getElementForSettingAsString(settingsRow));
|
||||||
|
}
|
||||||
|
canvas.append(windowElement);
|
||||||
|
function getElementForSettingAsString(setting) {
|
||||||
|
const label = document.createElement("label");
|
||||||
|
label.classList.add("setting-row");
|
||||||
|
const section = document.createElement("section");
|
||||||
|
section.innerHTML = `<h3>${setting.name}</h3>${setting.description}`;
|
||||||
|
label.append(section);
|
||||||
|
switch (setting.input) {
|
||||||
|
case "checkbox": {
|
||||||
|
const astroToggle = document.createElement("astro-dev-toolbar-toggle");
|
||||||
|
astroToggle.input.addEventListener("change", setting.changeEvent);
|
||||||
|
astroToggle.input.checked = settings.config[setting.settingKey];
|
||||||
|
label.append(astroToggle);
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
case "select": {
|
||||||
|
const astroSelect = document.createElement("astro-dev-toolbar-select");
|
||||||
|
placements.forEach((placement) => {
|
||||||
|
const option = document.createElement("option");
|
||||||
|
option.setAttribute("value", placement);
|
||||||
|
if (placement === settings.config[setting.settingKey]) {
|
||||||
|
option.selected = true;
|
||||||
|
}
|
||||||
|
option.textContent = `${placement.slice(0, 1).toUpperCase()}${placement.slice(
|
||||||
|
1
|
||||||
|
)}`.replace("-", " ");
|
||||||
|
astroSelect.append(option);
|
||||||
|
});
|
||||||
|
astroSelect.element.addEventListener("change", setting.changeEvent);
|
||||||
|
label.append(astroSelect);
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
case "number":
|
||||||
|
case "text":
|
||||||
|
default:
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
return label;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
};
|
||||||
|
export {
|
||||||
|
settings_default as default
|
||||||
|
};
|
||||||
|
//# sourceMappingURL=settings-K4OHAGC2.js.map
|
||||||
7
node_modules/.vite/deps/settings-K4OHAGC2.js.map
generated
vendored
Normal file
7
node_modules/.vite/deps/settings-K4OHAGC2.js.map
generated
vendored
Normal file
File diff suppressed because one or more lines are too long
525
node_modules/.vite/deps/toolbar-2H5PSQQU.js
generated
vendored
Normal file
525
node_modules/.vite/deps/toolbar-2H5PSQQU.js
generated
vendored
Normal file
@@ -0,0 +1,525 @@
|
|||||||
|
import {
|
||||||
|
serverHelpers
|
||||||
|
} from "./chunk-HNT3PLDI.js";
|
||||||
|
import {
|
||||||
|
getIconElement,
|
||||||
|
isDefinedIcon
|
||||||
|
} from "./chunk-ZUETELRC.js";
|
||||||
|
import {
|
||||||
|
settings
|
||||||
|
} from "./chunk-LEX3GG7N.js";
|
||||||
|
import "./chunk-5WRI5ZAA.js";
|
||||||
|
|
||||||
|
// node_modules/astro/dist/runtime/client/dev-toolbar/toolbar.js
|
||||||
|
var WS_EVENT_NAME = "astro-dev-toolbar";
|
||||||
|
var HOVER_DELAY = 2 * 1e3;
|
||||||
|
var DEVBAR_HITBOX_ABOVE = 42;
|
||||||
|
var AstroDevToolbar = class extends HTMLElement {
|
||||||
|
shadowRoot;
|
||||||
|
delayedHideTimeout;
|
||||||
|
devToolbarContainer;
|
||||||
|
apps = [];
|
||||||
|
hasBeenInitialized = false;
|
||||||
|
// TODO: This should be dynamic based on the screen size or at least configurable, erika - 2023-11-29
|
||||||
|
customAppsToShow = 3;
|
||||||
|
constructor() {
|
||||||
|
super();
|
||||||
|
this.shadowRoot = this.attachShadow({ mode: "open" });
|
||||||
|
}
|
||||||
|
/**
|
||||||
|
* All one-time DOM setup runs through here. Only ever call this once,
|
||||||
|
* in connectedCallback(), and protect it from being called again.
|
||||||
|
*/
|
||||||
|
init() {
|
||||||
|
this.shadowRoot.innerHTML = `
|
||||||
|
<style>
|
||||||
|
:host {
|
||||||
|
/* Important! Reset all inherited styles to initial */
|
||||||
|
all: initial;
|
||||||
|
z-index: 999999;
|
||||||
|
view-transition-name: astro-dev-toolbar;
|
||||||
|
display: contents;
|
||||||
|
|
||||||
|
/* Hide the dev toolbar on window.print() (CTRL + P) */
|
||||||
|
@media print {
|
||||||
|
display: none;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
::view-transition-old(astro-dev-toolbar),
|
||||||
|
::view-transition-new(astro-dev-toolbar) {
|
||||||
|
animation: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
#dev-toolbar-root {
|
||||||
|
position: fixed;
|
||||||
|
bottom: 0px;
|
||||||
|
z-index: 2000000010;
|
||||||
|
display: flex;
|
||||||
|
flex-direction: column;
|
||||||
|
align-items: center;
|
||||||
|
transition: bottom 0.35s cubic-bezier(0.485, -0.050, 0.285, 1.505);
|
||||||
|
pointer-events: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
#dev-toolbar-root[data-hidden] {
|
||||||
|
bottom: -40px;
|
||||||
|
}
|
||||||
|
|
||||||
|
#dev-toolbar-root[data-hidden] #dev-bar .item {
|
||||||
|
opacity: 0.2;
|
||||||
|
}
|
||||||
|
|
||||||
|
#dev-toolbar-root[data-placement="bottom-left"] {
|
||||||
|
left: 16px;
|
||||||
|
}
|
||||||
|
#dev-toolbar-root[data-placement="bottom-center"] {
|
||||||
|
left: 50%;
|
||||||
|
transform: translateX(-50%);
|
||||||
|
}
|
||||||
|
#dev-toolbar-root[data-placement="bottom-right"] {
|
||||||
|
right: 16px;
|
||||||
|
}
|
||||||
|
|
||||||
|
#dev-bar-hitbox-above,
|
||||||
|
#dev-bar-hitbox-below {
|
||||||
|
width: 100%;
|
||||||
|
pointer-events: auto;
|
||||||
|
}
|
||||||
|
#dev-bar-hitbox-above {
|
||||||
|
height: ${DEVBAR_HITBOX_ABOVE}px;
|
||||||
|
}
|
||||||
|
#dev-bar-hitbox-below {
|
||||||
|
height: 16px;
|
||||||
|
}
|
||||||
|
#dev-bar {
|
||||||
|
height: 40px;
|
||||||
|
overflow: hidden;
|
||||||
|
pointer-events: auto;
|
||||||
|
background: linear-gradient(180deg, #13151A 0%, rgba(19, 21, 26, 0.88) 100%);
|
||||||
|
border: 1px solid #343841;
|
||||||
|
border-radius: 9999px;
|
||||||
|
box-shadow: 0px 0px 0px 0px rgba(19, 21, 26, 0.30), 0px 1px 2px 0px rgba(19, 21, 26, 0.29), 0px 4px 4px 0px rgba(19, 21, 26, 0.26), 0px 10px 6px 0px rgba(19, 21, 26, 0.15), 0px 17px 7px 0px rgba(19, 21, 26, 0.04), 0px 26px 7px 0px rgba(19, 21, 26, 0.01);
|
||||||
|
}
|
||||||
|
|
||||||
|
@media (forced-colors: active) {
|
||||||
|
#dev-bar {
|
||||||
|
background: white;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
#dev-bar .item {
|
||||||
|
display: flex;
|
||||||
|
justify-content: center;
|
||||||
|
align-items: center;
|
||||||
|
width: 44px;
|
||||||
|
border: 0;
|
||||||
|
background: transparent;
|
||||||
|
color: white;
|
||||||
|
font-family: system-ui, sans-serif;
|
||||||
|
font-size: 1rem;
|
||||||
|
line-height: 1.2;
|
||||||
|
white-space: nowrap;
|
||||||
|
text-decoration: none;
|
||||||
|
padding: 0;
|
||||||
|
margin: 0;
|
||||||
|
overflow: hidden;
|
||||||
|
transition: opacity 0.2s ease-out 0s;
|
||||||
|
}
|
||||||
|
|
||||||
|
#dev-bar #bar-container .item:hover, #dev-bar #bar-container .item:focus-visible {
|
||||||
|
background: #FFFFFF20;
|
||||||
|
cursor: pointer;
|
||||||
|
outline-offset: -3px;
|
||||||
|
}
|
||||||
|
|
||||||
|
#dev-bar #bar-container .item[data-app-error]:hover, #dev-bar #bar-container .item[data-app-error]:focus-visible {
|
||||||
|
cursor: not-allowed;
|
||||||
|
background: #ff252520;
|
||||||
|
}
|
||||||
|
|
||||||
|
#dev-bar .item:first-of-type {
|
||||||
|
border-top-left-radius: 9999px;
|
||||||
|
border-bottom-left-radius: 9999px;
|
||||||
|
width: 42px;
|
||||||
|
padding-left: 4px;
|
||||||
|
}
|
||||||
|
|
||||||
|
#dev-bar .item:last-of-type {
|
||||||
|
border-top-right-radius: 9999px;
|
||||||
|
border-bottom-right-radius: 9999px;
|
||||||
|
width: 42px;
|
||||||
|
padding-right: 4px;
|
||||||
|
}
|
||||||
|
#dev-bar #bar-container .item.active {
|
||||||
|
background: rgba(71, 78, 94, 1);
|
||||||
|
}
|
||||||
|
|
||||||
|
#dev-bar .item-tooltip {
|
||||||
|
background: linear-gradient(0deg, #13151A, #13151A), linear-gradient(0deg, #343841, #343841);
|
||||||
|
border: 1px solid rgba(52, 56, 65, 1);
|
||||||
|
border-radius: 4px;
|
||||||
|
padding: 4px 8px;
|
||||||
|
position: absolute;
|
||||||
|
top: ${4 - DEVBAR_HITBOX_ABOVE}px;
|
||||||
|
font-size: 14px;
|
||||||
|
opacity: 0;
|
||||||
|
transition: opacity 0.2s ease-in-out 0s;
|
||||||
|
pointer-events: none;
|
||||||
|
user-select: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
#dev-bar .item-tooltip::after{
|
||||||
|
content: '';
|
||||||
|
position: absolute;
|
||||||
|
left: calc(50% - 5px);
|
||||||
|
bottom: -6px;
|
||||||
|
border-left: 5px solid transparent;
|
||||||
|
border-right: 5px solid transparent;
|
||||||
|
border-top: 5px solid #343841;
|
||||||
|
}
|
||||||
|
|
||||||
|
#dev-bar .item[data-app-error] .icon {
|
||||||
|
opacity: 0.35;
|
||||||
|
}
|
||||||
|
|
||||||
|
#dev-bar .item:hover .item-tooltip, #dev-bar .item:not(.active):focus-visible .item-tooltip {
|
||||||
|
transition: opacity 0.2s ease-in-out 200ms;
|
||||||
|
opacity: 1;
|
||||||
|
}
|
||||||
|
|
||||||
|
@media (forced-colors: active) {
|
||||||
|
#dev-bar .item:hover .item-tooltip,
|
||||||
|
#dev-bar .item:not(.active):focus-visible .item-tooltip {
|
||||||
|
background: white;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
#dev-bar #bar-container .item:hover .notification rect, #dev-bar #bar-container .item:hover .notification path {
|
||||||
|
stroke: #38393D;
|
||||||
|
--fill: var(--fill-hover);
|
||||||
|
}
|
||||||
|
|
||||||
|
#dev-bar #bar-container .item.active .notification rect, #dev-bar #bar-container .item.active .notification path {
|
||||||
|
stroke: #454C5C;
|
||||||
|
--fill: var(--fill-hover);
|
||||||
|
}
|
||||||
|
|
||||||
|
#dev-bar .item .icon {
|
||||||
|
position: relative;
|
||||||
|
max-width: 20px;
|
||||||
|
max-height: 20px;
|
||||||
|
user-select: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
#dev-bar .item .icon>svg {
|
||||||
|
width: 20px;
|
||||||
|
height: 20px;
|
||||||
|
display: block;
|
||||||
|
margin: auto;
|
||||||
|
}
|
||||||
|
|
||||||
|
@media (forced-colors: active) {
|
||||||
|
#dev-bar .item svg path[fill="#fff"] {
|
||||||
|
fill: black;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
#dev-bar .item .notification {
|
||||||
|
display: none;
|
||||||
|
position: absolute;
|
||||||
|
top: -4px;
|
||||||
|
right: -6px;
|
||||||
|
width: 10px;
|
||||||
|
height: 10px;
|
||||||
|
}
|
||||||
|
|
||||||
|
#dev-bar .item .notification svg {
|
||||||
|
display: block;
|
||||||
|
}
|
||||||
|
|
||||||
|
#dev-toolbar-root:not([data-no-notification]) #dev-bar .item .notification[data-active] {
|
||||||
|
display: block;
|
||||||
|
}
|
||||||
|
|
||||||
|
#dev-bar #bar-container {
|
||||||
|
height: 100%;
|
||||||
|
display: flex;
|
||||||
|
}
|
||||||
|
|
||||||
|
#dev-bar .separator {
|
||||||
|
background: rgba(52, 56, 65, 1);
|
||||||
|
width: 1px;
|
||||||
|
}
|
||||||
|
</style>
|
||||||
|
<div id="dev-toolbar-root" data-hidden ${settings.config.disableAppNotification ? "data-no-notification" : ""} data-placement="${settings.config.placement}">
|
||||||
|
<div id="dev-bar-hitbox-above"></div>
|
||||||
|
<div id="dev-bar">
|
||||||
|
<div id="bar-container">
|
||||||
|
${this.apps.filter((app) => app.builtIn && !["astro:settings", "astro:more"].includes(app.id)).map((app) => this.getAppTemplate(app)).join("")}
|
||||||
|
${this.apps.filter((app) => !app.builtIn).length > 0 ? `<div class="separator"></div>${this.apps.filter((app) => !app.builtIn).slice(0, this.customAppsToShow).map((app) => this.getAppTemplate(app)).join("")}` : ""}
|
||||||
|
${this.apps.filter((app) => !app.builtIn).length > this.customAppsToShow ? this.getAppTemplate(
|
||||||
|
this.apps.find((app) => app.builtIn && app.id === "astro:more")
|
||||||
|
) : ""}
|
||||||
|
<div class="separator"></div>
|
||||||
|
${this.getAppTemplate(
|
||||||
|
this.apps.find((app) => app.builtIn && app.id === "astro:settings")
|
||||||
|
)}
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div id="dev-bar-hitbox-below"></div>
|
||||||
|
</div>`;
|
||||||
|
this.devToolbarContainer = this.shadowRoot.querySelector("#dev-toolbar-root");
|
||||||
|
this.attachEvents();
|
||||||
|
this.apps.forEach(async (app) => {
|
||||||
|
settings.logger.verboseLog(`Creating app canvas for ${app.id}`);
|
||||||
|
const appCanvas = document.createElement("astro-dev-toolbar-app-canvas");
|
||||||
|
appCanvas.dataset.appId = app.id;
|
||||||
|
this.shadowRoot?.append(appCanvas);
|
||||||
|
});
|
||||||
|
if ("requestIdleCallback" in window) {
|
||||||
|
window.requestIdleCallback(
|
||||||
|
async () => {
|
||||||
|
this.apps.map((app) => this.initApp(app));
|
||||||
|
},
|
||||||
|
{ timeout: 300 }
|
||||||
|
);
|
||||||
|
} else {
|
||||||
|
setTimeout(async () => {
|
||||||
|
this.apps.map((app) => this.initApp(app));
|
||||||
|
}, 300);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
// This is called whenever the component is connected to the DOM.
|
||||||
|
// This happens on first page load, and on each page change when
|
||||||
|
// view transitions are used.
|
||||||
|
connectedCallback() {
|
||||||
|
if (!this.hasBeenInitialized) {
|
||||||
|
this.init();
|
||||||
|
this.hasBeenInitialized = true;
|
||||||
|
}
|
||||||
|
this.apps.forEach(async (app) => {
|
||||||
|
await this.setAppStatus(app, app.active);
|
||||||
|
});
|
||||||
|
}
|
||||||
|
attachEvents() {
|
||||||
|
const items = this.shadowRoot.querySelectorAll(".item");
|
||||||
|
items.forEach((item) => {
|
||||||
|
item.addEventListener("click", async (event) => {
|
||||||
|
const target = event.currentTarget;
|
||||||
|
if (!target || !(target instanceof HTMLElement)) return;
|
||||||
|
const id = target.dataset.appId;
|
||||||
|
if (!id) return;
|
||||||
|
const app = this.getAppById(id);
|
||||||
|
if (!app) return;
|
||||||
|
event.stopPropagation();
|
||||||
|
await this.toggleAppStatus(app);
|
||||||
|
});
|
||||||
|
});
|
||||||
|
["mouseenter", "focusin"].forEach((event) => {
|
||||||
|
this.devToolbarContainer.addEventListener(event, () => {
|
||||||
|
this.clearDelayedHide();
|
||||||
|
if (this.isHidden()) {
|
||||||
|
this.setToolbarVisible(true);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
});
|
||||||
|
["mouseleave", "focusout"].forEach((event) => {
|
||||||
|
this.devToolbarContainer.addEventListener(event, () => {
|
||||||
|
this.clearDelayedHide();
|
||||||
|
if (this.getActiveApp() || this.isHidden()) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
this.triggerDelayedHide();
|
||||||
|
});
|
||||||
|
});
|
||||||
|
document.addEventListener("keyup", (event) => {
|
||||||
|
if (event.key !== "Escape") return;
|
||||||
|
if (this.isHidden()) return;
|
||||||
|
const activeApp = this.getActiveApp();
|
||||||
|
if (activeApp) {
|
||||||
|
this.toggleAppStatus(activeApp);
|
||||||
|
} else {
|
||||||
|
this.setToolbarVisible(false);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
|
async initApp(app) {
|
||||||
|
const shadowRoot = this.getAppCanvasById(app.id).shadowRoot;
|
||||||
|
app.status = "loading";
|
||||||
|
try {
|
||||||
|
settings.logger.verboseLog(`Initializing app ${app.id}`);
|
||||||
|
await app.init?.(shadowRoot, app.eventTarget, serverHelpers);
|
||||||
|
app.status = "ready";
|
||||||
|
if (import.meta.hot) {
|
||||||
|
import.meta.hot.send(`${WS_EVENT_NAME}:${app.id}:initialized`);
|
||||||
|
}
|
||||||
|
} catch (e) {
|
||||||
|
console.error(`Failed to init app ${app.id}, error: ${e}`);
|
||||||
|
app.status = "error";
|
||||||
|
if (import.meta.hot) {
|
||||||
|
import.meta.hot.send("astro:devtoolbar:error:init", {
|
||||||
|
app,
|
||||||
|
error: e instanceof Error ? e.stack : e
|
||||||
|
});
|
||||||
|
}
|
||||||
|
const appButton = this.getAppButtonById(app.id);
|
||||||
|
const appTooltip = appButton?.querySelector(".item-tooltip");
|
||||||
|
if (appButton && appTooltip) {
|
||||||
|
appButton.toggleAttribute("data-app-error", true);
|
||||||
|
appTooltip.innerText = `Error initializing ${app.name}`;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
getAppTemplate(app) {
|
||||||
|
return `<button class="item" data-app-id="${app.id}">
|
||||||
|
<div class="icon">${app.icon ? getAppIcon(app.icon) : "?"}<div class="notification"></div></div>
|
||||||
|
<span class="item-tooltip">${app.name}</span>
|
||||||
|
</button>`;
|
||||||
|
}
|
||||||
|
getAppById(id) {
|
||||||
|
return this.apps.find((app) => app.id === id);
|
||||||
|
}
|
||||||
|
getAppCanvasById(id) {
|
||||||
|
return this.shadowRoot.querySelector(
|
||||||
|
`astro-dev-toolbar-app-canvas[data-app-id="${id}"]`
|
||||||
|
);
|
||||||
|
}
|
||||||
|
getAppButtonById(id) {
|
||||||
|
return this.shadowRoot.querySelector(`[data-app-id="${id}"]`);
|
||||||
|
}
|
||||||
|
async toggleAppStatus(app) {
|
||||||
|
const activeApp = this.getActiveApp();
|
||||||
|
if (activeApp) {
|
||||||
|
const closeApp = await this.setAppStatus(activeApp, false);
|
||||||
|
if (!closeApp) return;
|
||||||
|
}
|
||||||
|
if (app.status !== "ready") return;
|
||||||
|
if (app !== activeApp) {
|
||||||
|
await this.setAppStatus(app, true);
|
||||||
|
if (import.meta.hot && app.id !== "astro:more") {
|
||||||
|
import.meta.hot.send("astro:devtoolbar:app:toggled", {
|
||||||
|
app
|
||||||
|
});
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
async setAppStatus(app, newStatus) {
|
||||||
|
const appCanvas = this.getAppCanvasById(app.id);
|
||||||
|
if (!appCanvas) return false;
|
||||||
|
if (app.active && !newStatus && app.beforeTogglingOff) {
|
||||||
|
const shouldToggleOff = await app.beforeTogglingOff(appCanvas.shadowRoot);
|
||||||
|
if (!shouldToggleOff) return false;
|
||||||
|
}
|
||||||
|
app.active = newStatus ?? !app.active;
|
||||||
|
const mainBarButton = this.getAppButtonById(app.id);
|
||||||
|
const moreBarButton = this.getAppCanvasById("astro:more")?.shadowRoot?.querySelector(
|
||||||
|
`[data-app-id="${app.id}"]`
|
||||||
|
);
|
||||||
|
if (mainBarButton) {
|
||||||
|
mainBarButton.classList.toggle("active", app.active);
|
||||||
|
}
|
||||||
|
if (moreBarButton) {
|
||||||
|
moreBarButton.classList.toggle("active", app.active);
|
||||||
|
}
|
||||||
|
if (app.active) {
|
||||||
|
appCanvas.style.display = "block";
|
||||||
|
appCanvas.setAttribute("data-active", "");
|
||||||
|
} else {
|
||||||
|
appCanvas.style.display = "none";
|
||||||
|
appCanvas.removeAttribute("data-active");
|
||||||
|
}
|
||||||
|
app.eventTarget.dispatchEvent(
|
||||||
|
new CustomEvent("app-toggled", {
|
||||||
|
detail: {
|
||||||
|
state: app.active,
|
||||||
|
app
|
||||||
|
}
|
||||||
|
})
|
||||||
|
);
|
||||||
|
import.meta.hot?.send(`${WS_EVENT_NAME}:${app.id}:toggled`, { state: app.active });
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
isHidden() {
|
||||||
|
return this.devToolbarContainer?.hasAttribute("data-hidden") ?? true;
|
||||||
|
}
|
||||||
|
getActiveApp() {
|
||||||
|
return this.apps.find((app) => app.active);
|
||||||
|
}
|
||||||
|
clearDelayedHide() {
|
||||||
|
window.clearTimeout(this.delayedHideTimeout);
|
||||||
|
this.delayedHideTimeout = void 0;
|
||||||
|
}
|
||||||
|
triggerDelayedHide() {
|
||||||
|
this.clearDelayedHide();
|
||||||
|
this.delayedHideTimeout = window.setTimeout(() => {
|
||||||
|
this.setToolbarVisible(false);
|
||||||
|
this.delayedHideTimeout = void 0;
|
||||||
|
}, HOVER_DELAY);
|
||||||
|
}
|
||||||
|
setToolbarVisible(newStatus) {
|
||||||
|
const barContainer = this.shadowRoot.querySelector("#bar-container");
|
||||||
|
const devBar = this.shadowRoot.querySelector("#dev-bar");
|
||||||
|
const devBarHitboxAbove = this.shadowRoot.querySelector("#dev-bar-hitbox-above");
|
||||||
|
if (newStatus === true) {
|
||||||
|
this.devToolbarContainer?.removeAttribute("data-hidden");
|
||||||
|
barContainer?.removeAttribute("inert");
|
||||||
|
devBar?.removeAttribute("tabindex");
|
||||||
|
if (devBarHitboxAbove) devBarHitboxAbove.style.height = "0";
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
if (newStatus === false) {
|
||||||
|
this.devToolbarContainer?.setAttribute("data-hidden", "");
|
||||||
|
barContainer?.setAttribute("inert", "");
|
||||||
|
devBar?.setAttribute("tabindex", "0");
|
||||||
|
if (devBarHitboxAbove) devBarHitboxAbove.style.height = `${DEVBAR_HITBOX_ABOVE}px`;
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
setNotificationVisible(newStatus) {
|
||||||
|
this.devToolbarContainer?.toggleAttribute("data-no-notification", !newStatus);
|
||||||
|
const moreCanvas = this.getAppCanvasById("astro:more");
|
||||||
|
moreCanvas?.shadowRoot?.querySelector("#dropdown")?.toggleAttribute("data-no-notification", !newStatus);
|
||||||
|
}
|
||||||
|
setToolbarPlacement(newPlacement) {
|
||||||
|
this.devToolbarContainer?.setAttribute("data-placement", newPlacement);
|
||||||
|
this.apps.forEach((app) => {
|
||||||
|
app.eventTarget.dispatchEvent(
|
||||||
|
new CustomEvent("placement-updated", {
|
||||||
|
detail: {
|
||||||
|
placement: newPlacement
|
||||||
|
}
|
||||||
|
})
|
||||||
|
);
|
||||||
|
});
|
||||||
|
}
|
||||||
|
};
|
||||||
|
var DevToolbarCanvas = class extends HTMLElement {
|
||||||
|
shadowRoot;
|
||||||
|
constructor() {
|
||||||
|
super();
|
||||||
|
this.shadowRoot = this.attachShadow({ mode: "open" });
|
||||||
|
}
|
||||||
|
connectedCallback() {
|
||||||
|
this.shadowRoot.innerHTML = `
|
||||||
|
<style>
|
||||||
|
:host {
|
||||||
|
position: absolute;
|
||||||
|
top: 0;
|
||||||
|
left: 0;
|
||||||
|
}
|
||||||
|
</style>`;
|
||||||
|
}
|
||||||
|
};
|
||||||
|
function getAppIcon(icon) {
|
||||||
|
if (isDefinedIcon(icon)) {
|
||||||
|
return getIconElement(icon).outerHTML;
|
||||||
|
}
|
||||||
|
return icon;
|
||||||
|
}
|
||||||
|
export {
|
||||||
|
AstroDevToolbar,
|
||||||
|
DevToolbarCanvas,
|
||||||
|
getAppIcon
|
||||||
|
};
|
||||||
|
//# sourceMappingURL=toolbar-2H5PSQQU.js.map
|
||||||
7
node_modules/.vite/deps/toolbar-2H5PSQQU.js.map
generated
vendored
Normal file
7
node_modules/.vite/deps/toolbar-2H5PSQQU.js.map
generated
vendored
Normal file
File diff suppressed because one or more lines are too long
1020
node_modules/.vite/deps/ui-library-EVFCBMCE.js
generated
vendored
Normal file
1020
node_modules/.vite/deps/ui-library-EVFCBMCE.js
generated
vendored
Normal file
File diff suppressed because it is too large
Load Diff
7
node_modules/.vite/deps/ui-library-EVFCBMCE.js.map
generated
vendored
Normal file
7
node_modules/.vite/deps/ui-library-EVFCBMCE.js.map
generated
vendored
Normal file
File diff suppressed because one or more lines are too long
147
node_modules/.vite/deps/xray-XH6VIXDC.js
generated
vendored
Normal file
147
node_modules/.vite/deps/xray-XH6VIXDC.js
generated
vendored
Normal file
@@ -0,0 +1,147 @@
|
|||||||
|
import {
|
||||||
|
attachTooltipToHighlight,
|
||||||
|
createHighlight,
|
||||||
|
getElementsPositionInDocument,
|
||||||
|
positionHighlight
|
||||||
|
} from "./chunk-LEAOZWS7.js";
|
||||||
|
import {
|
||||||
|
escape
|
||||||
|
} from "./chunk-PXGSXSC7.js";
|
||||||
|
import {
|
||||||
|
closeOnOutsideClick,
|
||||||
|
createWindowElement,
|
||||||
|
synchronizePlacementOnUpdate
|
||||||
|
} from "./chunk-WM2KMMIK.js";
|
||||||
|
import "./chunk-LEX3GG7N.js";
|
||||||
|
import "./chunk-5WRI5ZAA.js";
|
||||||
|
|
||||||
|
// node_modules/astro/dist/runtime/client/dev-toolbar/apps/xray.js
|
||||||
|
var icon = '<svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" aria-hidden="true"><path fill="#fff" d="M7.9 1.5v-.4a1.1 1.1 0 0 1 2.2 0v.4a1.1 1.1 0 1 1-2.2 0Zm-6.4 8.6a1.1 1.1 0 1 0 0-2.2h-.4a1.1 1.1 0 0 0 0 2.2h.4ZM12 3.7a1.1 1.1 0 0 0 1.4-.7l.4-1.1a1.1 1.1 0 0 0-2.1-.8l-.4 1.2a1.1 1.1 0 0 0 .7 1.4Zm-9.7 7.6-1.2.4a1.1 1.1 0 1 0 .8 2.1l1-.4a1.1 1.1 0 1 0-.6-2ZM20.8 17a1.9 1.9 0 0 1 0 2.6l-1.2 1.2a1.9 1.9 0 0 1-2.6 0l-4.3-4.2-1.6 3.6a1.9 1.9 0 0 1-1.7 1.2A1.9 1.9 0 0 1 7.5 20L2.7 5a1.9 1.9 0 0 1 2.4-2.4l15 5a1.9 1.9 0 0 1 .2 3.4l-3.7 1.6 4.2 4.3ZM19 18.3 14.6 14a1.9 1.9 0 0 1 .6-3l3.2-1.5L5.1 5.1l4.3 13.3 1.5-3.2a1.9 1.9 0 0 1 3-.6l4.4 4.4.7-.7Z"/></svg>';
|
||||||
|
var xray_default = {
|
||||||
|
id: "astro:xray",
|
||||||
|
name: "Inspect",
|
||||||
|
icon,
|
||||||
|
init(canvas, eventTarget) {
|
||||||
|
let islandsOverlays = [];
|
||||||
|
addIslandsOverlay();
|
||||||
|
document.addEventListener("astro:after-swap", addIslandsOverlay);
|
||||||
|
document.addEventListener("astro:page-load", refreshIslandsOverlayPositions);
|
||||||
|
closeOnOutsideClick(eventTarget);
|
||||||
|
synchronizePlacementOnUpdate(eventTarget, canvas);
|
||||||
|
function addIslandsOverlay() {
|
||||||
|
islandsOverlays.forEach(({ highlightElement }) => {
|
||||||
|
highlightElement.remove();
|
||||||
|
});
|
||||||
|
islandsOverlays = [];
|
||||||
|
const islands = document.querySelectorAll("astro-island");
|
||||||
|
if (islands.length === 0) {
|
||||||
|
const window2 = createWindowElement(
|
||||||
|
`<style>
|
||||||
|
header {
|
||||||
|
display: flex;
|
||||||
|
}
|
||||||
|
|
||||||
|
h1 {
|
||||||
|
display: flex;
|
||||||
|
align-items: center;
|
||||||
|
gap: 8px;
|
||||||
|
font-weight: 600;
|
||||||
|
color: #fff;
|
||||||
|
margin: 0;
|
||||||
|
font-size: 22px;
|
||||||
|
}
|
||||||
|
|
||||||
|
astro-dev-toolbar-icon {
|
||||||
|
width: 1em;
|
||||||
|
height: 1em;
|
||||||
|
padding: 8px;
|
||||||
|
display: block;
|
||||||
|
background: #5f9ea0;
|
||||||
|
border-radius: 9999px;
|
||||||
|
}
|
||||||
|
</style>
|
||||||
|
<header>
|
||||||
|
<h1><astro-dev-toolbar-icon icon="lightbulb"></astro-dev-toolbar-icon>No islands detected.</h1>
|
||||||
|
</header>
|
||||||
|
<p>
|
||||||
|
It looks like there are no interactive component islands on this page. Did you forget to add a client directive to your interactive UI component?
|
||||||
|
</p>
|
||||||
|
`
|
||||||
|
);
|
||||||
|
canvas.append(window2);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
islands.forEach((island) => {
|
||||||
|
const computedStyle = window.getComputedStyle(island);
|
||||||
|
const islandElement = island.children[0] || island;
|
||||||
|
if (islandElement.offsetParent === null || computedStyle.display === "none") {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
const rect = islandElement.getBoundingClientRect();
|
||||||
|
const highlight = createHighlight(rect);
|
||||||
|
const tooltip = buildIslandTooltip(island);
|
||||||
|
const { isFixed } = getElementsPositionInDocument(islandElement);
|
||||||
|
if (isFixed) {
|
||||||
|
tooltip.style.position = highlight.style.position = "fixed";
|
||||||
|
}
|
||||||
|
attachTooltipToHighlight(highlight, tooltip, islandElement);
|
||||||
|
canvas.append(highlight);
|
||||||
|
islandsOverlays.push({ highlightElement: highlight, island: islandElement });
|
||||||
|
});
|
||||||
|
["scroll", "resize"].forEach((event) => {
|
||||||
|
window.addEventListener(event, refreshIslandsOverlayPositions);
|
||||||
|
});
|
||||||
|
}
|
||||||
|
function refreshIslandsOverlayPositions() {
|
||||||
|
islandsOverlays.forEach(({ highlightElement, island: islandElement }) => {
|
||||||
|
const rect = islandElement.getBoundingClientRect();
|
||||||
|
positionHighlight(highlightElement, rect);
|
||||||
|
});
|
||||||
|
}
|
||||||
|
function buildIslandTooltip(island) {
|
||||||
|
const tooltip = document.createElement("astro-dev-toolbar-tooltip");
|
||||||
|
tooltip.sections = [];
|
||||||
|
const islandProps = island.getAttribute("props") ? JSON.parse(island.getAttribute("props")) : {};
|
||||||
|
const islandClientDirective = island.getAttribute("client");
|
||||||
|
if (islandClientDirective) {
|
||||||
|
tooltip.sections.push({
|
||||||
|
title: "Client directive",
|
||||||
|
inlineTitle: `<code>client:${islandClientDirective}</code>`
|
||||||
|
});
|
||||||
|
}
|
||||||
|
const islandPropsEntries = Object.entries(islandProps).filter(
|
||||||
|
(prop) => !prop[0].startsWith("data-astro-cid-")
|
||||||
|
);
|
||||||
|
if (islandPropsEntries.length > 0) {
|
||||||
|
const stringifiedProps = JSON.stringify(
|
||||||
|
Object.fromEntries(islandPropsEntries.map((prop) => [prop[0], prop[1][1]])),
|
||||||
|
void 0,
|
||||||
|
2
|
||||||
|
);
|
||||||
|
tooltip.sections.push({
|
||||||
|
title: "Props",
|
||||||
|
content: `<pre><code>${escape(stringifiedProps)}</code></pre>`
|
||||||
|
});
|
||||||
|
}
|
||||||
|
const islandComponentPath = island.getAttribute("component-url");
|
||||||
|
if (islandComponentPath) {
|
||||||
|
tooltip.sections.push({
|
||||||
|
content: islandComponentPath,
|
||||||
|
clickDescription: "Click to go to file",
|
||||||
|
async clickAction() {
|
||||||
|
await fetch(
|
||||||
|
"/__open-in-editor?file=" + encodeURIComponent(
|
||||||
|
window.__astro_dev_toolbar__.root + islandComponentPath.slice(1)
|
||||||
|
)
|
||||||
|
);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
|
return tooltip;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
};
|
||||||
|
export {
|
||||||
|
xray_default as default
|
||||||
|
};
|
||||||
|
//# sourceMappingURL=xray-XH6VIXDC.js.map
|
||||||
7
node_modules/.vite/deps/xray-XH6VIXDC.js.map
generated
vendored
Normal file
7
node_modules/.vite/deps/xray-XH6VIXDC.js.map
generated
vendored
Normal file
File diff suppressed because one or more lines are too long
@@ -1,7 +1,6 @@
|
|||||||
---
|
---
|
||||||
import Header from '../components/Header.astro';
|
import Header from '../components/Header.astro';
|
||||||
import Footer from '../components/Footer.astro';
|
import Footer from '../components/Footer.astro';
|
||||||
import CookieBanner from '../components/consent/CookieBanner.astro';
|
|
||||||
import '../styles/global.css';
|
import '../styles/global.css';
|
||||||
|
|
||||||
interface Props {
|
interface Props {
|
||||||
@@ -27,6 +26,5 @@ const { title, description = "บริษัท มอร์มินิมอ
|
|||||||
<slot />
|
<slot />
|
||||||
</main>
|
</main>
|
||||||
<Footer />
|
<Footer />
|
||||||
<CookieBanner />
|
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
|||||||
Reference in New Issue
Block a user