@artsy/cohesion 4.374.0--canary.717.15299.0 → 4.374.0
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/AGENTS.md +132 -0
- package/CHANGELOG.md +48 -0
- package/CLAUDE.md +3 -0
- package/dist/Schema/Values/ContextModule.d.ts +0 -1
- package/dist/Schema/Values/ContextModule.js +0 -1
- package/dist/Schema/index.d.ts +2 -1
- package/dist/Schema/index.js +21 -9
- package/dist/Schema/os/Events/Click.d.ts +1 -24
- package/dist/Schema/os/Events/FilterSortSearch.d.ts +162 -0
- package/dist/Schema/os/Events/InventoryTable.d.ts +2 -33
- package/dist/Schema/os/Events/MaterialsEditor.d.ts +1 -24
- package/dist/Schema/os/Events/Submit.d.ts +1 -31
- package/dist/Schema/os/Events/index.d.ts +26 -18
- package/dist/Schema/os/Events/index.js +6 -4
- package/dist/Schema/os/Values/OsContextModule.d.ts +3 -2
- package/dist/Schema/os/Values/OsContextModule.js +2 -1
- package/dist/Schema/os/Values/OsOwnerType.d.ts +0 -1
- package/dist/Schema/os/Values/OsOwnerType.js +0 -1
- package/package.json +1 -1
- package/dist/Schema/os/Events/Toggle.d.ts +0 -28
- package/dist/Schema/os/Events/__tests__/DistributionSyncFlow.test.d.ts +0 -1
- /package/dist/Schema/os/Events/{Toggle.js → FilterSortSearch.js} +0 -0
package/AGENTS.md
ADDED
|
@@ -0,0 +1,132 @@
|
|
|
1
|
+
# Agent Guidelines
|
|
2
|
+
|
|
3
|
+
`@artsy/cohesion` is **Artsy's analytics schema** — a published TypeScript package of
|
|
4
|
+
interfaces and enums that describe every analytics event sent to Segment/Redshift.
|
|
5
|
+
There is no runtime logic: each event is a typed shape, and each event name maps to a
|
|
6
|
+
downstream Redshift table. Consuming apps (web + iOS) import these types to fire events.
|
|
7
|
+
|
|
8
|
+
## Tech Stack
|
|
9
|
+
|
|
10
|
+
- **TypeScript** (strict) — the entire schema is type definitions; no runtime code
|
|
11
|
+
- **Babel** — compiles `src/**/*.ts` → `dist/` (`@babel/preset-typescript`)
|
|
12
|
+
- **tsc** — type-checking and `.d.ts` emission only (not used for transpiling)
|
|
13
|
+
- **Jest** — tests assert each event interface serializes to its expected JSON shape
|
|
14
|
+
- **ESLint + Prettier** — `simple-import-sort` and `sort-keys-fix` are enforced
|
|
15
|
+
- **TypeDoc** — public docs at https://cohesion.artsy.net are generated from doc comments
|
|
16
|
+
- **Auto / CircleCI** — versioning and npm publish on merge to `main`
|
|
17
|
+
|
|
18
|
+
## Common Commands
|
|
19
|
+
|
|
20
|
+
- `yarn test` — run the Jest suite (`<file>` or `-t <name>` to scope)
|
|
21
|
+
- `yarn type-check` — `tsc --noEmit` (also runs on pre-push)
|
|
22
|
+
- `yarn lint` — `eslint . --ext .ts --fix` (import + key sorting)
|
|
23
|
+
- `yarn docs` — regenerate TypeDoc output into `doc/`
|
|
24
|
+
|
|
25
|
+
## Pre-Commit Verification
|
|
26
|
+
|
|
27
|
+
Before every commit, verify on pending files:
|
|
28
|
+
|
|
29
|
+
```sh
|
|
30
|
+
yarn type-check
|
|
31
|
+
yarn test
|
|
32
|
+
yarn lint
|
|
33
|
+
```
|
|
34
|
+
|
|
35
|
+
`husky` runs `lint-staged` on pre-commit and `yarn type-check` on pre-push. Never commit
|
|
36
|
+
code that fails these checks.
|
|
37
|
+
|
|
38
|
+
## Code Style & Common Patterns
|
|
39
|
+
|
|
40
|
+
These are enforced by lint/test or are established conventions — follow them verbatim:
|
|
41
|
+
|
|
42
|
+
- **One interface per event.** Name it `UpperCamelCase`; its `action` literal and the
|
|
43
|
+
matching `ActionType`/`OsActionType` enum member are `lowerCamelCase`. The enum member
|
|
44
|
+
value **is** the Redshift table name, so it must not change casually.
|
|
45
|
+
- **`action` is always a literal type**, e.g. `action: ActionType.commercialFilterParamsChanged`
|
|
46
|
+
(not the bare `ActionType`).
|
|
47
|
+
- **Sort keys alphabetically.** `sort-keys-fix` lints interface members, enum members, and
|
|
48
|
+
object literals (including test fixtures) into alphabetical order. Run `yarn lint` to fix.
|
|
49
|
+
- **Sort imports.** `simple-import-sort` orders imports; let `--fix` handle it.
|
|
50
|
+
- **Every event needs a context module and an owner type.** Use `context_module`
|
|
51
|
+
(`ContextModule`/`OsContextModule`) for the component, and an owner-type field for the
|
|
52
|
+
page/screen: `context_owner_type` (`OwnerType`), or `context_page_owner_type` /
|
|
53
|
+
`context_screen_owner_type` for the page/screen-scoped subtypes.
|
|
54
|
+
- **Document every event with a TypeDoc block** containing a prose description and an
|
|
55
|
+
`@example` code fence showing the emitted JSON. This is the public documentation — see
|
|
56
|
+
`src/Schema/Events/FilterAndSort.ts` for the canonical style.
|
|
57
|
+
- **Aggregate interfaces into a union** (e.g. `OsSubmitEvent`, `OsEvent`) and re-export
|
|
58
|
+
every new file from the relevant `index.ts` and `src/Schema/index.ts`.
|
|
59
|
+
- **Prettier:** no semicolons, double quotes, trailing commas, 2-space indent.
|
|
60
|
+
|
|
61
|
+
To add a CMS or core event, follow the step-by-step guide in [README.md](README.md#schema).
|
|
62
|
+
|
|
63
|
+
## ArtOS Events (`src/Schema/os/`)
|
|
64
|
+
|
|
65
|
+
ArtOS events have their **own** schema and conventions — do **not** reuse CMS or core
|
|
66
|
+
events for ArtOS. When adding ArtOS tracking, follow these principles (from the
|
|
67
|
+
[ArtOS tracking guidelines](https://app.notion.com/p/373cab0764a080fca7e7d5a984ec17c7) and
|
|
68
|
+
[Filter/Sort/Search doc](https://app.notion.com/p/37bcab0764a081a2b22dc0f6434e44fa)):
|
|
69
|
+
|
|
70
|
+
1. **Live under `src/Schema/os/`** with its own `Events/` and `Values/` folders. ArtOS has
|
|
71
|
+
dedicated `OsActionType`, `OsContextModule`, and `OsOwnerType` — never the shared ones.
|
|
72
|
+
2. **Never reuse CMS events** for ArtOS surfaces, and vice versa.
|
|
73
|
+
3. **Name events `VerbNoun`, past tense** — `ClickedFilterDrawer`, `CreatedStudioContent`,
|
|
74
|
+
`BulkEditedArtworks`. (The older `NounVerb` names like `ListCreated` were flipped.)
|
|
75
|
+
4. **No generic action events.** Avoid `InventoryClicked` / `Clicked` / `Toggled` /
|
|
76
|
+
`Impression`; events must name the specific intent (`ClickedActionsDropdown`,
|
|
77
|
+
not a catch-all click). Events should be **reusable across surfaces** by intent — e.g.
|
|
78
|
+
`ClickedFilterDrawer` can fire on any page that has a filter component.
|
|
79
|
+
5. **Differentiate surfaces via owner type, not a module field.** Do not add an `OSModule`
|
|
80
|
+
field; use `context_page_owner_type` (`inventory`, `collection`, `studioInstagram`, …)
|
|
81
|
+
to distinguish ArtOS surfaces. The URL itself changes (`/catalog` → `/lists` → …).
|
|
82
|
+
6. **Group reusable events by interaction in shared files** (`Click.ts`, `Impression.ts`,
|
|
83
|
+
`Toggle.ts`). A set of events that is 100% non-reusable and scoped to one surface may get
|
|
84
|
+
its own file (e.g. `InstagramEditor.ts`, `MultiAddFlow.ts`).
|
|
85
|
+
7. **Backend-tied, flow-completion events go in `Submit.ts`** — events that fire on
|
|
86
|
+
successful completion of a flow and depend on a backend change (`BulkEditedArtworks`,
|
|
87
|
+
`DeletedArtwork`, `DistributedArtworks`). These are platform-agnostic (web + future app),
|
|
88
|
+
so they stay out of the web-only `Click.ts`.
|
|
89
|
+
8. **Avoid name collisions with existing events** — the OS list events drop the "Artwork"
|
|
90
|
+
qualifier (`CreatedList`, not `CreatedArtworkList`) so they don't clash with the existing
|
|
91
|
+
CMS saved-artwork-list events.
|
|
92
|
+
|
|
93
|
+
## File Organization
|
|
94
|
+
|
|
95
|
+
```
|
|
96
|
+
src/
|
|
97
|
+
├── index.ts # Top-level package entry (re-exports Schema + DeprecatedHelpers)
|
|
98
|
+
├── Schema/
|
|
99
|
+
│ ├── index.ts # Re-exports every event + value file (web/iOS, CMS, ArtOS)
|
|
100
|
+
│ ├── Events/ # Core web + iOS events (FilterAndSort, Search, Click, Tap, …)
|
|
101
|
+
│ ├── Values/ # Shared enums: ContextModule, OwnerType, Intent, Tab, …
|
|
102
|
+
│ ├── CMS/ # CMS (gallery partner CMS) schema — Events/ + Values/
|
|
103
|
+
│ └── os/ # ArtOS schema — see "ArtOS Events" above
|
|
104
|
+
│ ├── Events/ # Click, Submit, InstagramEditor, MultiAddFlow, … (+ __tests__/)
|
|
105
|
+
│ └── Values/ # OsContextModule, OsOwnerType
|
|
106
|
+
├── DeprecatedSchema/ # Frozen legacy schema — do not extend
|
|
107
|
+
└── DeprecatedHelpers/ # Frozen legacy helpers — do not extend
|
|
108
|
+
```
|
|
109
|
+
|
|
110
|
+
## Workflow
|
|
111
|
+
|
|
112
|
+
- Branch off `main`; open a PR using `pull_request_template.md`.
|
|
113
|
+
- Merging to `main` auto-publishes a new npm version via Auto; **PRs from feature branches
|
|
114
|
+
publish canary versions** consumers can test before merge.
|
|
115
|
+
- Commit messages follow Conventional Commits (e.g. `chore:`, `feat:`) — used by Auto to
|
|
116
|
+
decide the version bump.
|
|
117
|
+
|
|
118
|
+
## Gotchas
|
|
119
|
+
|
|
120
|
+
- **Adding a file is not enough** — it must be re-exported from `src/Schema/index.ts` (and
|
|
121
|
+
any folder `index.ts` union) or consumers can't import it.
|
|
122
|
+
- **The enum value is a contract.** An `ActionType`/`OsActionType` value names a Redshift
|
|
123
|
+
table; renaming it breaks the downstream data pipeline.
|
|
124
|
+
- **`DeprecatedSchema` / `DeprecatedHelpers` are frozen** — add new events to `Schema`.
|
|
125
|
+
- **Doc comments are shipped docs**, not just hints — keep `@example` blocks accurate.
|
|
126
|
+
- The data team owns the core `Schema`; coordinate before changing shared `Values`.
|
|
127
|
+
|
|
128
|
+
## Further Documentation
|
|
129
|
+
|
|
130
|
+
- [README.md](README.md) — setup, and the canonical "add a new event" walkthrough
|
|
131
|
+
- ArtOS tracking guidelines: [event list & principles](https://app.notion.com/p/373cab0764a080fca7e7d5a984ec17c7), [Filter/Sort/Search](https://app.notion.com/p/37bcab0764a081a2b22dc0f6434e44fa)
|
|
132
|
+
- Generated API docs: https://cohesion.artsy.net
|
package/CHANGELOG.md
CHANGED
|
@@ -1,3 +1,51 @@
|
|
|
1
|
+
# v4.374.0 (Sat Jun 27 2026)
|
|
2
|
+
|
|
3
|
+
#### 🚀 Enhancement
|
|
4
|
+
|
|
5
|
+
- chore(os): Add tracking schema for Art OS Filter, Sort, Search [#714](https://github.com/artsy/cohesion/pull/714) ([@olerichter00](https://github.com/olerichter00))
|
|
6
|
+
|
|
7
|
+
#### Authors: 1
|
|
8
|
+
|
|
9
|
+
- Ole ([@olerichter00](https://github.com/olerichter00))
|
|
10
|
+
|
|
11
|
+
---
|
|
12
|
+
|
|
13
|
+
# v4.373.0 (Fri Jun 26 2026)
|
|
14
|
+
|
|
15
|
+
#### 🚀 Enhancement
|
|
16
|
+
|
|
17
|
+
- fix(os): Export MaterialsEditor events correctly from Schema [#719](https://github.com/artsy/cohesion/pull/719) ([@olerichter00](https://github.com/olerichter00))
|
|
18
|
+
|
|
19
|
+
#### Authors: 1
|
|
20
|
+
|
|
21
|
+
- Ole ([@olerichter00](https://github.com/olerichter00))
|
|
22
|
+
|
|
23
|
+
---
|
|
24
|
+
|
|
25
|
+
# v4.372.0 (Fri Jun 26 2026)
|
|
26
|
+
|
|
27
|
+
#### 🚀 Enhancement
|
|
28
|
+
|
|
29
|
+
- chore: Remove list from os owner type [#718](https://github.com/artsy/cohesion/pull/718) ([@MrSltun](https://github.com/MrSltun))
|
|
30
|
+
|
|
31
|
+
#### Authors: 1
|
|
32
|
+
|
|
33
|
+
- Sultan Al-Maari ([@MrSltun](https://github.com/MrSltun))
|
|
34
|
+
|
|
35
|
+
---
|
|
36
|
+
|
|
37
|
+
# v4.371.0 (Fri Jun 26 2026)
|
|
38
|
+
|
|
39
|
+
#### 🚀 Enhancement
|
|
40
|
+
|
|
41
|
+
- chore: Add AGENTS.md and CLAUDE.md for agent onboarding [#715](https://github.com/artsy/cohesion/pull/715) ([@MounirDhahri](https://github.com/MounirDhahri))
|
|
42
|
+
|
|
43
|
+
#### Authors: 1
|
|
44
|
+
|
|
45
|
+
- Mounir Dhahri ([@MounirDhahri](https://github.com/MounirDhahri))
|
|
46
|
+
|
|
47
|
+
---
|
|
48
|
+
|
|
1
49
|
# v4.370.0 (Thu Jun 25 2026)
|
|
2
50
|
|
|
3
51
|
#### 🚀 Enhancement
|
package/CLAUDE.md
ADDED
|
@@ -55,7 +55,6 @@ export declare enum ContextModule {
|
|
|
55
55
|
artworkRecommendationsRail = "artworkRecommendationsRail",
|
|
56
56
|
artworkSidebar = "artworkSidebar",
|
|
57
57
|
artworksTab = "artworksTab",
|
|
58
|
-
artworkTable = "artworkTable",
|
|
59
58
|
associatedViewingRoom = "associatedViewingRoom",
|
|
60
59
|
auctionCard = "auctionCard",
|
|
61
60
|
auctionHome = "auctionHome",
|
|
@@ -69,7 +69,6 @@ exports.ContextModule = ContextModule;
|
|
|
69
69
|
ContextModule["artworkRecommendationsRail"] = "artworkRecommendationsRail";
|
|
70
70
|
ContextModule["artworkSidebar"] = "artworkSidebar";
|
|
71
71
|
ContextModule["artworksTab"] = "artworksTab";
|
|
72
|
-
ContextModule["artworkTable"] = "artworkTable";
|
|
73
72
|
ContextModule["associatedViewingRoom"] = "associatedViewingRoom";
|
|
74
73
|
ContextModule["auctionCard"] = "auctionCard";
|
|
75
74
|
ContextModule["auctionHome"] = "auctionHome";
|
package/dist/Schema/index.d.ts
CHANGED
|
@@ -54,10 +54,11 @@ export * from "./os/Events";
|
|
|
54
54
|
export * from "./os/Events/BrandKit";
|
|
55
55
|
export * from "./os/Events/Click";
|
|
56
56
|
export * from "./os/Events/ConnectedAppsFlow";
|
|
57
|
+
export * from "./os/Events/FilterSortSearch";
|
|
57
58
|
export * from "./os/Events/InstagramEditor";
|
|
58
59
|
export * from "./os/Events/InventoryTable";
|
|
60
|
+
export * from "./os/Events/MaterialsEditor";
|
|
59
61
|
export * from "./os/Events/MultiAddFlow";
|
|
60
62
|
export * from "./os/Events/Submit";
|
|
61
|
-
export * from "./os/Events/Toggle";
|
|
62
63
|
export * from "./os/Values/OsContextModule";
|
|
63
64
|
export * from "./os/Values/OsOwnerType";
|
package/dist/Schema/index.js
CHANGED
|
@@ -568,6 +568,18 @@ Object.keys(_ConnectedAppsFlow).forEach(function (key) {
|
|
|
568
568
|
});
|
|
569
569
|
});
|
|
570
570
|
|
|
571
|
+
var _FilterSortSearch = require("./os/Events/FilterSortSearch");
|
|
572
|
+
|
|
573
|
+
Object.keys(_FilterSortSearch).forEach(function (key) {
|
|
574
|
+
if (key === "default" || key === "__esModule") return;
|
|
575
|
+
Object.defineProperty(exports, key, {
|
|
576
|
+
enumerable: true,
|
|
577
|
+
get: function get() {
|
|
578
|
+
return _FilterSortSearch[key];
|
|
579
|
+
}
|
|
580
|
+
});
|
|
581
|
+
});
|
|
582
|
+
|
|
571
583
|
var _InstagramEditor = require("./os/Events/InstagramEditor");
|
|
572
584
|
|
|
573
585
|
Object.keys(_InstagramEditor).forEach(function (key) {
|
|
@@ -592,38 +604,38 @@ Object.keys(_InventoryTable).forEach(function (key) {
|
|
|
592
604
|
});
|
|
593
605
|
});
|
|
594
606
|
|
|
595
|
-
var
|
|
607
|
+
var _MaterialsEditor = require("./os/Events/MaterialsEditor");
|
|
596
608
|
|
|
597
|
-
Object.keys(
|
|
609
|
+
Object.keys(_MaterialsEditor).forEach(function (key) {
|
|
598
610
|
if (key === "default" || key === "__esModule") return;
|
|
599
611
|
Object.defineProperty(exports, key, {
|
|
600
612
|
enumerable: true,
|
|
601
613
|
get: function get() {
|
|
602
|
-
return
|
|
614
|
+
return _MaterialsEditor[key];
|
|
603
615
|
}
|
|
604
616
|
});
|
|
605
617
|
});
|
|
606
618
|
|
|
607
|
-
var
|
|
619
|
+
var _MultiAddFlow = require("./os/Events/MultiAddFlow");
|
|
608
620
|
|
|
609
|
-
Object.keys(
|
|
621
|
+
Object.keys(_MultiAddFlow).forEach(function (key) {
|
|
610
622
|
if (key === "default" || key === "__esModule") return;
|
|
611
623
|
Object.defineProperty(exports, key, {
|
|
612
624
|
enumerable: true,
|
|
613
625
|
get: function get() {
|
|
614
|
-
return
|
|
626
|
+
return _MultiAddFlow[key];
|
|
615
627
|
}
|
|
616
628
|
});
|
|
617
629
|
});
|
|
618
630
|
|
|
619
|
-
var
|
|
631
|
+
var _Submit = require("./os/Events/Submit");
|
|
620
632
|
|
|
621
|
-
Object.keys(
|
|
633
|
+
Object.keys(_Submit).forEach(function (key) {
|
|
622
634
|
if (key === "default" || key === "__esModule") return;
|
|
623
635
|
Object.defineProperty(exports, key, {
|
|
624
636
|
enumerable: true,
|
|
625
637
|
get: function get() {
|
|
626
|
-
return
|
|
638
|
+
return _Submit[key];
|
|
627
639
|
}
|
|
628
640
|
});
|
|
629
641
|
});
|
|
@@ -49,29 +49,6 @@ export interface ClickedCancelBulkEdit {
|
|
|
49
49
|
context_page_owner_type: OsOwnerType;
|
|
50
50
|
artwork_ids: string[];
|
|
51
51
|
}
|
|
52
|
-
/**
|
|
53
|
-
* The divergence marker appears in a syncable cell when the OS value
|
|
54
|
-
* diverges from the downstream destination value (e.g. Artsy CMS). Fires as an
|
|
55
|
-
* impression when the marker first renders for a given artwork/field combination.
|
|
56
|
-
*
|
|
57
|
-
* @example
|
|
58
|
-
* ```
|
|
59
|
-
* {
|
|
60
|
-
* action: "viewedDivergenceMarker",
|
|
61
|
-
* context_module: "artworkTable",
|
|
62
|
-
* context_page_owner_type: "inventory",
|
|
63
|
-
* artwork_id: "abc123",
|
|
64
|
-
* field: "availability"
|
|
65
|
-
* }
|
|
66
|
-
* ```
|
|
67
|
-
*/
|
|
68
|
-
export interface ViewedDivergenceMarker {
|
|
69
|
-
action: OsActionType.viewedDivergenceMarker;
|
|
70
|
-
context_module: OsContextModule.artworkTable;
|
|
71
|
-
context_page_owner_type: OsOwnerType;
|
|
72
|
-
artwork_id: string;
|
|
73
|
-
field: "availability" | "medium" | "price";
|
|
74
|
-
}
|
|
75
52
|
/**
|
|
76
53
|
* A partner opens a list, either from the Lists surface (a `ListCard`) or from
|
|
77
54
|
* the recent-lists shortcut on the Inventory surface. `source` distinguishes the
|
|
@@ -97,4 +74,4 @@ export interface ClickedOpenList {
|
|
|
97
74
|
list_type: string;
|
|
98
75
|
source: string;
|
|
99
76
|
}
|
|
100
|
-
export type OsClickEvent = ClickedActionsDropdown | ClickedCancelBulkEdit |
|
|
77
|
+
export type OsClickEvent = ClickedActionsDropdown | ClickedCancelBulkEdit | ClickedOpenList;
|
|
@@ -0,0 +1,162 @@
|
|
|
1
|
+
import { OsContextModule } from "../Values/OsContextModule";
|
|
2
|
+
import { OsOwnerType } from "../Values/OsOwnerType";
|
|
3
|
+
import { OsActionType } from ".";
|
|
4
|
+
/**
|
|
5
|
+
* Schemas describing Art OS Filter, Sort & Search events
|
|
6
|
+
* @packageDocumentation
|
|
7
|
+
*/
|
|
8
|
+
/**
|
|
9
|
+
* A partner opens the filter drawer via the Filter pill in the inventory or collection view.
|
|
10
|
+
*
|
|
11
|
+
* This schema describes events sent to Segment from [[OsClickedFilterDrawer]]
|
|
12
|
+
*
|
|
13
|
+
* @example
|
|
14
|
+
* ```
|
|
15
|
+
* {
|
|
16
|
+
* action: "clickedFilterDrawer",
|
|
17
|
+
* context_module: "artworkFilters",
|
|
18
|
+
* context_page_owner_type: "inventory",
|
|
19
|
+
* value: 2
|
|
20
|
+
* }
|
|
21
|
+
* ```
|
|
22
|
+
*/
|
|
23
|
+
export interface OsClickedFilterDrawer {
|
|
24
|
+
action: OsActionType.clickedFilterDrawer;
|
|
25
|
+
context_module: OsContextModule.artworkFilters;
|
|
26
|
+
context_page_owner_type: OsOwnerType.inventory | OsOwnerType.collection;
|
|
27
|
+
/** Number of active filters when opening the drawer */
|
|
28
|
+
value: number;
|
|
29
|
+
}
|
|
30
|
+
/**
|
|
31
|
+
* A partner applies a filter in the filter drawer.
|
|
32
|
+
* One event fires per selection; `label` identifies the filter type
|
|
33
|
+
* and `value` carries the selected value.
|
|
34
|
+
*
|
|
35
|
+
* This schema describes events sent to Segment from [[OsAppliedFilter]]
|
|
36
|
+
*
|
|
37
|
+
* @example Availability filter
|
|
38
|
+
* ```
|
|
39
|
+
* {
|
|
40
|
+
* action: "appliedFilter",
|
|
41
|
+
* context_module: "artworkFilters",
|
|
42
|
+
* context_page_owner_type: "inventory",
|
|
43
|
+
* label: "availability",
|
|
44
|
+
* value: "for sale"
|
|
45
|
+
* }
|
|
46
|
+
* ```
|
|
47
|
+
*
|
|
48
|
+
* @example Artist filter
|
|
49
|
+
* ```
|
|
50
|
+
* {
|
|
51
|
+
* action: "appliedFilter",
|
|
52
|
+
* context_module: "artworkFilters",
|
|
53
|
+
* context_page_owner_type: "collection",
|
|
54
|
+
* label: "artist",
|
|
55
|
+
* value: "<artistId>"
|
|
56
|
+
* }
|
|
57
|
+
* ```
|
|
58
|
+
*/
|
|
59
|
+
export interface OsAppliedFilter {
|
|
60
|
+
action: OsActionType.appliedFilter;
|
|
61
|
+
context_module: OsContextModule.artworkFilters;
|
|
62
|
+
context_page_owner_type: OsOwnerType.inventory | OsOwnerType.collection;
|
|
63
|
+
label: "availability" | "status" | "location" | "artist" | "coa";
|
|
64
|
+
value: string;
|
|
65
|
+
}
|
|
66
|
+
/**
|
|
67
|
+
* A partner removes a single filter via the selected-filter pill or the per-section Clear link.
|
|
68
|
+
*
|
|
69
|
+
* This schema describes events sent to Segment from [[OsRemovedFilter]]
|
|
70
|
+
*
|
|
71
|
+
* @example
|
|
72
|
+
* ```
|
|
73
|
+
* {
|
|
74
|
+
* action: "removedFilter",
|
|
75
|
+
* context_module: "artworkFilters",
|
|
76
|
+
* context_page_owner_type: "inventory",
|
|
77
|
+
* label: "availability",
|
|
78
|
+
* value: "for sale"
|
|
79
|
+
* }
|
|
80
|
+
* ```
|
|
81
|
+
*/
|
|
82
|
+
export interface OsRemovedFilter {
|
|
83
|
+
action: OsActionType.removedFilter;
|
|
84
|
+
context_module: OsContextModule.artworkFilters;
|
|
85
|
+
context_page_owner_type: OsOwnerType.inventory | OsOwnerType.collection;
|
|
86
|
+
label: "availability" | "status" | "location" | "artist" | "coa";
|
|
87
|
+
value: string;
|
|
88
|
+
}
|
|
89
|
+
/**
|
|
90
|
+
* A partner clears all active filters via the "Clear all" button.
|
|
91
|
+
*
|
|
92
|
+
* This schema describes events sent to Segment from [[OsClearedFilters]]
|
|
93
|
+
*
|
|
94
|
+
* @example
|
|
95
|
+
* ```
|
|
96
|
+
* {
|
|
97
|
+
* action: "clearedFilters",
|
|
98
|
+
* context_module: "artworkFilters",
|
|
99
|
+
* context_page_owner_type: "inventory",
|
|
100
|
+
* value: 3
|
|
101
|
+
* }
|
|
102
|
+
* ```
|
|
103
|
+
*/
|
|
104
|
+
export interface OsClearedFilters {
|
|
105
|
+
action: OsActionType.clearedFilters;
|
|
106
|
+
context_module: OsContextModule.artworkFilters;
|
|
107
|
+
context_page_owner_type: OsOwnerType.inventory | OsOwnerType.collection;
|
|
108
|
+
/** Number of filters cleared */
|
|
109
|
+
value: number;
|
|
110
|
+
}
|
|
111
|
+
/**
|
|
112
|
+
* A partner clicks a sortable column header to sort the artwork table.
|
|
113
|
+
* A column-header click cycles ascending → descending → default.
|
|
114
|
+
*
|
|
115
|
+
* This schema describes events sent to Segment from [[OsSortedColumn]]
|
|
116
|
+
*
|
|
117
|
+
* @example
|
|
118
|
+
* ```
|
|
119
|
+
* {
|
|
120
|
+
* action: "sortedColumn",
|
|
121
|
+
* context_module: "artworkTable",
|
|
122
|
+
* context_page_owner_type: "inventory",
|
|
123
|
+
* label: "date added",
|
|
124
|
+
* value: "asc"
|
|
125
|
+
* }
|
|
126
|
+
* ```
|
|
127
|
+
*/
|
|
128
|
+
export interface OsSortedColumn {
|
|
129
|
+
action: OsActionType.sortedColumn;
|
|
130
|
+
context_module: OsContextModule.artworkTable;
|
|
131
|
+
context_page_owner_type: OsOwnerType.inventory | OsOwnerType.collection;
|
|
132
|
+
/** The column being sorted */
|
|
133
|
+
label: string;
|
|
134
|
+
value: "asc" | "desc" | "default";
|
|
135
|
+
}
|
|
136
|
+
/**
|
|
137
|
+
* A partner submits a keyword search in the artwork search bar.
|
|
138
|
+
* Fires on the debounced commit (not per keystroke).
|
|
139
|
+
*
|
|
140
|
+
* This schema describes events sent to Segment from [[OsSearchedArtworks]]
|
|
141
|
+
*
|
|
142
|
+
* @example
|
|
143
|
+
* ```
|
|
144
|
+
* {
|
|
145
|
+
* action: "searchedArtworks",
|
|
146
|
+
* context_module: "artworkSearch",
|
|
147
|
+
* context_page_owner_type: "inventory",
|
|
148
|
+
* query: "Kelly",
|
|
149
|
+
* value: 42
|
|
150
|
+
* }
|
|
151
|
+
* ```
|
|
152
|
+
*/
|
|
153
|
+
export interface OsSearchedArtworks {
|
|
154
|
+
action: OsActionType.searchedArtworks;
|
|
155
|
+
context_module: OsContextModule.artworkSearch;
|
|
156
|
+
context_page_owner_type: OsOwnerType.inventory | OsOwnerType.collection;
|
|
157
|
+
/** The committed search string */
|
|
158
|
+
query: string;
|
|
159
|
+
/** Number of results after the search resolves */
|
|
160
|
+
value: number;
|
|
161
|
+
}
|
|
162
|
+
export type OsFilterSortSearch = OsAppliedFilter | OsClearedFilters | OsClickedFilterDrawer | OsRemovedFilter | OsSearchedArtworks | OsSortedColumn;
|
|
@@ -311,41 +311,10 @@ export interface OsClickedActionsDropdown {
|
|
|
311
311
|
* Top-bar "More": "Delete"
|
|
312
312
|
* Row/context menu only: "Remove from Artsy" | "Change Collection" | "Remove from Collection" |
|
|
313
313
|
* "Convert to Edition Set" | "Edit Edition Set" | "Convert to Unique"
|
|
314
|
-
* Distribution: "Distribute to Artsy"
|
|
315
314
|
*/
|
|
316
|
-
value: "Add to Artsy" | "Add to Collection" | "Change Collection" | "Checklist" | "Convert to Edition Set" | "Convert to Unique" | "Delete" | "
|
|
315
|
+
value: "Add to Artsy" | "Add to Collection" | "Change Collection" | "Checklist" | "Convert to Edition Set" | "Convert to Unique" | "Delete" | "Edit Edition Set" | "Instagram Post" | "Mailchimp Campaign" | "Remove from Artsy" | "Remove from Collection" | "Tearsheet";
|
|
317
316
|
/** Which button or trigger the partner used to open this dropdown */
|
|
318
317
|
label: "add to dropdown" | "context menu" | "more dropdown" | "row action" | "studio dropdown";
|
|
319
318
|
artwork_ids: string[];
|
|
320
319
|
}
|
|
321
|
-
|
|
322
|
-
* A partner edits an availability, medium, or price cell that is configured to sync
|
|
323
|
-
* with a downstream destination (e.g. Artsy CMS). Fires on mutation success. Distinct
|
|
324
|
-
* from {@link OsEditedArtworkField} (general field edits) — this captures only the three
|
|
325
|
-
* syncable fields and whether a push to the destination actually occurred.
|
|
326
|
-
*
|
|
327
|
-
* @example
|
|
328
|
-
* ```
|
|
329
|
-
* {
|
|
330
|
-
* action: "editedInventoryField",
|
|
331
|
-
* context_module: "artworkTable",
|
|
332
|
-
* context_page_owner_type: "inventory",
|
|
333
|
-
* destination: ["artsy"],
|
|
334
|
-
* artwork_id: "abc123",
|
|
335
|
-
* field: "availability",
|
|
336
|
-
* did_push_to_cms: false
|
|
337
|
-
* }
|
|
338
|
-
* ```
|
|
339
|
-
*/
|
|
340
|
-
export interface EditedInventoryField {
|
|
341
|
-
action: OsActionType.editedInventoryField;
|
|
342
|
-
context_module: OsContextModule.artworkTable;
|
|
343
|
-
context_page_owner_type: OsOwnerType;
|
|
344
|
-
/** Downstream destinations the value was pushed to (e.g. ["artsy"]) */
|
|
345
|
-
destination: string[];
|
|
346
|
-
artwork_id: string;
|
|
347
|
-
field: "availability" | "medium" | "price";
|
|
348
|
-
/** false e.g. for "Not For Sale" (OS-only value that does not push to the destination) */
|
|
349
|
-
did_push_to_cms: boolean;
|
|
350
|
-
}
|
|
351
|
-
export type OsInventoryTable = EditedInventoryField | OsAddedArtist | OsAddedArtworkDocument | OsAddedLocation | OsClickedActionsDropdown | OsClickedArtworkRow | OsClickedEditionSetRow | OsClickedImagesModal | OsEditedArtworkField | OsRemovedArtworkDocument | OsSavedArtworkImages;
|
|
320
|
+
export type OsInventoryTable = OsAddedArtist | OsAddedArtworkDocument | OsAddedLocation | OsClickedActionsDropdown | OsClickedArtworkRow | OsClickedEditionSetRow | OsClickedImagesModal | OsEditedArtworkField | OsRemovedArtworkDocument | OsSavedArtworkImages;
|
|
@@ -5,29 +5,6 @@ import { OsActionType } from ".";
|
|
|
5
5
|
* Schemas describing Art OS Materials (Tearsheet / Checklist) events
|
|
6
6
|
* @packageDocumentation
|
|
7
7
|
*/
|
|
8
|
-
/**
|
|
9
|
-
* A partner selects "Tearsheet" or "Checklist" from the inventory actions dropdown
|
|
10
|
-
* to open the Materials editor. The dropdown is surfaced three ways: the artwork's
|
|
11
|
-
* actions, bulk actions, and the right-click context menu.
|
|
12
|
-
*
|
|
13
|
-
* This schema describes events sent to Segment from [[OsClickedActionsDropdown]]
|
|
14
|
-
*
|
|
15
|
-
* @example
|
|
16
|
-
* ```
|
|
17
|
-
* {
|
|
18
|
-
* action: "clickedActionsDropdown",
|
|
19
|
-
* context_module: "actionsDropdown",
|
|
20
|
-
* context_page_owner_type: "inventory",
|
|
21
|
-
* value: "Tearsheet"
|
|
22
|
-
* }
|
|
23
|
-
* ```
|
|
24
|
-
*/
|
|
25
|
-
export interface OsClickedActionsDropdown {
|
|
26
|
-
action: OsActionType.clickedActionsDropdown;
|
|
27
|
-
context_module: OsContextModule.actionsDropdown;
|
|
28
|
-
context_page_owner_type: OsOwnerType;
|
|
29
|
-
value: "Tearsheet" | "Checklist" | "Instagram Post";
|
|
30
|
-
}
|
|
31
8
|
/**
|
|
32
9
|
* A partner clicks "Exit" in the Materials editor header to leave the editor.
|
|
33
10
|
*
|
|
@@ -108,4 +85,4 @@ export interface OsCreatedStudioContent {
|
|
|
108
85
|
/** Generic catch-all for the artwork detail fields included in the generated material */
|
|
109
86
|
content: Record<string, unknown>;
|
|
110
87
|
}
|
|
111
|
-
export type OsMaterialsEditor =
|
|
88
|
+
export type OsMaterialsEditor = OsClickedBrandKitModal | OsClickedExitEditor | OsCreatedStudioContent;
|
|
@@ -78,36 +78,6 @@ export interface DistributedArtworks {
|
|
|
78
78
|
artwork_ids: string[];
|
|
79
79
|
selected_count: number;
|
|
80
80
|
}
|
|
81
|
-
/**
|
|
82
|
-
* The websocket-driven distribute job reaches a terminal state (complete or failed).
|
|
83
|
-
* Driven by `useDistributeWebsocket` (`PartnersChannel`, `metadata_update`).
|
|
84
|
-
* Fire on the final websocket message to capture success/skip rates.
|
|
85
|
-
*
|
|
86
|
-
* @example
|
|
87
|
-
* ```
|
|
88
|
-
* {
|
|
89
|
-
* action: "completedArtworkDistribution",
|
|
90
|
-
* context_module: "artworkTable",
|
|
91
|
-
* context_page_owner_type: "inventory",
|
|
92
|
-
* destination: ["artsy"],
|
|
93
|
-
* total_artworks: 12,
|
|
94
|
-
* success_count: 10,
|
|
95
|
-
* skipped_count: 2,
|
|
96
|
-
* value: "partial"
|
|
97
|
-
* }
|
|
98
|
-
* ```
|
|
99
|
-
*/
|
|
100
|
-
export interface CompletedArtworkDistribution {
|
|
101
|
-
action: OsActionType.completedArtworkDistribution;
|
|
102
|
-
context_module: OsContextModule.artworkTable;
|
|
103
|
-
context_page_owner_type: OsOwnerType.inventory;
|
|
104
|
-
/** Destination marketplaces (currently Artsy only; extensible) */
|
|
105
|
-
destination: string[];
|
|
106
|
-
total_artworks: number;
|
|
107
|
-
success_count: number;
|
|
108
|
-
skipped_count: number;
|
|
109
|
-
value: "success" | "partial" | "error";
|
|
110
|
-
}
|
|
111
81
|
/**
|
|
112
82
|
* A partner creates a new list in the Add-to-list modal and bulk-adds the current
|
|
113
83
|
* selection to it. `start_date` / `end_date` are null when unset; `fair_id` is
|
|
@@ -289,4 +259,4 @@ export interface DistributedList {
|
|
|
289
259
|
fair_id?: string;
|
|
290
260
|
partner_show_id: string;
|
|
291
261
|
}
|
|
292
|
-
export type OsSubmitEvent = BulkEditedArtworks |
|
|
262
|
+
export type OsSubmitEvent = BulkEditedArtworks | DeletedArtwork | DistributedArtworks | CreatedList | AddedArtworksToList | UpdatedList | DeletedList | RemovedArtworksFromList | MovedArtworksBetweenLists | DistributedList;
|
|
@@ -1,24 +1,28 @@
|
|
|
1
1
|
import { ClickedAddBrandKitFile, ClickedBrandKitColor, ClickedBrandKitFont, ClickedSaveBrandKit } from "./BrandKit";
|
|
2
2
|
import { OsClickEvent } from "./Click";
|
|
3
3
|
import { OsConnectedAppsFlow } from "./ConnectedAppsFlow";
|
|
4
|
+
import { OsFilterSortSearch } from "./FilterSortSearch";
|
|
4
5
|
import { OsInstagramEditor } from "./InstagramEditor";
|
|
5
6
|
import { OsInventoryTable } from "./InventoryTable";
|
|
6
7
|
import { OsMaterialsEditor } from "./MaterialsEditor";
|
|
7
8
|
import { OsMultiAddFlow } from "./MultiAddFlow";
|
|
8
9
|
import { OsSubmitEvent } from "./Submit";
|
|
9
|
-
import { OsToggleEvent } from "./Toggle";
|
|
10
10
|
/**
|
|
11
11
|
* List of valid schemas for Art OS analytics actions
|
|
12
12
|
*
|
|
13
13
|
* Each event describes one ActionType
|
|
14
14
|
*/
|
|
15
|
-
export type OsEvent = OsMultiAddFlow | ClickedBrandKitColor | ClickedBrandKitFont | ClickedAddBrandKitFile | ClickedSaveBrandKit | OsConnectedAppsFlow | OsClickEvent | OsInstagramEditor | OsInventoryTable | OsMaterialsEditor | OsSubmitEvent
|
|
15
|
+
export type OsEvent = OsMultiAddFlow | ClickedBrandKitColor | ClickedBrandKitFont | ClickedAddBrandKitFile | ClickedSaveBrandKit | OsConnectedAppsFlow | OsClickEvent | OsFilterSortSearch | OsInstagramEditor | OsInventoryTable | OsMaterialsEditor | OsSubmitEvent;
|
|
16
16
|
/**
|
|
17
17
|
* List of all Art OS actions
|
|
18
18
|
*
|
|
19
19
|
* Each OsActionType corresponds with a table in Redshift.
|
|
20
20
|
*/
|
|
21
21
|
export declare enum OsActionType {
|
|
22
|
+
/**
|
|
23
|
+
* Corresponds to {@link OsFilterSortSearch}
|
|
24
|
+
*/
|
|
25
|
+
appliedFilter = "appliedFilter",
|
|
22
26
|
/**
|
|
23
27
|
* Corresponds to {@link OsInventoryTable}
|
|
24
28
|
*/
|
|
@@ -64,6 +68,10 @@ export declare enum OsActionType {
|
|
|
64
68
|
* Corresponds to {@link ClickedCancelBulkEdit}
|
|
65
69
|
*/
|
|
66
70
|
clickedCancelBulkEdit = "clickedCancelBulkEdit",
|
|
71
|
+
/**
|
|
72
|
+
* Corresponds to {@link OsFilterSortSearch}
|
|
73
|
+
*/
|
|
74
|
+
clickedFilterDrawer = "clickedFilterDrawer",
|
|
67
75
|
/**
|
|
68
76
|
* Corresponds to {@link ClickedConnectAccount}
|
|
69
77
|
*/
|
|
@@ -112,10 +120,6 @@ export declare enum OsActionType {
|
|
|
112
120
|
* Corresponds to {@link OsInstagramEditor}
|
|
113
121
|
*/
|
|
114
122
|
clickedUploadImageBank = "clickedUploadImageBank",
|
|
115
|
-
/**
|
|
116
|
-
* Corresponds to {@link CompletedArtworkDistribution}
|
|
117
|
-
*/
|
|
118
|
-
completedArtworkDistribution = "completedArtworkDistribution",
|
|
119
123
|
/**
|
|
120
124
|
* Corresponds to {@link CompletedArtworkImport}
|
|
121
125
|
*/
|
|
@@ -132,6 +136,10 @@ export declare enum OsActionType {
|
|
|
132
136
|
* Corresponds to {@link OsMaterialsEditor} and {@link OsInstagramEditor}
|
|
133
137
|
*/
|
|
134
138
|
createdStudioContent = "createdStudioContent",
|
|
139
|
+
/**
|
|
140
|
+
* Corresponds to {@link OsFilterSortSearch}
|
|
141
|
+
*/
|
|
142
|
+
clearedFilters = "clearedFilters",
|
|
135
143
|
/**
|
|
136
144
|
* Corresponds to {@link DeletedArtwork}
|
|
137
145
|
*/
|
|
@@ -152,10 +160,6 @@ export declare enum OsActionType {
|
|
|
152
160
|
* Corresponds to {@link EditedArtworkField}
|
|
153
161
|
*/
|
|
154
162
|
editedArtworkField = "editedArtworkField",
|
|
155
|
-
/**
|
|
156
|
-
* Corresponds to {@link EditedInventoryField}
|
|
157
|
-
*/
|
|
158
|
-
editedInventoryField = "editedInventoryField",
|
|
159
163
|
/**
|
|
160
164
|
* Corresponds to {@link MovedArtworksBetweenLists}
|
|
161
165
|
*/
|
|
@@ -164,6 +168,10 @@ export declare enum OsActionType {
|
|
|
164
168
|
* Corresponds to {@link OsInventoryTable}
|
|
165
169
|
*/
|
|
166
170
|
removedArtworkDocument = "removedArtworkDocument",
|
|
171
|
+
/**
|
|
172
|
+
* Corresponds to {@link OsFilterSortSearch}
|
|
173
|
+
*/
|
|
174
|
+
removedFilter = "removedFilter",
|
|
167
175
|
/**
|
|
168
176
|
* Corresponds to {@link RemovedArtworksFromList}
|
|
169
177
|
*/
|
|
@@ -177,19 +185,19 @@ export declare enum OsActionType {
|
|
|
177
185
|
*/
|
|
178
186
|
savedArtworkImages = "savedArtworkImages",
|
|
179
187
|
/**
|
|
180
|
-
* Corresponds to {@link
|
|
188
|
+
* Corresponds to {@link OsFilterSortSearch}
|
|
181
189
|
*/
|
|
182
|
-
|
|
190
|
+
searchedArtworks = "searchedArtworks",
|
|
183
191
|
/**
|
|
184
|
-
* Corresponds to {@link
|
|
192
|
+
* Corresponds to {@link OsFilterSortSearch}
|
|
185
193
|
*/
|
|
186
|
-
|
|
194
|
+
sortedColumn = "sortedColumn",
|
|
187
195
|
/**
|
|
188
|
-
* Corresponds to {@link
|
|
196
|
+
* Corresponds to {@link StartedArtworkImport}
|
|
189
197
|
*/
|
|
190
|
-
|
|
198
|
+
startedArtworkImport = "startedArtworkImport",
|
|
191
199
|
/**
|
|
192
|
-
* Corresponds to {@link
|
|
200
|
+
* Corresponds to {@link UpdatedList}
|
|
193
201
|
*/
|
|
194
|
-
|
|
202
|
+
updatedList = "updatedList"
|
|
195
203
|
}
|
|
@@ -20,6 +20,7 @@ var OsActionType;
|
|
|
20
20
|
exports.OsActionType = OsActionType;
|
|
21
21
|
|
|
22
22
|
(function (OsActionType) {
|
|
23
|
+
OsActionType["appliedFilter"] = "appliedFilter";
|
|
23
24
|
OsActionType["addedArtist"] = "addedArtist";
|
|
24
25
|
OsActionType["addedArtworkDocument"] = "addedArtworkDocument";
|
|
25
26
|
OsActionType["addedArtworksToList"] = "addedArtworksToList";
|
|
@@ -32,6 +33,7 @@ exports.OsActionType = OsActionType;
|
|
|
32
33
|
OsActionType["clickedAspectRatio"] = "clickedAspectRatio";
|
|
33
34
|
OsActionType["clickedBrandKitModal"] = "clickedBrandKitModal";
|
|
34
35
|
OsActionType["clickedCancelBulkEdit"] = "clickedCancelBulkEdit";
|
|
36
|
+
OsActionType["clickedFilterDrawer"] = "clickedFilterDrawer";
|
|
35
37
|
OsActionType["clickedConnectAccount"] = "clickedConnectAccount";
|
|
36
38
|
OsActionType["clickedConnectAccountModal"] = "clickedConnectAccountModal";
|
|
37
39
|
OsActionType["clickedConnectModal"] = "clickedConnectModal";
|
|
@@ -44,24 +46,24 @@ exports.OsActionType = OsActionType;
|
|
|
44
46
|
OsActionType["clickedOpenList"] = "clickedOpenList";
|
|
45
47
|
OsActionType["clickedPublishConfirmation"] = "clickedPublishConfirmation";
|
|
46
48
|
OsActionType["clickedUploadImageBank"] = "clickedUploadImageBank";
|
|
47
|
-
OsActionType["completedArtworkDistribution"] = "completedArtworkDistribution";
|
|
48
49
|
OsActionType["completedArtworkImport"] = "completedArtworkImport";
|
|
49
50
|
OsActionType["createdImportedArtworks"] = "createdImportedArtworks";
|
|
50
51
|
OsActionType["createdList"] = "createdList";
|
|
51
52
|
OsActionType["createdStudioContent"] = "createdStudioContent";
|
|
53
|
+
OsActionType["clearedFilters"] = "clearedFilters";
|
|
52
54
|
OsActionType["deletedArtwork"] = "deletedArtwork";
|
|
53
55
|
OsActionType["deletedList"] = "deletedList";
|
|
54
56
|
OsActionType["distributedArtworks"] = "distributedArtworks";
|
|
55
57
|
OsActionType["distributedList"] = "distributedList";
|
|
56
58
|
OsActionType["editedArtworkField"] = "editedArtworkField";
|
|
57
|
-
OsActionType["editedInventoryField"] = "editedInventoryField";
|
|
58
59
|
OsActionType["movedArtworksBetweenLists"] = "movedArtworksBetweenLists";
|
|
59
60
|
OsActionType["removedArtworkDocument"] = "removedArtworkDocument";
|
|
61
|
+
OsActionType["removedFilter"] = "removedFilter";
|
|
60
62
|
OsActionType["removedArtworksFromList"] = "removedArtworksFromList";
|
|
61
63
|
OsActionType["resumedArtworkImport"] = "resumedArtworkImport";
|
|
62
64
|
OsActionType["savedArtworkImages"] = "savedArtworkImages";
|
|
65
|
+
OsActionType["searchedArtworks"] = "searchedArtworks";
|
|
66
|
+
OsActionType["sortedColumn"] = "sortedColumn";
|
|
63
67
|
OsActionType["startedArtworkImport"] = "startedArtworkImport";
|
|
64
|
-
OsActionType["toggledDistributionSync"] = "toggledDistributionSync";
|
|
65
68
|
OsActionType["updatedList"] = "updatedList";
|
|
66
|
-
OsActionType["viewedDivergenceMarker"] = "viewedDivergenceMarker";
|
|
67
69
|
})(OsActionType || (exports.OsActionType = OsActionType = {}));
|
|
@@ -9,6 +9,8 @@ export declare enum OsContextModule {
|
|
|
9
9
|
addArtistModal = "addArtistModal",
|
|
10
10
|
addLocationModal = "addLocationModal",
|
|
11
11
|
addToListModal = "addToListModal",
|
|
12
|
+
artworkFilters = "artworkFilters",
|
|
13
|
+
artworkSearch = "artworkSearch",
|
|
12
14
|
artworkTable = "artworkTable",
|
|
13
15
|
brandKit = "brandKit",
|
|
14
16
|
brandKitPromptModal = "brandKitPromptModal",
|
|
@@ -28,6 +30,5 @@ export declare enum OsContextModule {
|
|
|
28
30
|
materialsEditor = "materialsEditor",
|
|
29
31
|
multiAdd = "multiAdd",
|
|
30
32
|
multiAddReview = "multiAddReview",
|
|
31
|
-
publishConfirmationModal = "publishConfirmationModal"
|
|
32
|
-
tableActions = "tableActions"
|
|
33
|
+
publishConfirmationModal = "publishConfirmationModal"
|
|
33
34
|
}
|
|
@@ -19,6 +19,8 @@ exports.OsContextModule = OsContextModule;
|
|
|
19
19
|
OsContextModule["addArtistModal"] = "addArtistModal";
|
|
20
20
|
OsContextModule["addLocationModal"] = "addLocationModal";
|
|
21
21
|
OsContextModule["addToListModal"] = "addToListModal";
|
|
22
|
+
OsContextModule["artworkFilters"] = "artworkFilters";
|
|
23
|
+
OsContextModule["artworkSearch"] = "artworkSearch";
|
|
22
24
|
OsContextModule["artworkTable"] = "artworkTable";
|
|
23
25
|
OsContextModule["brandKit"] = "brandKit";
|
|
24
26
|
OsContextModule["brandKitPromptModal"] = "brandKitPromptModal";
|
|
@@ -39,5 +41,4 @@ exports.OsContextModule = OsContextModule;
|
|
|
39
41
|
OsContextModule["multiAdd"] = "multiAdd";
|
|
40
42
|
OsContextModule["multiAddReview"] = "multiAddReview";
|
|
41
43
|
OsContextModule["publishConfirmationModal"] = "publishConfirmationModal";
|
|
42
|
-
OsContextModule["tableActions"] = "tableActions";
|
|
43
44
|
})(OsContextModule || (exports.OsContextModule = OsContextModule = {}));
|
|
@@ -17,7 +17,6 @@ exports.OsOwnerType = OsOwnerType;
|
|
|
17
17
|
OsOwnerType["collection"] = "collection";
|
|
18
18
|
OsOwnerType["connectedApps"] = "connectedApps";
|
|
19
19
|
OsOwnerType["inventory"] = "inventory";
|
|
20
|
-
OsOwnerType["list"] = "list";
|
|
21
20
|
OsOwnerType["studio"] = "studio";
|
|
22
21
|
OsOwnerType["studioInstagram"] = "studioInstagram";
|
|
23
22
|
OsOwnerType["studioMaterials"] = "studioMaterials";
|
package/package.json
CHANGED
|
@@ -1,28 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Schemas describing Art OS toggle events
|
|
3
|
-
* @packageDocumentation
|
|
4
|
-
*/
|
|
5
|
-
import { OsContextModule } from "../Values/OsContextModule";
|
|
6
|
-
import { OsOwnerType } from "../Values/OsOwnerType";
|
|
7
|
-
import { OsActionType } from "./index";
|
|
8
|
-
/**
|
|
9
|
-
* A partner toggles account-wide Auto-sync on or off via the InventoryTableActions bar.
|
|
10
|
-
* Flips `distributionSyncEnabled` for the whole partner account.
|
|
11
|
-
*
|
|
12
|
-
* @example
|
|
13
|
-
* ```
|
|
14
|
-
* {
|
|
15
|
-
* action: "toggledDistributionSync",
|
|
16
|
-
* context_module: "tableActions",
|
|
17
|
-
* context_page_owner_type: "inventory",
|
|
18
|
-
* value: "on"
|
|
19
|
-
* }
|
|
20
|
-
* ```
|
|
21
|
-
*/
|
|
22
|
-
export interface ToggledDistributionSync {
|
|
23
|
-
action: OsActionType.toggledDistributionSync;
|
|
24
|
-
context_module: OsContextModule.tableActions;
|
|
25
|
-
context_page_owner_type: OsOwnerType.inventory;
|
|
26
|
-
value: "on" | "off";
|
|
27
|
-
}
|
|
28
|
-
export type OsToggleEvent = ToggledDistributionSync;
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export {};
|
|
File without changes
|