@stackql/provider-utils 0.4.5 → 0.4.7

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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@stackql/provider-utils",
3
- "version": "0.4.5",
3
+ "version": "0.4.7",
4
4
  "description": "Utilities for building StackQL providers from OpenAPI specifications.",
5
5
  "type": "module",
6
6
  "main": "./src/index.js",
@@ -66,7 +66,7 @@ export function createDeleteExamples(providerName, serviceName, resourceName, re
66
66
  });
67
67
  }
68
68
 
69
- content += ';\n```\n</TabItem>\n';
69
+ content += '\n;\n```\n</TabItem>\n';
70
70
  });
71
71
 
72
72
  // Close tabs
@@ -113,7 +113,7 @@ export function createExecExamples(providerName, serviceName, resourceName, reso
113
113
  content += '}\'';
114
114
  }
115
115
 
116
- content += ';\n```\n</TabItem>\n';
116
+ content += '\n;\n```\n</TabItem>\n';
117
117
  });
118
118
 
119
119
  // Close tabs
@@ -87,9 +87,9 @@ export function createInsertExamples(providerName, serviceName, resourceName, re
87
87
  }
88
88
 
89
89
  if (isNumber || isBoolean) {
90
- return '{{ ' + paramName + ' }}' + (isRequiredBodyParam ? ' --required' : '');
90
+ return '{{ ' + paramName + ' }}' + (isRequiredBodyParam ? ' /* required */' : '');
91
91
  } else {
92
- return '\'{{ ' + paramName + ' }}\'' + (isRequiredBodyParam ? ' --required' : '');
92
+ return '\'{{ ' + paramName + ' }}\'' + (isRequiredBodyParam ? ' /* required */' : '');
93
93
  }
94
94
  });
95
95
 
@@ -67,7 +67,7 @@ export function createSelectExamples(providerName, serviceName, resourceName, re
67
67
  });
68
68
  }
69
69
 
70
- content += ';\n```\n</TabItem>\n';
70
+ content += '\n;\n```\n</TabItem>\n';
71
71
  });
72
72
 
73
73
  // Close tabs
@@ -84,56 +84,59 @@ export function createUpdateExamples(providerName, serviceName, resourceName, re
84
84
  methodDetails.requestBody.properties[prop].readOnly !== true)
85
85
  : [];
86
86
 
87
- content += '\nWHERE \n';
88
-
89
- // Add required parameters
90
- let clauseCount = 0;
91
-
92
- // Add required query/path/header params
93
- requiredParams.forEach(param => {
94
- if (clauseCount > 0) content += '\nAND ';
95
- content += param + ' = \'{{ ' + param + ' }}\' --required';
96
- clauseCount++;
97
- });
98
-
99
- // Add required body params (only non-readonly ones)
100
- requiredBodyProps.forEach(prop => {
101
- if (clauseCount > 0) content += '\nAND ';
102
-
103
- const propDetails = methodDetails.requestBody.properties[prop];
104
- const isBoolean = propDetails.type === 'boolean';
105
-
106
- if (isBoolean) {
107
- content += 'data__' + prop + ' = {{ ' + prop + ' }} --required';
108
- } else {
109
- content += 'data__' + prop + ' = \'{{ ' + prop + ' }}\' --required';
110
- }
111
-
112
- clauseCount++;
113
- });
114
-
115
- // Add optional parameters
116
- optionalParams.forEach(param => {
117
- if (clauseCount > 0) content += '\nAND ';
87
+ if (requiredParams.length > 0 || requiredBodyProps.length > 0 || optionalParams.length > 0) {
88
+
89
+ content += '\nWHERE \n';
118
90
 
119
- // For boolean parameters, we can add a comment about their default value
120
- const paramDetails = methodDetails.optionalParams[param];
121
- const isBoolean = paramDetails.type === 'boolean';
122
- const defaultValue = paramDetails.default;
91
+ // Add required parameters
92
+ let clauseCount = 0;
123
93
 
124
- if (isBoolean) {
125
- content += param + ' = {{ ' + param + '}}';
126
- } else {
127
- content += param + ' = \'{{ ' + param + '}}\'';
128
- }
94
+ // Add required query/path/header params
95
+ requiredParams.forEach(param => {
96
+ if (clauseCount > 0) content += '\nAND ';
97
+ content += param + ' = \'{{ ' + param + ' }}\' --required';
98
+ clauseCount++;
99
+ });
129
100
 
130
- if (isBoolean && defaultValue !== undefined) {
131
- content += ' -- default: ' + defaultValue;
132
- }
101
+ // Add required body params (only non-readonly ones)
102
+ requiredBodyProps.forEach(prop => {
103
+ if (clauseCount > 0) content += '\nAND ';
104
+
105
+ const propDetails = methodDetails.requestBody.properties[prop];
106
+ const isBoolean = propDetails.type === 'boolean';
107
+
108
+ if (isBoolean) {
109
+ content += 'data__' + prop + ' = {{ ' + prop + ' }} --required';
110
+ } else {
111
+ content += 'data__' + prop + ' = \'{{ ' + prop + ' }}\' --required';
112
+ }
113
+
114
+ clauseCount++;
115
+ });
133
116
 
134
- clauseCount++;
135
- });
136
-
117
+ // Add optional parameters
118
+ optionalParams.forEach(param => {
119
+ if (clauseCount > 0) content += '\nAND ';
120
+
121
+ // For boolean parameters, we can add a comment about their default value
122
+ const paramDetails = methodDetails.optionalParams[param];
123
+ const isBoolean = paramDetails.type === 'boolean';
124
+ const defaultValue = paramDetails.default;
125
+
126
+ if (isBoolean) {
127
+ content += param + ' = {{ ' + param + '}}';
128
+ } else {
129
+ content += param + ' = \'{{ ' + param + '}}\'';
130
+ }
131
+
132
+ if (isBoolean && defaultValue !== undefined) {
133
+ content += ' -- default: ' + defaultValue;
134
+ }
135
+
136
+ clauseCount++;
137
+ });
138
+ }
139
+
137
140
  // returning clause if properties exist
138
141
  if (methodDetails.properties && Object.keys(methodDetails.properties).length > 0) {
139
142
  content += '\nRETURNING\n';