@velvetmonkey/vault-core 2.5.1 → 2.5.3

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.
Files changed (2) hide show
  1. package/dist/entities.js +119 -43
  2. package/package.json +1 -1
package/dist/entities.js CHANGED
@@ -204,49 +204,107 @@ const REGION_PATTERNS = ['eu', 'apac', 'emea', 'latam', 'amer'];
204
204
  const FRONTMATTER_TYPE_MAP = {
205
205
  // animals
206
206
  animal: 'animals', pet: 'animals', horse: 'animals', dog: 'animals',
207
- cat: 'animals', bird: 'animals', fish: 'animals',
207
+ cat: 'animals', bird: 'animals', fish: 'animals', insect: 'animals',
208
+ reptile: 'animals', species: 'animals', breed: 'animals',
208
209
  // people
209
210
  person: 'people', contact: 'people', friend: 'people',
210
- colleague: 'people', family: 'people',
211
+ colleague: 'people', family: 'people', employee: 'people',
212
+ manager: 'people', author: 'people', speaker: 'people',
213
+ creator: 'people', stakeholder: 'people', contractor: 'people',
214
+ consultant: 'people', member: 'people', character: 'people',
215
+ prospect: 'people', lead: 'people', expert: 'people',
216
+ // organizations
217
+ company: 'organizations', organization: 'organizations', org: 'organizations',
218
+ team: 'organizations', client: 'organizations', customer: 'organizations',
219
+ vendor: 'organizations', partner: 'organizations', supplier: 'organizations',
220
+ agency: 'organizations', startup: 'organizations', enterprise: 'organizations',
221
+ business: 'organizations', department: 'organizations', division: 'organizations',
222
+ group: 'organizations', committee: 'organizations', institution: 'organizations',
223
+ school: 'organizations', university: 'organizations', studio: 'organizations',
224
+ account: 'organizations',
211
225
  // media
212
226
  movie: 'media', book: 'media', show: 'media', game: 'media',
213
- music: 'media', album: 'media', film: 'media', podcast: 'media', series: 'media',
227
+ music: 'media', album: 'media', film: 'media', podcast: 'media',
228
+ series: 'media', episode: 'media', video: 'media', song: 'media',
229
+ playlist: 'media', artwork: 'media', photo: 'media', article: 'media',
230
+ post: 'media', blog: 'media', channel: 'media', publication: 'media',
231
+ newsletter: 'media',
214
232
  // events
215
233
  event: 'events', meeting: 'events', conference: 'events',
216
234
  trip: 'events', holiday: 'events', milestone: 'events',
235
+ interview: 'events', appointment: 'events', session: 'events',
236
+ workshop: 'events', webinar: 'events', call: 'events',
237
+ summit: 'events', meetup: 'events', vacation: 'events',
238
+ festival: 'events', ceremony: 'events',
217
239
  // documents
218
240
  document: 'documents', report: 'documents', guide: 'documents',
219
241
  reference: 'documents', template: 'documents', note: 'documents',
242
+ checklist: 'documents', playbook: 'documents', spec: 'documents',
243
+ specification: 'documents', roadmap: 'documents', review: 'documents',
244
+ decision: 'documents', manual: 'documents', contract: 'documents',
245
+ policy: 'documents', procedure: 'documents', log: 'documents',
246
+ journal: 'documents', transcript: 'documents', minutes: 'documents',
247
+ summary: 'documents', brief: 'documents', proposal: 'documents',
248
+ presentation: 'documents', deck: 'documents', memo: 'documents',
249
+ letter: 'documents', resource: 'documents', rfc: 'documents',
250
+ architecture: 'documents', draft: 'documents', manuscript: 'documents',
251
+ snippet: 'documents',
220
252
  // vehicles
221
253
  vehicle: 'vehicles', car: 'vehicles', bike: 'vehicles',
222
- boat: 'vehicles', motorcycle: 'vehicles',
254
+ boat: 'vehicles', motorcycle: 'vehicles', truck: 'vehicles',
255
+ plane: 'vehicles', aircraft: 'vehicles', ship: 'vehicles',
223
256
  // health
224
257
  health: 'health', medical: 'health', fitness: 'health',
225
258
  condition: 'health', wellness: 'health', exercise: 'health',
259
+ treatment: 'health', medication: 'health', workout: 'health',
260
+ therapy: 'health', nutrition: 'health',
226
261
  // finance
227
- finance: 'finance', account: 'finance', investment: 'finance',
262
+ finance: 'finance', investment: 'finance',
228
263
  budget: 'finance', transaction: 'finance', bank: 'finance',
264
+ expense: 'finance', income: 'finance', revenue: 'finance',
265
+ tax: 'finance', payment: 'finance', invoice: 'finance',
266
+ receipt: 'finance', portfolio: 'finance', equity: 'finance',
229
267
  // food
230
268
  food: 'food', recipe: 'food', restaurant: 'food',
231
269
  meal: 'food', ingredient: 'food', drink: 'food',
270
+ beverage: 'food', cuisine: 'food',
232
271
  // hobbies
233
272
  hobby: 'hobbies', sport: 'hobbies', craft: 'hobbies',
234
- activity: 'hobbies', collection: 'hobbies',
235
- // periodical notes (daily, weekly, monthly, etc.)
273
+ activity: 'hobbies', collection: 'hobbies', gaming: 'hobbies',
274
+ photography: 'hobbies',
275
+ // technologies
276
+ tool: 'technologies', technology: 'technologies', framework: 'technologies',
277
+ library: 'technologies', language: 'technologies', app: 'technologies',
278
+ software: 'technologies', hardware: 'technologies', device: 'technologies',
279
+ equipment: 'technologies', server: 'technologies', database: 'technologies',
280
+ platform: 'technologies', plugin: 'technologies', extension: 'technologies',
281
+ api: 'technologies', service: 'technologies', package: 'technologies',
282
+ // projects
283
+ project: 'projects', initiative: 'projects', campaign: 'projects',
284
+ program: 'projects', product: 'projects', release: 'projects',
285
+ sprint: 'projects', epic: 'projects', feature: 'projects',
286
+ goal: 'projects', objective: 'projects', deliverable: 'projects',
287
+ deal: 'projects', opportunity: 'projects',
288
+ // locations
289
+ place: 'locations', location: 'locations', city: 'locations',
290
+ country: 'locations', region: 'locations', state: 'locations',
291
+ town: 'locations', building: 'locations', office: 'locations',
292
+ venue: 'locations', facility: 'locations',
293
+ // concepts
294
+ concept: 'concepts', idea: 'concepts', topic: 'concepts',
295
+ theory: 'concepts', principle: 'concepts', model: 'concepts',
296
+ pattern: 'concepts', methodology: 'concepts', strategy: 'concepts',
297
+ technique: 'concepts', algorithm: 'concepts', definition: 'concepts',
298
+ knowledge: 'concepts', domain: 'concepts', discipline: 'concepts',
299
+ subject: 'concepts', course: 'concepts', lesson: 'concepts',
300
+ tutorial: 'concepts',
301
+ // periodical notes
236
302
  periodical: 'periodical', daily: 'periodical', weekly: 'periodical',
237
- monthly: 'periodical', quarterly: 'periodical',
303
+ monthly: 'periodical', quarterly: 'periodical', yearly: 'periodical',
238
304
  // identity categories (for reverse-mapping)
239
305
  acronym: 'acronyms',
240
306
  media: 'media',
241
307
  other: 'other',
242
- // existing categories
243
- project: 'projects',
244
- tool: 'technologies', technology: 'technologies', framework: 'technologies',
245
- library: 'technologies', language: 'technologies',
246
- company: 'organizations', organization: 'organizations', org: 'organizations', team: 'organizations',
247
- place: 'locations', location: 'locations', city: 'locations',
248
- country: 'locations', region: 'locations',
249
- concept: 'concepts', idea: 'concepts', topic: 'concepts',
250
308
  };
