com.pimstash.stuff.thing

A Thing in a Stuff Trove. A shared field (name, category, make, model, measure, lifespanMonths, usageUnit, ratedUsage, photo) is absent, never null, to inherit the Kind's.

Details · record, key any
Kindrecord
Record keyany
Authoritystuff.pimstash.com
Commit rev3mzxzibbal72l
Indexed
cid bafyreig3resxtax7oesq5rukx5yldssd7o3kn77ob6riqaba4kyg6oas4i

Checks

Valid Lint pass
JSONDownload
{
  "$type": "com.atproto.lexicon.schema",
  "defs": {
    "main": {
      "description": "A Thing in a Stuff Trove. A shared field (name, category, make, model, measure, lifespanMonths, usageUnit, ratedUsage, photo) is absent, never null, to inherit the Kind's.",
      "key": "any",
      "record": {
        "properties": {
          "amount": {
            "description": "How much of the Thing there is, read by measure, as a decimal string (\"2.375\") so it round-trips exactly.",
            "maxLength": 64,
            "type": "string"
          },
          "category": {
            "maxGraphemes": 100,
            "maxLength": 1000,
            "type": "string"
          },
          "conditionPct": {
            "description": "Condition, 0–100, set by an Inspection.",
            "maximum": 100,
            "minimum": 0,
            "type": "integer"
          },
          "createdAt": {
            "format": "datetime",
            "type": "string"
          },
          "currency": {
            "description": "ISO 4217 code.",
            "maxLength": 3,
            "minLength": 3,
            "type": "string"
          },
          "expiresOn": {
            "description": "The calendar date the Thing expires, entered directly; wins over one derived from lifespanMonths, as a datetime at UTC midnight read in UTC.",
            "format": "datetime",
            "type": "string"
          },
          "inServiceOn": {
            "description": "The calendar date the Thing went into service, as a datetime at UTC midnight read in UTC.",
            "format": "datetime",
            "type": "string"
          },
          "kind": {
            "description": "The record key of the com.pimstash.stuff.kind, in this same Space, this Thing is one of.",
            "format": "record-key",
            "type": "string"
          },
          "lentDueOn": {
            "description": "The calendar date the Loan is due back, as a datetime at UTC midnight read in UTC.",
            "format": "datetime",
            "type": "string"
          },
          "lentOn": {
            "description": "The calendar date the Loan began, as a datetime at UTC midnight read in UTC.",
            "format": "datetime",
            "type": "string"
          },
          "lentTo": {
            "description": "Who has it on Loan. Set together with lentOn.",
            "maxGraphemes": 100,
            "maxLength": 1000,
            "type": "string"
          },
          "lifespanMonths": {
            "description": "Months of service before the Thing is due for replacement.",
            "minimum": 1,
            "type": "integer"
          },
          "links": {
            "items": {
              "format": "uri",
              "maxLength": 3000,
              "type": "string"
            },
            "maxLength": 100,
            "type": "array"
          },
          "location": {
            "description": "The record key of the com.pimstash.stuff.location, in this same Space, this Thing is kept in.",
            "format": "record-key",
            "type": "string"
          },
          "make": {
            "maxGraphemes": 100,
            "maxLength": 1000,
            "type": "string"
          },
          "measure": {
            "description": "How the amount is read. Absent on a Thing inherits the Kind's; absent on a Kind reads as quantity.",
            "knownValues": [
              "quantity",
              "count",
              "level"
            ],
            "maxLength": 64,
            "type": "string"
          },
          "model": {
            "maxGraphemes": 100,
            "maxLength": 1000,
            "type": "string"
          },
          "name": {
            "description": "Absent shows the Kind's name; a Thing without a Kind has one.",
            "maxGraphemes": 100,
            "maxLength": 1000,
            "type": "string"
          },
          "notes": {
            "maxGraphemes": 1000,
            "maxLength": 10000,
            "type": "string"
          },
          "photo": {
            "accept": [
              "image/jpeg",
              "image/webp",
              "image/avif"
            ],
            "maxSize": 1000000,
            "type": "blob"
          },
          "priceMinor": {
            "description": "The total paid for the whole Thing, in the currency's minor unit (cents, pence, whole yen).",
            "minimum": 0,
            "type": "integer"
          },
          "purchasedOn": {
            "description": "The calendar date of purchase, as a datetime at UTC midnight read in UTC.",
            "format": "datetime",
            "type": "string"
          },
          "ratedUsage": {
            "description": "Usage the Thing is rated for, in usageUnit, as a decimal string (\"2.375\") so it round-trips exactly.",
            "maxLength": 64,
            "type": "string"
          },
          "retiredAt": {
            "description": "When the Thing left service. Set together with retiredReason.",
            "format": "datetime",
            "type": "string"
          },
          "retiredReason": {
            "knownValues": [
              "sold",
              "donated",
              "discarded",
              "lost",
              "used_up",
              "other"
            ],
            "maxLength": 64,
            "type": "string"
          },
          "serial": {
            "maxGraphemes": 100,
            "maxLength": 1000,
            "type": "string"
          },
          "tags": {
            "items": {
              "maxGraphemes": 100,
              "maxLength": 1000,
              "type": "string"
            },
            "maxLength": 100,
            "type": "array"
          },
          "updatedAt": {
            "format": "datetime",
            "type": "string"
          },
          "usage": {
            "description": "Usage so far, in usageUnit, as a decimal string (\"2.375\") so it round-trips exactly.",
            "maxLength": 64,
            "type": "string"
          },
          "usageUnit": {
            "maxGraphemes": 100,
            "maxLength": 1000,
            "type": "string"
          },
          "vendor": {
            "maxGraphemes": 100,
            "maxLength": 1000,
            "type": "string"
          },
          "warrantyUntil": {
            "description": "The calendar date the warranty runs to, as a datetime at UTC midnight read in UTC.",
            "format": "datetime",
            "type": "string"
          }
        },
        "required": [
          "amount",
          "createdAt"
        ],
        "type": "object"
      },
      "type": "record"
    }
  },
  "id": "com.pimstash.stuff.thing",
  "lexicon": 1
}