claude-code-autoconfig 1.0.4 → 1.0.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -810,83 +810,9 @@
810
810
  transform: translateY(-1px);
811
811
  }
812
812
 
813
- /* Migration modal content */
814
- .migration-content {
815
- display: flex;
816
- gap: 20px;
817
- }
818
-
819
- .migration-column {
820
- flex: 1;
821
- }
822
-
823
- .migration-column h4 {
824
- font-size: 14px;
825
- color: var(--accent-orange);
826
- margin-bottom: 12px;
827
- text-transform: uppercase;
828
- letter-spacing: 1px;
829
- }
830
-
831
- .migration-column.new h4 {
832
- color: var(--accent-green);
833
- }
834
-
835
- .migration-list {
836
- list-style: none;
837
- font-family: 'SF Mono', 'Fira Code', monospace;
838
- font-size: 13px;
839
- }
840
-
841
- .migration-list li {
842
- padding: 6px 0;
843
- color: var(--text-secondary);
844
- border-bottom: 1px solid var(--bg-elevated);
845
- }
846
-
847
- .migration-list li:last-child {
848
- border-bottom: none;
849
- }
850
-
851
- .migration-arrow {
852
- color: var(--text-dim);
853
- font-size: 24px;
854
- display: flex;
855
- align-items: center;
856
- padding: 0 10px;
857
- }
858
- </style>
813
+ </style>
859
814
  </head>
860
815
  <body>
861
- <!-- Migration Modal -->
862
- <div class="modal-overlay" id="migrationModal">
863
- <div class="modal-content" style="max-width: 700px;">
864
- <div class="modal-header">
865
- <span class="modal-title">📦 Migration Summary</span>
866
- <button class="modal-close" id="migrationModalClose">&times;</button>
867
- </div>
868
- <div class="modal-body">
869
- <p style="color: var(--text-secondary); margin-bottom: 20px;">
870
- Your previous configuration was backed up before installing the new autoconfig files.
871
- </p>
872
- <div class="migration-content">
873
- <div class="migration-column">
874
- <h4>⬅️ Backed Up</h4>
875
- <ul class="migration-list" id="backedUpList"></ul>
876
- </div>
877
- <div class="migration-arrow">→</div>
878
- <div class="migration-column new">
879
- <h4>➡️ New Files</h4>
880
- <ul class="migration-list" id="newFilesList"></ul>
881
- </div>
882
- </div>
883
- <p style="color: var(--text-dim); margin-top: 20px; font-size: 13px;">
884
- Backups are stored in <code style="background: var(--bg-elevated); padding: 2px 6px; border-radius: 4px;">.claude/migration/</code>
885
- </p>
886
- </div>
887
- </div>
888
- </div>
889
-
890
816
  <!-- File Preview Modal -->
891
817
  <div class="modal-overlay" id="fileModal">
892
818
  <div class="modal-content">
@@ -912,6 +838,9 @@
912
838
  <div class="migration-link" id="migrationLink" style="display: none;">
913
839
  <a href="#" id="showMigration">📦 View migrated files</a>
914
840
  </div>
841
+ <div class="migration-link" id="backToInstallLink" style="display: none;">
842
+ <a href="#" id="backToInstall">Back to install view</a>
843
+ </div>
915
844
  <div class="slide-content">
916
845
  <div class="tree-panel">
917
846
  <div class="tree-side">
@@ -1008,6 +937,29 @@
1008
937
  </div>
1009
938
  </div>
1010
939
  </div>
940
+
941
+ <!-- Migration Tree Panel (hidden by default) -->
942
+ <div class="tree-panel" id="migrationTreePanel" style="display: none;">
943
+ <div class="tree-side">
944
+ <div class="tree-item folder-row" data-folder="migration-root">
945
+ <span class="tree-chevron">›</span>
946
+ <span class="tree-folder-icon">📁</span>
947
+ <span class="folder">.claude/migration/</span>
948
+ </div>
949
+ <div class="tree-item indent-1 folder-row" data-folder="backup-folder">
950
+ <span class="tree-chevron">›</span>
951
+ <span class="tree-folder-icon">📦</span>
952
+ <span class="folder" id="backupFolderName">backup/</span>
953
+ </div>
954
+ <div id="backedUpTreeItems"></div>
955
+ </div>
956
+ <div class="info-side">
957
+ <div class="info-panel" id="migrationInfoPanel">
958
+ <div class="info-panel-title">Migration Backup</div>
959
+ <div class="info-panel-desc">Your previous configuration files were backed up here before the new autoconfig was installed.<br><br>You can restore any file by copying it back from this folder.</div>
960
+ </div>
961
+ </div>
962
+ </div>
1011
963
  </div>
1012
964
  </div>
1013
965
 
@@ -1836,74 +1788,70 @@ Use \`test_\` prefix for test databases, not \`dev_\`.`
1836
1788
  });
1837
1789
  });
1838
1790
 
1839
- // Migration detection and modal
1840
- const migrationModal = document.getElementById('migrationModal');
1841
- const migrationModalClose = document.getElementById('migrationModalClose');
1791
+ // Migration detection and toggle view
1842
1792
  const migrationLink = document.getElementById('migrationLink');
