@commercelayer/cli-plugin-provisioning 2.0.9 → 2.1.0

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 (46) hide show
  1. package/bin/run.js +3 -3
  2. package/lib/base.d.ts +8 -8
  3. package/lib/base.js +224 -165
  4. package/lib/commands/provisioning/create.d.ts +2 -2
  5. package/lib/commands/provisioning/create.js +46 -34
  6. package/lib/commands/provisioning/delete.d.ts +2 -2
  7. package/lib/commands/provisioning/delete.js +25 -14
  8. package/lib/commands/provisioning/exec.d.ts +1 -1
  9. package/lib/commands/provisioning/exec.js +22 -13
  10. package/lib/commands/provisioning/fetch.d.ts +3 -3
  11. package/lib/commands/provisioning/fetch.js +25 -17
  12. package/lib/commands/provisioning/get.d.ts +3 -3
  13. package/lib/commands/provisioning/get.js +8 -8
  14. package/lib/commands/provisioning/list.d.ts +3 -3
  15. package/lib/commands/provisioning/list.js +42 -38
  16. package/lib/commands/provisioning/noc.d.ts +1 -1
  17. package/lib/commands/provisioning/noc.js +1 -1
  18. package/lib/commands/provisioning/relationship.d.ts +3 -3
  19. package/lib/commands/provisioning/relationship.js +39 -23
  20. package/lib/commands/provisioning/resources.d.ts +1 -1
  21. package/lib/commands/provisioning/resources.js +22 -12
  22. package/lib/commands/provisioning/retrieve.d.ts +2 -2
  23. package/lib/commands/provisioning/retrieve.js +36 -30
  24. package/lib/commands/provisioning/update.d.ts +3 -3
  25. package/lib/commands/provisioning/update.js +60 -41
  26. package/lib/csv.d.ts +1 -1
  27. package/lib/csv.js +30 -27
  28. package/lib/lang/curl.d.ts +2 -2
  29. package/lib/lang/curl.js +4 -2
  30. package/lib/lang/index.d.ts +5 -5
  31. package/lib/lang/index.js +26 -18
  32. package/lib/lang/node.d.ts +2 -2
  33. package/lib/lang/node.js +7 -7
  34. package/lib/lang/request.d.ts +3 -3
  35. package/lib/lang/request.js +37 -30
  36. package/lib/lang/ruby.d.ts +2 -2
  37. package/lib/lang/ruby.js +1 -1
  38. package/lib/output.d.ts +1 -1
  39. package/lib/output.js +3 -3
  40. package/lib/util/resources/available.js +33 -8
  41. package/lib/util/resources/build.js +35 -19
  42. package/lib/util/resources/index.d.ts +3 -3
  43. package/lib/util/resources/index.js +3 -3
  44. package/lib/util/timezones.js +127 -115
  45. package/oclif.manifest.json +1 -1
  46. package/package.json +85 -87
@@ -1,24 +1,24 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.getOperation = exports.getHeaders = exports.getRelationship = exports.getResource = exports.getFullUrl = exports.getMethod = exports.isRequestInterrupted = exports.addRequestReader = void 0;
4
- const provisioning_sdk_1 = require("@commercelayer/provisioning-sdk");
5
4
  const cli_core_1 = require("@commercelayer/cli-core");
5
+ const provisioning_sdk_1 = require("@commercelayer/provisioning-sdk");
6
6
  class RequestInterrupted extends Error {
7
7
  requestInterrupted = true;
8
8
  constructor() {
9
- super('REQUEST_INTERRUPT');
9
+ super("REQUEST_INTERRUPT");
10
10
  }
11
11
  }
