@hasna/prompts 0.2.0 → 0.2.1

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.
package/dist/cli/index.js CHANGED
@@ -2266,25 +2266,24 @@ function uniqueSlug(baseSlug) {
2266
2266
  }
2267
2267
  return slug;
2268
2268
  }
2269
+ var CHARS = "abcdefghijklmnopqrstuvwxyz0123456789";
2270
+ function nanoid(len) {
2271
+ let id = "";
2272
+ for (let i = 0;i < len; i++) {
2273
+ id += CHARS[Math.floor(Math.random() * CHARS.length)];
2274
+ }
2275
+ return id;
2276
+ }
2269
2277
  function generatePromptId() {
2270
2278
  const db = getDatabase();
2271
- const row = db.query("SELECT id FROM prompts ORDER BY rowid DESC LIMIT 1").get();
2272
- let next = 1;
2273
- if (row) {
2274
- const match = row.id.match(/PRMT-(\d+)/);
2275
- if (match && match[1]) {
2276
- next = parseInt(match[1], 10) + 1;
2277
- }
2278
- }
2279
- return `PRMT-${String(next).padStart(5, "0")}`;
2279
+ let id;
2280
+ do {
2281
+ id = `prmt-${nanoid(8)}`;
2282
+ } while (db.query("SELECT 1 FROM prompts WHERE id = ?").get(id));
2283
+ return id;
2280
2284
  }
2281
2285
  function generateId(prefix) {
2282
- const chars = "abcdefghijklmnopqrstuvwxyz0123456789";
2283
- let id = prefix + "-";
2284
- for (let i = 0;i < 8; i++) {
2285
- id += chars[Math.floor(Math.random() * chars.length)];
2286
- }
2287
- return id;
2286
+ return `${prefix}-${nanoid(8)}`;
2288
2287
  }
2289
2288
 
2290
2289
  // src/db/collections.ts
package/dist/index.js CHANGED
@@ -192,25 +192,24 @@ function uniqueSlug(baseSlug) {
192
192
  }
193
193
  return slug;
194
194
  }
195
+ var CHARS = "abcdefghijklmnopqrstuvwxyz0123456789";
196
+ function nanoid(len) {
197
+ let id = "";
198
+ for (let i = 0;i < len; i++) {
199
+ id += CHARS[Math.floor(Math.random() * CHARS.length)];
200
+ }
201
+ return id;
202
+ }
195
203
  function generatePromptId() {
196
204
  const db = getDatabase();
197
- const row = db.query("SELECT id FROM prompts ORDER BY rowid DESC LIMIT 1").get();
198
- let next = 1;
199
- if (row) {
200
- const match = row.id.match(/PRMT-(\d+)/);
201
- if (match && match[1]) {
202
- next = parseInt(match[1], 10) + 1;
203
- }
204
- }
205
- return `PRMT-${String(next).padStart(5, "0")}`;
205
+ let id;
206
+ do {
207
+ id = `prmt-${nanoid(8)}`;
208
+ } while (db.query("SELECT 1 FROM prompts WHERE id = ?").get(id));
209
+ return id;
206
210
  }
207
211
  function generateId(prefix) {
208
- const chars = "abcdefghijklmnopqrstuvwxyz0123456789";
209
- let id = prefix + "-";
210
- for (let i = 0;i < 8; i++) {
211
- id += chars[Math.floor(Math.random() * chars.length)];
212
- }
213
- return id;
212
+ return `${prefix}-${nanoid(8)}`;
214
213
  }
215
214
 
216
215
  // src/db/collections.ts
