@phis/contracts 0.7.0 → 0.7.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/README.md CHANGED
@@ -4,6 +4,13 @@ The agreements phis (`@phis/server`) keeps with what surrounds it: the site UI (
4
4
  separately shipped Add-ons. Each lives under its own subpath, because they hold between different parties
5
5
  and change at different moments.
6
6
 
7
+ > **Part of phis.** This package is one piece of a larger whole and does nothing on its own. A Phi
8
+ > installation is the server [`@phis/server`](https://github.com/phis-dev/phis-server), installed as the
9
+ > Debian package `phis` from `apt.phisys.com` (not from npm), plus Sites built on
10
+ > [`@phis/ui`](https://github.com/phis-dev/phis-ui), which brings this package along. Installation and
11
+ > documentation: [phis.dev](https://phis.dev). Install it directly only to build an Add-on or a Module
12
+ > against these contracts.
13
+
7
14
  ```
8
15
  @phis/contracts/addon what phis and a separately shipped Add-on promise each other
9
16
  @phis/contracts/payments the approved Payment consumer, Provider and merchant-profile types
package/dist/queries.d.ts CHANGED
@@ -84,6 +84,20 @@ export type PhisAddonQueryCondition = {
84
84
  column: string;
85
85
  negated?: boolean;
86
86
  }
87
+ /**
88
+ * Whether bits of a flags column are set: every bit of `mask` (`all`), or none of them (`none`).
89
+ *
90
+ * Yes/no state is kept as bit flags rather than boolean columns, so "the rows that are not a draft"
91
+ * is a question about one bit of an integer. `compare` cannot ask it -- `=` sees the whole number --
92
+ * and without this an Add-on reads every row and filters in code, which also breaks paging: a page of
93
+ * 25 comes back with fewer. The mask is a positive integer; the column is an integer column.
94
+ */
95
+ | {
96
+ kind: "flags";
97
+ column: string;
98
+ mask: PhisAddonQueryValue;
99
+ match: "all" | "none";
100
+ }
87
101
  /**
88
102
  * Whether a text column contains this fragment, case-insensitively.
89
103
  *
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@phis/contracts",
3
- "version": "0.7.0",
3
+ "version": "0.7.1",
4
4
  "license": "Apache-2.0",
5
5
  "type": "module",
6
6
  "publishConfig": {
@@ -140,7 +140,7 @@
140
140
  "type": "git",
141
141
  "url": "git+https://github.com/phis-dev/phis-contracts.git"
142
142
  },
143
- "homepage": "https://github.com/phis-dev/phis-contracts#readme",
143
+ "homepage": "https://phis.dev",
144
144
  "bugs": {
145
145
  "url": "https://github.com/phis-dev/phis-contracts/issues"
146
146
  }