12
12
  const addRequestReader = (cl, interrupt = true) => {
13
13
  const reader = {
14
14
  id: -1,
15
- request: { baseUrl: '', path: '/', method: 'get', headers: {} },
15
+ request: { baseUrl: "", path: "/", method: "get", headers: {} },
16
16
  };
17
17
  function requestInterceptor(request) {
18
18
  const c = request;
19
19
  const x = reader.request;
20
20
  x.path = c.url.pathname;
21
- x.method = c.options.method || 'GET';
21
+ x.method = c.options.method || "GET";
22
22
  x.headers = c.options.headers;
23
23
  x.params = c.url.searchParams;
24
24
  x.baseUrl = `${c.url.protocol}//${c.url.hostname}`;
@@ -33,7 +33,9 @@ const addRequestReader = (cl, interrupt = true) => {
33
33
  };
34
34
  exports.addRequestReader = addRequestReader;
35
35
  const isRequestInterrupted = (error) => {
36
- return (provisioning_sdk_1.CommerceLayerProvisioningStatic.isSdkError(error) && (error.source instanceof RequestInterrupted) && error.source.requestInterrupted);
36
+ return (provisioning_sdk_1.CommerceLayerProvisioningStatic.isSdkError(error) &&
37
+ error.source instanceof RequestInterrupted &&
38
+ error.source.requestInterrupted);
37
39
  };
38
40
  exports.isRequestInterrupted = isRequestInterrupted;
39
41
  const getMethod = (request) => {
@@ -42,36 +44,38 @@ const getMethod = (request) => {
42
44
  exports.getMethod = getMethod;
43
45
  const getFullUrl = (request) => {
44
46
  let fullUrl = `${request.baseUrl}${request.path}`;
45
- if (request.params && (Object.keys(request.params).length > 0)) {
46
- const qs = Object.entries(request.params).map(([k, v]) => `${k}=${v}`).join('&');
47
+ if (request.params && Object.keys(request.params).length > 0) {
48
+ const qs = Object.entries(request.params)
49
+ .map(([k, v]) => `${k}=${v}`)
50
+ .join("&");
47
51
  fullUrl += `?${qs}`;
48
52
  }
49
53
  return fullUrl;
50
54
  };
51
55
  exports.getFullUrl = getFullUrl;
52
56
  const getResource = (request) => {
53
- const slashIdx = request.path.indexOf('/');
57
+ const slashIdx = request.path.indexOf("/");
54
58
  if (slashIdx < 0)
55
59
  return request.path;
56
60
  return request.path.substring(0, slashIdx);
57
61
  };
58
62
  exports.getResource = getResource;
59
63
  const getRelationship = (request) => {
60
- const i1 = request.path.indexOf('/');
61
- const il = request.path.lastIndexOf('/');
62
- return (i1 === il) ? undefined : request.path.substring(il + 1);
64
+ const i1 = request.path.indexOf("/");
65
+ const il = request.path.lastIndexOf("/");
66
+ return i1 === il ? undefined : request.path.substring(il + 1);
63
67
  };
64
68
  exports.getRelationship = getRelationship;
65
69
  const getHeaders = (request) => {
66
70
  /*
67
- const headers = { ...request.headers }
68
- for (const h of Object.keys(headers))
69
- if (['User-Agent', 'Content-Length'].includes(h)) delete headers[h]
70
- return headers
71
- */
71
+ const headers = { ...request.headers }
72
+ for (const h of Object.keys(headers))
73
+ if (['User-Agent', 'Content-Length'].includes(h)) delete headers[h]
74
+ return headers
75
+ */
72
76
  return {
73
77
  Accept: request.headers.Accept,
74
- 'Content-Type': request.headers['Content-Type'],
78
+ "Content-Type": request.headers["Content-Type"],
75
79
  Authorization: request.headers.Authorization,
76
80
  };
77
81
  };
@@ -79,30 +83,33 @@ exports.getHeaders = getHeaders;
79
83
  const getOperation = (request) => {
80
84
  const res = (0, exports.getResource)(request);
81
85
  const rel = (0, exports.getRelationship)(request);
82
- const id = request.path.replace(res, '').replace(rel || '', '').replace(/\//g, '');
86
+ const id = request.path
87
+ .replace(res, "")
88
+ .replace(rel || "", "")
89
+ .replace(/\//g, "");
83
90
  const method = request.method.toLowerCase();
84
- const singleton = ['application', 'organization'].includes(res);
91
+ const singleton = ["application", "organization"].includes(res);
85
92
  const op = {
86
93
  method,
87
- name: 'retrieve',
94
+ name: "retrieve",
88
95
  resource: res,
89
96
  relationship: rel,
90
97
  id,
91
98
  };
92
99
  if (op.relationship)
93
- op.oneToMany = (cli_core_1.clText.pluralize(op.relationship) === op.relationship);
94
- if (op.method === 'get') {
100
+ op.oneToMany = cli_core_1.clText.pluralize(op.relationship) === op.relationship;
101
+ if (op.method === "get") {
95
102
  if (singleton || (op.id && !op.relationship))
96
- op.name = 'retrieve';
103
+ op.name = "retrieve";
97
104
  else
98
- op.name = rel || 'list';
105
+ op.name = rel || "list";
99
106
  }
100
- else if (method === 'patch')
101
- op.name = 'update';
102
- else if (method === 'post')
103
- op.name = 'create';
104
- else if (method === 'delete')
105
- op.name = 'delete';
107
+ else if (method === "patch")
108
+ op.name = "update";
109
+ else if (method === "post")
110
+ op.name = "create";
111
+ else if (method === "delete")
112
+ op.name = "delete";
106
113
  return op;
107
114
  };
108
115
  exports.getOperation = getOperation;
@@ -1,4 +1,4 @@
1
- import type { QueryParams } from '@commercelayer/provisioning-sdk';
2
- import type { RequestData } from './request';
1
+ import type { QueryParams } from "@commercelayer/provisioning-sdk";
2
+ import type { RequestData } from "./request";
3
3
  declare const buildRuby: (_request: RequestData, _params?: QueryParams) => string;
4
4
  export { buildRuby };
package/lib/lang/ruby.js CHANGED
@@ -2,6 +2,6 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.buildRuby = void 0;
4
4
  const buildRuby = (_request, _params) => {
5
- return 'ruby';
5
+ return "ruby";
6
6
  };
7
7
  exports.buildRuby = buildRuby;
package/lib/output.d.ts CHANGED
@@ -2,4 +2,4 @@ declare const formatOutput: (out: any, flags?: any, { color }?: {
2
2
  color?: boolean | undefined;
3
3
  }) => string;
4
4
  declare const exportOutput: (output: any, flags: any, filePath: string) => Promise<boolean>;
5
- export { formatOutput, exportOutput };
5
+ export { exportOutput, formatOutput };
package/lib/output.js CHANGED
@@ -1,7 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.exportOutput = exports.formatOutput = void 0;
4
- const fs_1 = require("fs");
3
+ exports.formatOutput = exports.exportOutput = void 0;
4
+ const node_fs_1 = require("node:fs");
5
5
  const cli_core_1 = require("@commercelayer/cli-core");
6
6
  const formatOutput = (out, flags, { color = true } = {}) => {
7
7
  return cli_core_1.clOutput.formatOutput(out, flags, { color });
@@ -9,7 +9,7 @@ const formatOutput = (out, flags, { color = true } = {}) => {
9
9
  exports.formatOutput = formatOutput;
10
10
  const exportOutput = async (output, flags, filePath) => {
11
11
  const out = formatOutput(output, flags, { color: false });
12
- (0, fs_1.writeFileSync)(filePath, out);
12
+ (0, node_fs_1.writeFileSync)(filePath, out);
13
13
  return await Promise.resolve(true);
14
14
  };
15
15
  exports.exportOutput = exportOutput;
@@ -1,13 +1,38 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  const RESOURCES = [
4
- { name: 'api_credential', type: 'api_credentials', api: 'api_credentials', model: 'ApiCredential' },
5
- { name: 'application_membership', type: 'application_memberships', api: 'application_memberships', model: 'ApplicationMembership' },
6
- { name: 'membership', type: 'memberships', api: 'memberships', model: 'Membership' },
7
- { name: 'organization', type: 'organizations', api: 'organizations', model: 'Organization' },
8
- { name: 'permission', type: 'permissions', api: 'permissions', model: 'Permission' },
9
- { name: 'role', type: 'roles', api: 'roles', model: 'Role' },
10
- { name: 'user', type: 'users', api: 'user', model: 'User', singleton: true },
11
- { name: 'version', type: 'versions', api: 'versions', model: 'Version' },
4
+ {
5
+ name: "api_credential",
6
+ type: "api_credentials",
7
+ api: "api_credentials",
8
+ model: "ApiCredential",
9
+ },
10
+ {
11
+ name: "application_membership",
12
+ type: "application_memberships",
13
+ api: "application_memberships",
14
+ model: "ApplicationMembership",
15
+ },
16
+ {
17
+ name: "membership",
18
+ type: "memberships",
19
+ api: "memberships",
20
+ model: "Membership",
21
+ },
22
+ {
23
+ name: "organization",
24
+ type: "organizations",
25
+ api: "organizations",
26
+ model: "Organization",
27
+ },
28
+ {
29
+ name: "permission",
30
+ type: "permissions",
31
+ api: "permissions",
32
+ model: "Permission",
33
+ },
34
+ { name: "role", type: "roles", api: "roles", model: "Role" },
35
+ { name: "user", type: "users", api: "user", model: "User", singleton: true },
36
+ { name: "version", type: "versions", api: "versions", model: "Version" },
12
37
  ];
13
38
  exports.default = RESOURCES;
@@ -1,17 +1,20 @@
1
1
  "use strict";
2
+ /* eslint-disable no-console */
2
3
  Object.defineProperty(exports, "__esModule", { value: true });
3
- const provisioning_sdk_1 = require("@commercelayer/provisioning-sdk");
4
- const path_1 = require("path");
5
- const fs_1 = require("fs");
4
+ const node_fs_1 = require("node:fs");
5
+ const node_path_1 = require("node:path");
6
6
  const cli_core_1 = require("@commercelayer/cli-core");
7
+ const provisioning_sdk_1 = require("@commercelayer/provisioning-sdk");
7
8
  const parseResourcesSdk = async () => {
8
- const resList = provisioning_sdk_1.CommerceLayerProvisioningStatic.resources().map(r => {
9
+ const resList = provisioning_sdk_1.CommerceLayerProvisioningStatic.resources().map((r) => {
9
10
  const res = r;
10
11
  const singular = cli_core_1.clText.singularize(res);
11
12
  const item = {
12
13
  name: singular,
13
14
  type: res,
14
- api: provisioning_sdk_1.CommerceLayerProvisioningStatic.isSingleton(res) ? cli_core_1.clText.singularize(res) : res,
15
+ api: provisioning_sdk_1.CommerceLayerProvisioningStatic.isSingleton(res)
16
+ ? cli_core_1.clText.singularize(res)
17
+ : res,
15
18
  model: cli_core_1.clText.camelize(singular),
16
19
  singleton: provisioning_sdk_1.CommerceLayerProvisioningStatic.isSingleton(res),
17
20
  };
@@ -19,28 +22,41 @@ const parseResourcesSdk = async () => {
19
22
  });
20
23
  return resList;
21
24
  };
22
- const exportResources = async ({ source = 'sdk', variable = false, name = 'resources', array = false, tab = false, immutable = false } = {}) => {
23
- if (source !== 'sdk')
25
+ const exportResources = async ({ source = "sdk", variable = false, name = "resources", array = false, tab = false, immutable = false, } = {}) => {
26
+ if (source !== "sdk")
24
27
  throw new Error(`Only 'sdk' source is currently supported`);
25
28
  const resources = await parseResourcesSdk();
26
- console.log('Parsed resources from source: ' + source);
27
- const lines = [''];
29
+ console.log("Parsed resources from source: " + source);
30
+ const lines = [""];
28
31
  if (variable || array)
29
- lines.push((variable ? `const ${name} = ` : '') + (array ? '[' : ''));
30
- const resLines = resources.map(res => {
31
- let item = `${tab ? '\t' : ''}{ `;
32
+ lines.push((variable ? `const ${name} = ` : "") + (array ? "[" : ""));
33
+ const resLines = resources.map((res) => {
34
+ let item = `${tab ? "\t" : ""}{ `;
32
35
  item += `name: '${res.name}', type: '${res.type}', api: '${res.api}', model: '${res.model}'`;
33
36
  if (res.singleton)
34
- item += ', singleton: true';
35
- item += ' },';
37
+ item += ", singleton: true";
38
+ item += " },";
36
39
  return item;
37
40
  });
38
41
  lines.push(...resLines);
39
42
  if (array)
40
- lines.push(`]${immutable ? ' as const' : ''}\n`);
43
+ lines.push(`]${immutable ? " as const" : ""}\n`);
41
44
  lines.push(`\n\nexport default ${name}\n`);
42
- (0, fs_1.writeFileSync)((0, path_1.join)(__dirname, 'available.ts'), lines.join('\n'), { encoding: 'utf-8' });
43
- console.log('Generated resource list');
45
+ (0, node_fs_1.writeFileSync)((0, node_path_1.join)(__dirname, "available.ts"), lines.join("\n"), {
46
+ encoding: "utf-8",
47
+ });
48
+ console.log("Generated resource list");
44
49
  };
45
- const source = (process.argv.length > 2) ? (['sdk', 'online'].includes(process.argv[2]) ? process.argv[2] : 'sdk') : undefined;
46
- void exportResources({ source, variable: true, name: 'RESOURCES', array: true, tab: true, immutable: true });
50
+ const source = process.argv.length > 2
51
+ ? ["sdk", "online"].includes(process.argv[2])
52
+ ? process.argv[2]
53
+ : "sdk"
54
+ : undefined;
55
+ void exportResources({
56
+ source,
57
+ variable: true,
58
+ name: "RESOURCES",
59
+ array: true,
60
+ tab: true,
61
+ immutable: true,
62
+ });
@@ -1,4 +1,4 @@
1
- import type { ResourceTypeLock } from '@commercelayer/provisioning-sdk';
1
+ import type { ResourceTypeLock } from "@commercelayer/provisioning-sdk";
2
2
  interface ApiResource {
3
3
  name: string;
4
4
  type: ResourceTypeLock;
@@ -8,6 +8,6 @@ interface ApiResource {
8
8
  }
9
9
  declare const findResource: (res: string, { singular }?: {
10
10
  singular?: boolean | undefined;
11
- }) => (ApiResource | undefined);
11
+ }) => ApiResource | undefined;
12
12
  declare const resourceList: (field: "name" | "api" | "model") => string[];
13
- export { findResource, resourceList, type ApiResource as Resource };
13
+ export { type ApiResource as Resource, findResource, resourceList };
@@ -8,12 +8,12 @@ const findResource = (res, { singular = false } = {}) => {
8
8
  if (res === undefined)
9
9
  return undefined;
10
10
  const lowRes = res.toLowerCase();
11
- return resources.find(r => {
12
- return (lowRes === r.type) || (singular && (lowRes === r.name));
11
+ return resources.find((r) => {
12
+ return lowRes === r.type || (singular && lowRes === r.name);
13
13
  });
14
14
  };
15
15
  exports.findResource = findResource;
16
16
  const resourceList = (field) => {
17
- return resources.map(r => r[field]);
17
+ return resources.map((r) => r[field]);
18
18
  };
19
19
  exports.resourceList = resourceList;
@@ -2,119 +2,131 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.timezones = void 0;
4
4
  exports.timezones = [
5
- { value: 'Etc/GMT+12', label: '(GMT-12:00) International Date Line West' },
6
- { value: 'Pacific/Pago_Pago', label: '(GMT-11:00) American Samoa' },
7
- { value: 'Pacific/Midway', label: '(GMT-11:00) Midway Island' },
8
- { value: 'Pacific/Honolulu', label: '(GMT-10:00) Hawaii' },
9
- { value: 'America/Anchorage', label: '(GMT-09:00) Alaska' },
10
- { value: 'America/Los_Angeles', label: '(GMT-08:00) Pacific Time (US & Canada)' },
11
- { value: 'America/Tijuana', label: '(GMT-08:00) Tijuana' },
12
- { value: 'America/Phoenix', label: '(GMT-07:00) Arizona' },
13
- { value: 'America/Denver', label: '(GMT-07:00) Mountain Time (US & Canada)' },
14
- { value: 'America/Chihuahua', label: '(GMT-07:00) Chihuahua' },
15
- { value: 'America/Mazatlan', label: '(GMT-07:00) Mazatlan' },
16
- { value: 'America/Chicago', label: '(GMT-06:00) Central Time (US & Canada)' },
17
- { value: 'America/Regina', label: '(GMT-06:00) Saskatchewan' },
18
- { value: 'America/Mexico_City', label: '(GMT-06:00) Mexico City' },
19
- { value: 'America/Monterrey', label: '(GMT-06:00) Monterrey' },
20
- { value: 'America/New_York', label: '(GMT-05:00) Eastern Time (US & Canada)' },
21
- { value: 'America/Bogota', label: '(GMT-05:00) Bogota' },
22
- { value: 'America/Lima', label: '(GMT-05:00) Lima' },
23
- { value: 'America/Rio_Branco', label: '(GMT-05:00) Rio Branco' },
24
- { value: 'America/Indiana/Indianapolis', label: '(GMT-05:00) Indiana (East)' },
25
- { value: 'America/Caracas', label: '(GMT-04:30) Caracas' },
26
- { value: 'America/Halifax', label: '(GMT-04:00) Atlantic Time (Canada)' },
27
- { value: 'America/Manaus', label: '(GMT-04:00) Manaus' },
28
- { value: 'America/Santiago', label: '(GMT-04:00) Santiago' },
29
- { value: 'America/La_Paz', label: '(GMT-04:00) La Paz' },
30
- { value: 'America/St_Johns', label: '(GMT-03:30) Newfoundland' },
31
- { value: 'America/Argentina/Buenos_Aires', label: '(GMT-03:00) Buenos Aires' },
32
- { value: 'America/Sao_Paulo', label: '(GMT-03:00) Brasilia' },
33
- { value: 'America/Godthab', label: '(GMT-03:00) Greenland' },
34
- { value: 'America/Montevideo', label: '(GMT-03:00) Montevideo' },
35
- { value: 'Atlantic/South_Georgia', label: '(GMT-02:00) Mid-Atlantic' },
36
- { value: 'Atlantic/Azores', label: '(GMT-01:00) Azores' },
37
- { value: 'Atlantic/Cape_Verde', label: '(GMT-01:00) Cape Verde Is.' },
38
- { value: 'Europe/Dublin', label: '(GMT+00:00) Dublin' },
39
- { value: 'Europe/Lisbon', label: '(GMT+00:00) Lisbon' },
40
- { value: 'Europe/London', label: '(GMT+00:00) London' },
41
- { value: 'Africa/Monrovia', label: '(GMT+00:00) Monrovia' },
42
- { value: 'Etc/UTC', label: '(GMT+00:00) UTC' },
43
- { value: 'Europe/Amsterdam', label: '(GMT+01:00) Amsterdam' },
44
- { value: 'Europe/Belgrade', label: '(GMT+01:00) Belgrade' },
45
- { value: 'Europe/Berlin', label: '(GMT+01:00) Berlin' },
46
- { value: 'Europe/Bratislava', label: '(GMT+01:00) Bratislava' },
47
- { value: 'Europe/Brussels', label: '(GMT+01:00) Brussels' },
48
- { value: 'Europe/Budapest', label: '(GMT+01:00) Budapest' },
49
- { value: 'Europe/Copenhagen', label: '(GMT+01:00) Copenhagen' },
50
- { value: 'Europe/Ljubljana', label: '(GMT+01:00) Ljubljana' },
51
- { value: 'Europe/Madrid', label: '(GMT+01:00) Madrid' },
52
- { value: 'Europe/Paris', label: '(GMT+01:00) Paris' },
53
- { value: 'Europe/Prague', label: '(GMT+01:00) Prague' },
54
- { value: 'Europe/Rome', label: '(GMT+01:00) Rome' },
55
- { value: 'Europe/Sarajevo', label: '(GMT+01:00) Sarajevo' },
56
- { value: 'Europe/Skopje', label: '(GMT+01:00) Skopje' },
57
- { value: 'Europe/Stockholm', label: '(GMT+01:00) Stockholm' },
58
- { value: 'Europe/Vienna', label: '(GMT+01:00) Vienna' },
59
- { value: 'Europe/Warsaw', label: '(GMT+01:00) Warsaw' },
60
- { value: 'Europe/Zagreb', label: '(GMT+01:00) Zagreb' },
61
- { value: 'Europe/Athens', label: '(GMT+02:00) Athens' },
62
- { value: 'Europe/Bucharest', label: '(GMT+02:00) Bucharest' },
63
- { value: 'Africa/Cairo', label: '(GMT+02:00) Cairo' },
64
- { value: 'Africa/Harare', label: '(GMT+02:00) Harare' },
65
- { value: 'Europe/Helsinki', label: '(GMT+02:00) Helsinki' },
66
- { value: 'Europe/Istanbul', label: '(GMT+02:00) Istanbul' },
67
- { value: 'Asia/Jerusalem', label: '(GMT+02:00) Jerusalem' },
68
- { value: 'Europe/Kiev', label: '(GMT+02:00) Kyiv' },
69
- { value: 'Europe/Minsk', label: '(GMT+02:00) Minsk' },
70
- { value: 'Europe/Riga', label: '(GMT+02:00) Riga' },
71
- { value: 'Europe/Sofia', label: '(GMT+02:00) Sofia' },
72
- { value: 'Europe/Tallinn', label: '(GMT+02:00) Tallinn' },
73
- { value: 'Europe/Vilnius', label: '(GMT+02:00) Vilnius' },
74
- { value: 'Asia/Baghdad', label: '(GMT+03:00) Baghdad' },
75
- { value: 'Asia/Kuwait', label: '(GMT+03:00) Kuwait' },
76
- { value: 'Europe/Moscow', label: '(GMT+03:00) Moscow' },
77
- { value: 'Africa/Nairobi', label: '(GMT+03:00) Nairobi' },
78
- { value: 'Asia/Riyadh', label: '(GMT+03:00) Riyadh' },
79
- { value: 'Europe/Volgograd', label: '(GMT+03:00) Volgograd' },
80
- { value: 'Asia/Tehran', label: '(GMT+03:30) Tehran' },
81
- { value: 'Asia/Muscat', label: '(GMT+04:00) Muscat' },
82
- { value: 'Asia/Baku', label: '(GMT+04:00) Baku' },
83
- { value: 'Asia/Yerevan', label: '(GMT+04:00) Yerevan' },
84
- { value: 'Asia/Kabul', label: '(GMT+04:30) Kabul' },
85
- { value: 'Asia/Yekaterinburg', label: '(GMT+05:00) Ekaterinburg' },
86
- { value: 'Asia/Karachi', label: '(GMT+05:00) Karachi' },
87
- { value: 'Asia/Tashkent', label: '(GMT+05:00) Tashkent' },
88
- { value: 'Asia/Kolkata', label: '(GMT+05:30) Kolkata' },
89
- { value: 'Asia/Colombo', label: '(GMT+05:30) Sri Jayawardenepura' },
90
- { value: 'Asia/Katmandu', label: '(GMT+05:45) Kathmandu' },
91
- { value: 'Asia/Almaty', label: '(GMT+06:00) Almaty' },
92
- { value: 'Asia/Dhaka', label: '(GMT+06:00) Dhaka' },
93
- { value: 'Asia/Urumqi', label: '(GMT+06:00) Urumqi' },
94
- { value: 'Asia/Rangoon', label: '(GMT+06:30) Rangoon' },
95
- { value: 'Asia/Bangkok', label: '(GMT+07:00) Bangkok' },
96
- { value: 'Asia/Jakarta', label: '(GMT+07:00) Jakarta' },
97
- { value: 'Asia/Krasnoyarsk', label: '(GMT+07:00) Krasnoyarsk' },
98
- { value: 'Asia/Hong_Kong', label: '(GMT+08:00) Hong Kong' },
99
- { value: 'Asia/Kuala_Lumpur', label: '(GMT+08:00) Kuala Lumpur' },
100
- { value: 'Australia/Perth', label: '(GMT+08:00) Perth' },
101
- { value: 'Asia/Singapore', label: '(GMT+08:00) Singapore' },
102
- { value: 'Asia/Taipei', label: '(GMT+08:00) Taipei' },
103
- { value: 'Asia/Ulaanbaatar', label: '(GMT+08:00) Ulaan Bataar' },
104
- { value: 'Asia/Irkutsk', label: '(GMT+08:00) Irkutsk' },
105
- { value: 'Asia/Tokyo', label: '(GMT+09:00) Tokyo' },
106
- { value: 'Asia/Seoul', label: '(GMT+09:00) Seoul' },
107
- { value: 'Asia/Yakutsk', label: '(GMT+09:00) Yakutsk' },
108
- { value: 'Australia/Adelaide', label: '(GMT+09:30) Adelaide' },
109
- { value: 'Australia/Darwin', label: '(GMT+09:30) Darwin' },
110
- { value: 'Australia/Brisbane', label: '(GMT+10:00) Brisbane' },
111
- { value: 'Australia/Sydney', label: '(GMT+10:00) Sydney' },
112
- { value: 'Pacific/Guam', label: '(GMT+10:00) Guam' },
113
- { value: 'Australia/Hobart', label: '(GMT+10:00) Hobart' },
114
- { value: 'Asia/Vladivostok', label: '(GMT+10:00) Vladivostok' },
115
- { value: 'Pacific/Noumea', label: '(GMT+11:00) New Caledonia' },
116
- { value: 'Asia/Magadan', label: '(GMT+11:00) Magadan' },
117
- { value: 'Pacific/Fiji', label: '(GMT+12:00) Fiji' },
118
- { value: 'Asia/Kamchatka', label: '(GMT+12:00) Kamchatka' },
119
- { value: 'Pacific/Auckland', label: '(GMT+12:00) Auckland' }
5
+ { value: "Etc/GMT+12", label: "(GMT-12:00) International Date Line West" },
6
+ { value: "Pacific/Pago_Pago", label: "(GMT-11:00) American Samoa" },
7
+ { value: "Pacific/Midway", label: "(GMT-11:00) Midway Island" },
8
+ { value: "Pacific/Honolulu", label: "(GMT-10:00) Hawaii" },
9
+ { value: "America/Anchorage", label: "(GMT-09:00) Alaska" },
10
+ {
11
+ value: "America/Los_Angeles",
12
+ label: "(GMT-08:00) Pacific Time (US & Canada)",
13
+ },
14
+ { value: "America/Tijuana", label: "(GMT-08:00) Tijuana" },
15
+ { value: "America/Phoenix", label: "(GMT-07:00) Arizona" },
16
+ { value: "America/Denver", label: "(GMT-07:00) Mountain Time (US & Canada)" },
17
+ { value: "America/Chihuahua", label: "(GMT-07:00) Chihuahua" },
18
+ { value: "America/Mazatlan", label: "(GMT-07:00) Mazatlan" },
19
+ { value: "America/Chicago", label: "(GMT-06:00) Central Time (US & Canada)" },
20
+ { value: "America/Regina", label: "(GMT-06:00) Saskatchewan" },
21
+ { value: "America/Mexico_City", label: "(GMT-06:00) Mexico City" },
22
+ { value: "America/Monterrey", label: "(GMT-06:00) Monterrey" },
23
+ {
24
+ value: "America/New_York",
25
+ label: "(GMT-05:00) Eastern Time (US & Canada)",
26
+ },
27
+ { value: "America/Bogota", label: "(GMT-05:00) Bogota" },
28
+ { value: "America/Lima", label: "(GMT-05:00) Lima" },
29
+ { value: "America/Rio_Branco", label: "(GMT-05:00) Rio Branco" },
30
+ {
31
+ value: "America/Indiana/Indianapolis",
32
+ label: "(GMT-05:00) Indiana (East)",
33
+ },
34
+ { value: "America/Caracas", label: "(GMT-04:30) Caracas" },
35
+ { value: "America/Halifax", label: "(GMT-04:00) Atlantic Time (Canada)" },
36
+ { value: "America/Manaus", label: "(GMT-04:00) Manaus" },
37
+ { value: "America/Santiago", label: "(GMT-04:00) Santiago" },
38
+ { value: "America/La_Paz", label: "(GMT-04:00) La Paz" },
39
+ { value: "America/St_Johns", label: "(GMT-03:30) Newfoundland" },
40
+ {
41
+ value: "America/Argentina/Buenos_Aires",
42
+ label: "(GMT-03:00) Buenos Aires",
43
+ },
44
+ { value: "America/Sao_Paulo", label: "(GMT-03:00) Brasilia" },
45
+ { value: "America/Godthab", label: "(GMT-03:00) Greenland" },
46
+ { value: "America/Montevideo", label: "(GMT-03:00) Montevideo" },
47
+ { value: "Atlantic/South_Georgia", label: "(GMT-02:00) Mid-Atlantic" },
48
+ { value: "Atlantic/Azores", label: "(GMT-01:00) Azores" },
49
+ { value: "Atlantic/Cape_Verde", label: "(GMT-01:00) Cape Verde Is." },
50
+ { value: "Europe/Dublin", label: "(GMT+00:00) Dublin" },
51
+ { value: "Europe/Lisbon", label: "(GMT+00:00) Lisbon" },
52
+ { value: "Europe/London", label: "(GMT+00:00) London" },
53
+ { value: "Africa/Monrovia", label: "(GMT+00:00) Monrovia" },
54
+ { value: "Etc/UTC", label: "(GMT+00:00) UTC" },
55
+ { value: "Europe/Amsterdam", label: "(GMT+01:00) Amsterdam" },
56
+ { value: "Europe/Belgrade", label: "(GMT+01:00) Belgrade" },
57
+ { value: "Europe/Berlin", label: "(GMT+01:00) Berlin" },
58
+ { value: "Europe/Bratislava", label: "(GMT+01:00) Bratislava" },
59
+ { value: "Europe/Brussels", label: "(GMT+01:00) Brussels" },
60
+ { value: "Europe/Budapest", label: "(GMT+01:00) Budapest" },
61
+ { value: "Europe/Copenhagen", label: "(GMT+01:00) Copenhagen" },
62
+ { value: "Europe/Ljubljana", label: "(GMT+01:00) Ljubljana" },
63
+ { value: "Europe/Madrid", label: "(GMT+01:00) Madrid" },
64
+ { value: "Europe/Paris", label: "(GMT+01:00) Paris" },
65
+ { value: "Europe/Prague", label: "(GMT+01:00) Prague" },
66
+ { value: "Europe/Rome", label: "(GMT+01:00) Rome" },
67
+ { value: "Europe/Sarajevo", label: "(GMT+01:00) Sarajevo" },
68
+ { value: "Europe/Skopje", label: "(GMT+01:00) Skopje" },
69
+ { value: "Europe/Stockholm", label: "(GMT+01:00) Stockholm" },
70
+ { value: "Europe/Vienna", label: "(GMT+01:00) Vienna" },
71
+ { value: "Europe/Warsaw", label: "(GMT+01:00) Warsaw" },
72
+ { value: "Europe/Zagreb", label: "(GMT+01:00) Zagreb" },
73
+ { value: "Europe/Athens", label: "(GMT+02:00) Athens" },
74
+ { value: "Europe/Bucharest", label: "(GMT+02:00) Bucharest" },
75
+ { value: "Africa/Cairo", label: "(GMT+02:00) Cairo" },
76
+ { value: "Africa/Harare", label: "(GMT+02:00) Harare" },
77
+ { value: "Europe/Helsinki", label: "(GMT+02:00) Helsinki" },
78
+ { value: "Europe/Istanbul", label: "(GMT+02:00) Istanbul" },
79
+ { value: "Asia/Jerusalem", label: "(GMT+02:00) Jerusalem" },
80
+ { value: "Europe/Kiev", label: "(GMT+02:00) Kyiv" },
81
+ { value: "Europe/Minsk", label: "(GMT+02:00) Minsk" },
82
+ { value: "Europe/Riga", label: "(GMT+02:00) Riga" },
83
+ { value: "Europe/Sofia", label: "(GMT+02:00) Sofia" },
84
+ { value: "Europe/Tallinn", label: "(GMT+02:00) Tallinn" },
85
+ { value: "Europe/Vilnius", label: "(GMT+02:00) Vilnius" },
86
+ { value: "Asia/Baghdad", label: "(GMT+03:00) Baghdad" },
87
+ { value: "Asia/Kuwait", label: "(GMT+03:00) Kuwait" },
88
+ { value: "Europe/Moscow", label: "(GMT+03:00) Moscow" },
89
+ { value: "Africa/Nairobi", label: "(GMT+03:00) Nairobi" },
90
+ { value: "Asia/Riyadh", label: "(GMT+03:00) Riyadh" },
91
+ { value: "Europe/Volgograd", label: "(GMT+03:00) Volgograd" },
92
+ { value: "Asia/Tehran", label: "(GMT+03:30) Tehran" },
93
+ { value: "Asia/Muscat", label: "(GMT+04:00) Muscat" },
94
+ { value: "Asia/Baku", label: "(GMT+04:00) Baku" },
95
+ { value: "Asia/Yerevan", label: "(GMT+04:00) Yerevan" },
96
+ { value: "Asia/Kabul", label: "(GMT+04:30) Kabul" },
97
+ { value: "Asia/Yekaterinburg", label: "(GMT+05:00) Ekaterinburg" },
98
+ { value: "Asia/Karachi", label: "(GMT+05:00) Karachi" },
99
+ { value: "Asia/Tashkent", label: "(GMT+05:00) Tashkent" },
100
+ { value: "Asia/Kolkata", label: "(GMT+05:30) Kolkata" },
101
+ { value: "Asia/Colombo", label: "(GMT+05:30) Sri Jayawardenepura" },
102
+ { value: "Asia/Katmandu", label: "(GMT+05:45) Kathmandu" },
103
+ { value: "Asia/Almaty", label: "(GMT+06:00) Almaty" },
104
+ { value: "Asia/Dhaka", label: "(GMT+06:00) Dhaka" },
105
+ { value: "Asia/Urumqi", label: "(GMT+06:00) Urumqi" },
106
+ { value: "Asia/Rangoon", label: "(GMT+06:30) Rangoon" },
107
+ { value: "Asia/Bangkok", label: "(GMT+07:00) Bangkok" },
108
+ { value: "Asia/Jakarta", label: "(GMT+07:00) Jakarta" },
109
+ { value: "Asia/Krasnoyarsk", label: "(GMT+07:00) Krasnoyarsk" },
110
+ { value: "Asia/Hong_Kong", label: "(GMT+08:00) Hong Kong" },
111
+ { value: "Asia/Kuala_Lumpur", label: "(GMT+08:00) Kuala Lumpur" },
112
+ { value: "Australia/Perth", label: "(GMT+08:00) Perth" },
113
+ { value: "Asia/Singapore", label: "(GMT+08:00) Singapore" },
114
+ { value: "Asia/Taipei", label: "(GMT+08:00) Taipei" },
115
+ { value: "Asia/Ulaanbaatar", label: "(GMT+08:00) Ulaan Bataar" },
116
+ { value: "Asia/Irkutsk", label: "(GMT+08:00) Irkutsk" },
117
+ { value: "Asia/Tokyo", label: "(GMT+09:00) Tokyo" },
118
+ { value: "Asia/Seoul", label: "(GMT+09:00) Seoul" },
119
+ { value: "Asia/Yakutsk", label: "(GMT+09:00) Yakutsk" },
120
+ { value: "Australia/Adelaide", label: "(GMT+09:30) Adelaide" },
121
+ { value: "Australia/Darwin", label: "(GMT+09:30) Darwin" },
122
+ { value: "Australia/Brisbane", label: "(GMT+10:00) Brisbane" },
123
+ { value: "Australia/Sydney", label: "(GMT+10:00) Sydney" },
124
+ { value: "Pacific/Guam", label: "(GMT+10:00) Guam" },
125
+ { value: "Australia/Hobart", label: "(GMT+10:00) Hobart" },
126
+ { value: "Asia/Vladivostok", label: "(GMT+10:00) Vladivostok" },
127
+ { value: "Pacific/Noumea", label: "(GMT+11:00) New Caledonia" },
128
+ { value: "Asia/Magadan", label: "(GMT+11:00) Magadan" },
129
+ { value: "Pacific/Fiji", label: "(GMT+12:00) Fiji" },
130
+ { value: "Asia/Kamchatka", label: "(GMT+12:00) Kamchatka" },
131
+ { value: "Pacific/Auckland", label: "(GMT+12:00) Auckland" },
120
132
  ];