251
309
  function mapFrontmatterType(type, customCategories) {
252
310
  const lower = type.toLowerCase();
@@ -271,34 +329,52 @@ function mapFrontmatterType(type, customCategories) {
271
329
  */
272
330
  // Folder names that imply entity categories
273
331
  const FOLDER_CATEGORY_MAP = {
274
- 'people': 'people',
275
- 'person': 'people',
276
- 'contacts': 'people',
277
- 'team': 'people',
278
- 'members': 'people',
279
- 'projects': 'projects',
280
- 'project': 'projects',
281
- 'locations': 'locations',
282
- 'places': 'locations',
283
- 'companies': 'organizations',
284
- 'organizations': 'organizations',
285
- 'orgs': 'organizations',
286
- 'concepts': 'concepts',
287
- 'topics': 'concepts',
288
- 'tools': 'technologies',
289
- 'software': 'technologies',
290
- 'media': 'media',
291
- 'books': 'media',
292
- 'films': 'media',
293
- 'movies': 'media',
294
- 'music': 'media',
332
+ // people
333
+ 'people': 'people', 'person': 'people', 'contacts': 'people',
334
+ 'team': 'people', 'members': 'people', 'employees': 'people',
335
+ 'colleagues': 'people', 'contractors': 'people', 'consultants': 'people',
336
+ // organizations
337
+ 'companies': 'organizations', 'organizations': 'organizations', 'orgs': 'organizations',
338
+ 'clients': 'organizations', 'customers': 'organizations', 'vendors': 'organizations',
339
+ 'partners': 'organizations', 'agencies': 'organizations', 'institutions': 'organizations',
340
+ 'accounts': 'organizations',
341
+ // projects
342
+ 'projects': 'projects', 'project': 'projects', 'initiatives': 'projects',
343
+ 'campaigns': 'projects', 'products': 'projects', 'goals': 'projects',
344
+ 'deliverables': 'projects', 'work': 'projects',
345
+ // locations
346
+ 'locations': 'locations', 'places': 'locations',
347
+ // concepts
348
+ 'concepts': 'concepts', 'topics': 'concepts', 'knowledge': 'concepts',
349
+ 'research': 'concepts', 'learning': 'concepts',
350
+ // technologies
351
+ 'tools': 'technologies', 'software': 'technologies', 'equipment': 'technologies',
352
+ 'tech': 'technologies', 'apps': 'technologies', 'platforms': 'technologies',
353
+ // media
354
+ 'media': 'media', 'books': 'media', 'films': 'media',
355
+ 'movies': 'media', 'music': 'media', 'podcasts': 'media',
356
+ 'reading': 'media', 'articles': 'media',
357
+ // events
358
+ 'events': 'events', 'meetings': 'events', 'conferences': 'events',
359
+ // documents
360
+ 'documents': 'documents', 'docs': 'documents', 'templates': 'documents',
361
+ 'guides': 'documents', 'references': 'documents', 'proposals': 'documents',
362
+ 'admin': 'documents', 'archive': 'documents', 'resources': 'documents',
363
+ // vehicles
295
364
  'vehicles': 'vehicles',
296
- 'equipment': 'technologies',
297
- 'food': 'food',
298
- 'recipes': 'food',
299
- 'health': 'health',
300
- 'finance': 'finance',
301
- 'hobbies': 'hobbies',
365
+ // health
366
+ 'health': 'health', 'fitness': 'health', 'medical': 'health',
367
+ // finance
368
+ 'finance': 'finance', 'invoices': 'finance', 'billing': 'finance',
369
+ // food
370
+ 'food': 'food', 'recipes': 'food',
371
+ // hobbies
372
+ 'hobbies': 'hobbies', 'sports': 'hobbies',
373
+ // animals
374
+ 'animals': 'animals', 'pets': 'animals',
375
+ // periodical
376
+ 'daily-notes': 'periodical', 'weekly-notes': 'periodical',
377
+ 'monthly-notes': 'periodical',
302
378
  };
303
379
  function categorizeEntity(name, techKeywords, frontmatterType, notePath, customCategories) {
304
380
  // 0. Frontmatter type takes priority (custom categories checked first)
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@velvetmonkey/vault-core",
3
- "version": "2.5.1",
3
+ "version": "2.5.3",
4
4
  "description": "Shared vault utilities for Flywheel ecosystem (entity scanning, wikilinks, protected zones)",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",