MCPcopy Create free account
hub / github.com/TechJeeper/Printventory / getClientId

Function getClientId

main.js:9864–9897  ·  view source on GitHub ↗
()

Source from the content-addressed store, hash-verified

9862 console.error('Error generating tags:', error);
9863 // Re-throw rate limit errors so user is notified
9864 if (error.message && error.message.includes('Rate limit')) {
9865 throw error;
9866 }
9867 return []; // Return empty tags array instead of throwing
9868 }
9869 } catch (error) {
9870 console.error('Error generating tags:', error);
9871 throw error;
9872 }
9873});
9874
9875// Add this helper function (if it doesn't already exist) near the top of main.js
9876function getSettings() {
9877 const apiKeyRow = db.prepare('SELECT value FROM settings WHERE key = ?').get('apiKey');
9878 const apiEndpointRow = db.prepare('SELECT value FROM settings WHERE key = ?').get('apiEndpoint');
9879 const aiModelRow = db.prepare('SELECT value FROM settings WHERE key = ?').get('aiModel');
9880 const aiServiceRow = db.prepare('SELECT value FROM settings WHERE key = ?').get('aiService');
9881 const aiTagMaxTagsRow = db.prepare('SELECT value FROM settings WHERE key = ?').get('aiTagMaxTags');
9882 const aiTagUseCategoriesRow = db.prepare('SELECT value FROM settings WHERE key = ?').get('aiTagUseCategories');
9883 const aiTagMergeStrategyRow = db.prepare('SELECT value FROM settings WHERE key = ?').get('aiTagMergeStrategy');
9884 const aiTagAllowRetaggingRow = db.prepare('SELECT value FROM settings WHERE key = ?').get('aiTagAllowRetagging');
9885 const aiTagConcurrencyRow = db.prepare('SELECT value FROM settings WHERE key = ?').get('aiTagConcurrency');
9886 const aiTagDetailLevelRow = db.prepare('SELECT value FROM settings WHERE key = ?').get('aiTagDetailLevel');
9887 const aiTagPromptRow = db.prepare('SELECT value FROM settings WHERE key = ?').get('aiTagPrompt');
9888
9889 return {
9890 apiKey: apiKeyRow ? apiKeyRow.value : null,
9891 apiEndpoint: apiEndpointRow ? apiEndpointRow.value : 'https://js.puter.com/v2/',
9892 aiModel: aiModelRow ? aiModelRow.value : 'gpt-5-nano',
9893 aiService: aiServiceRow ? aiServiceRow.value : 'puter',
9894 aiTagMaxTags: aiTagMaxTagsRow ? parseInt(aiTagMaxTagsRow.value) || 10 : 10,
9895 aiTagUseCategories: aiTagUseCategoriesRow ? aiTagUseCategoriesRow.value === '1' : false,
9896 aiTagUseJsonResponse: true, // Always use JSON response format
9897 aiTagMergeStrategy: aiTagMergeStrategyRow ? aiTagMergeStrategyRow.value : 'merge',
9898 aiTagAllowRetagging: aiTagAllowRetaggingRow ? aiTagAllowRetaggingRow.value === '1' : false,
9899 aiTagConcurrency: aiTagConcurrencyRow ? parseInt(aiTagConcurrencyRow.value) || 3 : 3,
9900 aiTagDetailLevel: aiTagDetailLevelRow ? aiTagDetailLevelRow.value : 'medium',

Callers 3

saveSettingHandlerFunction · 0.85
trackAppUsageFunction · 0.85
main.jsFile · 0.85

Calls

no outgoing calls

Tested by

no test coverage detected