@bitflow/core 0.3.0 → 0.5.2

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.
Files changed (87) hide show
  1. package/package.json +22 -17
  2. package/CHANGELOG.md +0 -20
  3. package/LICENSE.md +0 -21
  4. package/dist/cjs/bits.d.ts +0 -128
  5. package/dist/cjs/bits.js +0 -16
  6. package/dist/cjs/bits.js.map +0 -1
  7. package/dist/cjs/bitsSchema.d.ts +0 -150
  8. package/dist/cjs/bitsSchema.js +0 -77
  9. package/dist/cjs/bitsSchema.js.map +0 -1
  10. package/dist/cjs/do.d.ts +0 -37
  11. package/dist/cjs/do.js +0 -85
  12. package/dist/cjs/do.js.map +0 -1
  13. package/dist/cjs/doSchema.d.ts +0 -1066
  14. package/dist/cjs/doSchema.js +0 -38
  15. package/dist/cjs/doSchema.js.map +0 -1
  16. package/dist/cjs/findLast.d.ts +0 -1
  17. package/dist/cjs/findLast.js +0 -13
  18. package/dist/cjs/findLast.js.map +0 -1
  19. package/dist/cjs/flow.d.ts +0 -163
  20. package/dist/cjs/flow.js +0 -98
  21. package/dist/cjs/flow.js.map +0 -1
  22. package/dist/cjs/flowSchema.d.ts +0 -2118
  23. package/dist/cjs/flowSchema.js +0 -247
  24. package/dist/cjs/flowSchema.js.map +0 -1
  25. package/dist/cjs/groupBy.d.ts +0 -1
  26. package/dist/cjs/groupBy.js +0 -27
  27. package/dist/cjs/groupBy.js.map +0 -1
  28. package/dist/cjs/index.d.ts +0 -11
  29. package/dist/cjs/index.js +0 -24
  30. package/dist/cjs/index.js.map +0 -1
  31. package/dist/cjs/lerpColor.d.ts +0 -1
  32. package/dist/cjs/lerpColor.js +0 -9
  33. package/dist/cjs/lerpColor.js.map +0 -1
  34. package/dist/cjs/levenshtein.d.ts +0 -1
  35. package/dist/cjs/levenshtein.js +0 -88
  36. package/dist/cjs/levenshtein.js.map +0 -1
  37. package/dist/cjs/uuid.d.ts +0 -1
  38. package/dist/cjs/uuid.js +0 -16
  39. package/dist/cjs/uuid.js.map +0 -1
  40. package/dist/esm/bits.d.ts +0 -128
  41. package/dist/esm/bits.js +0 -9
  42. package/dist/esm/bits.js.map +0 -1
  43. package/dist/esm/bitsSchema.d.ts +0 -150
  44. package/dist/esm/bitsSchema.js +0 -55
  45. package/dist/esm/bitsSchema.js.map +0 -1
  46. package/dist/esm/do.d.ts +0 -37
  47. package/dist/esm/do.js +0 -62
  48. package/dist/esm/do.js.map +0 -1
  49. package/dist/esm/doSchema.d.ts +0 -1066
  50. package/dist/esm/doSchema.js +0 -23
  51. package/dist/esm/doSchema.js.map +0 -1
  52. package/dist/esm/findLast.d.ts +0 -1
  53. package/dist/esm/findLast.js +0 -9
  54. package/dist/esm/findLast.js.map +0 -1
  55. package/dist/esm/flow.d.ts +0 -163
  56. package/dist/esm/flow.js +0 -88
  57. package/dist/esm/flow.js.map +0 -1
  58. package/dist/esm/flowSchema.d.ts +0 -2118
  59. package/dist/esm/flowSchema.js +0 -195
  60. package/dist/esm/flowSchema.js.map +0 -1
  61. package/dist/esm/groupBy.d.ts +0 -1
  62. package/dist/esm/groupBy.js +0 -23
  63. package/dist/esm/groupBy.js.map +0 -1
  64. package/dist/esm/index.d.ts +0 -11
  65. package/dist/esm/index.js +0 -12
  66. package/dist/esm/index.js.map +0 -1
  67. package/dist/esm/lerpColor.d.ts +0 -1
  68. package/dist/esm/lerpColor.js +0 -5
  69. package/dist/esm/lerpColor.js.map +0 -1
  70. package/dist/esm/levenshtein.d.ts +0 -1
  71. package/dist/esm/levenshtein.js +0 -84
  72. package/dist/esm/levenshtein.js.map +0 -1
  73. package/dist/esm/uuid.d.ts +0 -1
  74. package/dist/esm/uuid.js +0 -12
  75. package/dist/esm/uuid.js.map +0 -1
  76. package/dist/types/bits.d.ts +0 -128
  77. package/dist/types/bitsSchema.d.ts +0 -150
  78. package/dist/types/do.d.ts +0 -37
  79. package/dist/types/doSchema.d.ts +0 -1066
  80. package/dist/types/findLast.d.ts +0 -1
  81. package/dist/types/flow.d.ts +0 -163
  82. package/dist/types/flowSchema.d.ts +0 -2118
  83. package/dist/types/groupBy.d.ts +0 -1
  84. package/dist/types/index.d.ts +0 -11
  85. package/dist/types/lerpColor.d.ts +0 -1
  86. package/dist/types/levenshtein.d.ts +0 -1
  87. package/dist/types/uuid.d.ts +0 -1
