/**
 * ============================================================================
 * VAYMORA - Official Adobe Illustrator Brand Logo Generator Script (ExtendScript)
 * ============================================================================
 * 
 * Startup: VAYMORA
 * Industry: Next-Gen Software, Cloud & AI Engineering Services
 * 
 * HOW TO RUN IN ADOBE ILLUSTRATOR:
 * 1. Open Adobe Illustrator
 * 2. Go to: File -> Scripts -> Other Script... (or Ctrl+F12 / Cmd+F12)
 * 3. Select this file: "assets/images/vaymora-illustrator-build.jsx"
 * 4. Illustrator will automatically:
 *    - Generate all vector path items with precision beziers
 *    - Configure brand gradient swatches (Indigo, Violet, Cyan)
 *    - Create structured design layers
 *    - Set up dark & light artboards
 *    - Save the official "vaymora-logo.ai" native master file
 * ============================================================================
 */

(function () {
    #target illustrator

    // 1. Create New RGB Document (880 x 400 pt)
    var docPreset = new DocumentPreset();
    docPreset.title = "VAYMORA_Brand_Master";
    docPreset.width = 880;
    docPreset.height = 400;
    docPreset.colorMode = DocumentColorMode.RGB;
    docPreset.units = RulerUnits.Points;

    var doc = app.documents.addDocument(DocumentColorSpace.RGB, docPreset);

    // 2. Helper Color Creators
    function createRGB(r, g, b) {
        var c = new RGBColor();
        c.red = r;
        c.green = g;
        c.blue = b;
        return c;
    }

    var colIndigo = createRGB(99, 102, 241);    // #6366F1
    var colViolet = createRGB(168, 85, 247);    // #A855F7
    var colCyan   = createRGB(6, 182, 212);     // #06B6D4
    var colSky    = createRGB(56, 189, 248);    // #38BDF8
    var colBgDark = createRGB(7, 10, 19);       // #070A13
    var colWhite  = createRGB(248, 250, 252);   // #F8FAFC
    var colMuted  = createRGB(148, 163, 184);   // #94A3B8

    // 3. Set Up Swatches in Palette
    function addSwatch(name, colorObj) {
        try {
            var swatch = doc.swatches.add();
            swatch.name = name;
            swatch.color = colorObj;
        } catch (e) {}
    }
    addSwatch("VAYMORA Indigo", colIndigo);
    addSwatch("VAYMORA Violet", colViolet);
    addSwatch("VAYMORA Cyan", colCyan);
    addSwatch("VAYMORA Sky", colSky);
    addSwatch("VAYMORA Dark Canvas", colBgDark);

    // 4. Create Organized Layers
    var bgLayer = doc.layers[0];
    bgLayer.name = "01_Background_Canvas";

    var iconLayer = doc.layers.add();
    iconLayer.name = "02_VAYMORA_Mark_Vector";

    var typoLayer = doc.layers.add();
    typoLayer.name = "03_Brand_Typography";

    // 5. Draw Dark Canvas
    var bgRect = bgLayer.pathItems.rectangle(400, 0, 880, 400);
    bgRect.fillColor = colBgDark;
    bgRect.stroked = false;

    // 6. Draw Emblem Vector Paths (Scaled & Positioned on Icon Layer)
    // Offset and scale factors
    var offsetX = 50;
    var offsetY = 280;
    var scale = 0.38;

    // Left Wing Path
    var leftWing = iconLayer.pathItems.add();
    leftWing.setEntirePath([
        [offsetX + 120 * scale, offsetY - 120 * scale],
        [offsetX + 205 * scale, offsetY - 190 * scale],
        [offsetX + 242 * scale, offsetY - 276 * scale],
        [offsetX + 270 * scale, offsetY - 312 * scale],
        [offsetX + 222 * scale, offsetY - 338 * scale],
        [offsetX + 178 * scale, offsetY - 304 * scale],
        [offsetX + 132 * scale, offsetY - 202 * scale]
    ]);
    leftWing.closed = true;
    leftWing.fillColor = colIndigo;
    leftWing.stroked = false;

    // Right Wing Path
    var rightWing = iconLayer.pathItems.add();
    rightWing.setEntirePath([
        [offsetX + 392 * scale, offsetY - 120 * scale],
        [offsetX + 307 * scale, offsetY - 190 * scale],
        [offsetX + 262 * scale, offsetY - 290 * scale],
        [offsetX + 196 * scale, offsetY - 364 * scale],
        [offsetX + 266 * scale, offsetY - 388 * scale],
        [offsetX + 348 * scale, offsetY - 332 * scale],
        [offsetX + 380 * scale, offsetY - 268 * scale]
    ]);
    rightWing.closed = true;
    rightWing.fillColor = colViolet;
    rightWing.stroked = false;

    // Front Interlocking Ribbon Path
    var frontRibbon = iconLayer.pathItems.add();
    frontRibbon.setEntirePath([
        [offsetX + 120 * scale, offsetY - 120 * scale],
        [offsetX + 188 * scale, offsetY - 175 * scale],
        [offsetX + 256 * scale, offsetY - 312 * scale],
        [offsetX + 332 * scale, offsetY - 376 * scale],
        [offsetX + 272 * scale, offsetY - 400 * scale],
        [offsetX + 202 * scale, offsetY - 350 * scale],
        [offsetX + 142 * scale, offsetY - 226 * scale]
    ]);
    frontRibbon.closed = true;
    frontRibbon.fillColor = colCyan;
    frontRibbon.stroked = false;

    // Glowing Core Node
    var coreNode = iconLayer.pathItems.ellipse(
        offsetY - 266 * scale, 
        offsetX + 246 * scale, 
        20 * scale, 
        20 * scale
    );
    coreNode.fillColor = colSky;
    coreNode.stroked = false;

    // 7. Brand Wordmark Typography
    var titleFrame = typoLayer.textFrames.add();
    titleFrame.contents = "VAYMORA GLOBAL";
    titleFrame.top = 230;
    titleFrame.left = 260;
    titleFrame.textRange.characterAttributes.size = 52;
    titleFrame.textRange.characterAttributes.fillColor = colWhite;
    titleFrame.textRange.characterAttributes.tracking = 80;

    // Cyan Period Dot
    var dotItem = typoLayer.pathItems.ellipse(224, 730, 16, 16);
    dotItem.fillColor = colCyan;
    dotItem.stroked = false;

    // Divider Line
    var divider = typoLayer.pathItems.rectangle(170, 260, 480, 2);
    divider.fillColor = colCyan;
    divider.stroked = false;

    // Tagline
    var tagFrame = typoLayer.textFrames.add();
    tagFrame.contents = "NEXT-GEN CLOUD & AI ENGINEERING";
    tagFrame.top = 150;
    tagFrame.left = 262;
    tagFrame.textRange.characterAttributes.size = 14;
    tagFrame.textRange.characterAttributes.fillColor = colMuted;
    tagFrame.textRange.characterAttributes.tracking = 320;

    // 8. Auto-Save Master .ai File
    try {
        var currentScriptFile = new File($.fileName);
        var folder = currentScriptFile.parent;
        var saveFile = new File(folder.fsName + "/vaymora-logo.ai");
        var aiSaveOptions = new IllustratorSaveOptions();
        aiSaveOptions.compatibility = Compatibility.ILLUSTRATOR24;
        aiSaveOptions.compressed = true;
        doc.saveAs(saveFile, aiSaveOptions);
        alert("Success! VAYMORA vector logo generated and saved to:\n" + saveFile.fsName);
    } catch (err) {
        // Document remains open for user review
    }
})();
