{
  "name": "lookatni-file-markers",
  "displayName": "LookAtni File Markers",
  "description": "Advanced file organization system with unique markers for code sharing and project management. Extract files from marked content, generate markers, and validate project integrity.",
  "version": "1.1.0",
  "bin": {
    "lookatni": "./bin/lookatni.js"
  },
  "files": [
    "bin/",
    "dist/",
    "resources/",
    "CLI-README.md",
    "README.md",
    "LICENSE",
    "CHANGELOG.md"
  ],
  "engines": {
    "vscode": "^1.102.0",
    "node": ">=16.0.0"
  },
  "categories": [
    "Other",
    "Extension Packs",
    "Formatters",
    "Linters"
  ],
  "capabilities": {
    "untrustedWorkspaces": {
      "supported": "limited",
      "description": "LookAtni File Markers supports untrusted workspaces with limited functionality. Some features may be restricted for security reasons."
    }
  },
  "extensionKind": [
    "ui"
  ],
  "api": "none",
  "publishConfig": {
    "access": "public"
  },
  "config": {
    "lookatni.defaultMaxFileSize": {
      "type": "number",
      "default": 1000,
      "description": "Default maximum file size in KB for generation"
    },
    "lookatni.showStatistics": {
      "type": "boolean",
      "default": true,
      "description": "Show statistics after operations"
    },
    "lookatni.autoValidate": {
      "type": "boolean",
      "default": false,
      "description": "Automatically validate files after generation"
    }
  },
  "exports": {
    ".": {
      "import": "./dist/extension.js",
      "default": "./dist/extension.js"
    },
    "./package.json": "./package.json",
    "./resources/icon.png": "./resources/icon.png",
    "./resources/icon.svg": "./resources/icon.svg"
  },
  "readme": "README.md",
  "markdown": "github",
  "icon": "resources/icon.png",
  "galleryBanner": {
    "color": "#1e1e1e",
    "theme": "dark",
    "image": "resources/top_banner.png"
  },
  "activationEvents": [
    "onStartupFinished"
  ],
  "main": "./dist/extension.js",
  "publisher": "rafa-mori",
  "author": {
    "name": "Rafael Mori",
    "email": "faelmori@gmail.com"
  },
  "license": "MIT",
  "repository": {
    "type": "git",
    "url": "https://github.com/rafa-mori/lookatni-file-markers.git"
  },
  "homepage": "https://github.com/rafa-mori/lookatni-file-markers#readme",
  "bugs": {
    "url": "https://github.com/rafa-mori/lookatni-file-markers/issues"
  },
  "keywords": [
    "file-markers",
    "code-organization",
    "project-management",
    "development-tools",
    "file-extraction",
    "productivity",
    "lookatni",
    "vscode-extension",
    "code-sharing",
    "file-system",
    "ai-code-extraction",
    "chatgpt",
    "claude-ai",
    "artificial-intelligence",
    "project-generator",
    "invisible-markers",
    "unicode-markers",
    "cli",
    "command-line",
    "global-package"
  ],
  "qna": "marketplace",
  "contributes": {
    "commands": [
      {
        "id": "lookatni-file-markers.extractFiles",
        "command": "lookatni-file-markers.extractFiles",
        "title": "LookAtni: Extract Files"
      },
      {
        "id": "lookatni-file-markers.generateMarkers",
        "command": "lookatni-file-markers.generateMarkers",
        "title": "LookAtni: Generate Markers"
      },
      {
        "id": "lookatni-file-markers.validateMarkers",
        "command": "lookatni-file-markers.validateMarkers",
        "title": "LookAtni: Validate Markers"
      },
      {
        "id": "lookatni-file-markers.quickDemo",
        "command": "lookatni-file-markers.quickDemo",
        "title": "LookAtni: Quick Demo"
      },
      {
        "id": "lookatni-file-markers.showStatistics",
        "command": "lookatni-file-markers.showStatistics",
        "title": "LookAtni: Show Statistics"
      },
      {
        "id": "lookatni-file-markers.openCLI",
        "command": "lookatni-file-markers.openCLI",
        "title": "LookAtni: Open CLI Tools"
      },
      {
        "id": "lookatni.visualMarkers",
        "command": "lookatni.visualMarkers",
        "title": "LookAtni: Visual Markers",
        "icon": "$(tag)"
      },
      {
        "id": "lookatni.markAsRead",
        "command": "lookatni.markAsRead",
        "title": "LookAtni: Mark as Read",
        "icon": "$(check)"
      },
      {
        "id": "lookatni.markAsFavorite",
        "command": "lookatni.markAsFavorite",
        "title": "LookAtni: Mark as Favorite",
        "icon": "$(star-full)"
      },
      {
        "id": "lookatni.markAsImportant",
        "command": "lookatni.markAsImportant",
        "title": "LookAtni: Mark as Important",
        "icon": "$(warning)"
      },
      {
        "id": "lookatni.showMarkersOverview",
        "command": "lookatni.showMarkersOverview",
        "title": "LookAtni: Markers Overview",
        "icon": "$(list-unordered)"
      },
      {
        "id": "lookatni.clearAllMarkers",
        "command": "lookatni.clearAllMarkers",
        "title": "LookAtni: Clear All Markers"
      },
      {
        "id": "lookatni.exportMarkers",
        "command": "lookatni.exportMarkers",
        "title": "LookAtni: Export Markers"
      },
      {
        "id": "lookatni.importMarkers",
        "command": "lookatni.importMarkers",
        "title": "LookAtni: Import Markers"
      },
      {
        "id": "lookatni.configuration",
        "command": "lookatni.configuration",
        "title": "LookAtni: Configuration",
        "icon": "$(gear)"
      },
      {
        "id": "lookatni.automatedDemo",
        "command": "lookatni.automatedDemo",
        "title": "LookAtni: Automated Demo (Perfect for Recording)",
        "icon": "$(play)"
      },
      {
        "id": "lookatni.recordingGuide",
        "command": "lookatni.recordingGuide",
        "title": "LookAtni: Recording Guide",
        "icon": "$(device-camera-video)"
      }
    ],
    "menus": {
      "explorer/context": [
        {
          "command": "lookatni-file-markers.extractFiles",
          "when": "resourceExtname == .txt",
          "group": "lookatni"
        },
        {
          "command": "lookatni-file-markers.generateMarkers",
          "when": "explorerResourceIsFolder",
          "group": "lookatni"
        },
        {
          "command": "lookatni.visualMarkers",
          "when": "!explorerResourceIsFolder",
          "group": "lookatni@1"
        },
        {
          "command": "lookatni.markAsRead",
          "when": "!explorerResourceIsFolder",
          "group": "lookatni@2"
        },
        {
          "command": "lookatni.markAsFavorite",
          "when": "!explorerResourceIsFolder",
          "group": "lookatni@3"
        },
        {
          "command": "lookatni.markAsImportant",
          "when": "!explorerResourceIsFolder",
          "group": "lookatni@4"
        }
      ],
      "commandPalette": [
        {
          "command": "lookatni-file-markers.extractFiles",
          "when": "true"
        },
        {
          "command": "lookatni-file-markers.generateMarkers",
          "when": "true"
        },
        {
          "command": "lookatni-file-markers.validateMarkers",
          "when": "true"
        },
        {
          "command": "lookatni-file-markers.quickDemo",
          "when": "true"
        },
        {
          "command": "lookatni-file-markers.showStatistics",
          "when": "true"
        },
        {
          "command": "lookatni-file-markers.openCLI",
          "when": "true"
        },
        {
          "command": "lookatni.visualMarkers",
          "when": "true"
        },
        {
          "command": "lookatni.markAsRead",
          "when": "true"
        },
        {
          "command": "lookatni.markAsFavorite",
          "when": "true"
        },
        {
          "command": "lookatni.markAsImportant",
          "when": "true"
        },
        {
          "command": "lookatni.showMarkersOverview",
          "when": "true"
        },
        {
          "command": "lookatni.clearAllMarkers",
          "when": "true"
        },
        {
          "command": "lookatni.exportMarkers",
          "when": "true"
        },
        {
          "command": "lookatni.importMarkers",
          "when": "true"
        },
        {
          "command": "lookatni.configuration",
          "when": "true"
        },
        {
          "command": "lookatni.automatedDemo",
          "when": "true"
        },
        {
          "command": "lookatni.recordingGuide",
          "when": "true"
        }
      ]
    },
    "keybindings": [
      {
        "command": "lookatni-file-markers.extractFiles",
        "key": "ctrl+shift+l e",
        "mac": "cmd+shift+l e"
      },
      {
        "command": "lookatni-file-markers.generateMarkers",
        "key": "ctrl+shift+l g",
        "mac": "cmd+shift+l g"
      },
      {
        "command": "lookatni-file-markers.quickDemo",
        "key": "ctrl+shift+l d",
        "mac": "cmd+shift+l d"
      }
    ],
    "views": {
      "explorer": [
        {
          "id": "lookatniExplorer",
          "name": "LookAtni Files",
          "when": "workspaceFolderCount > 0",
          "icon": "resources/icon.svg",
          "type": "tree",
          "contextualTitle": "LookAtni Explorer",
          "visibility": "visible",
          "initialSize": 0.3,
          "accessibilityHelpContent": "Use the LookAtni Explorer to manage your marked files and operations. You can extract files, generate markers, and validate them directly from this view."
        }
      ]
    },
    "configuration": {
      "title": "LookAtni File Markers",
      "properties": {
        "lookatni.defaultMaxFileSize": {
          "type": "number",
          "default": 1000,
          "description": "Default maximum file size in KB for generation"
        },
        "lookatni.showStatistics": {
          "type": "boolean",
          "default": true,
          "description": "Show statistics after operations"
        },
        "lookatni.autoValidate": {
          "type": "boolean",
          "default": false,
          "description": "Automatically validate files after generation"
        },
        "lookatni.visualMarkers.readIcon": {
          "type": "string",
          "default": "✓",
          "description": "Icon for files marked as read"
        },
        "lookatni.visualMarkers.unreadIcon": {
          "type": "string",
          "default": "●",
          "description": "Icon for files marked as unread"
        },
        "lookatni.visualMarkers.favoriteIcon": {
          "type": "string",
          "default": "★",
          "description": "Icon for files marked as favorite"
        },
        "lookatni.visualMarkers.importantIcon": {
          "type": "string",
          "default": "!",
          "description": "Icon for files marked as important"
        },
        "lookatni.visualMarkers.todoIcon": {
          "type": "string",
          "default": "○",
          "description": "Icon for files marked as todo"
        },
        "lookatni.visualMarkers.customIcon": {
          "type": "string",
          "default": "◆",
          "description": "Default icon for custom markers"
        },
        "lookatni.visualMarkers.autoSave": {
          "type": "boolean",
          "default": true,
          "description": "Automatically save markers when modified"
        },
        "lookatni.visualMarkers.showInStatusBar": {
          "type": "boolean",
          "default": true,
          "description": "Show marker count in status bar"
        }
      }
    }
  },
  "scripts": {
    "vscode:prepublish": "npm run package",
    "compile": "npm run check-types && npm run lint && node esbuild.js",
    "build": "npm run compile && npm run build:cli",
    "build:cli": "npm run compile-cli-scripts",
    "compile-cli-scripts": "tsc --project tsconfig.cli.json",
    "watch": "npm-run-all -p watch:*",
    "watch:esbuild": "node esbuild.js --watch",
    "watch:tsc": "tsc --noEmit --watch --project tsconfig.json",
    "package": "npm run check-types && npm run lint && node esbuild.js --production && npm run build:cli",
    "compile-tests": "tsc -p . --outDir out",
    "watch-tests": "tsc -p . -w --outDir out",
    "pretest": "npm run compile-tests && npm run compile && npm run lint",
    "check-types": "tsc --noEmit",
    "lint": "eslint src",
    "test": "vscode-test",
    "prepublishOnly": "npm run build",
    "postinstall": "node -e \"try{require('./bin/lookatni.js')}catch(e){console.log('LookAtni CLI ready for use!')}\"",
    "lookatni": "tsx src/scripts/cli.ts",
    "lookatni:extract": "tsx src/scripts/extractFiles.ts",
    "lookatni:generate": "tsx src/scripts/generateMarkers.ts",
    "lookatni:validate": "tsx src/scripts/validateMarkers.ts",
    "lookatni:test": "tsx src/scripts/testLookatni.ts",
    "lookatni:demo": "tsx src/scripts/demo.ts"
  },
  "devDependencies": {
    "@types/jest": "^30.0.0",
    "@types/mocha": "^10.0.10",
    "@types/node": "^20.19.7",
    "@types/vscode": "^1.102.0",
    "@typescript-eslint/eslint-plugin": "^8.31.1",
    "@typescript-eslint/parser": "^8.31.1",
    "@vscode/test-cli": "^0.0.11",
    "@vscode/test-electron": "^2.5.2",
    "esbuild": "^0.25.3",
    "eslint": "^9.25.1",
    "npm-run-all": "^4.1.5",
    "tsx": "^4.20.3",
    "typescript": "^5.8.3"
  }
}