@@ -1,23 +0,0 @@
1
- import { z } from "zod";
2
- import { TaskAnswerSchema, TaskResultSchema } from "./bitsSchema";
3
- import { makeInteractiveFlowNodeSchema } from "./flowSchema";
4
- export const makeDoBaseTrySchema = (flowNodeSchemas) => z.object({
5
- node: makeInteractiveFlowNodeSchema(flowNodeSchemas),
6
- startDate: z.date(),
7
- try: z.number(),
8
- status: z.string(),
9
- });
10
- export const makeDoStartedTry = (flowNodeSchemas) => makeDoBaseTrySchema(flowNodeSchemas).merge(z.object({
11
- status: z.literal("started"),
12
- }));
13
- export const makeDoFinishedTry = (flowNodeSchemas) => makeDoBaseTrySchema(flowNodeSchemas).merge(z.object({
14
- status: z.literal("finished"),
15
- endDate: z.date(),
16
- answer: TaskAnswerSchema.optional(),
17
- result: TaskResultSchema.optional(),
18
- }));
19
- export const makeDoSkippedTry = (flowNodeSchemas) => makeDoBaseTrySchema(flowNodeSchemas).merge(z.object({
20
- status: z.literal("skipped"),
21
- endDate: z.date(),
22
- }));
23
- //# sourceMappingURL=doSchema.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"doSchema.js","sourceRoot":"","sources":["../../src/doSchema.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAa,MAAM,KAAK,CAAC;AACnC,OAAO,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAClE,OAAO,EAAE,6BAA6B,EAAE,MAAM,cAAc,CAAC;AAU7D,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC,eAAqC,EAAE,EAAE,CAC3E,CAAC,CAAC,MAAM,CAAC;IACP,IAAI,EAAE,6BAA6B,CAAC,eAAe,CAAC;IACpD,SAAS,EAAE,CAAC,CAAC,IAAI,EAAE;IACnB,GAAG,EAAE,CAAC,CAAC,MAAM,EAAE;IACf,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE;CACnB,CAAC,CAAC;AAEL,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,eAAqC,EAAE,EAAE,CACxE,mBAAmB,CAAC,eAAe,CAAC,CAAC,KAAK,CACxC,CAAC,CAAC,MAAM,CAAC;IACP,MAAM,EAAE,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC;CAC7B,CAAC,CACH,CAAC;AAEJ,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,eAAqC,EAAE,EAAE,CACzE,mBAAmB,CAAC,eAAe,CAAC,CAAC,KAAK,CACxC,CAAC,CAAC,MAAM,CAAC;IACP,MAAM,EAAE,CAAC,CAAC,OAAO,CAAC,UAAU,CAAC;IAC7B,OAAO,EAAE,CAAC,CAAC,IAAI,EAAE;IACjB,MAAM,EAAE,gBAAgB,CAAC,QAAQ,EAAE;IACnC,MAAM,EAAE,gBAAgB,CAAC,QAAQ,EAAE;CACpC,CAAC,CACH,CAAC;AAEJ,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,eAAqC,EAAE,EAAE,CACxE,mBAAmB,CAAC,eAAe,CAAC,CAAC,KAAK,CACxC,CAAC,CAAC,MAAM,CAAC;IACP,MAAM,EAAE,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC;IAC5B,OAAO,EAAE,CAAC,CAAC,IAAI,EAAE;CAClB,CAAC,CACH,CAAC"}
@@ -1 +0,0 @@
1
- export declare function findLast<T>(array: Array<T>, predicate: (value: T, index: number, obj: T[]) => boolean): T | null;
@@ -1,9 +0,0 @@
1
- export function findLast(array, predicate) {
2
- let l = array.length;
3
- while (l--) {
4
- if (predicate(array[l], l, array))
5
- return array[l];
6
- }
7
- return null;
8
- }
9
- //# sourceMappingURL=findLast.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"findLast.js","sourceRoot":"","sources":["../../src/findLast.ts"],"names":[],"mappings":"AAAA,MAAM,UAAU,QAAQ,CACtB,KAAe,EACf,SAAyD;IAEzD,IAAI,CAAC,GAAG,KAAK,CAAC,MAAM,CAAC;IACrB,OAAO,CAAC,EAAE,EAAE;QACV,IAAI,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,CAAC;YAAE,OAAO,KAAK,CAAC,CAAC,CAAC,CAAC;KACpD;IACD,OAAO,IAAI,CAAC;AACd,CAAC"}
@@ -1,163 +0,0 @@
1
- declare type NodeBase = {
2
- id: string;
3
- position: {
4
- x: number;
5
- y: number;
6
- };
7
- };
8
- export declare type FlowCheckpointNode = NodeBase & {
9
- type: "checkpoint";
10
- };
11
- export declare type FlowCheckpointPublicNode = Pick<FlowCheckpointNode, "id" | "type">;
12
- export declare type FlowSynchronizeNode = NodeBase & {
13
- type: "synchronize";
14
- data?: {
15
- toggle: (id: string) => void;
16
- unlocked: boolean;
17
- };
18
- };
19
- export declare type FlowSynchronizePublicNode = Pick<FlowSynchronizeNode, "id" | "type">;
20
- export declare type FlowTaskNode = NodeBase & {
21
- type: "task";
22
- data: Bitflow.Task;
23
- };
24
- export declare type FlowTaskPublicNode = {
25
- type: "task";
26
- id: string;
27
- data: Pick<Bitflow.Task, "view" | "subtype" | "name">;
28
- };
29
- export declare const isFlowTaskNode: (n: FlowNode) => n is FlowTaskNode;
30
- export declare type FlowStartNode = NodeBase & {
31
- type: "start";
32
- data: Bitflow.Start;
33
- };
34
- export declare type FlowStartPublicNode = Pick<FlowStartNode, "type" | "data" | "id">;
35
- export declare const isFlowStartNode: (n: FlowNode) => n is FlowStartNode;
36
- export declare type FlowEndNode = NodeBase & {
37
- type: "end";
38
- data: Bitflow.End;
39
- };
40
- export declare const isFlowEndNode: (n: FlowNode) => n is FlowEndNode;
41
- export declare type FlowEndPublicNode = Pick<FlowEndNode, "type" | "data" | "id">;
42
- export declare type FlowInputNode = NodeBase & {
43
- type: "input";
44
- data: Bitflow.Input;
45
- };
46
- export declare const isFlowInputNode: (n: FlowNode) => n is FlowInputNode;
47
- export declare type FlowInputPublicNode = Pick<FlowInputNode, "type" | "data" | "id">;
48
- export declare type FlowTitleNode = NodeBase & {
49
- type: "title";
50
- data: Bitflow.Title;
51
- };
52
- export declare const isFlowTitleNode: (n: FlowNode) => n is FlowTitleNode;
53
- export declare type FlowTitlePublicNode = Pick<FlowTitleNode, "type" | "data" | "id">;
54
- export declare type InteractiveFlowNode = FlowTaskNode | FlowStartNode | FlowEndNode | FlowInputNode | FlowTitleNode | FlowCheckpointNode | FlowSynchronizeNode;
55
- export declare type InteractiveFlowPublicNode = FlowTaskPublicNode | FlowStartPublicNode | FlowEndPublicNode | FlowInputPublicNode | FlowTitlePublicNode | FlowCheckpointPublicNode | FlowSynchronizePublicNode;
56
- export declare type EqualCondition = {
57
- type: "equal";
58
- not: boolean;
59
- nodeId: string;
60
- key: string;
61
- value: string | number;
62
- };
63
- export declare type TrueCondition = {
64
- type: "true";
65
- not: boolean;
66
- nodeId: string;
67
- key: string;
68
- };
69
- export declare type GreaterCondition = {
70
- type: "greater";
71
- include: boolean;
72
- not: boolean;
73
- nodeId: string;
74
- key: string;
75
- value: number;
76
- };
77
- export declare type LessCondition = {
78
- type: "less";
79
- include: boolean;
80
- not: boolean;
81
- nodeId: string;
82
- key: string;
83
- value: number;
84
- };
85
- export declare type InCondition = {
86
- type: "in";
87
- not: boolean;
88
- nodeId: string;
89
- key: string;
90
- value: (string | number)[];
91
- };
92
- export declare type PrimitiveCondition = EqualCondition | TrueCondition | GreaterCondition | LessCondition | InCondition;
93
- export declare type AndCondition = {
94
- type: "and";
95
- conditions: PrimitiveCondition[];
96
- };
97
- export declare type OrCondition = {
98
- type: "or";
99
- conditions: PrimitiveCondition[];
100
- };
101
- export declare type Condition = PrimitiveCondition | AndCondition | OrCondition;
102
- export declare type SplitAnswer = {
103
- condition: Condition;
104
- };
105
- export declare type FlowSplitAnswerNode = NodeBase & {
106
- type: "split-answer";
107
- data: SplitAnswer;
108
- };
109
- export declare type SplitResult = {
110
- condition: Condition;
111
- };
112
- export declare type FlowSplitResultNode = NodeBase & {
113
- type: "split-result";
114
- data: SplitResult;
115
- };
116
- export declare type SplitPoints = {
117
- points: number;
118
- };
119
- export declare type FlowSplitPointsNode = NodeBase & {
120
- type: "split-points";
121
- data: SplitPoints;
122
- };
123
- export declare type PortalInput = {
124
- portal: string;
125
- description: string;
126
- };
127
- export declare type PortalOutput = {
128
- portal: string;
129
- description: string;
130
- };
131
- export declare type FlowPortalInputNode = NodeBase & {
132
- type: "portal-input";
133
- data: PortalInput;
134
- };
135
- export declare type FlowPortalOutputNode = NodeBase & {
136
- type: "portal-output";
137
- data: PortalOutput;
138
- };
139
- export declare type FlowSplitRandomNode = NodeBase & {
140
- type: "split-random";
141
- };
142
- export declare type ControlFlowNode = FlowSplitAnswerNode | FlowSplitResultNode | FlowSplitPointsNode | FlowSplitRandomNode | FlowPortalInputNode | FlowPortalOutputNode;
143
- export declare type FlowNode = InteractiveFlowNode | ControlFlowNode;
144
- export declare const isInteractiveFlowNode: (n: FlowNode) => n is InteractiveFlowNode;
145
- export declare type FlowEdge = {
146
- id: string;
147
- source: string;
148
- sourceHandle?: "a" | "b" | "c" | "d" | "e" | "f";
149
- target: string;
150
- };
151
- export declare type Flow = {
152
- name: string;
153
- description: string;
154
- language: "en" | "de" | "fr" | "es" | "nl" | "pt" | "tr" | "it";
155
- visibility: "public" | "private" | "unlisted";
156
- draft: boolean;
157
- nodes: FlowNode[];
158
- edges: FlowEdge[];
159
- zoom?: number;
160
- position?: [number, number];
161
- };
162
- export declare const extractInteractiveFlowPublicNode: (n: InteractiveFlowNode) => InteractiveFlowPublicNode;
163
- export {};
package/dist/esm/flow.js DELETED
@@ -1,88 +0,0 @@
1
- export const isFlowTaskNode = (n) => {
2
- if (n.type === "task") {
3
- return true;
4
- }
5
- return false;
6
- };
7
- export const isFlowStartNode = (n) => {
8
- if (n.type === "start") {
9
- return true;
10
- }
11
- return false;
12
- };
13
- export const isFlowEndNode = (n) => {
14
- if (n.type === "end") {
15
- return true;
16
- }
17
- return false;
18
- };
19
- export const isFlowInputNode = (n) => {
20
- if (n.type === "input") {
21
- return true;
22
- }
23
- return false;
24
- };
25
- export const isFlowTitleNode = (n) => {
26
- if (n.type === "title") {
27
- return true;
28
- }
29
- return false;
30
- };
31
- export const isInteractiveFlowNode = (n) => {
32
- if (n.type === "checkpoint" ||
33
- n.type === "end" ||
34
- n.type === "input" ||
35
- n.type === "start" ||
36
- n.type === "synchronize" ||
37
- n.type === "task" ||
38
- n.type === "title") {
39
- return true;
40
- }
41
- return false;
42
- };
43
- export const extractInteractiveFlowPublicNode = (n) => {
44
- if (n.type === "task") {
45
- return {
46
- id: n.id,
47
- type: n.type,
48
- data: {
49
- name: n.data.name,
50
- subtype: n.data.subtype,
51
- view: n.data.view,
52
- },
53
- };
54
- }
55
- else if (n.type === "synchronize" || n.type === "checkpoint") {
56
- return {
57
- id: n.id,
58
- type: n.type,
59
- };
60
- }
61
- else if (n.type === "input") {
62
- return {
63
- id: n.id,
64
- type: n.type,
65
- data: n.data,
66
- };
67
- }
68
- else if (n.type === "end") {
69
- return {
70
- id: n.id,
71
- type: n.type,
72
- data: n.data,
73
- };
74
- }
75
- else if (n.type === "start") {
76
- return {
77
- id: n.id,
78
- type: n.type,
79
- data: n.data,
80
- };
81
- }
82
- return {
83
- id: n.id,
84
- type: n.type,
85
- data: n.data,
86
- };
87
- };
88
- //# sourceMappingURL=flow.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"flow.js","sourceRoot":"","sources":["../../src/flow.ts"],"names":[],"mappings":"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"}