@snowtop/ent 0.1.0-alpha47 → 0.1.0-alpha50

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.
@@ -5,7 +5,7 @@ export interface ActionOptions<T extends Ent, TData extends Data> {
5
5
  input?: TData;
6
6
  operation?: WriteOperation;
7
7
  }
8
- interface EntBuilder<TEnt extends Ent<TViewer>, TViewer extends Viewer, TInput extends Data> extends Builder<TEnt, TViewer> {
8
+ export interface EntBuilder<TEnt extends Ent<TViewer>, TViewer extends Viewer, TInput extends Data> extends Builder<TEnt, TViewer> {
9
9
  valid(): Promise<boolean>;
10
10
  validX(): Promise<void>;
11
11
  save(): Promise<void>;
@@ -33,9 +33,10 @@ export declare class BaseAction<TEnt extends Ent<TViewer>, TViewer extends Viewe
33
33
  saveX(): Promise<TEnt>;
34
34
  getInput(): TInput;
35
35
  }
36
- interface BuilderConstructor<TEnt extends Ent<TViewer>, TViewer extends Viewer, TInput extends Data> {
36
+ export interface BuilderConstructor<TEnt extends Ent<TViewer>, TViewer extends Viewer, TInput extends Data> {
37
37
  new (viewer: TViewer, operation: WriteOperation, action: Action<TEnt, EntBuilder<TEnt, TViewer, TInput>, TViewer, TInput>, existingEnt: TEnt | null): EntBuilder<TEnt, TViewer, TInput>;
38
38
  }
39
39
  export declare function updateRawObject<TEnt extends Ent<TViewer>, TViewer extends Viewer, TInput extends Data>(viewer: TViewer, builderCtr: BuilderConstructor<TEnt, TViewer, TInput>, existingEnt: TEnt, input: TInput): Promise<TEnt>;
40
- export declare function getSimpleEditAction<TEnt extends Ent<TViewer>, TViewer extends Viewer, TInput extends Data>(viewer: TViewer, builderCtr: BuilderConstructor<TEnt, TViewer, TInput>, existingEnt: TEnt, input: TInput): Action<TEnt, Builder<TEnt, TViewer>, TViewer, TInput>;
41
- export {};
40
+ export declare function getSimpleEditAction<TEnt extends Ent<TViewer>, TViewer extends Viewer, TInput extends Data>(viewer: TViewer, builderCtr: BuilderConstructor<TEnt, TViewer, TInput>, existingEnt: TEnt, input: TInput): BaseAction<TEnt, TViewer, TInput>;
41
+ export declare function getSimpleDeleteAction<TEnt extends Ent<TViewer>, TViewer extends Viewer, TInput extends Data>(viewer: TViewer, builderCtr: BuilderConstructor<TEnt, TViewer, TInput>, existingEnt: TEnt, input: TInput): BaseAction<TEnt, TViewer, TInput>;
42
+ export declare function getSimpleInsertAction<TEnt extends Ent<TViewer>, TViewer extends Viewer, TInput extends Data>(viewer: TViewer, builderCtr: BuilderConstructor<TEnt, TViewer, TInput>, input: TInput): BaseAction<TEnt, TViewer, TInput>;
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.getSimpleEditAction = exports.updateRawObject = exports.BaseAction = void 0;
3
+ exports.getSimpleInsertAction = exports.getSimpleDeleteAction = exports.getSimpleEditAction = exports.updateRawObject = exports.BaseAction = void 0;
4
4
  const privacy_1 = require("../core/privacy");
5
5
  const action_1 = require("./action");
6
6
  class BaseAction {
@@ -85,6 +85,7 @@ async function updateRawObject(viewer, builderCtr, existingEnt, input) {
85
85
  return action.saveX();
86
86
  }
87
87
  exports.updateRawObject = updateRawObject;
88
+ // TODO need to fix types for all these
88
89
  // creates an action which has no privacy, triggers, observers etc
89
90
  // does do field validation
90
91
  // useful to batch a bunch of writes together with BaseAction.bulkAction
@@ -97,3 +98,18 @@ function getSimpleEditAction(viewer, builderCtr, existingEnt, input) {
97
98
  });
98
99
  }
99
100
  exports.getSimpleEditAction = getSimpleEditAction;
101
+ function getSimpleDeleteAction(viewer, builderCtr, existingEnt, input) {
102
+ return new BaseAction(viewer, builderCtr, {
103
+ existingEnt: existingEnt,
104
+ operation: action_1.WriteOperation.Delete,
105
+ input,
106
+ });
107
+ }
108
+ exports.getSimpleDeleteAction = getSimpleDeleteAction;
109
+ function getSimpleInsertAction(viewer, builderCtr, input) {
110
+ return new BaseAction(viewer, builderCtr, {
111
+ operation: action_1.WriteOperation.Insert,
112
+ input,
113
+ });
114
+ }
115
+ exports.getSimpleInsertAction = getSimpleInsertAction;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@snowtop/ent",
3
- "version": "0.1.0-alpha47",
3
+ "version": "0.1.0-alpha50",
4
4
  "description": "snowtop ent framework",
5
5
  "main": "index.js",
6
6
  "types": "index.d.ts",