@@ -1 +1 @@
1
- {"version":3,"file":"ids.d.ts","sourceRoot":"","sources":["../../src/lib/ids.ts"],"names":[],"mappings":"AAEA,wBAAgB,YAAY,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAQlD;AAED,wBAAgB,UAAU,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CASnD;AAED,wBAAgB,gBAAgB,IAAI,MAAM,CAezC;AAED,wBAAgB,UAAU,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAOjD"}
1
+ {"version":3,"file":"ids.d.ts","sourceRoot":"","sources":["../../src/lib/ids.ts"],"names":[],"mappings":"AAEA,wBAAgB,YAAY,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAQlD;AAED,wBAAgB,UAAU,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CASnD;AAYD,wBAAgB,gBAAgB,IAAI,MAAM,CAOzC;AAED,wBAAgB,UAAU,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAEjD"}
package/dist/mcp/index.js CHANGED
@@ -4182,25 +4182,24 @@ function uniqueSlug(baseSlug) {
4182
4182
  }
4183
4183
  return slug;
4184
4184
  }
4185
+ var CHARS = "abcdefghijklmnopqrstuvwxyz0123456789";
4186
+ function nanoid(len) {
4187
+ let id = "";
4188
+ for (let i = 0;i < len; i++) {
4189
+ id += CHARS[Math.floor(Math.random() * CHARS.length)];
4190
+ }
4191
+ return id;
4192
+ }
4185
4193
  function generatePromptId() {
4186
4194
  const db = getDatabase();
4187
- const row = db.query("SELECT id FROM prompts ORDER BY rowid DESC LIMIT 1").get();
4188
- let next = 1;
4189
- if (row) {
4190
- const match = row.id.match(/PRMT-(\d+)/);
4191
- if (match && match[1]) {
4192
- next = parseInt(match[1], 10) + 1;
4193
- }
4194
- }
4195
- return `PRMT-${String(next).padStart(5, "0")}`;
4195
+ let id;
4196
+ do {
4197
+ id = `prmt-${nanoid(8)}`;
4198
+ } while (db.query("SELECT 1 FROM prompts WHERE id = ?").get(id));
4199
+ return id;
4196
4200
  }
4197
4201
  function generateId(prefix) {
4198
- const chars = "abcdefghijklmnopqrstuvwxyz0123456789";
4199
- let id = prefix + "-";
4200
- for (let i = 0;i < 8; i++) {
4201
- id += chars[Math.floor(Math.random() * chars.length)];
4202
- }
4203
- return id;
4202
+ return `${prefix}-${nanoid(8)}`;
4204
4203
  }
4205
4204
 
4206
4205
  // src/db/collections.ts
@@ -194,25 +194,24 @@ function uniqueSlug(baseSlug) {
194
194
  }
195
195
  return slug;
196
196
  }
197
+ var CHARS = "abcdefghijklmnopqrstuvwxyz0123456789";
198
+ function nanoid(len) {
199
+ let id = "";
200
+ for (let i = 0;i < len; i++) {
201
+ id += CHARS[Math.floor(Math.random() * CHARS.length)];
202
+ }
203
+ return id;
204
+ }
197
205
  function generatePromptId() {
198
206
  const db = getDatabase();
199
- const row = db.query("SELECT id FROM prompts ORDER BY rowid DESC LIMIT 1").get();
200
- let next = 1;
201
- if (row) {
202
- const match = row.id.match(/PRMT-(\d+)/);
203
- if (match && match[1]) {
204
- next = parseInt(match[1], 10) + 1;
205
- }
206
- }
207
- return `PRMT-${String(next).padStart(5, "0")}`;
207
+ let id;
208
+ do {
209
+ id = `prmt-${nanoid(8)}`;
210
+ } while (db.query("SELECT 1 FROM prompts WHERE id = ?").get(id));
211
+ return id;
208
212
  }
209
213
  function generateId(prefix) {
210
- const chars = "abcdefghijklmnopqrstuvwxyz0123456789";
211
- let id = prefix + "-";
212
- for (let i = 0;i < 8; i++) {
213
- id += chars[Math.floor(Math.random() * chars.length)];
214
- }
215
- return id;
214
+ return `${prefix}-${nanoid(8)}`;
216
215
  }
217
216
 
218
217
  // src/db/collections.ts
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@hasna/prompts",
3
- "version": "0.2.0",
3
+ "version": "0.2.1",
4
4
  "description": "Reusable prompt library for AI agents — CLI + MCP server + REST API + web dashboard",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",