1793
+ const backToInstallLink = document.getElementById('backToInstallLink');
1843
1794
  const showMigrationBtn = document.getElementById('showMigration');
1844
- const backedUpList = document.getElementById('backedUpList');
1845
- const newFilesList = document.getElementById('newFilesList');
1846
-
1847
- // New files that autoconfig installs
1848
- const newAutoconfigFiles = [
1849
- 'commands/autoconfig.md',
1850
- 'commands/commit-and-push.md',
1851
- 'commands/enable-retro.md',
1852
- 'commands/show-guide.md',
1853
- 'commands/sync-claude-md.md',
1854
- 'commands/test.md',
1855
- 'feedback/FEEDBACK.md',
1856
- 'guide/autoconfig.guide.html',
1857
- 'settings.json',
1858
- '.mcp.json'
1859
- ];
1795
+ const backToInstallBtn = document.getElementById('backToInstall');
1796
+ const mainTreePanel = document.querySelector('.slide[data-slide="0"] .tree-panel:not(#migrationTreePanel)');
1797
+ const migrationTreePanel = document.getElementById('migrationTreePanel');
1798
+ const backupFolderName = document.getElementById('backupFolderName');
1799
+ const backedUpTreeItems = document.getElementById('backedUpTreeItems');
1800
+
1801
+ let migrationData = null;
1860
1802
 
1861
1803
  // Check for migration
1862
1804
  async function checkMigration() {
1863
1805
  try {
1864
- // Try to fetch migration/latest.json relative to guide location
1865
1806
  const guidePath = window.location.pathname;
1866
1807
  const claudeDir = guidePath.substring(0, guidePath.lastIndexOf('/guide/'));
1867
1808
  const migrationPath = claudeDir + '/migration/latest.json';
1868
1809
 
1869
1810
  const response = await fetch(migrationPath);
1870
1811
  if (response.ok) {
1871
- const migration = await response.json();
1872
-
1873
- // Show migration link
1812
+ migrationData = await response.json();
1874
1813
  migrationLink.style.display = 'block';
1875
1814
 
1876
- // Populate backed up files
1877
- backedUpList.innerHTML = migration.backedUpFiles
1878
- .map(f => `<li>${f}</li>`)
1879
- .join('');
1815
+ // Set backup folder name
1816
+ backupFolderName.textContent = migrationData.timestamp + '/';
1880
1817
 
1881
- // Populate new files
1882
- newFilesList.innerHTML = newAutoconfigFiles
1883
- .map(f => `<li>${f}</li>`)
1884
- .join('');
1818
+ // Build tree items for backed up files
1819
+ const itemsHtml = migrationData.backedUpFiles.map(f => `
1820
+ <div class="tree-item indent-2">
1821
+ <span class="tree-spacer"></span>
1822
+ <span class="tree-file-icon">📄</span>
1823
+ <span class="file">${f}</span>
1824
+ </div>
1825
+ `).join('');
1826
+ backedUpTreeItems.innerHTML = itemsHtml;
1885
1827
  }
1886
1828
  } catch (e) {
1887
- // No migration or can't read file - that's fine
1829
+ // No migration - that's fine
1888
1830
  }
1889
1831
  }
1890
1832
 
1891
- function openMigrationModal() {
1892
- migrationModal.classList.add('visible');
1833
+ function showMigrationView() {
1834
+ mainTreePanel.style.display = 'none';
1835
+ migrationTreePanel.style.display = 'flex';
1836
+ migrationLink.style.display = 'none';
1837
+ backToInstallLink.style.display = 'block';
1893
1838
  }
1894
1839
 
1895
- function closeMigrationModal() {
1896
- migrationModal.classList.remove('visible');
1840
+ function showInstallView() {
1841
+ migrationTreePanel.style.display = 'none';
1842
+ mainTreePanel.style.display = 'flex';
1843
+ backToInstallLink.style.display = 'none';
1844
+ migrationLink.style.display = 'block';
1897
1845
  }
1898
1846
 
1899
1847
  showMigrationBtn?.addEventListener('click', (e) => {
1900
1848
  e.preventDefault();
1901
- openMigrationModal();
1849
+ showMigrationView();
1902
1850
  });
1903
1851
 
1904
- migrationModalClose?.addEventListener('click', closeMigrationModal);
1905
- migrationModal?.addEventListener('click', (e) => {
1906
- if (e.target === migrationModal) closeMigrationModal();
1852
+ backToInstallBtn?.addEventListener('click', (e) => {
1853
+ e.preventDefault();
1854
+ showInstallView();
1907
1855
  });
1908
1856
 
1909
1857
  // Check for migration on load
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "claude-code-autoconfig",
3
- "version": "1.0.4",
3
+ "version": "1.0.5",
4
4
  "description": "Intelligent, self-configuring setup for Claude Code. One command analyzes your project, configures Claude, and shows you what it did.",
5
5
  "author": "ADAC 1001 <info@adac1001.com>",
6
6
  "license": "MIT",