@sigmacomputing/plugin 1.0.8-beta → 1.0.9-beta.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.
package/README.md CHANGED
@@ -67,42 +67,52 @@ While you are not required to use React for your plugin, it must be written in
67
67
  Javascript and React is recommended. We support both a standard Javascript API
68
68
  and a React Hooks API.
69
69
 
70
- #### Create a Project with React
70
+ #### Create a Project with Vite
71
71
 
72
72
  1. Open your terminal and navigate to the directory you want to create your
73
73
  project in.
74
- 2. Create your new project. We recommend using Facebook’s
75
- [`create-react-app`](https://create-react-app.dev/).
74
+ 2. Create your new project. We recommend using
75
+ [`create-vite`](https://www.npmjs.com/package/create-vite).
76
76
 
77
77
  ```sh
78
- npx create-react-app <my-cool-plugin>
78
+ yarn create vite <my-cool-plugin>
79
+ # or
80
+ npm create vite@latest <my-cool-plugin>
79
81
  ```
80
82
 
81
- 3. Navigate to the project's main directory.
83
+ 3. Then follow the prompts! You can also directly specify the project name and the template you want to use via additional command line options. For example, to scaffold a Vite + Vue project, run:
84
+
85
+ ```sh
86
+ yarn create vite my-vue-app --template vue
87
+ ```
88
+
89
+ 4. Navigate to the project's main directory.
82
90
 
83
91
  ```sh
84
92
  cd <my-cool-plugin>
85
93
  ```
86
94
 
87
- 4. Use your package manager to install Sigma’s plugin library. We recommend
95
+ 5. Use your package manager to install Sigma’s plugin library. We recommend
88
96
  using `yarn`.
89
97
 
90
98
  ```sh
91
99
  yarn add @sigmacomputing/plugin
92
100
  ```
93
101
 
94
- 5. Spin up your local development server.
102
+ 6. Spin up your local development server.
95
103
 
96
104
  ```sh
97
- yarn && yarn start
105
+ yarn && yarn dev
98
106
  ```
99
107
 
100
- 6. Start developing:
108
+ 7. Start developing:
101
109
 
102
110
  - Get started with Sigma’s Plugin APIs.
103
111
  - Test your plugin directly in a Sigma workbook using the Sigma Plugin Dev
104
112
  Playground.
105
- - By default, Create React App dev servers run on http://localhost:3000.
113
+ - By default, vite dev servers run on http://localhost:5173.
114
+
115
+ NOTE: Facebook's [create-react-app](https://github.com/facebook/create-react-app) is deprecated. You should use [vite](https://github.com/vitejs/vite) to setup your project.
106
116
 
107
117
  ## Testing your Plugin
108
118
 
@@ -159,8 +169,8 @@ Before you start:
159
169
  #### CustomPluginConfigOptions
160
170
 
161
171
  A plugin can be configured with any number of configuration fields. Each field
162
- type has its own configuration options. Each field type is also garunteed to
163
- have a the following options:
172
+ type has its own configuration options. Each field type is also guaranteed to
173
+ have the following options:
164
174
 
165
175
  - `name : string` - the name of the field
166
176
  - `type : string` - the field type
@@ -434,23 +444,23 @@ interface PluginInstance<T> {
434
444
  /**
435
445
  * Gets a static image of a workbook variable
436
446
  */
437
- getVariable(id: string): WorkbookVariable;
447
+ getVariable(configId: string): WorkbookVariable;
438
448
 
439
449
  /**
440
450
  * Setter for workbook variable passed in
441
451
  */
442
- setVariable(id: string, ...values: unknown[]): void;
452
+ setVariable(configId: string, ...values: unknown[]): void;
443
453
 
444
454
  /**
445
455
  * Getter for interaction selection state
446
456
  */
447
- getInteraction(id: string): WorkbookSelection[];
457
+ getInteraction(configId: string): WorkbookSelection[];
448
458
 
449
459
  /**
450
460
  * Setter for interaction selection state
451
461
  */
452
462
  setInteraction(
453
- id: string,
463
+ configId: string,
454
464
  elementId: string,
455
465
  selection: WorkbookSelection[],
456
466
  ): void;
@@ -458,17 +468,12 @@ interface PluginInstance<T> {
458
468
  /**
459
469
  * Triggers an action based on the provided action trigger ID
460
470
  */
461
- triggerAction(id: string): void;
471
+ triggerAction(configId: string): void;
462
472
 
463
473
  /**
464
474
  * Registers an effect with the provided action effect ID
465
475
  */
466
- registerEffect(id: string, effect: Function): void;
467
-
468
- /**
469
- * Unregisters an effect based on the provided action effect ID
470
- */
471
- unregisterEffect(id: string): void;
476
+ registerEffect(configId: string, effect: Function): void;
472
477
 
473
478
  /**
474
479
  * Overrider function for Config Ready state
@@ -479,15 +484,16 @@ interface PluginInstance<T> {
479
484
  * Allows users to subscribe to changes in the passed in variable
480
485
  */
481
486
  subscribeToWorkbookVariable(
482
- id: string,
487
+ configId: string,
483
488
  callback: (input: WorkbookVariable) => void,
484
489
  ): Unsubscriber;
485
490
 
486
491
  /**
492
+ * @deprecated Use Action API instead
487
493
  * Allows users to subscribe to changes in the passed in interaction ID
488
494
  */
489
495
  subscribeToWorkbookInteraction(
490
- id: string,
496
+ configId: string,
491
497
  callback: (input: WorkbookSelection[]) => void,
492
498
  ): Unsubscriber;
493
499
  };
@@ -496,13 +502,13 @@ interface PluginInstance<T> {
496
502
  /**
497
503
  * Getter for Column Data by parent sheet ID
498
504
  */
499
- getElementColumns(id: string): Promise<WbElementColumns>;
505
+ getElementColumns(configId: string): Promise<WbElementColumns>;
500
506
 
501
507
  /**
502
508
  * Subscriber to changes in column data by ID
503
509
  */
504
510
  subscribeToElementColumns(
505
- id: string,
511
+ configId: string,
506
512
  callback: (cols: WbElementColumns) => void,
507
513
  ): Unsubscriber;
508
514
 
@@ -510,7 +516,7 @@ interface PluginInstance<T> {
510
516
  * Subscriber for the data within a given sheet
511
517
  */
512
518
  subscribeToElementData(
513
- id: string,
519
+ configId: string,
514
520
  callback: (data: WbElementData) => void,
515
521
  ): Unsubscriber;
516
522
  };
@@ -648,15 +654,15 @@ interface WorkbookElementColumns {
648
654
 
649
655
  #### useElementData()
650
656
 
651
- Provides the latest data values from corresponding sheet
657
+ Provides the latest data values from corresponding sheet, up to 25000 values.
652
658
 
653
659
  ```ts
654
- function useElementData(elementId: string): WorkbookElementData;
660
+ function useElementData(configId: string): WorkbookElementData;
655
661
  ```
656
662
 
657
663
  Arguments
658
664
 
659
- - `elementId : string` - A workbook element’s unique identifier.
665
+ - `configId : string` - A workbook element’s unique identifier from the plugin config.
660
666
 
661
667
  Returns the row data from the specified element.
662
668
 
@@ -666,19 +672,41 @@ interface WorkbookElementData {
666
672
  }
667
673
  ```
668
674
 
675
+ #### usePaginatedElementData()
676
+
677
+ Provides the latest data values from the corresponding sheet (initially 25000), and provides a
678
+ callback for fetching more data in chunks of 25000 values.
679
+
680
+ ```ts
681
+ function useElementData(configId: string): [WorkbookElementData, () => void];
682
+ ```
683
+
684
+ Arguments
685
+
686
+ - `configId : string` - A workbook element’s unique identifier from the plugin config.
687
+
688
+ Returns the row data from the specified element, and a callback for fetching
689
+ more data.
690
+
691
+ ```ts
692
+ interface WorkbookElementData {
693
+ [colId: string]: any[];
694
+ }
695
+ ```
696
+
669
697
  #### useVariable()
670
698
 
671
699
  Returns a given variable's value and a setter to update that variable
672
700
 
673
701
  ```ts
674
702
  function useVariable(
675
- variableId: string,
703
+ configId: string,
676
704
  ): [WorkbookVariable | undefined, (...values: unknown[]) => void];
677
705
  ```
678
706
 
679
707
  Arguments
680
708
 
681
- - `variableId : string` - The ID of the variable
709
+ - `configId : string` - The config ID corresponding to the workbook control variable
682
710
 
683
711
  The returned setter function accepts 1 or more variable values expressed as an
684
712
  array or multiple parameters
@@ -689,18 +717,18 @@ function setVariableCallback(...values: unknown[]): void;
689
717
 
690
718
  #### useInteraction()
691
719
 
692
- Returns a given interaction's selection state and a setter to update that interation
720
+ Returns a given interaction's selection state and a setter to update that interaction
693
721
 
694
722
  ```ts
695
723
  function useInteraction(
696
- interactionId: string,
724
+ configId: string,
697
725
  elementId: string,
698
726
  ): [WorkbookSelection | undefined, (value: WorkbookSelection[]) => void];
699
727
  ```
700
728
 
701
729
  Arguments
702
730
 
703
- - `interactionId : string` - The ID of the interaction
731
+ - `configId : string` - The config ID corresponding to the workbook interaction
704
732
  - `elementId : string` - The ID of the element that this interaction is
705
733
  associated with
706
734
 
@@ -712,20 +740,24 @@ function setVariableCallback(value: WorkbookSelection[]): void;
712
740
 
713
741
  #### useActionTrigger()
714
742
 
743
+ - `configId : string` - The config ID corresponding to the action trigger
744
+
715
745
  Returns a callback function to trigger one or more action effects for a given action trigger
716
746
 
717
747
  ```ts
718
- function useActionTrigger(triggerId: string);
748
+ function useActionTrigger(configId: string): () => void;
719
749
  ```
720
750
 
751
+ #### triggerActionCallback();
752
+
721
753
  Arguments
722
754
 
723
- - `triggerId : string` - The ID of the action trigger
755
+ - `configId : string` - The config ID corresponding to the action trigger
724
756
 
725
- The function that can be called to trigger the action
757
+ The function that can be called to asynchronously trigger the action
726
758
 
727
759
  ```ts
728
- function triggerActionCallback(): void;
760
+ function triggerActionCallback(configId: string): void;
729
761
  ```
730
762
 
731
763
  #### useActionEffect()
@@ -733,12 +765,12 @@ function triggerActionCallback(): void;
733
765
  Registers and unregisters an action effect within the plugin
734
766
 
735
767
  ```ts
736
- function useActionEffect(effectId: string, effect: Function);
768
+ function useActionEffect(configId: string, effect: () => void);
737
769
  ```
738
770
 
739
771
  Arguments
740
772
 
741
- - `effectId : string` - The ID of the action effect
773
+ - `configId : string` - The config ID corresponding to the action effect
742
774
  - `effect : Function` - The function to be called when the effect is triggered
743
775
 
744
776
  #### useConfig()
@@ -1 +1 @@
1
- {"version":3,"file":"initialize.d.ts","sourceRoot":"","sources":["../../src/client/initialize.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,cAAc,EAKf,MAAM,UAAU,CAAC;AAElB,wBAAgB,UAAU,CAAC,CAAC,GAAG,EAAE,KAAK,cAAc,CAAC,CAAC,CAAC,CAuOtD"}
1
+ {"version":3,"file":"initialize.d.ts","sourceRoot":"","sources":["../../src/client/initialize.ts"],"names":[],"mappings":"AACA,OAAO,EAEL,cAAc,EAIf,MAAM,UAAU,CAAC;AAElB,wBAAgB,UAAU,CAAC,CAAC,GAAG,EAAE,KAAK,cAAc,CAAC,CAAC,CAAC,CA6NtD"}
@@ -1,15 +1,14 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.initialize = void 0;
4
+ const error_1 = require("../error");
4
5
  function initialize() {
5
6
  const pluginConfig = {
6
7
  config: {},
7
8
  };
8
9
  let subscribedInteractions = {};
9
10
  let subscribedWorkbookVars = {};
10
- let registeredEffects = {};
11
- // console.log('registeredEffects', registeredEffects);
12
- // console.log('TESSSSTTT!');
11
+ const registeredEffects = {};
13
12
  const listeners = {};
14
13
  for (const [key, value] of new URL(document.location.toString()).searchParams.entries())
15
14
  pluginConfig[key] = JSON.parse(value);
@@ -37,18 +36,12 @@ function initialize() {
37
36
  subscribedInteractions = {};
38
37
  Object.assign(subscribedInteractions, updatedInteractions);
39
38
  });
40
- on('wb:plugin:action-effect:invoke', (id) => {
41
- const effect = registeredEffects[id];
42
- // console.log('EFFECT:', registeredEffects, id);
43
- // if (!effect) {
44
- // throw new Error('No effect found.');
45
- // }
46
- // console.log('registered:', registeredEffects);
47
- // effect();
48
- if (effect)
49
- effect();
50
- else
51
- console.warn('No effect found.');
39
+ on('wb:plugin:action-effect:invoke', (configId) => {
40
+ const effect = registeredEffects[configId];
41
+ if (!effect) {
42
+ throw new Error(`Unknown action effect with name: ${configId}`);
43
+ }
44
+ effect();
52
45
  });
53
46
  function on(event, listener) {
54
47
  listeners[event] = listeners[event] || [];
@@ -73,19 +66,6 @@ function initialize() {
73
66
  off(event, callback);
74
67
  };
75
68
  on(event, callback);
76
- // const processedArgs = args.map((arg: unknown) => {
77
- // if (
78
- // typeof arg === 'object' &&
79
- // arg !== null &&
80
- // 'effect' in arg &&
81
- // typeof arg.effect === 'function'
82
- // ) {
83
- // const effectId = '123';
84
- // registeredEffects[effectId] = arg.effect;
85
- // return { ...arg, effect: effectId };
86
- // }
87
- // return arg;
88
- // });
89
69
  window.parent.postMessage({ type: event, args, elementId: pluginConfig.id }, (_a = pluginConfig === null || pluginConfig === void 0 ? void 0 : pluginConfig.wbOrigin) !== null && _a !== void 0 ? _a : '*');
90
70
  });
91
71
  }
@@ -117,27 +97,32 @@ function initialize() {
117
97
  on('config', listener);
118
98
  return () => off('config', listener);
119
99
  },
120
- getVariable(id) {
121
- return subscribedWorkbookVars[id];
100
+ getVariable(configId) {
101
+ (0, error_1.validateConfigId)(configId, 'variable');
102
+ return subscribedWorkbookVars[configId];
122
103
  },
123
- setVariable(id, ...values) {
124
- void execPromise('wb:plugin:variable:set', id, ...values);
104
+ setVariable(configId, ...values) {
105
+ (0, error_1.validateConfigId)(configId, 'variable');
106
+ void execPromise('wb:plugin:variable:set', configId, ...values);
125
107
  },
126
- getInteraction(id) {
127
- return subscribedInteractions[id];
108
+ getInteraction(configId) {
109
+ (0, error_1.validateConfigId)(configId, 'interaction');
110
+ return subscribedInteractions[configId];
128
111
  },
129
- setInteraction(id, elementId, selection) {
130
- void execPromise('wb:plugin:selection:set', id, elementId, selection);
112
+ setInteraction(configId, elementId, selection) {
113
+ (0, error_1.validateConfigId)(configId, 'interaction');
114
+ void execPromise('wb:plugin:selection:set', configId, elementId, selection);
131
115
  },
132
- triggerAction(id) {
133
- void execPromise('wb:plugin:action-trigger:invoke', id);
134
- console.log('postmessage to slate with id: ', id);
116
+ triggerAction(configId) {
117
+ (0, error_1.validateConfigId)(configId, 'action-trigger');
118
+ void execPromise('wb:plugin:action-trigger:invoke', configId);
135
119
  },
136
- registerEffect(id, effect) {
137
- registeredEffects[id] = effect;
138
- },
139
- unregisterEffect(id) {
140
- delete registeredEffects[id];
120
+ registerEffect(configId, effect) {
121
+ (0, error_1.validateConfigId)(configId, 'action-effect');
122
+ registeredEffects[configId] = effect;
123
+ return () => {
124
+ delete registeredEffects[configId];
125
+ };
141
126
  },
142
127
  configureEditorPanel(options) {
143
128
  void execPromise('wb:plugin:config:inspector', options);
@@ -145,50 +130,56 @@ function initialize() {
145
130
  setLoadingState(loadingState) {
146
131
  void execPromise('wb:plugin:config:loading-state', loadingState);
147
132
  },
148
- subscribeToWorkbookVariable(id, callback) {
133
+ subscribeToWorkbookVariable(configId, callback) {
134
+ (0, error_1.validateConfigId)(configId, 'variable');
149
135
  const setValues = (values) => {
150
- callback(values[id]);
136
+ callback(values[configId]);
151
137
  };
152
138
  on('wb:plugin:variable:update', setValues);
153
139
  return () => {
154
140
  off('wb:plugin:variable:update', setValues);
155
141
  };
156
142
  },
157
- subscribeToWorkbookInteraction(id, callback) {
143
+ subscribeToWorkbookInteraction(configId, callback) {
144
+ (0, error_1.validateConfigId)(configId, 'interaction');
158
145
  const setValues = (values) => {
159
- callback(values[id]);
146
+ callback(values[configId]);
160
147
  };
161
148
  on('wb:plugin:selection:update', setValues);
162
149
  return () => {
163
150
  off('wb:plugin:selection:update', setValues);
164
151
  };
165
152
  },
166
- // getRegisteredEffects() {
167
- // return registeredEffects;
168
- // },
169
153
  },
170
154
  elements: {
171
- getElementColumns(id) {
172
- return execPromise('wb:plugin:element:columns:get', id);
155
+ getElementColumns(configId) {
156
+ (0, error_1.validateConfigId)(configId, 'element');
157
+ return execPromise('wb:plugin:element:columns:get', configId);
173
158
  },
174
- subscribeToElementColumns(id, callback) {
175
- const eventName = `wb:plugin:element:${id}:columns`;
159
+ subscribeToElementColumns(configId, callback) {
160
+ (0, error_1.validateConfigId)(configId, 'element');
161
+ const eventName = `wb:plugin:element:${configId}:columns`;
176
162
  on(eventName, callback);
177
- void execPromise('wb:plugin:element:subscribe:columns', id);
163
+ void execPromise('wb:plugin:element:subscribe:columns', configId);
178
164
  return () => {
179
165
  off(eventName, callback);
180
- void execPromise('wb:plugin:element:unsubscribe:columns', id);
166
+ void execPromise('wb:plugin:element:unsubscribe:columns', configId);
181
167
  };
182
168
  },
183
- subscribeToElementData(id, callback) {
184
- const eventName = `wb:plugin:element:${id}:data`;
169
+ subscribeToElementData(configId, callback) {
170
+ (0, error_1.validateConfigId)(configId, 'element');
171
+ const eventName = `wb:plugin:element:${configId}:data`;
185
172
  on(eventName, callback);
186
- void execPromise('wb:plugin:element:subscribe:data', id);
173
+ void execPromise('wb:plugin:element:subscribe:data', configId);
187
174
  return () => {
188
175
  off(eventName, callback);
189
- void execPromise('wb:plugin:element:unsubscribe:data', id);
176
+ void execPromise('wb:plugin:element:unsubscribe:data', configId);
190
177
  };
191
178
  },
179
+ fetchMoreElementData(configId) {
180
+ (0, error_1.validateConfigId)(configId, 'element');
181
+ void execPromise('wb:plugin:element:fetch-more', configId);
182
+ },
192
183
  },
193
184
  destroy() {
194
185
  Object.keys(listeners).forEach(event => delete listeners[event]);
@@ -0,0 +1,3 @@
1
+ import { CustomPluginConfigOptions } from './types';
2
+ export declare function validateConfigId(configId: string, expectedConfigType: CustomPluginConfigOptions['type']): void;
3
+ //# sourceMappingURL=error.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"error.d.ts","sourceRoot":"","sources":["../src/error.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,yBAAyB,EAAE,MAAM,SAAS,CAAC;AAEpD,wBAAgB,gBAAgB,CAC9B,QAAQ,EAAE,MAAM,EAChB,kBAAkB,EAAE,yBAAyB,CAAC,MAAM,CAAC,QAKtD"}
package/dist/error.js ADDED
@@ -0,0 +1,9 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.validateConfigId = void 0;
4
+ function validateConfigId(configId, expectedConfigType) {
5
+ if (configId === undefined) {
6
+ console.warn(`Invalid config ${expectedConfigType}: ${configId}`);
7
+ }
8
+ }
9
+ exports.validateConfigId = validateConfigId;
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,SAAS,CAAC;AACxB,cAAc,SAAS,CAAC;AACxB,cAAc,UAAU,CAAC;AAEzB,OAAO,EAAC,6BAA6B,EAAC,MAAM,uCAAuC,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,SAAS,CAAC;AACxB,cAAc,SAAS,CAAC;AACxB,cAAc,UAAU,CAAC;AAEzB,OAAO,EAAE,6BAA6B,EAAE,MAAM,uCAAuC,CAAC"}
@@ -16,17 +16,26 @@ export declare function useEditorPanelConfig(nextOptions: CustomPluginConfigOpti
16
16
  */
17
17
  export declare function useLoadingState(initialState: boolean): [boolean, (nextState: boolean) => void];
18
18
  /**
19
- * Provides the latest column values from corresponding sheet
20
- * @param {string} id Sheet ID to retrieve from workbook
21
- * @returns {WorkbookElementColumns} Values of corresponding columns contained within the sheet
19
+ * Provides the latest column values from corresponding config element
20
+ * @param {string} configId ID from the config for fetching element columns, with type: 'element'
21
+ * @returns {WorkbookElementColumns} Values of corresponding columns contained
22
+ * within the config element
22
23
  */
23
- export declare function useElementColumns(id: string): WorkbookElementColumns;
24
+ export declare function useElementColumns(configId: string): WorkbookElementColumns;
24
25
  /**
25
- * Provides the latest data values from corresponding sheet
26
- * @param {string} id Sheet ID to get element data from
27
- * @returns {WorkbookElementData} Element Data for corresponding sheet, if any
26
+ * Provides the latest data values from config element (max 25_000)
27
+ * @param {string} configId ID from the config for fetching element data, with type: 'element'
28
+ * @returns {WorkbookElementData} Element Data for config element, if any
28
29
  */
29
- export declare function useElementData(id: string): WorkbookElementData;
30
+ export declare function useElementData(configId: string): WorkbookElementData;
31
+ /**
32
+ * Provides the latest data values from corresponding config element with a callback to
33
+ * fetch more in chunks of 25_000 data points
34
+ * @param {string} configId ID from the config for fetching paginated
35
+ * element data, with type: 'element'
36
+ * @returns {WorkbookElementData} Element Data for configured config element, if any
37
+ */
38
+ export declare function usePaginatedElementData(configId: string): [WorkbookElementData, () => void];
30
39
  /**
31
40
  * Provides the latest value for entire config or certain key within the config
32
41
  * @param {string} key Key within Plugin Config, optional
@@ -34,28 +43,30 @@ export declare function useElementData(id: string): WorkbookElementData;
34
43
  */
35
44
  export declare function useConfig(key?: string): any;
36
45
  /**
37
- * React hook for accessing a workbook variable
38
- * @param {string} id ID of variable within Plugin Config to use
39
- * @returns {[(WorkbookVariable | undefined), Function]} Constantly updating value of the variable and setter for the variable
46
+ * React hook for accessing a workbook control variable
47
+ * @param {string} id ID from the config of type: 'variable'
48
+ * @returns {[(WorkbookVariable | undefined), Function]} Constantly updating
49
+ * value of the control variable and setter for the variable
40
50
  */
41
51
  export declare function useVariable(id: string): [WorkbookVariable | undefined, Function];
42
52
  /**
53
+ * @deprecated Use Action API instead
43
54
  * React hook for accessing a workbook interaction selections state
44
- * @param {string} id ID of variable within Plugin Config to use
55
+ * @param {string} id ID from the config of type: 'interaction'
45
56
  * @returns {[(WorkbookSelection | undefined), Function]} Constantly updating selection state and setter thereof
46
57
  */
47
58
  export declare function useInteraction(id: string, elementId: string): [unknown, Function];
48
59
  /**
49
60
  * React hook for returning a triggering callback function for the registered
50
61
  * action trigger
51
- * @param {string} id ID of action trigger
62
+ * @param {string} configId ID from the config of type: 'action-trigger'
52
63
  * @returns {Function} A callback function to trigger the action
53
64
  */
54
- export declare function useActionTrigger(id: string): () => void;
65
+ export declare function useActionTrigger(configId: string): () => void;
55
66
  /**
56
67
  * React hook for registering and unregistering an action effect
57
- * @param {string} id ID of action effect
68
+ * @param {string} configId ID from the config of type: 'action-effect'
58
69
  * @param {Function} effect The function to be called when the action is triggered
59
70
  */
60
- export declare function useActionEffect(id: string, effect: Function): void;
71
+ export declare function useActionEffect(configId: string, effect: () => void): void;
61
72
  //# sourceMappingURL=hooks.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"hooks.d.ts","sourceRoot":"","sources":["../../src/react/hooks.ts"],"names":[],"mappings":"AAGA,OAAO,EACL,cAAc,EACd,yBAAyB,EACzB,sBAAsB,EACtB,mBAAmB,EAEnB,gBAAgB,EACjB,MAAM,UAAU,CAAC;AAGlB;;;GAGG;AACH,wBAAgB,SAAS,IAAI,cAAc,CAAC,GAAG,CAAC,CAE/C;AAED;;;GAGG;AACH,wBAAgB,oBAAoB,CAClC,WAAW,EAAE,yBAAyB,EAAE,GACvC,IAAI,CAWN;AAED;;;;GAIG;AACH,wBAAgB,eAAe,CAC7B,YAAY,EAAE,OAAO,GACpB,CAAC,OAAO,EAAE,CAAC,SAAS,EAAE,OAAO,KAAK,IAAI,CAAC,CAezC;AAED;;;;GAIG;AACH,wBAAgB,iBAAiB,CAAC,EAAE,EAAE,MAAM,GAAG,sBAAsB,CAWpE;AAED;;;;GAIG;AACH,wBAAgB,cAAc,CAAC,EAAE,EAAE,MAAM,GAAG,mBAAmB,CAW9D;AAED;;;;GAIG;AACH,wBAAgB,SAAS,CAAC,GAAG,CAAC,EAAE,MAAM,GAAG,GAAG,CAmB3C;AAED;;;;GAIG;AACH,wBAAgB,WAAW,CACzB,EAAE,EAAE,MAAM,GACT,CAAC,gBAAgB,GAAG,SAAS,EAAE,QAAQ,CAAC,CAc1C;AAED;;;;GAIG;AACH,wBAAgB,cAAc,CAC5B,EAAE,EAAE,MAAM,EACV,SAAS,EAAE,MAAM,GAChB,CAAC,OAAO,EAAE,QAAQ,CAAC,CAoBrB;AAED;;;;;GAKG;AACH,wBAAgB,gBAAgB,CAAC,EAAE,EAAE,MAAM,cAQ1C;AAED;;;;GAIG;AACH,wBAAgB,eAAe,CAAC,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,QAY3D"}
1
+ {"version":3,"file":"hooks.d.ts","sourceRoot":"","sources":["../../src/react/hooks.ts"],"names":[],"mappings":"AAGA,OAAO,EACL,cAAc,EACd,yBAAyB,EACzB,sBAAsB,EACtB,mBAAmB,EAEnB,gBAAgB,EACjB,MAAM,UAAU,CAAC;AAGlB;;;GAGG;AACH,wBAAgB,SAAS,IAAI,cAAc,CAAC,GAAG,CAAC,CAE/C;AAED;;;GAGG;AACH,wBAAgB,oBAAoB,CAClC,WAAW,EAAE,yBAAyB,EAAE,GACvC,IAAI,CAWN;AAED;;;;GAIG;AACH,wBAAgB,eAAe,CAC7B,YAAY,EAAE,OAAO,GACpB,CAAC,OAAO,EAAE,CAAC,SAAS,EAAE,OAAO,KAAK,IAAI,CAAC,CAezC;AAED;;;;;GAKG;AACH,wBAAgB,iBAAiB,CAAC,QAAQ,EAAE,MAAM,GAAG,sBAAsB,CAW1E;AAED;;;;GAIG;AACH,wBAAgB,cAAc,CAAC,QAAQ,EAAE,MAAM,GAAG,mBAAmB,CAWpE;AAED;;;;;;GAMG;AACH,wBAAgB,uBAAuB,CACrC,QAAQ,EAAE,MAAM,GACf,CAAC,mBAAmB,EAAE,MAAM,IAAI,CAAC,CAiBnC;AAED;;;;GAIG;AACH,wBAAgB,SAAS,CAAC,GAAG,CAAC,EAAE,MAAM,GAAG,GAAG,CAmB3C;AAED;;;;;GAKG;AACH,wBAAgB,WAAW,CACzB,EAAE,EAAE,MAAM,GACT,CAAC,gBAAgB,GAAG,SAAS,EAAE,QAAQ,CAAC,CAgB1C;AAED;;;;;GAKG;AACH,wBAAgB,cAAc,CAC5B,EAAE,EAAE,MAAM,EACV,SAAS,EAAE,MAAM,GAChB,CAAC,OAAO,EAAE,QAAQ,CAAC,CAoBrB;AAED;;;;;GAKG;AACH,wBAAgB,gBAAgB,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,IAAI,CAM7D;AAED;;;;GAIG;AACH,wBAAgB,eAAe,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,IAAI,QAYnE"}
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.useActionEffect = exports.useActionTrigger = exports.useInteraction = exports.useVariable = exports.useConfig = exports.useElementData = exports.useElementColumns = exports.useLoadingState = exports.useEditorPanelConfig = exports.usePlugin = void 0;
3
+ exports.useActionEffect = exports.useActionTrigger = exports.useInteraction = exports.useVariable = exports.useConfig = exports.usePaginatedElementData = exports.useElementData = exports.useElementColumns = exports.useLoadingState = exports.useEditorPanelConfig = exports.usePlugin = void 0;
4
4
  const react_1 = require("react");
5
5
  const Context_1 = require("./Context");
6
6
  const deepEqual_1 = require("../utils/deepEqual");
@@ -52,37 +52,61 @@ function useLoadingState(initialState) {
52
52
  }
53
53
  exports.useLoadingState = useLoadingState;
54
54
  /**
55
- * Provides the latest column values from corresponding sheet
56
- * @param {string} id Sheet ID to retrieve from workbook
57
- * @returns {WorkbookElementColumns} Values of corresponding columns contained within the sheet
55
+ * Provides the latest column values from corresponding config element
56
+ * @param {string} configId ID from the config for fetching element columns, with type: 'element'
57
+ * @returns {WorkbookElementColumns} Values of corresponding columns contained
58
+ * within the config element
58
59
  */
59
- function useElementColumns(id) {
60
+ function useElementColumns(configId) {
60
61
  const client = usePlugin();
61
62
  const [columns, setColumns] = (0, react_1.useState)({});
62
63
  (0, react_1.useEffect)(() => {
63
- if (id) {
64
- return client.elements.subscribeToElementColumns(id, setColumns);
64
+ if (configId) {
65
+ return client.elements.subscribeToElementColumns(configId, setColumns);
65
66
  }
66
- }, [client, id]);
67
+ }, [client, configId]);
67
68
  return columns;
68
69
  }
69
70
  exports.useElementColumns = useElementColumns;
70
71
  /**
71
- * Provides the latest data values from corresponding sheet
72
- * @param {string} id Sheet ID to get element data from
73
- * @returns {WorkbookElementData} Element Data for corresponding sheet, if any
72
+ * Provides the latest data values from config element (max 25_000)
73
+ * @param {string} configId ID from the config for fetching element data, with type: 'element'
74
+ * @returns {WorkbookElementData} Element Data for config element, if any
74
75
  */
75
- function useElementData(id) {
76
+ function useElementData(configId) {
76
77
  const client = usePlugin();
77
78
  const [data, setData] = (0, react_1.useState)({});
78
79
  (0, react_1.useEffect)(() => {
79
- if (id) {
80
- return client.elements.subscribeToElementData(id, setData);
80
+ if (configId) {
81
+ return client.elements.subscribeToElementData(configId, setData);
81
82
  }
82
- }, [client, id]);
83
+ }, [client, configId]);
83
84
  return data;
84
85
  }
85
86
  exports.useElementData = useElementData;
87
+ /**
88
+ * Provides the latest data values from corresponding config element with a callback to
89
+ * fetch more in chunks of 25_000 data points
90
+ * @param {string} configId ID from the config for fetching paginated
91
+ * element data, with type: 'element'
92
+ * @returns {WorkbookElementData} Element Data for configured config element, if any
93
+ */
94
+ function usePaginatedElementData(configId) {
95
+ const client = usePlugin();
96
+ const [data, setData] = (0, react_1.useState)({});
97
+ const loadMore = (0, react_1.useCallback)(() => {
98
+ if (configId) {
99
+ client.elements.fetchMoreElementData(configId);
100
+ }
101
+ }, [configId]);
102
+ (0, react_1.useEffect)(() => {
103
+ if (configId) {
104
+ return client.elements.subscribeToElementData(configId, setData);
105
+ }
106
+ }, [client, configId]);
107
+ return [data, loadMore];
108
+ }
109
+ exports.usePaginatedElementData = usePaginatedElementData;
86
110
  /**
87
111
  * Provides the latest value for entire config or certain key within the config
88
112
  * @param {string} key Key within Plugin Config, optional
@@ -103,13 +127,14 @@ function useConfig(key) {
103
127
  }
104
128
  exports.useConfig = useConfig;
105
129
  /**
106
- * React hook for accessing a workbook variable
107
- * @param {string} id ID of variable within Plugin Config to use
108
- * @returns {[(WorkbookVariable | undefined), Function]} Constantly updating value of the variable and setter for the variable
130
+ * React hook for accessing a workbook control variable
131
+ * @param {string} id ID from the config of type: 'variable'
132
+ * @returns {[(WorkbookVariable | undefined), Function]} Constantly updating
133
+ * value of the control variable and setter for the variable
109
134
  */
110
135
  function useVariable(id) {
111
136
  const client = usePlugin();
112
- const [workbookVariable, setWorkbookVariable] = (0, react_1.useState)();
137
+ const [workbookVariable, setWorkbookVariable] = (0, react_1.useState)(client.config.getVariable(id));
113
138
  (0, react_1.useEffect)(() => {
114
139
  return client.config.subscribeToWorkbookVariable(id, setWorkbookVariable);
115
140
  }, [client, id]);
@@ -118,8 +143,9 @@ function useVariable(id) {
118
143
  }
119
144
  exports.useVariable = useVariable;
120
145
  /**
146
+ * @deprecated Use Action API instead
121
147
  * React hook for accessing a workbook interaction selections state
122
- * @param {string} id ID of variable within Plugin Config to use
148
+ * @param {string} id ID from the config of type: 'interaction'
123
149
  * @returns {[(WorkbookSelection | undefined), Function]} Constantly updating selection state and setter thereof
124
150
  */
125
151
  function useInteraction(id, elementId) {
@@ -137,33 +163,29 @@ exports.useInteraction = useInteraction;
137
163
  /**
138
164
  * React hook for returning a triggering callback function for the registered
139
165
  * action trigger
140
- * @param {string} id ID of action trigger
166
+ * @param {string} configId ID from the config of type: 'action-trigger'
141
167
  * @returns {Function} A callback function to trigger the action
142
168
  */
143
- function useActionTrigger(id) {
169
+ function useActionTrigger(configId) {
144
170
  const client = usePlugin();
145
- console.log('hook triggerId:', id);
146
171
  return (0, react_1.useCallback)(() => {
147
- client.config.triggerAction(id);
148
- console.log('call triggerid: ', id);
149
- }, [client, id]);
172
+ client.config.triggerAction(configId);
173
+ }, [client, configId]);
150
174
  }
151
175
  exports.useActionTrigger = useActionTrigger;
152
176
  /**
153
177
  * React hook for registering and unregistering an action effect
154
- * @param {string} id ID of action effect
178
+ * @param {string} configId ID from the config of type: 'action-effect'
155
179
  * @param {Function} effect The function to be called when the action is triggered
156
180
  */
157
- function useActionEffect(id, effect) {
181
+ function useActionEffect(configId, effect) {
158
182
  const client = usePlugin();
159
- console.log('hook effectid:', id);
183
+ const effectRef = (0, react_1.useRef)(effect);
184
+ (0, react_1.useEffect)(() => {
185
+ effectRef.current = effect;
186
+ });
160
187
  (0, react_1.useEffect)(() => {
161
- client.config.registerEffect(id, effect);
162
- // console.log('effectID', id);
163
- // console.log('getregistered:', client.config.getRegisteredEffects());
164
- return () => {
165
- client.config.unregisterEffect(id);
166
- };
167
- }, [client, id, effect]);
188
+ return client.config.registerEffect(configId, effectRef.current);
189
+ }, [client, configId, effect]);
168
190
  }
169
191
  exports.useActionEffect = useActionEffect;
package/dist/types.d.ts CHANGED
@@ -13,8 +13,8 @@ export interface PluginConfig<T> {
13
13
  }
14
14
  /**
15
15
  * @typedef {object} WorkbookVariable
16
- * @property {string} name Name of Control Variable within Workbook
17
- * @property {{string}} defaultValue Current Value containing at least type as string
16
+ * @property {string} name Name of control variable within workbook
17
+ * @property {{string}} defaultValue Current value containing at least type as string
18
18
  */
19
19
  export interface WorkbookVariable {
20
20
  name: string;
@@ -198,44 +198,42 @@ export interface PluginInstance<T = any> {
198
198
  configureEditorPanel(options: CustomPluginConfigOptions[]): void;
199
199
  /**
200
200
  * Gets a static image of a workbook variable
201
- * @param {string} id ID of the workbook variable in config
201
+ * @param {string} configId ID from config of type: 'variable'
202
202
  * @returns {WorkbookVariable} Current value of the workbook variable
203
203
  */
204
- getVariable(id: string): WorkbookVariable;
204
+ getVariable(configId: string): WorkbookVariable;
205
205
  /**
206
206
  * Setter for workbook variable passed in
207
- * @param {string} id ID of the workbook variable in config
207
+ * @param {string} configId ID from config of type: 'variable'
208
208
  * @param {unknown[]} values Values to assign to the workbook variable
209
209
  */
210
- setVariable(id: string, ...values: unknown[]): void;
210
+ setVariable(configId: string, ...values: unknown[]): void;
211
211
  /**
212
+ * @deprecated Use Action API instead
212
213
  * Getter for interaction selection state
213
- * @param {string} id ID from interaction type in Plugin Config
214
+ * @param {string} configId ID from config of type: 'interaction'
214
215
  */
215
- getInteraction(id: string): WorkbookSelection[];
216
+ getInteraction(configId: string): WorkbookSelection[];
216
217
  /**
218
+ * @deprecated Use Action API instead
217
219
  * Setter for interaction selection state
218
- * @param {string} id ID from interaction type in Plugin Config
220
+ * @param {string} configId ID from config of type: 'interaction'
219
221
  * @param {string} elementId Source element ID from element type in Plugin Config
220
222
  * @param {Object} selection List of column IDs or Columns and values and key-value pairs to select
221
223
  */
222
- setInteraction(id: string, elementId: string, selection: WorkbookSelection[]): void;
224
+ setInteraction(configId: string, elementId: string, selection: WorkbookSelection[]): void;
223
225
  /**
224
226
  * Triggers an action based on the provided action trigger ID
225
- * @param {string} id ID from action-trigger type in Plugin Config
227
+ * @param {string} configId ID from config of type: 'action-trigger'
226
228
  */
227
- triggerAction(id: string): void;
229
+ triggerAction(configId: string): void;
228
230
  /**
229
231
  * Registers an effect with the provided action effect ID
230
- * @param {string} id ID from action-effect type in Plugin Config
231
- * @param effect The effect function to register
232
- */
233
- registerEffect(id: string, effect: Function): void;
234
- /**
235
- * Unregisters an effect based on the provided action effect ID
236
- * @param {string} id ID from action-effect type in Plugin Config
232
+ * @param {string} configId ID from config of type: 'action-effect'
233
+ * @param {Function} effect The effect function to register
234
+ * @returns {Unsubscriber} A callable unsubscriber
237
235
  */
238
- unregisterEffect(id: string): void;
236
+ registerEffect(configId: string, effect: () => void): () => void;
239
237
  /**
240
238
  * Overrider function for Config Ready state
241
239
  * @param {boolean} loadingState Boolean representing if Plugin Config is still loading
@@ -243,40 +241,46 @@ export interface PluginInstance<T = any> {
243
241
  setLoadingState(ready: boolean): void;
244
242
  /**
245
243
  * Allows users to subscribe to changes in the passed in variable
246
- * @param {string} id ID of the workbook variable in config
244
+ * @param {string} configId ID from config of type: 'variable'
247
245
  * @callback callback Function to be called upon receiving an updated workbook variable
248
246
  * @returns {Unsubscriber} A callable unsubscriber
249
247
  */
250
- subscribeToWorkbookVariable(id: string, callback: (input: WorkbookVariable) => void): Unsubscriber;
248
+ subscribeToWorkbookVariable(configId: string, callback: (input: WorkbookVariable) => void): Unsubscriber;
251
249
  /**
250
+ * @deprecated Use Action API instead
252
251
  * Allows users to subscribe to changes in the passed in interaction ID
253
- * @param {string} id ID of the interaction variable within Plugin Config
252
+ * @param {string} configId ID from the config of type: 'interaction'
254
253
  * @callback callback Function to be called upon receiving an updated interaction selection state
255
254
  * @returns {Unsubscriber} A callable unsubscriber
256
255
  */
257
- subscribeToWorkbookInteraction(id: string, callback: (input: WorkbookSelection[]) => void): Unsubscriber;
256
+ subscribeToWorkbookInteraction(configId: string, callback: (input: WorkbookSelection[]) => void): Unsubscriber;
258
257
  };
259
258
  elements: {
260
259
  /**
261
260
  * Getter for Column Data by parent sheet ID
262
- * @param {string} id Sheet ID to retrieve columns from
261
+ * @param {string} configId ID from config of type: 'element'
263
262
  * @returns {WorkbookElementColumns} Column values contained within corresponding sheet
264
263
  */
265
- getElementColumns(id: string): Promise<WorkbookElementColumns>;
264
+ getElementColumns(configId: string): Promise<WorkbookElementColumns>;
266
265
  /**
267
266
  * Subscriber to changes in column data by ID
268
- * @param {string} id Column ID to subscribe to
267
+ * @param {string} configId ID from config of type: 'element'
269
268
  * @callback callback Callback function to be called upon changes to column data
270
269
  * @returns {Unsubscriber} Callable unsubscriber to column data changes
271
270
  */
272
- subscribeToElementColumns(id: string, callback: (cols: WorkbookElementColumns) => void): Unsubscriber;
271
+ subscribeToElementColumns(configId: string, callback: (cols: WorkbookElementColumns) => void): Unsubscriber;
273
272
  /**
274
273
  * Subscriber for the data within a given sheet
275
- * @param {string} id Sheet ID to get element data from
274
+ * @param {string} configId ID from config of type: 'element'
276
275
  * @callback callback Function to call on data passed in
277
276
  * @returns {Unsubscriber} A callable unsubscriber to changes in the data
278
277
  */
279
- subscribeToElementData(id: string, callback: (data: WorkbookElementData) => void): Unsubscriber;
278
+ subscribeToElementData(configId: string, callback: (data: WorkbookElementData) => void): Unsubscriber;
279
+ /**
280
+ * Ask sigma to load more data
281
+ * @param {string} configId ID from config of type: 'element'
282
+ */
283
+ fetchMoreElementData(configId: string): void;
280
284
  };
281
285
  /**
282
286
  * Destroys plugin instance and removes all subscribers
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@sigmacomputing/plugin",
3
- "version": "1.0.8-beta",
3
+ "version": "1.0.9-beta.2",
4
4
  "description": "Sigma Computing Plugin Client API",
5
5
  "license": "MIT",
6
6
  "homepage": "https://github.com/sigmacomputing/plugin",
@@ -13,6 +13,7 @@
13
13
  "email": "support@sigmacomputing.com",
14
14
  "url": "https://github.com/sigmacomputing/plugin/issues"
15
15
  },
16
+ "packageManager": "yarn@4.4.1",
16
17
  "files": [
17
18
  "dist/*"
18
19
  ],
@@ -24,15 +25,13 @@
24
25
  }
25
26
  },
26
27
  "scripts": {
27
- "clean": "rimraf dist tsconfig*.tsbuildinfo",
28
- "build": "yarn clean && yarn tsc",
28
+ "build": "yarn tsc --build tsconfig.build.json",
29
29
  "build:watch": "yarn build --watch",
30
30
  "format": "prettier --write 'src/**/*.{ts,tsx}' 'jest.config.ts'",
31
31
  "precommit": "lint-staged",
32
32
  "prepublish": "yarn build",
33
33
  "test": "jest --ci",
34
- "test:watch": "yarn test --watch",
35
- "tsc": "ttsc --build tsconfig.build.json"
34
+ "test:watch": "yarn test --watch"
36
35
  },
37
36
  "peerDependencies": {
38
37
  "react": "^16.8.0 || ^17.0.0 || ^18.0.0",
@@ -49,10 +48,6 @@
49
48
  "lint-staged": "^13.0.3",
50
49
  "prettier": "^2.7.1",
51
50
  "ts-jest": "^27.1.4",
52
- "ts-node": "^10.9.1",
53
- "ttypescript": "^1.5.13",
54
- "typescript": "^4.8.2",
55
- "typescript-transform-paths": "^3.3.1"
56
- },
57
- "packageManager": "yarn@4.3.1+sha512.af78262d7d125afbfeed740602ace8c5e4405cd7f4735c08feb327286b2fdb2390fbca01589bfd1f50b1240548b74806767f5a063c94b67e431aabd0d86f7774"
51
+ "typescript": "^4.8.2"
52
+ }
58
53
  }