@nocobase/plugin-workflow 0.11.1-alpha.5 → 0.12.0-alpha.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 (537) hide show
  1. package/client.d.ts +2 -3
  2. package/client.js +1 -1
  3. package/dist/client/index.js +7802 -0
  4. package/{lib → dist}/client/nodes/aggregate.d.ts +1 -5
  5. package/{lib → dist}/client/nodes/create.d.ts +1 -2
  6. package/{lib → dist}/client/nodes/destroy.d.ts +1 -1
  7. package/{lib → dist}/client/nodes/query.d.ts +1 -2
  8. package/{lib → dist}/client/nodes/request.d.ts +1 -2
  9. package/{lib → dist}/client/nodes/update.d.ts +1 -1
  10. package/{lib → dist}/client/schemas/collection.d.ts +1 -2
  11. package/{lib → dist}/client/triggers/collection.d.ts +6 -7
  12. package/{lib → dist}/index.d.ts +1 -0
  13. package/dist/index.js +18 -0
  14. package/dist/locale/en-US.js +133 -0
  15. package/{lib → dist}/locale/es-ES.js +51 -54
  16. package/dist/locale/fr-FR.js +133 -0
  17. package/dist/locale/ja-JP.js +91 -0
  18. package/dist/locale/pt-BR.js +133 -0
  19. package/dist/locale/ru-RU.js +91 -0
  20. package/dist/locale/tr-TR.js +91 -0
  21. package/dist/locale/zh-CN.js +216 -0
  22. package/dist/node_modules/cron-parser/.eslintrc.json +15 -0
  23. package/dist/node_modules/cron-parser/.travis.yml +7 -0
  24. package/dist/node_modules/cron-parser/LICENSE +21 -0
  25. package/dist/node_modules/cron-parser/component.json +11 -0
  26. package/dist/node_modules/cron-parser/index.d.ts +1 -0
  27. package/dist/node_modules/cron-parser/lib/date.js +252 -0
  28. package/dist/node_modules/cron-parser/lib/expression.js +983 -0
  29. package/dist/node_modules/cron-parser/lib/field_compactor.js +70 -0
  30. package/dist/node_modules/cron-parser/lib/field_stringify.js +38 -0
  31. package/dist/node_modules/cron-parser/lib/parser.js +1 -0
  32. package/dist/node_modules/cron-parser/node_modules/luxon/build/amd/luxon.js +8489 -0
  33. package/dist/node_modules/cron-parser/node_modules/luxon/build/cjs-browser/luxon.js +8487 -0
  34. package/dist/node_modules/cron-parser/node_modules/luxon/build/global/luxon.js +8490 -0
  35. package/dist/node_modules/cron-parser/node_modules/luxon/build/global/luxon.min.js +1 -0
  36. package/dist/node_modules/cron-parser/node_modules/luxon/build/node/luxon.js +7522 -0
  37. package/dist/node_modules/cron-parser/node_modules/luxon/package.json +96 -0
  38. package/dist/node_modules/cron-parser/node_modules/luxon/src/datetime.js +2169 -0
  39. package/dist/node_modules/cron-parser/node_modules/luxon/src/duration.js +880 -0
  40. package/dist/node_modules/cron-parser/node_modules/luxon/src/errors.js +61 -0
  41. package/dist/node_modules/cron-parser/node_modules/luxon/src/impl/conversions.js +157 -0
  42. package/dist/node_modules/cron-parser/node_modules/luxon/src/impl/diff.js +80 -0
  43. package/dist/node_modules/cron-parser/node_modules/luxon/src/impl/digits.js +76 -0
  44. package/dist/node_modules/cron-parser/node_modules/luxon/src/impl/english.js +233 -0
  45. package/dist/node_modules/cron-parser/node_modules/luxon/src/impl/formats.js +191 -0
  46. package/dist/node_modules/cron-parser/node_modules/luxon/src/impl/formatter.js +386 -0
  47. package/dist/node_modules/cron-parser/node_modules/luxon/src/impl/invalid.js +14 -0
  48. package/dist/node_modules/cron-parser/node_modules/luxon/src/impl/locale.js +482 -0
  49. package/dist/node_modules/cron-parser/node_modules/luxon/src/impl/regexParser.js +335 -0
  50. package/dist/node_modules/cron-parser/node_modules/luxon/src/impl/tokenParser.js +424 -0
  51. package/dist/node_modules/cron-parser/node_modules/luxon/src/impl/util.js +292 -0
  52. package/dist/node_modules/cron-parser/node_modules/luxon/src/impl/zoneUtil.js +36 -0
  53. package/dist/node_modules/cron-parser/node_modules/luxon/src/info.js +193 -0
  54. package/dist/node_modules/cron-parser/node_modules/luxon/src/interval.js +602 -0
  55. package/dist/node_modules/cron-parser/node_modules/luxon/src/luxon.js +26 -0
  56. package/dist/node_modules/cron-parser/node_modules/luxon/src/luxonFilled.js +13 -0
  57. package/dist/node_modules/cron-parser/node_modules/luxon/src/settings.js +137 -0
  58. package/dist/node_modules/cron-parser/node_modules/luxon/src/zone.js +88 -0
  59. package/dist/node_modules/cron-parser/node_modules/luxon/src/zones/IANAZone.js +191 -0
  60. package/dist/node_modules/cron-parser/node_modules/luxon/src/zones/fixedOffsetZone.js +94 -0
  61. package/dist/node_modules/cron-parser/node_modules/luxon/src/zones/invalidZone.js +53 -0
  62. package/dist/node_modules/cron-parser/node_modules/luxon/src/zones/localZone.js +63 -0
  63. package/dist/node_modules/cron-parser/package.json +1 -0
  64. package/dist/node_modules/cron-parser/test/31_of_month.js +17 -0
  65. package/dist/node_modules/cron-parser/test/bug.js +29 -0
  66. package/dist/node_modules/cron-parser/test/crondate.js +16 -0
  67. package/dist/node_modules/cron-parser/test/crontab.example +7 -0
  68. package/dist/node_modules/cron-parser/test/empty_around_comma.js +22 -0
  69. package/dist/node_modules/cron-parser/test/expression.js +1489 -0
  70. package/dist/node_modules/cron-parser/test/field_compactor.js +250 -0
  71. package/dist/node_modules/cron-parser/test/field_stringify.js +84 -0
  72. package/dist/node_modules/cron-parser/test/fields.js +32 -0
  73. package/dist/node_modules/cron-parser/test/increment_on_first_iteration.js +22 -0
  74. package/dist/node_modules/cron-parser/test/index-ts3.test-d.ts +133 -0
  75. package/dist/node_modules/cron-parser/test/index.test-d.ts +138 -0
  76. package/dist/node_modules/cron-parser/test/leap_year.js +17 -0
  77. package/dist/node_modules/cron-parser/test/parser.js +46 -0
  78. package/dist/node_modules/cron-parser/test/parser_crondate_formats.js +145 -0
  79. package/dist/node_modules/cron-parser/test/parser_day_of_month.js +169 -0
  80. package/dist/node_modules/cron-parser/test/prev_date.js +32 -0
  81. package/dist/node_modules/cron-parser/test/stringify.js +402 -0
  82. package/dist/node_modules/cron-parser/test/timezone.js +422 -0
  83. package/dist/node_modules/cron-parser/types/common.d.ts +131 -0
  84. package/dist/node_modules/cron-parser/types/index.d.ts +45 -0
  85. package/dist/node_modules/cron-parser/types/ts3/index.d.ts +28 -0
  86. package/dist/node_modules/lru-cache/index-cjs.d.ts +7 -0
  87. package/dist/node_modules/lru-cache/index-cjs.js +1 -0
  88. package/dist/node_modules/lru-cache/index.d.ts +807 -0
  89. package/dist/node_modules/lru-cache/index.js +1334 -0
  90. package/dist/node_modules/lru-cache/index.min.js +2 -0
  91. package/dist/node_modules/lru-cache/package.json +1 -0
  92. package/dist/server/Plugin.js +297 -0
  93. package/{src/server/Processor.ts → dist/server/Processor.js} +80 -147
  94. package/dist/server/actions/index.js +49 -0
  95. package/{src/server/actions/nodes.ts → dist/server/actions/nodes.js} +55 -81
  96. package/{src/server/actions/workflows.ts → dist/server/actions/workflows.js} +60 -72
  97. package/dist/server/collections/executions.js +37 -0
  98. package/dist/server/collections/flow_nodes.js +56 -0
  99. package/dist/server/collections/jobs.js +33 -0
  100. package/dist/server/collections/workflows.js +90 -0
  101. package/{lib → dist}/server/constants.js +5 -8
  102. package/dist/server/fields/expression-field.js +11 -0
  103. package/dist/server/fields/index.js +11 -0
  104. package/dist/server/functions/index.js +13 -0
  105. package/dist/server/index.js +41 -0
  106. package/dist/server/instructions/aggregate.js +37 -0
  107. package/dist/server/instructions/calculation.js +34 -0
  108. package/dist/server/instructions/condition.js +123 -0
  109. package/{src/server/instructions/create.ts → dist/server/instructions/create.js} +17 -17
  110. package/dist/server/instructions/delay.js +87 -0
  111. package/dist/server/instructions/destroy.js +24 -0
  112. package/dist/server/instructions/index.js +40 -0
  113. package/{src/server/instructions/loop.ts → dist/server/instructions/loop.js} +21 -43
  114. package/{src/server/instructions/manual/actions.ts → dist/server/instructions/manual/actions.js} +18 -44
  115. package/dist/server/instructions/manual/collecions/jobs.js +21 -0
  116. package/dist/server/instructions/manual/collecions/users.js +19 -0
  117. package/dist/server/instructions/manual/collecions/users_jobs.js +52 -0
  118. package/{src/server/instructions/manual/forms/create.ts → dist/server/instructions/manual/forms/create.js} +8 -8
  119. package/dist/server/instructions/manual/forms/index.js +16 -0
  120. package/{src/server/instructions/manual/forms/update.ts → dist/server/instructions/manual/forms/update.js} +8 -8
  121. package/dist/server/instructions/manual/index.js +160 -0
  122. package/dist/server/instructions/parallel.js +105 -0
  123. package/dist/server/instructions/query.js +36 -0
  124. package/dist/server/instructions/request.js +69 -0
  125. package/dist/server/instructions/sql.js +26 -0
  126. package/dist/server/instructions/update.js +24 -0
  127. package/{src/server/migrations/20221129153547-calculation-variables.ts → dist/server/migrations/20221129153547-calculation-variables.js} +20 -19
  128. package/dist/server/migrations/20230221032941-change-request-body-type.js +71 -0
  129. package/dist/server/migrations/20230221071831-calculation-expression.js +94 -0
  130. package/dist/server/migrations/20230221121203-condition-calculation.js +41 -0
  131. package/dist/server/migrations/20230221162902-jsonb-to-json.js +52 -0
  132. package/dist/server/migrations/20230411034722-manual-multi-form.js +252 -0
  133. package/dist/server/migrations/20230612021134-manual-collection-block.js +126 -0
  134. package/dist/server/migrations/20230710115902-manual-action-values.js +74 -0
  135. package/{src/server/triggers/collection.ts → dist/server/triggers/collection.js} +34 -64
  136. package/dist/server/triggers/index.js +27 -0
  137. package/{src/server/triggers/schedule.ts → dist/server/triggers/schedule.js} +108 -220
  138. package/dist/server/types/Execution.js +8 -0
  139. package/dist/server/types/FlowNode.js +8 -0
  140. package/dist/server/types/Job.js +8 -0
  141. package/dist/server/types/Workflow.js +8 -0
  142. package/dist/server/types/index.js +2 -0
  143. package/{lib → dist}/server/utils.js +6 -8
  144. package/package.json +26 -37
  145. package/server.d.ts +2 -3
  146. package/server.js +1 -1
  147. package/lib/client/AddButton.js +0 -161
  148. package/lib/client/Branch.js +0 -50
  149. package/lib/client/CanvasContent.js +0 -51
  150. package/lib/client/ExecutionCanvas.js +0 -218
  151. package/lib/client/ExecutionLink.js +0 -48
  152. package/lib/client/ExecutionPage.js +0 -68
  153. package/lib/client/ExecutionResourceProvider.js +0 -48
  154. package/lib/client/FlowContext.js +0 -21
  155. package/lib/client/WorkflowCanvas.js +0 -300
  156. package/lib/client/WorkflowLink.js +0 -48
  157. package/lib/client/WorkflowPage.js +0 -70
  158. package/lib/client/WorkflowProvider.js +0 -100
  159. package/lib/client/components/CollectionBlockInitializer.js +0 -103
  160. package/lib/client/components/CollectionFieldset.js +0 -198
  161. package/lib/client/components/Duration.js +0 -72
  162. package/lib/client/components/DynamicExpression.js +0 -117
  163. package/lib/client/components/FieldsSelect.js +0 -72
  164. package/lib/client/components/FilterDynamicComponent.js +0 -34
  165. package/lib/client/components/NodeDescription.js +0 -73
  166. package/lib/client/components/NullRender.js +0 -9
  167. package/lib/client/components/OpenDrawer.js +0 -68
  168. package/lib/client/components/RadioWithTooltip.js +0 -65
  169. package/lib/client/components/ValueBlock.js +0 -103
  170. package/lib/client/components/renderEngineReference.js +0 -49
  171. package/lib/client/constants.js +0 -126
  172. package/lib/client/index.js +0 -121
  173. package/lib/client/interfaces/expression.js +0 -38
  174. package/lib/client/locale/index.js +0 -42
  175. package/lib/client/nodes/aggregate.js +0 -353
  176. package/lib/client/nodes/calculation.js +0 -292
  177. package/lib/client/nodes/condition.js +0 -531
  178. package/lib/client/nodes/create.js +0 -110
  179. package/lib/client/nodes/delay.js +0 -47
  180. package/lib/client/nodes/destroy.js +0 -49
  181. package/lib/client/nodes/index.js +0 -550
  182. package/lib/client/nodes/loop.js +0 -171
  183. package/lib/client/nodes/manual/AssigneesSelect.js +0 -56
  184. package/lib/client/nodes/manual/DetailsBlockProvider.js +0 -106
  185. package/lib/client/nodes/manual/FormBlockInitializer.js +0 -107
  186. package/lib/client/nodes/manual/FormBlockProvider.js +0 -113
  187. package/lib/client/nodes/manual/ModeConfig.js +0 -126
  188. package/lib/client/nodes/manual/SchemaConfig.js +0 -468
  189. package/lib/client/nodes/manual/WorkflowTodo.js +0 -642
  190. package/lib/client/nodes/manual/WorkflowTodoBlockInitializer.js +0 -60
  191. package/lib/client/nodes/manual/forms/create.js +0 -111
  192. package/lib/client/nodes/manual/forms/custom.js +0 -428
  193. package/lib/client/nodes/manual/forms/update.js +0 -168
  194. package/lib/client/nodes/manual/index.js +0 -168
  195. package/lib/client/nodes/manual/utils.js +0 -31
  196. package/lib/client/nodes/parallel.js +0 -162
  197. package/lib/client/nodes/query.js +0 -112
  198. package/lib/client/nodes/request.js +0 -225
  199. package/lib/client/nodes/sql.js +0 -61
  200. package/lib/client/nodes/update.js +0 -127
  201. package/lib/client/schemas/collection.js +0 -93
  202. package/lib/client/schemas/executions.js +0 -190
  203. package/lib/client/schemas/workflows.js +0 -397
  204. package/lib/client/style.js +0 -350
  205. package/lib/client/triggers/collection.js +0 -188
  206. package/lib/client/triggers/index.js +0 -356
  207. package/lib/client/triggers/schedule/EndsByField.js +0 -71
  208. package/lib/client/triggers/schedule/OnField.js +0 -117
  209. package/lib/client/triggers/schedule/RepeatField.js +0 -155
  210. package/lib/client/triggers/schedule/ScheduleConfig.js +0 -251
  211. package/lib/client/triggers/schedule/constants.js +0 -11
  212. package/lib/client/triggers/schedule/index.js +0 -101
  213. package/lib/client/triggers/schedule/locale/Cron.zh-CN.js +0 -48
  214. package/lib/client/utils.js +0 -59
  215. package/lib/client/variable.js +0 -319
  216. package/lib/index.js +0 -13
  217. package/lib/locale/en-US.js +0 -136
  218. package/lib/locale/fr-FR.js +0 -136
  219. package/lib/locale/ja-JP.js +0 -94
  220. package/lib/locale/pt-BR.js +0 -136
  221. package/lib/locale/ru-RU.js +0 -94
  222. package/lib/locale/tr-TR.js +0 -94
  223. package/lib/locale/zh-CN.js +0 -219
  224. package/lib/server/Plugin.js +0 -382
  225. package/lib/server/Processor.js +0 -394
  226. package/lib/server/actions/index.js +0 -30
  227. package/lib/server/actions/nodes.js +0 -269
  228. package/lib/server/actions/workflows.js +0 -273
  229. package/lib/server/collections/executions.js +0 -33
  230. package/lib/server/collections/flow_nodes.js +0 -53
  231. package/lib/server/collections/jobs.js +0 -30
  232. package/lib/server/collections/workflows.js +0 -76
  233. package/lib/server/fields/expression-field.js +0 -19
  234. package/lib/server/fields/index.js +0 -12
  235. package/lib/server/functions/index.js +0 -26
  236. package/lib/server/index.js +0 -55
  237. package/lib/server/instructions/aggregate.js +0 -57
  238. package/lib/server/instructions/calculation.js +0 -59
  239. package/lib/server/instructions/condition.js +0 -150
  240. package/lib/server/instructions/create.js +0 -60
  241. package/lib/server/instructions/delay.js +0 -118
  242. package/lib/server/instructions/destroy.js +0 -37
  243. package/lib/server/instructions/index.js +0 -44
  244. package/lib/server/instructions/loop.js +0 -107
  245. package/lib/server/instructions/manual/actions.js +0 -99
  246. package/lib/server/instructions/manual/collecions/jobs.js +0 -21
  247. package/lib/server/instructions/manual/collecions/users.js +0 -19
  248. package/lib/server/instructions/manual/collecions/users_jobs.js +0 -46
  249. package/lib/server/instructions/manual/forms/create.js +0 -52
  250. package/lib/server/instructions/manual/forms/index.js +0 -15
  251. package/lib/server/instructions/manual/forms/update.js +0 -53
  252. package/lib/server/instructions/manual/index.js +0 -174
  253. package/lib/server/instructions/parallel.js +0 -128
  254. package/lib/server/instructions/query.js +0 -53
  255. package/lib/server/instructions/request.js +0 -99
  256. package/lib/server/instructions/sql.js +0 -34
  257. package/lib/server/instructions/update.js +0 -38
  258. package/lib/server/migrations/20221129153547-calculation-variables.js +0 -92
  259. package/lib/server/migrations/20230221032941-change-request-body-type.js +0 -90
  260. package/lib/server/migrations/20230221071831-calculation-expression.js +0 -111
  261. package/lib/server/migrations/20230221121203-condition-calculation.js +0 -103
  262. package/lib/server/migrations/20230221162902-jsonb-to-json.js +0 -64
  263. package/lib/server/migrations/20230411034722-manual-multi-form.js +0 -297
  264. package/lib/server/migrations/20230612021134-manual-collection-block.js +0 -155
  265. package/lib/server/migrations/20230710115902-manual-action-values.js +0 -97
  266. package/lib/server/triggers/collection.js +0 -175
  267. package/lib/server/triggers/index.js +0 -46
  268. package/lib/server/triggers/schedule.js +0 -582
  269. package/lib/server/types/Execution.js +0 -15
  270. package/lib/server/types/FlowNode.js +0 -15
  271. package/lib/server/types/Job.js +0 -15
  272. package/lib/server/types/Workflow.js +0 -15
  273. package/lib/server/types/index.js +0 -5
  274. package/src/client/AddButton.tsx +0 -111
  275. package/src/client/Branch.tsx +0 -37
  276. package/src/client/CanvasContent.tsx +0 -25
  277. package/src/client/ExecutionCanvas.tsx +0 -166
  278. package/src/client/ExecutionLink.tsx +0 -16
  279. package/src/client/ExecutionPage.tsx +0 -45
  280. package/src/client/ExecutionResourceProvider.tsx +0 -21
  281. package/src/client/FlowContext.ts +0 -7
  282. package/src/client/WorkflowCanvas.tsx +0 -221
  283. package/src/client/WorkflowLink.tsx +0 -16
  284. package/src/client/WorkflowPage.tsx +0 -52
  285. package/src/client/WorkflowProvider.tsx +0 -84
  286. package/src/client/components/CollectionBlockInitializer.tsx +0 -71
  287. package/src/client/components/CollectionFieldset.tsx +0 -152
  288. package/src/client/components/Duration.tsx +0 -45
  289. package/src/client/components/DynamicExpression.tsx +0 -57
  290. package/src/client/components/FieldsSelect.tsx +0 -32
  291. package/src/client/components/FilterDynamicComponent.tsx +0 -15
  292. package/src/client/components/NodeDescription.tsx +0 -51
  293. package/src/client/components/NullRender.tsx +0 -3
  294. package/src/client/components/OpenDrawer.tsx +0 -24
  295. package/src/client/components/RadioWithTooltip.tsx +0 -38
  296. package/src/client/components/ValueBlock.tsx +0 -67
  297. package/src/client/components/renderEngineReference.tsx +0 -30
  298. package/src/client/constants.tsx +0 -91
  299. package/src/client/index.tsx +0 -51
  300. package/src/client/interfaces/expression.tsx +0 -25
  301. package/src/client/locale/index.ts +0 -18
  302. package/src/client/nodes/aggregate.tsx +0 -327
  303. package/src/client/nodes/calculation.tsx +0 -216
  304. package/src/client/nodes/condition.tsx +0 -463
  305. package/src/client/nodes/create.tsx +0 -85
  306. package/src/client/nodes/delay.tsx +0 -37
  307. package/src/client/nodes/destroy.tsx +0 -34
  308. package/src/client/nodes/index.tsx +0 -500
  309. package/src/client/nodes/loop.tsx +0 -144
  310. package/src/client/nodes/manual/AssigneesSelect.tsx +0 -33
  311. package/src/client/nodes/manual/DetailsBlockProvider.tsx +0 -80
  312. package/src/client/nodes/manual/FormBlockInitializer.tsx +0 -69
  313. package/src/client/nodes/manual/FormBlockProvider.tsx +0 -75
  314. package/src/client/nodes/manual/ModeConfig.tsx +0 -84
  315. package/src/client/nodes/manual/SchemaConfig.tsx +0 -509
  316. package/src/client/nodes/manual/WorkflowTodo.tsx +0 -607
  317. package/src/client/nodes/manual/WorkflowTodoBlockInitializer.tsx +0 -28
  318. package/src/client/nodes/manual/forms/create.tsx +0 -92
  319. package/src/client/nodes/manual/forms/custom.tsx +0 -392
  320. package/src/client/nodes/manual/forms/update.tsx +0 -134
  321. package/src/client/nodes/manual/index.tsx +0 -162
  322. package/src/client/nodes/manual/utils.ts +0 -28
  323. package/src/client/nodes/parallel.tsx +0 -138
  324. package/src/client/nodes/query.tsx +0 -88
  325. package/src/client/nodes/request.tsx +0 -185
  326. package/src/client/nodes/sql.tsx +0 -37
  327. package/src/client/nodes/update.tsx +0 -100
  328. package/src/client/schemas/collection.ts +0 -75
  329. package/src/client/schemas/executions.tsx +0 -169
  330. package/src/client/schemas/workflows.ts +0 -364
  331. package/src/client/style.tsx +0 -350
  332. package/src/client/triggers/collection.tsx +0 -190
  333. package/src/client/triggers/index.tsx +0 -311
  334. package/src/client/triggers/schedule/EndsByField.tsx +0 -40
  335. package/src/client/triggers/schedule/OnField.tsx +0 -64
  336. package/src/client/triggers/schedule/RepeatField.tsx +0 -116
  337. package/src/client/triggers/schedule/ScheduleConfig.tsx +0 -227
  338. package/src/client/triggers/schedule/constants.ts +0 -4
  339. package/src/client/triggers/schedule/index.tsx +0 -78
  340. package/src/client/triggers/schedule/locale/Cron.zh-CN.ts +0 -79
  341. package/src/client/utils.ts +0 -36
  342. package/src/client/variable.tsx +0 -318
  343. package/src/index.ts +0 -1
  344. package/src/locale/en-US.ts +0 -136
  345. package/src/locale/es-ES.ts +0 -129
  346. package/src/locale/fr-FR.ts +0 -137
  347. package/src/locale/ja-JP.ts +0 -90
  348. package/src/locale/pt-BR.ts +0 -136
  349. package/src/locale/ru-RU.ts +0 -90
  350. package/src/locale/tr-TR.ts +0 -90
  351. package/src/locale/zh-CN.ts +0 -248
  352. package/src/server/Plugin.ts +0 -355
  353. package/src/server/__tests__/Plugin.test.ts +0 -398
  354. package/src/server/__tests__/Processor.test.ts +0 -474
  355. package/src/server/__tests__/actions/workflows.test.ts +0 -419
  356. package/src/server/__tests__/collections/categories.ts +0 -27
  357. package/src/server/__tests__/collections/comments.ts +0 -24
  358. package/src/server/__tests__/collections/posts.ts +0 -42
  359. package/src/server/__tests__/collections/replies.ts +0 -9
  360. package/src/server/__tests__/collections/tags.ts +0 -15
  361. package/src/server/__tests__/index.ts +0 -89
  362. package/src/server/__tests__/instructions/aggregate.test.ts +0 -294
  363. package/src/server/__tests__/instructions/calculation.test.ts +0 -265
  364. package/src/server/__tests__/instructions/condition.test.ts +0 -434
  365. package/src/server/__tests__/instructions/create.test.ts +0 -129
  366. package/src/server/__tests__/instructions/delay.test.ts +0 -182
  367. package/src/server/__tests__/instructions/destroy.test.ts +0 -58
  368. package/src/server/__tests__/instructions/loop.test.ts +0 -331
  369. package/src/server/__tests__/instructions/manual.test.ts +0 -1173
  370. package/src/server/__tests__/instructions/parallel.test.ts +0 -445
  371. package/src/server/__tests__/instructions/query.test.ts +0 -359
  372. package/src/server/__tests__/instructions/request.test.ts +0 -247
  373. package/src/server/__tests__/instructions/sql.test.ts +0 -162
  374. package/src/server/__tests__/instructions/update.test.ts +0 -189
  375. package/src/server/__tests__/triggers/collection.test.ts +0 -333
  376. package/src/server/__tests__/triggers/schedule.test.ts +0 -369
  377. package/src/server/actions/index.ts +0 -25
  378. package/src/server/collections/executions.ts +0 -35
  379. package/src/server/collections/flow_nodes.ts +0 -54
  380. package/src/server/collections/jobs.ts +0 -31
  381. package/src/server/collections/workflows.ts +0 -88
  382. package/src/server/constants.ts +0 -26
  383. package/src/server/fields/expression-field.ts +0 -11
  384. package/src/server/fields/index.ts +0 -7
  385. package/src/server/functions/index.ts +0 -16
  386. package/src/server/index.ts +0 -6
  387. package/src/server/instructions/aggregate.ts +0 -42
  388. package/src/server/instructions/calculation.ts +0 -41
  389. package/src/server/instructions/condition.ts +0 -172
  390. package/src/server/instructions/delay.ts +0 -105
  391. package/src/server/instructions/destroy.ts +0 -23
  392. package/src/server/instructions/index.ts +0 -64
  393. package/src/server/instructions/manual/collecions/jobs.ts +0 -17
  394. package/src/server/instructions/manual/collecions/users.ts +0 -15
  395. package/src/server/instructions/manual/collecions/users_jobs.ts +0 -50
  396. package/src/server/instructions/manual/forms/index.ts +0 -12
  397. package/src/server/instructions/manual/index.ts +0 -184
  398. package/src/server/instructions/parallel.ts +0 -121
  399. package/src/server/instructions/query.ts +0 -42
  400. package/src/server/instructions/request.ts +0 -88
  401. package/src/server/instructions/sql.ts +0 -25
  402. package/src/server/instructions/update.ts +0 -24
  403. package/src/server/migrations/20230221032941-change-request-body-type.ts +0 -76
  404. package/src/server/migrations/20230221071831-calculation-expression.ts +0 -102
  405. package/src/server/migrations/20230221121203-condition-calculation.ts +0 -82
  406. package/src/server/migrations/20230221162902-jsonb-to-json.ts +0 -51
  407. package/src/server/migrations/20230411034722-manual-multi-form.ts +0 -282
  408. package/src/server/migrations/20230612021134-manual-collection-block.ts +0 -138
  409. package/src/server/migrations/20230710115902-manual-action-values.ts +0 -78
  410. package/src/server/triggers/index.ts +0 -22
  411. package/src/server/types/Execution.ts +0 -26
  412. package/src/server/types/FlowNode.ts +0 -21
  413. package/src/server/types/Job.ts +0 -18
  414. package/src/server/types/Workflow.ts +0 -36
  415. package/src/server/types/index.ts +0 -4
  416. package/src/server/utils.ts +0 -17
  417. /package/{lib → dist}/client/AddButton.d.ts +0 -0
  418. /package/{lib → dist}/client/Branch.d.ts +0 -0
  419. /package/{lib → dist}/client/CanvasContent.d.ts +0 -0
  420. /package/{lib → dist}/client/ExecutionCanvas.d.ts +0 -0
  421. /package/{lib → dist}/client/ExecutionLink.d.ts +0 -0
  422. /package/{lib → dist}/client/ExecutionPage.d.ts +0 -0
  423. /package/{lib → dist}/client/ExecutionResourceProvider.d.ts +0 -0
  424. /package/{lib → dist}/client/FlowContext.d.ts +0 -0
  425. /package/{lib → dist}/client/WorkflowCanvas.d.ts +0 -0
  426. /package/{lib → dist}/client/WorkflowLink.d.ts +0 -0
  427. /package/{lib → dist}/client/WorkflowPage.d.ts +0 -0
  428. /package/{lib → dist}/client/WorkflowProvider.d.ts +0 -0
  429. /package/{lib → dist}/client/components/CollectionBlockInitializer.d.ts +0 -0
  430. /package/{lib → dist}/client/components/CollectionFieldset.d.ts +0 -0
  431. /package/{lib → dist}/client/components/Duration.d.ts +0 -0
  432. /package/{lib → dist}/client/components/DynamicExpression.d.ts +0 -0
  433. /package/{lib → dist}/client/components/FieldsSelect.d.ts +0 -0
  434. /package/{lib → dist}/client/components/FilterDynamicComponent.d.ts +0 -0
  435. /package/{lib → dist}/client/components/NodeDescription.d.ts +0 -0
  436. /package/{lib → dist}/client/components/NullRender.d.ts +0 -0
  437. /package/{lib → dist}/client/components/OpenDrawer.d.ts +0 -0
  438. /package/{lib → dist}/client/components/RadioWithTooltip.d.ts +0 -0
  439. /package/{lib → dist}/client/components/ValueBlock.d.ts +0 -0
  440. /package/{lib → dist}/client/components/renderEngineReference.d.ts +0 -0
  441. /package/{lib → dist}/client/constants.d.ts +0 -0
  442. /package/{lib → dist}/client/index.d.ts +0 -0
  443. /package/{lib → dist}/client/interfaces/expression.d.ts +0 -0
  444. /package/{lib → dist}/client/locale/index.d.ts +0 -0
  445. /package/{lib → dist}/client/nodes/calculation.d.ts +0 -0
  446. /package/{lib → dist}/client/nodes/condition.d.ts +0 -0
  447. /package/{lib → dist}/client/nodes/delay.d.ts +0 -0
  448. /package/{lib → dist}/client/nodes/index.d.ts +0 -0
  449. /package/{lib → dist}/client/nodes/loop.d.ts +0 -0
  450. /package/{lib → dist}/client/nodes/manual/AssigneesSelect.d.ts +0 -0
  451. /package/{lib → dist}/client/nodes/manual/DetailsBlockProvider.d.ts +0 -0
  452. /package/{lib → dist}/client/nodes/manual/FormBlockInitializer.d.ts +0 -0
  453. /package/{lib → dist}/client/nodes/manual/FormBlockProvider.d.ts +0 -0
  454. /package/{lib → dist}/client/nodes/manual/ModeConfig.d.ts +0 -0
  455. /package/{lib → dist}/client/nodes/manual/SchemaConfig.d.ts +0 -0
  456. /package/{lib → dist}/client/nodes/manual/WorkflowTodo.d.ts +0 -0
  457. /package/{lib → dist}/client/nodes/manual/WorkflowTodoBlockInitializer.d.ts +0 -0
  458. /package/{lib → dist}/client/nodes/manual/forms/create.d.ts +0 -0
  459. /package/{lib → dist}/client/nodes/manual/forms/custom.d.ts +0 -0
  460. /package/{lib → dist}/client/nodes/manual/forms/update.d.ts +0 -0
  461. /package/{lib → dist}/client/nodes/manual/index.d.ts +0 -0
  462. /package/{lib → dist}/client/nodes/manual/utils.d.ts +0 -0
  463. /package/{lib → dist}/client/nodes/parallel.d.ts +0 -0
  464. /package/{lib → dist}/client/nodes/sql.d.ts +0 -0
  465. /package/{lib → dist}/client/schemas/executions.d.ts +0 -0
  466. /package/{lib → dist}/client/schemas/workflows.d.ts +0 -0
  467. /package/{lib → dist}/client/style.d.ts +0 -0
  468. /package/{lib → dist}/client/triggers/index.d.ts +0 -0
  469. /package/{lib → dist}/client/triggers/schedule/EndsByField.d.ts +0 -0
  470. /package/{lib → dist}/client/triggers/schedule/OnField.d.ts +0 -0
  471. /package/{lib → dist}/client/triggers/schedule/RepeatField.d.ts +0 -0
  472. /package/{lib → dist}/client/triggers/schedule/ScheduleConfig.d.ts +0 -0
  473. /package/{lib → dist}/client/triggers/schedule/constants.d.ts +0 -0
  474. /package/{lib → dist}/client/triggers/schedule/index.d.ts +0 -0
  475. /package/{lib → dist}/client/triggers/schedule/locale/Cron.zh-CN.d.ts +0 -0
  476. /package/{lib → dist}/client/utils.d.ts +0 -0
  477. /package/{lib → dist}/client/variable.d.ts +0 -0
  478. /package/{lib → dist}/locale/en-US.d.ts +0 -0
  479. /package/{lib → dist}/locale/es-ES.d.ts +0 -0
  480. /package/{lib → dist}/locale/fr-FR.d.ts +0 -0
  481. /package/{lib → dist}/locale/ja-JP.d.ts +0 -0
  482. /package/{lib → dist}/locale/pt-BR.d.ts +0 -0
  483. /package/{lib → dist}/locale/ru-RU.d.ts +0 -0
  484. /package/{lib → dist}/locale/tr-TR.d.ts +0 -0
  485. /package/{lib → dist}/locale/zh-CN.d.ts +0 -0
  486. /package/{lib → dist}/server/Plugin.d.ts +0 -0
  487. /package/{lib → dist}/server/Processor.d.ts +0 -0
  488. /package/{lib → dist}/server/actions/index.d.ts +0 -0
  489. /package/{lib → dist}/server/actions/nodes.d.ts +0 -0
  490. /package/{lib → dist}/server/actions/workflows.d.ts +0 -0
  491. /package/{lib → dist}/server/collections/executions.d.ts +0 -0
  492. /package/{lib → dist}/server/collections/flow_nodes.d.ts +0 -0
  493. /package/{lib → dist}/server/collections/jobs.d.ts +0 -0
  494. /package/{lib → dist}/server/collections/workflows.d.ts +0 -0
  495. /package/{lib → dist}/server/constants.d.ts +0 -0
  496. /package/{lib → dist}/server/fields/expression-field.d.ts +0 -0
  497. /package/{lib → dist}/server/fields/index.d.ts +0 -0
  498. /package/{lib → dist}/server/functions/index.d.ts +0 -0
  499. /package/{lib → dist}/server/index.d.ts +0 -0
  500. /package/{lib → dist}/server/instructions/aggregate.d.ts +0 -0
  501. /package/{lib → dist}/server/instructions/calculation.d.ts +0 -0
  502. /package/{lib → dist}/server/instructions/condition.d.ts +0 -0
  503. /package/{lib → dist}/server/instructions/create.d.ts +0 -0
  504. /package/{lib → dist}/server/instructions/delay.d.ts +0 -0
  505. /package/{lib → dist}/server/instructions/destroy.d.ts +0 -0
  506. /package/{lib → dist}/server/instructions/index.d.ts +0 -0
  507. /package/{lib → dist}/server/instructions/loop.d.ts +0 -0
  508. /package/{lib → dist}/server/instructions/manual/actions.d.ts +0 -0
  509. /package/{lib → dist}/server/instructions/manual/collecions/jobs.d.ts +0 -0
  510. /package/{lib → dist}/server/instructions/manual/collecions/users.d.ts +0 -0
  511. /package/{lib → dist}/server/instructions/manual/collecions/users_jobs.d.ts +0 -0
  512. /package/{lib → dist}/server/instructions/manual/forms/create.d.ts +0 -0
  513. /package/{lib → dist}/server/instructions/manual/forms/index.d.ts +0 -0
  514. /package/{lib → dist}/server/instructions/manual/forms/update.d.ts +0 -0
  515. /package/{lib → dist}/server/instructions/manual/index.d.ts +0 -0
  516. /package/{lib → dist}/server/instructions/parallel.d.ts +0 -0
  517. /package/{lib → dist}/server/instructions/query.d.ts +0 -0
  518. /package/{lib → dist}/server/instructions/request.d.ts +0 -0
  519. /package/{lib → dist}/server/instructions/sql.d.ts +0 -0
  520. /package/{lib → dist}/server/instructions/update.d.ts +0 -0
  521. /package/{lib → dist}/server/migrations/20221129153547-calculation-variables.d.ts +0 -0
  522. /package/{lib → dist}/server/migrations/20230221032941-change-request-body-type.d.ts +0 -0
  523. /package/{lib → dist}/server/migrations/20230221071831-calculation-expression.d.ts +0 -0
  524. /package/{lib → dist}/server/migrations/20230221121203-condition-calculation.d.ts +0 -0
  525. /package/{lib → dist}/server/migrations/20230221162902-jsonb-to-json.d.ts +0 -0
  526. /package/{lib → dist}/server/migrations/20230411034722-manual-multi-form.d.ts +0 -0
  527. /package/{lib → dist}/server/migrations/20230612021134-manual-collection-block.d.ts +0 -0
  528. /package/{lib → dist}/server/migrations/20230710115902-manual-action-values.d.ts +0 -0
  529. /package/{lib → dist}/server/triggers/collection.d.ts +0 -0
  530. /package/{lib → dist}/server/triggers/index.d.ts +0 -0
  531. /package/{lib → dist}/server/triggers/schedule.d.ts +0 -0
  532. /package/{lib → dist}/server/types/Execution.d.ts +0 -0
  533. /package/{lib → dist}/server/types/FlowNode.d.ts +0 -0
  534. /package/{lib → dist}/server/types/Job.d.ts +0 -0
  535. /package/{lib → dist}/server/types/Workflow.d.ts +0 -0
  536. /package/{lib → dist}/server/types/index.d.ts +0 -0
  537. /package/{lib → dist}/server/utils.d.ts +0 -0
