@primitive.ai/prim 0.1.0-alpha.70 → 0.1.0-alpha.71

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.
@@ -32185,7 +32185,6 @@ var API_KEY_ID = /^api_key_[A-Za-z0-9_-]+$/u;
32185
32185
  var API_KEY_NAME = /^[\x21-\x7e](?:[\x20-\x7e]{0,126}[\x21-\x7e])?$/u;
32186
32186
  var API_KEY_PERMISSION = /^[\x21-\x7e]+$/u;
32187
32187
  var API_KEY_SECRET = /^sk_[\x21-\x7e]+(?: [\x21-\x7e]+)*$/u;
32188
- var API_KEY_OBFUSCATED_VALUE = /^[\x20-\x7e]+$/u;
32189
32188
  var MINT_PATH = "/api/cli/auth/api-keys";
32190
32189
  var REQUEST_ID = /^[a-f0-9]{64}$/u;
32191
32190
  function record(value) {
@@ -32206,6 +32205,16 @@ function isApiKeyId(value) {
32206
32205
  function isApiKeyName(value) {
32207
32206
  return isBoundedString(value, 1, 128, API_KEY_NAME);
32208
32207
  }
32208
+ function isSafeObfuscatedValue(value) {
32209
+ if (!isBoundedString(value, 1, 256)) return false;
32210
+ for (const character of value) {
32211
+ const point = character.codePointAt(0) ?? 0;
32212
+ if (point <= 31 || point >= 127 && point <= 159 || point === 8232 || point === 8233 || point === 1564 || point >= 8203 && point <= 8207 || point >= 8234 && point <= 8238 || point === 8288 || point >= 8294 && point <= 8297 || point === 65279) {
32213
+ return false;
32214
+ }
32215
+ }
32216
+ return true;
32217
+ }
32209
32218
  function isMetadata(value) {
32210
32219
  const parsed = record(value);
32211
32220
  if (parsed === void 0 || !hasExactKeys(parsed, [
@@ -32221,7 +32230,7 @@ function isMetadata(value) {
32221
32230
  return void 0;
32222
32231
  }
32223
32232
  const { id, name, obfuscatedValue, permissions, lastUsedAt, expiresAt, createdAt, updatedAt } = parsed;
32224
- if (!isApiKeyId(id) || !isApiKeyName(name) || !isBoundedString(obfuscatedValue, 1, 256, API_KEY_OBFUSCATED_VALUE) || !Array.isArray(permissions) || permissions.length > 100 || !permissions.every((permission) => isBoundedString(permission, 1, 128, API_KEY_PERMISSION)) || lastUsedAt !== null && !isSafeTimestamp(lastUsedAt) || expiresAt !== null && !isSafeTimestamp(expiresAt) || !isSafeTimestamp(createdAt) || !isSafeTimestamp(updatedAt)) {
32233
+ if (!isApiKeyId(id) || !isApiKeyName(name) || !isSafeObfuscatedValue(obfuscatedValue) || !Array.isArray(permissions) || permissions.length > 100 || !permissions.every((permission) => isBoundedString(permission, 1, 128, API_KEY_PERMISSION)) || lastUsedAt !== null && !isSafeTimestamp(lastUsedAt) || expiresAt !== null && !isSafeTimestamp(expiresAt) || !isSafeTimestamp(createdAt) || !isSafeTimestamp(updatedAt)) {
32225
32234
  return void 0;
32226
32235
  }
32227
32236
  return {
package/dist/index.js CHANGED
@@ -9981,7 +9981,6 @@ var API_KEY_ID = /^api_key_[A-Za-z0-9_-]+$/u;
9981
9981
  var API_KEY_NAME = /^[\x21-\x7e](?:[\x20-\x7e]{0,126}[\x21-\x7e])?$/u;
9982
9982
  var API_KEY_PERMISSION = /^[\x21-\x7e]+$/u;
9983
9983
  var API_KEY_SECRET = /^sk_[\x21-\x7e]+(?: [\x21-\x7e]+)*$/u;
9984
- var API_KEY_OBFUSCATED_VALUE = /^[\x20-\x7e]+$/u;
9985
9984
  var MINT_PATH = "/api/cli/auth/api-keys";
9986
9985
  var REQUEST_ID = /^[a-f0-9]{64}$/u;
9987
9986
  function record(value) {
@@ -10002,6 +10001,16 @@ function isApiKeyId(value) {
10002
10001
  function isApiKeyName(value) {
10003
10002
  return isBoundedString(value, 1, 128, API_KEY_NAME);
10004
10003
  }
10004
+ function isSafeObfuscatedValue(value) {
10005
+ if (!isBoundedString(value, 1, 256)) return false;
10006
+ for (const character of value) {
10007
+ const point = character.codePointAt(0) ?? 0;
10008
+ if (point <= 31 || point >= 127 && point <= 159 || point === 8232 || point === 8233 || point === 1564 || point >= 8203 && point <= 8207 || point >= 8234 && point <= 8238 || point === 8288 || point >= 8294 && point <= 8297 || point === 65279) {
10009
+ return false;
10010
+ }
10011
+ }
10012
+ return true;
10013
+ }
10005
10014
  function isMetadata(value) {
10006
10015
  const parsed = record(value);
10007
10016
  if (parsed === void 0 || !hasExactKeys(parsed, [
@@ -10017,7 +10026,7 @@ function isMetadata(value) {
10017
10026
  return void 0;
10018
10027
  }
10019
10028
  const { id, name, obfuscatedValue, permissions, lastUsedAt, expiresAt, createdAt, updatedAt } = parsed;
10020
- if (!isApiKeyId(id) || !isApiKeyName(name) || !isBoundedString(obfuscatedValue, 1, 256, API_KEY_OBFUSCATED_VALUE) || !Array.isArray(permissions) || permissions.length > 100 || !permissions.every((permission) => isBoundedString(permission, 1, 128, API_KEY_PERMISSION)) || lastUsedAt !== null && !isSafeTimestamp(lastUsedAt) || expiresAt !== null && !isSafeTimestamp(expiresAt) || !isSafeTimestamp(createdAt) || !isSafeTimestamp(updatedAt)) {
10029
+ if (!isApiKeyId(id) || !isApiKeyName(name) || !isSafeObfuscatedValue(obfuscatedValue) || !Array.isArray(permissions) || permissions.length > 100 || !permissions.every((permission) => isBoundedString(permission, 1, 128, API_KEY_PERMISSION)) || lastUsedAt !== null && !isSafeTimestamp(lastUsedAt) || expiresAt !== null && !isSafeTimestamp(expiresAt) || !isSafeTimestamp(createdAt) || !isSafeTimestamp(updatedAt)) {
10021
10030
  return void 0;
10022
10031
  }
10023
10032
  return {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@primitive.ai/prim",
3
- "version": "0.1.0-alpha.70",
3
+ "version": "0.1.0-alpha.71",
4
4
  "description": "CLI for Primitive's decision graph — passive decision capture, conflict gate, and team presence",
5
5
  "type": "module",
6
6
  "license": "MIT",