kintone-form-model-generator
v1.0.16
Published
Generate type definitions compatible with @kintone/rest-api-client
Downloads
4
Readme
kintone-form-model-generator
Generate type definitions compatible with @kintone/rest-api-client
Prerequirements
- Node.js (>=12)
Install
# Install
npm install -g kintone-form-model-generator
# npx
npx kintone-form-model-generator
Usage
Generate
# Generate all models
kintone-form-model-generator generate
# Specify app ids (or -a option)
kintone-form-model-generator generate --app-ids=1,5,10
By default, files are generated in the out/
directory.
import { ID, Revision } from "@kintone/rest-api-client/lib/KintoneFields/types/field";
export interface KintoneApp1Record {
/**
* ID
* @type ID
*/
"$id": ID;
/**
* Revision
* @type Revision
*/
"$revision": Revision;
/**
* チェックボックス
* CHECK_BOX
* @type CheckBox
*/
"チェックボックス": CheckBox;
/**
* テーブル
* @type Subtable
*/
"テーブル": Subtable<{
/**
* 文字列 (1行)
* 文字列__1行__Table
* SINGLE_LINE_TEXT
* @type SingleLineText
*/
"文字列__1行__Table": SingleLineText;
}>;
}
export type KintoneApp54RecordForParameter = KintoneApp54RecordForParameterStrict & ForParameterLax;
export type ForParameterLax = {
[fieldCode: string]: {
value: unknown;
};
};
export interface KintoneApp54RecordForParameterStrict {
/**
* チェックボックス
* CHECK_BOX
* @type Object
*/
"チェックボックス"?: {
value: string[];
};
/**
* テーブル
* SUBTABLE
* @type Object
*/
"テーブル"?: {
value: {
/**
* id
* @type string
*/
id: string;
value: {
/**
* 文字列 (1行)
* 文字列__1行__Table
* SINGLE_LINE_TEXT
* @type SingleLineText
*/
"文字列__1行__Table"?: {
value: string;
};
};
}[];
};
}
Configuration
Environments variables
Specify secrets in the environment variables.
| Name | Description |
| ---------------- | ------------------------------------------------------- |
| KINTONE_BASE_URL | URL for kintone (ex. https://your-domain.cybozu.com
) |
| KINTONE_USERNAME | Kintone username |
| KINTONE_PASSWORD | Kintone apssword |
Configuration
Specify detailed behavior by --config
or -c
option. (Must be utf-8
encoded JSON file.)
kintone-form-model-generator generate --config=config.json
| Name | Type | Default | Description |
| ------------------------------ | ---------------------- | --------- | ------------------------------------------------------------- |
| outDir | string | out/
| Output directory |
| modelNaming | string | appId
| appId
or appCode
|
| modelNameMapping | Record<string, string> | {} | A dictionary object with a model name using appId
as a key. |
| modelNamePrefix | string | Kintone
| Model name prefix |
| modelNameSuffix | string | Record
| Model name suffix |
| modelNamingDuplicationStrategy | string | error
| error
or skip
or uniquifyWithAppId
|
| ignoreAppIds | Array | [] | ignore app id list |
Example:
{
"outDir": "dist/",
"modelNameMapping": {
"1": "Customer",
"3": "Sales"
},
"modelNamePrefix": "My",
"modelNameSuffix": "Record",
"ignoreAppIds": ["2"]
}
Kintone API configuration
Specify the connection to Kintone API with --kintone-config
or -k
option. (Must be utf-8
encoded JSON file.)
See more details in @kintone/rest-api-client repository.
kintone-form-model-generator generate --kintone-config=kintone-config.json
Example:
{
"baseUrl": "https://your-domain.cybozu.com",
"auth": {
"apiToken": "your-api-token"
}
}