@@ -0,0 +1,137 @@
1
+ import LocalZone from "./zones/localZone.js";
2
+ import IANAZone from "./zones/IANAZone.js";
3
+ import Locale from "./impl/locale.js";
4
+
5
+ import { normalizeZone } from "./impl/zoneUtil.js";
6
+
7
+ let now = () => Date.now(),
8
+ defaultZone = null, // not setting this directly to LocalZone.instance bc loading order issues
9
+ defaultLocale = null,
10
+ defaultNumberingSystem = null,
11
+ defaultOutputCalendar = null,
12
+ throwOnInvalid = false;
13
+
14
+ /**
15
+ * Settings contains static getters and setters that control Luxon's overall behavior. Luxon is a simple library with few options, but the ones it does have live here.
16
+ */
17
+ export default class Settings {
18
+ /**
19
+ * Get the callback for returning the current timestamp.
20
+ * @type {function}
21
+ */
22
+ static get now() {
23
+ return now;
24
+ }
25
+
26
+ /**
27
+ * Set the callback for returning the current timestamp.
28
+ * The function should return a number, which will be interpreted as an Epoch millisecond count
29
+ * @type {function}
30
+ * @example Settings.now = () => Date.now() + 3000 // pretend it is 3 seconds in the future
31
+ * @example Settings.now = () => 0 // always pretend it's Jan 1, 1970 at midnight in UTC time
32
+ */
33
+ static set now(n) {
34
+ now = n;
35
+ }
36
+
37
+ /**
38
+ * Get the default time zone to create DateTimes in.
39
+ * @type {string}
40
+ */
41
+ static get defaultZoneName() {
42
+ return Settings.defaultZone.name;
43
+ }
44
+
45
+ /**
46
+ * Set the default time zone to create DateTimes in. Does not affect existing instances.
47
+ * @type {string}
48
+ */
49
+ static set defaultZoneName(z) {
50
+ if (!z) {
51
+ defaultZone = null;
52
+ } else {
53
+ defaultZone = normalizeZone(z);
54
+ }
55
+ }
56
+
57
+ /**
58
+ * Get the default time zone object to create DateTimes in. Does not affect existing instances.
59
+ * @type {Zone}
60
+ */
61
+ static get defaultZone() {
62
+ return defaultZone || LocalZone.instance;
63
+ }
64
+
65
+ /**
66
+ * Get the default locale to create DateTimes with. Does not affect existing instances.
67
+ * @type {string}
68
+ */
69
+ static get defaultLocale() {
70
+ return defaultLocale;
71
+ }
72
+
73
+ /**
74
+ * Set the default locale to create DateTimes with. Does not affect existing instances.
75
+ * @type {string}
76
+ */
77
+ static set defaultLocale(locale) {
78
+ defaultLocale = locale;
79
+ }
80
+
81
+ /**
82
+ * Get the default numbering system to create DateTimes with. Does not affect existing instances.
83
+ * @type {string}
84
+ */
85
+ static get defaultNumberingSystem() {
86
+ return defaultNumberingSystem;
87
+ }
88
+
89
+ /**
90
+ * Set the default numbering system to create DateTimes with. Does not affect existing instances.
91
+ * @type {string}
92
+ */
93
+ static set defaultNumberingSystem(numberingSystem) {
94
+ defaultNumberingSystem = numberingSystem;
95
+ }
96
+
97
+ /**
98
+ * Get the default output calendar to create DateTimes with. Does not affect existing instances.
99
+ * @type {string}
100
+ */
101
+ static get defaultOutputCalendar() {
102
+ return defaultOutputCalendar;
103
+ }
104
+
105
+ /**
106
+ * Set the default output calendar to create DateTimes with. Does not affect existing instances.
107
+ * @type {string}
108
+ */
109
+ static set defaultOutputCalendar(outputCalendar) {
110
+ defaultOutputCalendar = outputCalendar;
111
+ }
112
+
113
+ /**
114
+ * Get whether Luxon will throw when it encounters invalid DateTimes, Durations, or Intervals
115
+ * @type {boolean}
116
+ */
117
+ static get throwOnInvalid() {
118
+ return throwOnInvalid;
119
+ }
120
+
121
+ /**
122
+ * Set whether Luxon will throw when it encounters invalid DateTimes, Durations, or Intervals
123
+ * @type {boolean}
124
+ */
125
+ static set throwOnInvalid(t) {
126
+ throwOnInvalid = t;
127
+ }
128
+
129
+ /**
130
+ * Reset Luxon's global caches. Should only be necessary in testing scenarios.
131
+ * @return {void}
132
+ */
133
+ static resetCaches() {
134
+ Locale.resetCache();
135
+ IANAZone.resetCache();
136
+ }
137
+ }
@@ -0,0 +1,88 @@
1
+ /* eslint no-unused-vars: "off" */
2
+ import { ZoneIsAbstractError } from "./errors.js";
3
+
4
+ /**
5
+ * @interface
6
+ */
7
+ export default class Zone {
8
+ /**
9
+ * The type of zone
10
+ * @abstract
11
+ * @type {string}
12
+ */
13
+ get type() {
14
+ throw new ZoneIsAbstractError();
15
+ }
16
+
17
+ /**
18
+ * The name of this zone.
19
+ * @abstract
20
+ * @type {string}
21
+ */
22
+ get name() {
23
+ throw new ZoneIsAbstractError();
24
+ }
25
+
26
+ /**
27
+ * Returns whether the offset is known to be fixed for the whole year.
28
+ * @abstract
29
+ * @type {boolean}
30
+ */
31
+ get universal() {
32
+ throw new ZoneIsAbstractError();
33
+ }
34
+
35
+ /**
36
+ * Returns the offset's common name (such as EST) at the specified timestamp
37
+ * @abstract
38
+ * @param {number} ts - Epoch milliseconds for which to get the name
39
+ * @param {Object} opts - Options to affect the format
40
+ * @param {string} opts.format - What style of offset to return. Accepts 'long' or 'short'.
41
+ * @param {string} opts.locale - What locale to return the offset name in.
42
+ * @return {string}
43
+ */
44
+ offsetName(ts, opts) {
45
+ throw new ZoneIsAbstractError();
46
+ }
47
+
48
+ /**
49
+ * Returns the offset's value as a string
50
+ * @abstract
51
+ * @param {number} ts - Epoch milliseconds for which to get the offset
52
+ * @param {string} format - What style of offset to return.
53
+ * Accepts 'narrow', 'short', or 'techie'. Returning '+6', '+06:00', or '+0600' respectively
54
+ * @return {string}
55
+ */
56
+ formatOffset(ts, format) {
57
+ throw new ZoneIsAbstractError();
58
+ }
59
+
60
+ /**
61
+ * Return the offset in minutes for this zone at the specified timestamp.
62
+ * @abstract
63
+ * @param {number} ts - Epoch milliseconds for which to compute the offset
64
+ * @return {number}
65
+ */
66
+ offset(ts) {
67
+ throw new ZoneIsAbstractError();
68
+ }
69
+
70
+ /**
71
+ * Return whether this Zone is equal to another zone
72
+ * @abstract
73
+ * @param {Zone} otherZone - the zone to compare
74
+ * @return {boolean}
75
+ */
76
+ equals(otherZone) {
77
+ throw new ZoneIsAbstractError();
78
+ }
79
+
80
+ /**
81
+ * Return whether this Zone is valid.
82
+ * @abstract
83
+ * @type {boolean}
84
+ */
85
+ get isValid() {
86
+ throw new ZoneIsAbstractError();
87
+ }
88
+ }
@@ -0,0 +1,191 @@
1
+ import { formatOffset, parseZoneInfo, isUndefined, ianaRegex, objToLocalTS } from "../impl/util.js";
2
+ import Zone from "../zone.js";
3
+
4
+ const matchingRegex = RegExp(`^${ianaRegex.source}$`);
5
+
6
+ let dtfCache = {};
7
+ function makeDTF(zone) {
8
+ if (!dtfCache[zone]) {
9
+ dtfCache[zone] = new Intl.DateTimeFormat("en-US", {
10
+ hour12: false,
11
+ timeZone: zone,
12
+ year: "numeric",
13
+ month: "2-digit",
14
+ day: "2-digit",
15
+ hour: "2-digit",
16
+ minute: "2-digit",
17
+ second: "2-digit"
18
+ });
19
+ }
20
+ return dtfCache[zone];
21
+ }
22
+
23
+ const typeToPos = {
24
+ year: 0,
25
+ month: 1,
26
+ day: 2,
27
+ hour: 3,
28
+ minute: 4,
29
+ second: 5
30
+ };
31
+
32
+ function hackyOffset(dtf, date) {
33
+ const formatted = dtf.format(date).replace(/\u200E/g, ""),
34
+ parsed = /(\d+)\/(\d+)\/(\d+),? (\d+):(\d+):(\d+)/.exec(formatted),
35
+ [, fMonth, fDay, fYear, fHour, fMinute, fSecond] = parsed;
36
+ return [fYear, fMonth, fDay, fHour, fMinute, fSecond];
37
+ }
38
+
39
+ function partsOffset(dtf, date) {
40
+ const formatted = dtf.formatToParts(date),
41
+ filled = [];
42
+ for (let i = 0; i < formatted.length; i++) {
43
+ const { type, value } = formatted[i],
44
+ pos = typeToPos[type];
45
+
46
+ if (!isUndefined(pos)) {
47
+ filled[pos] = parseInt(value, 10);
48
+ }
49
+ }
50
+ return filled;
51
+ }
52
+
53
+ let ianaZoneCache = {};
54
+ /**
55
+ * A zone identified by an IANA identifier, like America/New_York
56
+ * @implements {Zone}
57
+ */
58
+ export default class IANAZone extends Zone {
59
+ /**
60
+ * @param {string} name - Zone name
61
+ * @return {IANAZone}
62
+ */
63
+ static create(name) {
64
+ if (!ianaZoneCache[name]) {
65
+ ianaZoneCache[name] = new IANAZone(name);
66
+ }
67
+ return ianaZoneCache[name];
68
+ }
69
+
70
+ /**
71
+ * Reset local caches. Should only be necessary in testing scenarios.
72
+ * @return {void}
73
+ */
74
+ static resetCache() {
75
+ ianaZoneCache = {};
76
+ dtfCache = {};
77
+ }
78
+
79
+ /**
80
+ * Returns whether the provided string is a valid specifier. This only checks the string's format, not that the specifier identifies a known zone; see isValidZone for that.
81
+ * @param {string} s - The string to check validity on
82
+ * @example IANAZone.isValidSpecifier("America/New_York") //=> true
83
+ * @example IANAZone.isValidSpecifier("Fantasia/Castle") //=> true
84
+ * @example IANAZone.isValidSpecifier("Sport~~blorp") //=> false
85
+ * @return {boolean}
86
+ */
87
+ static isValidSpecifier(s) {
88
+ return !!(s && s.match(matchingRegex));
89
+ }
90
+
91
+ /**
92
+ * Returns whether the provided string identifies a real zone
93
+ * @param {string} zone - The string to check
94
+ * @example IANAZone.isValidZone("America/New_York") //=> true
95
+ * @example IANAZone.isValidZone("Fantasia/Castle") //=> false
96
+ * @example IANAZone.isValidZone("Sport~~blorp") //=> false
97
+ * @return {boolean}
98
+ */
99
+ static isValidZone(zone) {
100
+ try {
101
+ new Intl.DateTimeFormat("en-US", { timeZone: zone }).format();
102
+ return true;
103
+ } catch (e) {
104
+ return false;
105
+ }
106
+ }
107
+
108
+ // Etc/GMT+8 -> -480
109
+ /** @ignore */
110
+ static parseGMTOffset(specifier) {
111
+ if (specifier) {
112
+ const match = specifier.match(/^Etc\/GMT(0|[+-]\d{1,2})$/i);
113
+ if (match) {
114
+ return -60 * parseInt(match[1]);
115
+ }
116
+ }
117
+ return null;
118
+ }
119
+
120
+ constructor(name) {
121
+ super();
122
+ /** @private **/
123
+ this.zoneName = name;
124
+ /** @private **/
125
+ this.valid = IANAZone.isValidZone(name);
126
+ }
127
+
128
+ /** @override **/
129
+ get type() {
130
+ return "iana";
131
+ }
132
+
133
+ /** @override **/
134
+ get name() {
135
+ return this.zoneName;
136
+ }
137
+
138
+ /** @override **/
139
+ get universal() {
140
+ return false;
141
+ }
142
+
143
+ /** @override **/
144
+ offsetName(ts, { format, locale }) {
145
+ return parseZoneInfo(ts, format, locale, this.name);
146
+ }
147
+
148
+ /** @override **/
149
+ formatOffset(ts, format) {
150
+ return formatOffset(this.offset(ts), format);
151
+ }
152
+
153
+ /** @override **/
154
+ offset(ts) {
155
+ const date = new Date(ts);
156
+
157
+ if (isNaN(date)) return NaN;
158
+
159
+ const dtf = makeDTF(this.name),
160
+ [year, month, day, hour, minute, second] = dtf.formatToParts
161
+ ? partsOffset(dtf, date)
162
+ : hackyOffset(dtf, date),
163
+ // work around https://bugs.chromium.org/p/chromium/issues/detail?id=1025564&can=2&q=%2224%3A00%22%20datetimeformat
164
+ adjustedHour = hour === 24 ? 0 : hour;
165
+
166
+ const asUTC = objToLocalTS({
167
+ year,
168
+ month,
169
+ day,
170
+ hour: adjustedHour,
171
+ minute,
172
+ second,
173
+ millisecond: 0
174
+ });
175
+
176
+ let asTS = +date;
177
+ const over = asTS % 1000;
178
+ asTS -= over >= 0 ? over : 1000 + over;
179
+ return (asUTC - asTS) / (60 * 1000);
180
+ }
181
+
182
+ /** @override **/
183
+ equals(otherZone) {
184
+ return otherZone.type === "iana" && otherZone.name === this.name;
185
+ }
186
+
187
+ /** @override **/
188
+ get isValid() {
189
+ return this.valid;
190
+ }
191
+ }
@@ -0,0 +1,94 @@
1
+ import { formatOffset, signedOffset } from "../impl/util.js";
2
+ import Zone from "../zone.js";
3
+
4
+ let singleton = null;
5
+
6
+ /**
7
+ * A zone with a fixed offset (meaning no DST)
8
+ * @implements {Zone}
9
+ */
10
+ export default class FixedOffsetZone extends Zone {
11
+ /**
12
+ * Get a singleton instance of UTC
13
+ * @return {FixedOffsetZone}
14
+ */
15
+ static get utcInstance() {
16
+ if (singleton === null) {
17
+ singleton = new FixedOffsetZone(0);
18
+ }
19
+ return singleton;
20
+ }
21
+
22
+ /**
23
+ * Get an instance with a specified offset
24
+ * @param {number} offset - The offset in minutes
25
+ * @return {FixedOffsetZone}
26
+ */
27
+ static instance(offset) {
28
+ return offset === 0 ? FixedOffsetZone.utcInstance : new FixedOffsetZone(offset);
29
+ }
30
+
31
+ /**
32
+ * Get an instance of FixedOffsetZone from a UTC offset string, like "UTC+6"
33
+ * @param {string} s - The offset string to parse
34
+ * @example FixedOffsetZone.parseSpecifier("UTC+6")
35
+ * @example FixedOffsetZone.parseSpecifier("UTC+06")
36
+ * @example FixedOffsetZone.parseSpecifier("UTC-6:00")
37
+ * @return {FixedOffsetZone}
38
+ */
39
+ static parseSpecifier(s) {
40
+ if (s) {
41
+ const r = s.match(/^utc(?:([+-]\d{1,2})(?::(\d{2}))?)?$/i);
42
+ if (r) {
43
+ return new FixedOffsetZone(signedOffset(r[1], r[2]));
44
+ }
45
+ }
46
+ return null;
47
+ }
48
+
49
+ constructor(offset) {
50
+ super();
51
+ /** @private **/
52
+ this.fixed = offset;
53
+ }
54
+
55
+ /** @override **/
56
+ get type() {
57
+ return "fixed";
58
+ }
59
+
60
+ /** @override **/
61
+ get name() {
62
+ return this.fixed === 0 ? "UTC" : `UTC${formatOffset(this.fixed, "narrow")}`;
63
+ }
64
+
65
+ /** @override **/
66
+ offsetName() {
67
+ return this.name;
68
+ }
69
+
70
+ /** @override **/
71
+ formatOffset(ts, format) {
72
+ return formatOffset(this.fixed, format);
73
+ }
74
+
75
+ /** @override **/
76
+ get universal() {
77
+ return true;
78
+ }
79
+
80
+ /** @override **/
81
+ offset() {
82
+ return this.fixed;
83
+ }
84
+
85
+ /** @override **/
86
+ equals(otherZone) {
87
+ return otherZone.type === "fixed" && otherZone.fixed === this.fixed;
88
+ }
89
+
90
+ /** @override **/
91
+ get isValid() {
92
+ return true;
93
+ }
94
+ }
@@ -0,0 +1,53 @@
1
+ import Zone from "../zone.js";
2
+
3
+ /**
4
+ * A zone that failed to parse. You should never need to instantiate this.
5
+ * @implements {Zone}
6
+ */
7
+ export default class InvalidZone extends Zone {
8
+ constructor(zoneName) {
9
+ super();
10
+ /** @private */
11
+ this.zoneName = zoneName;
12
+ }
13
+
14
+ /** @override **/
15
+ get type() {
16
+ return "invalid";
17
+ }
18
+
19
+ /** @override **/
20
+ get name() {
21
+ return this.zoneName;
22
+ }
23
+
24
+ /** @override **/
25
+ get universal() {
26
+ return false;
27
+ }
28
+
29
+ /** @override **/
30
+ offsetName() {
31
+ return null;
32
+ }
33
+
34
+ /** @override **/
35
+ formatOffset() {
36
+ return "";
37
+ }
38
+
39
+ /** @override **/
40
+ offset() {
41
+ return NaN;
42
+ }
43
+
44
+ /** @override **/
45
+ equals() {
46
+ return false;
47
+ }
48
+
49
+ /** @override **/
50
+ get isValid() {
51
+ return false;
52
+ }
53
+ }
@@ -0,0 +1,63 @@
1
+ import { formatOffset, parseZoneInfo, hasIntl } from "../impl/util.js";
2
+ import Zone from "../zone.js";
3
+
4
+ let singleton = null;
5
+
6
+ /**
7
+ * Represents the local zone for this JavaScript environment.
8
+ * @implements {Zone}
9
+ */
10
+ export default class LocalZone extends Zone {
11
+ /**
12
+ * Get a singleton instance of the local zone
13
+ * @return {LocalZone}
14
+ */
15
+ static get instance() {
16
+ if (singleton === null) {
17
+ singleton = new LocalZone();
18
+ }
19
+ return singleton;
20
+ }
21
+
22
+ /** @override **/
23
+ get type() {
24
+ return "local";
25
+ }
26
+
27
+ /** @override **/
28
+ get name() {
29
+ if (hasIntl()) {
30
+ return new Intl.DateTimeFormat().resolvedOptions().timeZone;
31
+ } else return "local";
32
+ }
33
+
34
+ /** @override **/
35
+ get universal() {
36
+ return false;
37
+ }
38
+
39
+ /** @override **/
40
+ offsetName(ts, { format, locale }) {
41
+ return parseZoneInfo(ts, format, locale);
42
+ }
43
+
44
+ /** @override **/
45
+ formatOffset(ts, format) {
46
+ return formatOffset(this.offset(ts), format);
47
+ }
48
+
49
+ /** @override **/
50
+ offset(ts) {
51
+ return -new Date(ts).getTimezoneOffset();
52
+ }
53
+
54
+ /** @override **/
55
+ equals(otherZone) {
56
+ return otherZone.type === "local";
57
+ }
58
+
59
+ /** @override **/
60
+ get isValid() {
61
+ return true;
62
+ }
63
+ }
@@ -0,0 +1 @@
1
+ {"name":"cron-parser","version":"4.4.0","description":"Node.js library for parsing crontab instructions","main":"lib/parser.js","types":"index.d.ts","typesVersions":{"<4.1":{"*":["types/ts3/*"]}},"directories":{"test":"test"},"scripts":{"test:tsd":"tsd","test:unit":"TZ=UTC tap ./test/*.js","test:cover":"TZ=UTC tap --coverage-report=html ./test/*.js","lint":"eslint .","lint:fix":"eslint --fix .","test":"npm run lint && npm run test:unit && npm run test:tsd"},"repository":{"type":"git","url":"https://github.com/harrisiirak/cron-parser.git"},"keywords":["cron","crontab","parser"],"author":"Harri Siirak","contributors":["Nicholas Clawson","Daniel Prentis <daniel@salsitasoft.com>","Renault John Lecoultre","Richard Astbury <richard.astbury@gmail.com>","Meaglin Wasabi <Meaglin.wasabi@gmail.com>","Mike Kusold <hello@mikekusold.com>","Alex Kit <alex.kit@atmajs.com>","Santiago Gimeno <santiago.gimeno@gmail.com>","Daniel <darc.tec@gmail.com>","Christian Steininger <christian.steininger.cs@gmail.com>","Mykola Piskovyi <m.piskovyi@gmail.com>","Brian Vaughn <brian.david.vaughn@gmail.com>","Nicholas Clawson <nickclaw@gmail.com>","Yasuhiroki <yasuhiroki.duck@gmail.com>","Nicholas Clawson <nickclaw@gmail.com>","Brendan Warkentin <faazshift@gmail.com>","Charlie Fish <fishcharlie.code@gmail.com>","Ian Graves <ian+diskimage@iangrav.es>","Andy Thompson <me@andytson.com>","Regev Brody <regevbr@gmail.com>"],"license":"MIT","dependencies":{"luxon":"^1.28.0"},"devDependencies":{"eslint":"^8.2.0","sinon":"^10.0.0","tap":"^16.0.1","tsd":"^0.19.0"},"engines":{"node":">=0.8"},"browser":{"fs":false},"tap":{"check-coverage":false},"tsd":{"directory":"test","compilerOptions":{"lib":["es2017","dom"]}},"_lastModified":"2023-08-01T18:40:31.953Z"}
@@ -0,0 +1,17 @@
1
+ var util = require('util');
2
+ var test = require('tap').test;
3
+ var expression = require('../lib/expression');
4
+
5
+ test('expression 31 of month', function(t) {
6
+ try {
7
+ var interval = expression.parse('0 0 31 * *');
8
+ var i;
9
+ var d;
10
+ for (i = 0; i < 20; ++i) {
11
+ d = interval.next();
12
+ }
13
+ t.end();
14
+ } catch (err) {
15
+ t.error(err, 'Interval parse error');
16
+ }
17
+ });
@@ -0,0 +1,29 @@
1
+ var util = require('util');
2
+ var test = require('tap').test;
3
+ var CronExpression = require('../lib/expression');
4
+ var CronDate = require('../lib/date');
5
+
6
+
7
+ test('parse expression as UTC', function(t) {
8
+ try {
9
+ var options = {
10
+ utc: true
11
+ };
12
+
13
+ var interval = CronExpression.parse('0 0 10 * * *', options);
14
+
15
+ var date = interval.next();
16
+ t.equal(date.getUTCHours(), 10, 'Correct UTC hour value');
17
+
18
+ interval = CronExpression.parse('0 */5 * * * *', options);
19
+
20
+ var date = interval.next(), now = new Date();
21
+ now.setMinutes(now.getMinutes() + 5 - (now.getMinutes() % 5));
22
+ t.equal(date.getHours(), now.getUTCHours(), 'Correct local time for 5 minute interval');
23
+
24
+ } catch (err) {
25
+ t.error(err, 'UTC parse error');
26
+ }
27
+
28
+ t.end();
29
+ });
@@ -0,0 +1,16 @@
1
+ // empty around comma
2
+
3
+ var test = require('tap').test;
4
+ var CronDate = require('../lib/date');
5
+
6
+ test('is the last weekday of the month', function (t) {
7
+ // Last monday of septhember
8
+ var date = new CronDate(new Date(2021, 8, 27));
9
+ t.equal(date.isLastWeekdayOfMonth(), true);
10
+
11
+ // Second-to-last monday of septhember
12
+ var date = new CronDate(new Date(2021, 8, 20));
13
+ t.equal(date.isLastWeekdayOfMonth(), false);
14
+
15
+ t.end();
16
+ });
@@ -0,0 +1,7 @@
1
+ # Comment line (ignore)
2
+ ENV1="test1"
3
+ ENV2="test2"
4
+
5
+ */10 * * * * /path/to/exe
6
+ */10 * * * * /path/to/exe
7
+ 0 09-18 * * 1-5 /path/to/exe