@farris/ui-vue 1.3.0 → 1.3.3

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 (305) hide show
  1. package/components/accordion/index.esm.js +103 -99
  2. package/components/accordion/index.umd.cjs +1 -1
  3. package/components/avatar/index.esm.js +454 -398
  4. package/components/avatar/index.umd.cjs +1 -1
  5. package/components/binding-selector/index.esm.js +444 -0
  6. package/components/binding-selector/index.umd.cjs +1 -0
  7. package/components/binding-selector/package.json +8 -0
  8. package/components/border-editor/index.esm.js +5 -3
  9. package/components/border-editor/index.umd.cjs +1 -1
  10. package/components/button-edit/index.esm.js +143 -139
  11. package/components/button-edit/index.umd.cjs +1 -1
  12. package/components/calendar/index.esm.js +479 -476
  13. package/components/calendar/index.umd.cjs +1 -1
  14. package/components/capsule/index.esm.js +255 -252
  15. package/components/capsule/index.umd.cjs +1 -1
  16. package/components/checkbox/index.esm.js +652 -567
  17. package/components/checkbox/index.umd.cjs +1 -1
  18. package/components/color-picker/index.esm.js +518 -521
  19. package/components/color-picker/index.umd.cjs +2 -2
  20. package/components/combo-list/index.esm.js +659 -553
  21. package/components/combo-list/index.umd.cjs +1 -1
  22. package/components/combo-tree/index.esm.js +162 -155
  23. package/components/combo-tree/index.umd.cjs +1 -1
  24. package/components/common/index.esm.js +866 -747
  25. package/components/common/index.umd.cjs +1 -1
  26. package/components/component/index.esm.js +371 -998
  27. package/components/component/index.umd.cjs +1 -1
  28. package/components/condition/index.esm.js +1174 -1280
  29. package/components/condition/index.umd.cjs +1 -1
  30. package/components/content-container/index.esm.js +340 -991
  31. package/components/content-container/index.umd.cjs +1 -1
  32. package/components/data-grid/index.esm.js +6066 -5847
  33. package/components/data-grid/index.umd.cjs +1 -1
  34. package/components/data-view/index.esm.js +3400 -3486
  35. package/components/data-view/index.umd.cjs +1 -1
  36. package/components/date-picker/index.esm.js +2328 -2446
  37. package/components/date-picker/index.umd.cjs +1 -1
  38. package/components/designer-canvas/index.css +1 -1
  39. package/components/designer-canvas/index.esm.js +9551 -1200
  40. package/components/designer-canvas/index.umd.cjs +1 -1
  41. package/components/designer-outline/index.esm.js +2 -1
  42. package/components/designer-outline/index.umd.cjs +1 -1
  43. package/components/drawer/index.esm.js +34 -38
  44. package/components/drawer/index.umd.cjs +1 -1
  45. package/components/dropdown/index.esm.js +234 -231
  46. package/components/dropdown/index.umd.cjs +2 -2
  47. package/components/dynamic-form/index.esm.js +1996 -2630
  48. package/components/dynamic-form/index.umd.cjs +1 -1
  49. package/components/dynamic-resolver/index.esm.js +138 -123
  50. package/components/dynamic-resolver/index.umd.cjs +1 -1
  51. package/components/dynamic-view/index.esm.js +218 -218
  52. package/components/dynamic-view/index.umd.cjs +1 -1
  53. package/components/event-parameter/index.esm.js +311 -0
  54. package/components/event-parameter/index.umd.cjs +1 -0
  55. package/components/event-parameter/package.json +8 -0
  56. package/components/events-editor/index.css +1 -1
  57. package/components/events-editor/index.esm.js +548 -586
  58. package/components/events-editor/index.umd.cjs +1 -1
  59. package/components/expression-editor/index.esm.js +95 -91
  60. package/components/expression-editor/index.umd.cjs +1 -1
  61. package/components/external-container/index.esm.js +2871 -3736
  62. package/components/external-container/index.umd.cjs +1 -1
  63. package/components/field-selector/index.esm.js +3380 -3645
  64. package/components/field-selector/index.umd.cjs +1 -1
  65. package/components/filter-bar/index.css +1 -1
  66. package/components/filter-bar/index.esm.js +10543 -3207
  67. package/components/filter-bar/index.umd.cjs +1 -1
  68. package/components/flow-canvas/index.css +1 -1
  69. package/components/flow-canvas/index.esm.js +9775 -1312
  70. package/components/flow-canvas/index.umd.cjs +1 -1
  71. package/components/image-cropper/index.esm.js +442 -438
  72. package/components/image-cropper/index.umd.cjs +1 -1
  73. package/components/input-group/index.esm.js +587 -807
  74. package/components/input-group/index.umd.cjs +1 -1
  75. package/components/layout/index.esm.js +415 -381
  76. package/components/layout/index.umd.cjs +1 -1
  77. package/components/list-nav/index.esm.js +361 -1024
  78. package/components/list-nav/index.umd.cjs +1 -1
  79. package/components/list-view/index.esm.js +2265 -2371
  80. package/components/list-view/index.umd.cjs +1 -1
  81. package/components/lookup/index.esm.js +6425 -6257
  82. package/components/lookup/index.umd.cjs +1 -1
  83. package/components/mapping-editor/index.esm.js +6164 -5946
  84. package/components/mapping-editor/index.umd.cjs +1 -1
  85. package/components/message-box/index.esm.js +252 -252
  86. package/components/message-box/index.umd.cjs +1 -1
  87. package/components/modal/index.esm.js +70 -70
  88. package/components/modal/index.umd.cjs +1 -1
  89. package/components/nav/index.esm.js +524 -1474
  90. package/components/nav/index.umd.cjs +3 -3
  91. package/components/number-range/index.esm.js +547 -502
  92. package/components/number-range/index.umd.cjs +1 -1
  93. package/components/number-spinner/index.esm.js +646 -574
  94. package/components/number-spinner/index.umd.cjs +1 -1
  95. package/components/order/index.esm.js +1181 -2028
  96. package/components/order/index.umd.cjs +1 -1
  97. package/components/page-footer/index.esm.js +134 -131
  98. package/components/page-footer/index.umd.cjs +1 -1
  99. package/components/page-header/index.esm.js +1185 -2027
  100. package/components/page-header/index.umd.cjs +1 -1
  101. package/components/pagination/index.esm.js +442 -1368
  102. package/components/pagination/index.umd.cjs +1 -1
  103. package/components/progress/index.esm.js +238 -235
  104. package/components/progress/index.umd.cjs +3 -3
  105. package/components/property-editor/index.esm.js +1635 -1713
  106. package/components/property-editor/index.umd.cjs +2 -2
  107. package/components/property-panel/index.esm.js +791 -716
  108. package/components/property-panel/index.umd.cjs +1 -1
  109. package/components/query-solution/index.css +1 -1
  110. package/components/query-solution/index.esm.js +12203 -5274
  111. package/components/query-solution/index.umd.cjs +6 -1
  112. package/components/radio-button/index.esm.js +97 -97
  113. package/components/radio-button/index.umd.cjs +1 -1
  114. package/components/radio-group/index.css +1 -1
  115. package/components/radio-group/index.esm.js +1873 -520
  116. package/components/radio-group/index.umd.cjs +1 -1
  117. package/components/rate/index.esm.js +299 -300
  118. package/components/rate/index.umd.cjs +1 -1
  119. package/components/response-layout/index.esm.js +176 -173
  120. package/components/response-layout/index.umd.cjs +1 -1
  121. package/components/response-layout-editor/index.esm.js +715 -659
  122. package/components/response-layout-editor/index.umd.cjs +1 -1
  123. package/components/response-toolbar/index.esm.js +1032 -1883
  124. package/components/response-toolbar/index.umd.cjs +1 -1
  125. package/components/schema-selector/index.esm.js +4767 -5693
  126. package/components/schema-selector/index.umd.cjs +2 -2
  127. package/components/search-box/index.esm.js +169 -161
  128. package/components/search-box/index.umd.cjs +1 -1
  129. package/components/section/index.esm.js +490 -1167
  130. package/components/section/index.umd.cjs +1 -1
  131. package/components/smoke-detector/index.esm.js +154 -151
  132. package/components/smoke-detector/index.umd.cjs +1 -1
  133. package/components/splitter/index.esm.js +575 -1204
  134. package/components/splitter/index.umd.cjs +1 -1
  135. package/components/splitter/style.js +2 -0
  136. package/components/step/index.esm.js +279 -276
  137. package/components/step/index.umd.cjs +1 -1
  138. package/components/switch/index.esm.js +478 -428
  139. package/components/switch/index.umd.cjs +1 -1
  140. package/components/tabs/index.esm.js +2591 -3326
  141. package/components/tabs/index.umd.cjs +1 -1
  142. package/components/tags/index.esm.js +442 -439
  143. package/components/tags/index.umd.cjs +1 -1
  144. package/components/text/index.esm.js +309 -307
  145. package/components/text/index.umd.cjs +1 -1
  146. package/components/textarea/index.esm.js +500 -430
  147. package/components/textarea/index.umd.cjs +1 -1
  148. package/components/time-picker/index.esm.js +1391 -1341
  149. package/components/time-picker/index.umd.cjs +1 -1
  150. package/components/transfer/index.esm.js +574 -575
  151. package/components/transfer/index.umd.cjs +1 -1
  152. package/components/tree-grid/index.esm.js +3422 -3536
  153. package/components/tree-grid/index.umd.cjs +1 -1
  154. package/components/tree-view/index.esm.js +2661 -2764
  155. package/components/tree-view/index.umd.cjs +1 -1
  156. package/components/uploader/index.esm.js +675 -674
  157. package/components/uploader/index.umd.cjs +2 -2
  158. package/components/verify-detail/index.esm.js +300 -297
  159. package/components/verify-detail/index.umd.cjs +1 -1
  160. package/components/video/index.esm.js +454 -1089
  161. package/components/video/index.umd.cjs +1 -1
  162. package/components/weather/index.esm.js +709 -706
  163. package/components/weather/index.umd.cjs +5 -5
  164. package/farris.all.esm.js +54780 -52757
  165. package/farris.all.umd.cjs +14 -9
  166. package/index.css +1 -1
  167. package/package.json +1 -1
  168. package/types/binding-selector/index.d.ts +55 -0
  169. package/types/binding-selector/src/binding-selector.component.d.ts +11 -0
  170. package/types/binding-selector/src/binding-selector.props.d.ts +52 -0
  171. package/types/binding-selector/src/components/binding-selector-container.component.d.ts +13 -0
  172. package/types/binding-selector/src/composition/use-field-selection.d.ts +9 -0
  173. package/types/combo-list/src/components/list-container.component.d.ts +6 -6
  174. package/types/combo-list/src/components/list-container.props.d.ts +1 -1
  175. package/types/combo-tree/src/components/tree-container.component.d.ts +5 -5
  176. package/types/common/directive/area-response.d.ts +10 -0
  177. package/types/common/entity/entity-schema.d.ts +26 -11
  178. package/types/common/index.d.ts +9 -0
  179. package/types/common/radio-checkbox/radio-checkbox.props.d.ts +1 -0
  180. package/types/common/types.d.ts +2 -2
  181. package/types/common/utils/resolve-field.d.ts +2 -0
  182. package/types/common/utils/use-class.d.ts +7 -0
  183. package/types/component/src/designer/use-designer-rules.d.ts +2 -2
  184. package/types/condition/src/condition-fields.design.component.d.ts +18 -0
  185. package/types/condition/src/types.d.ts +5 -4
  186. package/types/content-container/src/designer/use-designer-rules.d.ts +3 -3
  187. package/types/data-grid/index.d.ts +8 -5
  188. package/types/data-grid/src/composition/data-grid-component-creator.service.d.ts +20 -0
  189. package/types/data-grid/src/{designer/data-grid-column.props.d.ts → data-grid-column.props.d.ts} +1 -1
  190. package/types/data-grid/src/data-grid.component.d.ts +3 -2
  191. package/types/data-grid/src/data-grid.props.d.ts +2 -2
  192. package/types/data-grid/src/designer/data-grid.design.component.d.ts +2 -2
  193. package/types/data-grid/src/designer/grid-field-editor.component.d.ts +14 -14
  194. package/types/data-grid/src/designer/use-designer-rules.d.ts +2 -2
  195. package/types/data-grid/src/schema/schema-resolver.d.ts +1 -1
  196. package/types/data-view/components/row/hierarchy-row.component.d.ts +2 -2
  197. package/types/data-view/composition/data/use-tree-data.d.ts +1 -1
  198. package/types/data-view/composition/types.d.ts +9 -11
  199. package/types/date-picker/src/components/calendar/calendar.component.d.ts +3 -3
  200. package/types/date-picker/src/components/month/month.component.d.ts +3 -3
  201. package/types/date-picker/src/components/year/year.component.d.ts +3 -3
  202. package/types/designer-canvas/index.d.ts +3 -1
  203. package/types/designer-canvas/src/composition/dg-control.d.ts +5 -0
  204. package/types/designer-canvas/src/composition/function/drag-resolve.d.ts +5 -0
  205. package/types/designer-canvas/src/composition/rule/use-dragula-common-rule.d.ts +4 -0
  206. package/types/designer-canvas/src/composition/rule/use-template-rule.d.ts +30 -0
  207. package/types/designer-canvas/src/composition/types.d.ts +49 -41
  208. package/types/designer-canvas/src/types.d.ts +10 -21
  209. package/types/dynamic-form/index.d.ts +1 -1
  210. package/types/dynamic-form/src/designer/form-group-use-designer-rules.d.ts +3 -0
  211. package/types/dynamic-form/src/designer/response-form-use-designer-rules.d.ts +3 -0
  212. package/types/dynamic-form/src/designer/response-form.design.component.d.ts +7 -1
  213. package/types/dynamic-form/src/property-config/{form.property-config.d.ts → response-form.property-config.d.ts} +1 -1
  214. package/types/dynamic-form/src/schema/{schema-resolver.d.ts → response-form-schema-resolver.d.ts} +1 -1
  215. package/types/dynamic-form/src/types.d.ts +1 -1
  216. package/types/dynamic-resolver/src/common/toolbar-resolver.d.ts +6 -1
  217. package/types/dynamic-resolver/src/converter/row-number.converter.d.ts +3 -0
  218. package/types/entity-binding-selector/composition/use-entity-tree.d.ts +7 -0
  219. package/types/entity-binding-selector/entity-binding-selector.component.d.ts +11 -0
  220. package/types/entity-binding-selector/entity-binding-selector.props.d.ts +3 -0
  221. package/types/enum-editor/src/components/enum-editor-container.component.d.ts +3 -3
  222. package/types/enum-editor/src/enum-editor.component.d.ts +3 -3
  223. package/types/event-parameter/index.d.ts +31 -0
  224. package/types/event-parameter/src/composition/type.d.ts +77 -0
  225. package/types/event-parameter/src/composition/use-editor-combotree.d.ts +3 -0
  226. package/types/event-parameter/src/composition/use-editor-input.d.ts +3 -0
  227. package/types/event-parameter/src/composition/use-editor-select.d.ts +3 -0
  228. package/types/event-parameter/src/composition/use-editor-switch.d.ts +3 -0
  229. package/types/event-parameter/src/composition/use-editor.d.ts +3 -0
  230. package/types/event-parameter/src/event-parameter.component.d.ts +8 -0
  231. package/types/event-parameter/src/event-parameter.props.d.ts +34 -0
  232. package/types/external-container/src/designer/import-external-schema.component.d.ts +1 -1
  233. package/types/external-container/src/designer/use-designer-rules.d.ts +3 -3
  234. package/types/field-selector/src/field-selector.component.d.ts +1 -2
  235. package/types/field-selector/src/field-selector.props.d.ts +0 -9
  236. package/types/input-group/src/designer/use-input-group-rules.d.ts +1 -2
  237. package/types/layout/src/designer/layout-pane-use-designer-rules.d.ts +3 -3
  238. package/types/list-nav/src/designer/use-designer-rules.d.ts +3 -0
  239. package/types/list-view/src/designer/list-view-table.design.component.d.ts +15 -0
  240. package/types/list-view/src/list-view-table.component.d.ts +15 -0
  241. package/types/lookup/src/composition/use-user-data.d.ts +2 -2
  242. package/types/lookup/src/property-config/lookup.property-config.d.ts +2 -6
  243. package/types/modal/src/composition/modal.service.d.ts +2 -1
  244. package/types/page-header/src/designer/page-header.design.component.d.ts +1 -1
  245. package/types/page-header/src/page-header.component.d.ts +1 -1
  246. package/types/pagination/src/components/buttons/goto-buttons.component.d.ts +2 -2
  247. package/types/pagination/src/components/buttons/next-buttons.component.d.ts +2 -2
  248. package/types/pagination/src/components/buttons/previous-buttons.component.d.ts +2 -2
  249. package/types/pagination/src/components/pages/page-list.component.d.ts +2 -2
  250. package/types/pagination/src/components/pages/page-number.component.d.ts +2 -2
  251. package/types/property-panel/index.d.ts +3 -1
  252. package/types/property-panel/src/composition/entity/input-base-property.d.ts +1 -1
  253. package/types/property-panel/src/composition/entity/property-entity.d.ts +1 -1
  254. package/types/property-panel/src/composition/type.d.ts +0 -13
  255. package/types/query-solution/src/composition/types.d.ts +35 -4
  256. package/types/query-solution/src/composition/use-header.d.ts +21 -0
  257. package/types/query-solution/src/composition/{use-filter.d.ts → use-http.d.ts} +2 -2
  258. package/types/query-solution/src/composition/use-solution.d.ts +20 -0
  259. package/types/query-solution/src/designer/query-solution-config/composition/types.d.ts +43 -35
  260. package/types/query-solution/src/designer/query-solution-config/composition/use-panel.d.ts +2 -16
  261. package/types/query-solution/src/designer/query-solution-config/composition/use-property.d.ts +19 -0
  262. package/types/query-solution/src/designer/query-solution-config/composition/use-querysolution-rules.d.ts +3 -0
  263. package/types/query-solution/src/designer/query-solution-config/composition/use-transfer.d.ts +1 -1
  264. package/types/query-solution/src/designer/query-solution-config/query-solution-config.props.d.ts +14 -14
  265. package/types/query-solution/src/property-config/query-solution.property-config.d.ts +12 -0
  266. package/types/query-solution/src/query-solution.d.ts +10 -2
  267. package/types/query-solution/src/solutions.d.ts +108 -509
  268. package/types/radio-group/src/designer/item-collection-editor-inner.component.d.ts +29 -0
  269. package/types/radio-group/src/designer/item-collection-editor.component.d.ts +29 -0
  270. package/types/radio-group/src/designer/item-collection-editor.props.d.ts +21 -0
  271. package/types/radio-group/src/schema/schema-mapper.d.ts +1 -0
  272. package/types/radio-group/src/schema/schema-resolver.d.ts +1 -0
  273. package/types/response-layout-editor/index.d.ts +3 -1
  274. package/types/response-toolbar/src/designer/use-designer-rules.d.ts +3 -3
  275. package/types/response-toolbar/src/property-config/response-toolbar-item.property-config.d.ts +1 -0
  276. package/types/response-toolbar/src/property-config/response-toolbar.property-config.d.ts +1 -0
  277. package/types/section/src/designer/use-designer-rules.d.ts +3 -3
  278. package/types/section/src/property-config/section.property-config.d.ts +17 -17
  279. package/types/section/src/schema/schema-resolver.d.ts +1 -2
  280. package/types/section/src/schema/toolbar-resolver.d.ts +1 -1
  281. package/types/splitter/src/components/splitter-pane.component.d.ts +1 -1
  282. package/types/splitter/src/designer/splitter-pane-use-designer-rules.d.ts +3 -3
  283. package/types/splitter/src/designer/splitter-use-designer-rules.d.ts +3 -3
  284. package/types/tabs/src/composition/types.d.ts +4 -1
  285. package/types/tabs/src/designer/tab-page-use-designer-rules.d.ts +3 -3
  286. package/types/tabs/src/designer/tab-use-designer-rules.d.ts +3 -3
  287. package/types/tabs/src/property-config/tab-page.property-config.d.ts +9 -59
  288. package/types/tabs/src/property-config/tabs.property-config.d.ts +8 -71
  289. package/types/tabs/src/schema/schema-resolver.d.ts +1 -2
  290. package/types/text/src/composition/types.d.ts +4 -4
  291. package/types/textarea/src/property-config/textarea.property-config.d.ts +23 -0
  292. package/types/tree-grid/index.d.ts +3 -3
  293. package/types/tree-grid/src/tree-grid.component.d.ts +1 -1
  294. package/types/weather/src/composition/use-weather-charts.d.ts +15 -0
  295. package/types/weather/src/composition/use-weather-color.d.ts +15 -0
  296. package/types/weather/src/composition/use-weather-data.d.ts +15 -0
  297. package/types/weather/src/composition/use-weather-format-number.d.ts +15 -0
  298. package/types/designer-canvas/src/composition/rule/use-drag-drop-rules.d.ts +0 -19
  299. package/types/designer-canvas/src/composition/use-dragula-common-rule.d.ts +0 -4
  300. package/types/dynamic-form/src/designer/use-designer-rules.d.ts +0 -3
  301. package/types/list-nav/src/composition/use-designer-rules.d.ts +0 -3
  302. package/types/property-panel/src/composition/entity/use-input-rules.d.ts +0 -3
  303. package/types/query-solution/src/designer/query-solution-config/composition/mock-data.d.ts +0 -6
  304. package/types/tree-grid/src/schema/column-resolver.d.ts +0 -3
  305. package/types/weather/src/composition/types.d.ts +0 -2
@@ -1 +1 @@
1
- (function(P,e){typeof exports=="object"&&typeof module<"u"?e(exports,require("vue"),require("lodash-es")):typeof define=="function"&&define.amd?define(["exports","vue","lodash-es"],e):(P=typeof globalThis<"u"?globalThis:P||self,e(P.calendar={},P.Vue,P.LodashES))})(this,function(P,e,z){"use strict";const X={},Z={};function x(t){const{properties:a,title:d,ignore:m}=t,f=m&&Array.isArray(m),u=Object.keys(a).reduce((c,s)=>((!f||!m.find(V=>V==s))&&(c[s]=a[s].type==="object"&&a[s].properties?x(a[s]):z.cloneDeep(a[s].default)),c),{});return(!f||!m.find(c=>c=="id"))&&(u.id=`${d}-${Date.now()}`),u}function U(t,a={},d){const m=X[t];if(m){let f=x(m);const u=Z[t];return f=u?u({getSchemaByType:U},f,a,d):f,f}return null}function re(t,a){const d=x(a);return Object.keys(t).reduce((m,f)=>(m[f]&&z.isPlainObject(m[f])&&z.isPlainObject(t[f])?Object.assign(m[f],t[f]):m[f]=t[f],m),d),d}function oe(t,a){return Object.keys(t).filter(m=>t[m]!=null).reduce((m,f)=>{if(a.has(f)){const u=a.get(f);if(typeof u=="string")m[u]=t[f];else{const c=u(f,t[f],t);Object.assign(m,c)}}else m[f]=t[f];return m},{})}function ce(t,a,d=new Map){const m=re(t,a);return oe(m,d)}function se(t={}){function a(n,p,g,D){if(typeof g=="number")return D[n].length===g;if(typeof g=="object"){const l=Object.keys(g)[0],y=g[l];if(l==="not")return Number(D[n].length)!==Number(y);if(l==="moreThan")return Number(D[n].length)>=Number(y);if(l==="lessThan")return Number(D[n].length)<=Number(y)}return!1}function d(n,p,g,D){return D[n]&&D[n].propertyValue&&String(D[n].propertyValue.value)===String(g)}const m=new Map([["length",a],["getProperty",d]]);Object.keys(t).reduce((n,p)=>(n.set(p,t[p]),n),m);function f(n,p){const g=n;return typeof p=="number"?[{target:g,operator:"length",param:null,value:Number(p)}]:typeof p=="boolean"?[{target:g,operator:"getProperty",param:n,value:!!p}]:typeof p=="object"?Object.keys(p).map(D=>{if(D==="length")return{target:g,operator:"length",param:null,value:p[D]};const l=D,y=p[D];return{target:g,operator:"getProperty",param:l,value:y}}):[]}function u(n){return Object.keys(n).reduce((g,D)=>{const l=f(D,n[D]);return g.push(...l),g},[])}function c(n,p){if(m.has(n.operator)){const g=m.get(n.operator);return g&&g(n.target,n.param,n.value,p)||!1}return!1}function s(n,p){return u(n).reduce((l,y)=>l&&c(y,p),!0)}function V(n,p){const g=Object.keys(n),D=g.includes("allOf"),l=g.includes("anyOf"),y=D||l,i=(y?n[y?D?"allOf":"anyOf":"allOf"]:[n]).map(o=>s(o,p));return D?!i.includes(!1):i.includes(!0)}return{parseValueSchema:V}}const le={},ie={};se();function ue(t,a,d=new Map,m=(c,s,V)=>s,f={},u=c=>c){return X[a.title]=a,Z[a.title]=m,le[a.title]=f,ie[a.title]=u,(c={})=>{const s=ce(c,a,d),V=Object.keys(t).reduce((n,p)=>(n[p]=t[p].default,n),{});return Object.assign(V,s)}}function de(t,a){return{customClass:a.class,customStyle:a.style}}const fe=new Map([["appearance",de]]);function ye(t,a,d){return a}const he={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/calendar.schema.json",title:"calendar",description:"A Farris Input Component",type:"object",properties:{id:{description:"The unique identifier for calendar",type:"string"},type:{description:"The type string of calendar",type:"string",default:"calendar"},appearance:{description:"",type:"object",properties:{class:{type:"string"},style:{type:"string"}},default:{}}},required:["id","type"]},me={title:"calendar",description:"A Farris Component",type:"object",categories:{basic:{description:"Basic Infomation",title:"基本信息",properties:{id:{description:"组件标识",title:"标识",type:"string",readonly:!0},type:{description:"组件类型",title:"控件类型",type:"select",editor:{type:"waiting for modification",enum:[]}}}}}},_={events:{Type:Array,default:[]},firstDayOfTheWeek:{type:String,default:"Sun."}},Q=ue(_,he,fe,ye,me),E=["Sun","Mon","Tue","Wed","Thu","Fri","Sat"];var A=(t=>(t[t.previous=1]="previous",t[t.current=2]="current",t[t.next=3]="next",t))(A||{});function G(){function t(){return{year:0,month:0,day:0}}function a(n){return new Date(n.year||0,n.month?n.month-1:0,n.day||0,n.hour?n.hour:0,n.minute?n.minute:0,n.second?n.second:0,0)}function d(n){const p=new Date;return n.year||(n.year=p.getFullYear()),n.month||(n.month=p.getMonth()+1),n.day||(n.day=1),new Date(n.year,n.month-1,n.day,n.hour?n.hour:0,n.minute?n.minute:0,n.second?n.second:0,0)}function m(n){return new Date(n.year||1,(n.month||1)-1,n.day,n.hour?n.hour:0,n.minute?n.minute:0,n.second?n.second:0,0).getDay()}function f(n){return E.indexOf(n)}function u(n){return a(n).getTime()}function c(n){return Math.round(u(n)/1e3)}function s(n,p,g){const D=u(p),l=u(g),y=u(n);return l-y>y-D?p:g}function V(){const n=new Date;return{year:n.getFullYear(),month:n.getMonth()+1,day:n.getDate(),hour:n.getHours(),minute:n.getMinutes(),second:n.getSeconds()}}return{emptyDate:t,getDate:a,getDate2:d,getDayNumber:m,getEpocTime:c,getNearDate:s,getWeekdayIndex:f,getTimeInMilliseconds:u,getToday:V}}function pe(){function t(u,c){return new Date(c,u,0).getDate()}function a(u,c,s){return new Date(u,c-1,s,0,0,0,0)}function d(u,c){const s=a(c,u,1);return s.setMonth(s.getMonth()-1),t(s.getMonth()+1,s.getFullYear())}function m(u,c){const s={year:u===12?c+1:c},V=u===12?1:u+1;return s.month=V,s}function f(u,c){const s={year:u===1?c-1:c},V=u===1?12:u-1;return s.month=V,s}return{daysInMonth:t,daysInPreMonth:d,getNextMonth:m,getPreviousMonth:f}}function K(){const{getToday:t,getDayNumber:a}=G(),{daysInMonth:d,daysInPreMonth:m,getNextMonth:f,getPreviousMonth:u}=pe();function c(h){const k=E.indexOf(h);return k>0?7-k:0}function s(h){const{day:k,month:i,year:r}=h;if(k===void 0||i===void 0||r===void 0)throw new Error("invalided date.");const o=k===1,v=o?m(i,r):k-1,N=o?i-1:i,w=N<1,M=w?12:N;return{year:w?r-1:r,month:M,day:v}}function V(h){const{day:k,month:i,year:r}=h;if(k===void 0||i===void 0||r===void 0)throw new Error("invalided date.");const o=d(i,r),v=k===o,N=v?1:k+1,w=v?i+1:i,M=w>12,b=M?1:w;return{year:M?r+1:r,month:b,day:N}}function n(h){const k=u(h.month||1,h.year||1),i=d(k.month||1,k.year||1);return{day:(h.day||1)<=i?h.day:i,month:k.month,year:k.year}}function p(h){const k=f(h.month||1,h.year||1),i=d(k.month||1,k.year||1);return{day:(h.day||1)<=i?h.day:i,month:k.month,year:k.year}}function g(h){const i=(h.day||1)-7,r=i<1,o=r?d(h.month||1,h.year||1)+i:i,v=r?u(h.month||1,h.year||1):h;return{day:o,month:v.month,year:v.year}}function D(h){const i=(h.day||1)+7,r=d(h.month||1,h.year||1),o=i>r,v=o?i-r:i,N=o?f(h.month||1,h.year||1):h;return{day:v,month:N.month,year:N.year}}function l(h,k,i,r){const o={day:h,month:k,year:i},N=c(r)===0?1:0,w=a(o)+N,M=t();let b=s(o);const O=[];for(let j=w-1;j>=1;j--){const H=b.month!==o.month?A.previous:A.current,C=b.month===k&&b.day===M.day&&b.month===M.month&&b.year===M.year;O.push({date:b,monthTag:H,isCurrent:C}),j>1&&(b=s(b))}let W=V(o);const S=[];for(let j=w+1;j<=7;j++){const H=b.month!==o.month?A.next:A.current,C=W.day===M.day&&W.month===M.month&&W.year===M.year;S.push({date:W,monthTag:H,isCurrent:C}),j<7&&(W=V(W))}const T=h===M.day&&k===M.month&&i===M.year;return{days:[...O.reverse(),{date:o,monthTag:A.current,isCurrent:T},...S],weekNumber:0,year:i}}function y(h,k,i){const r=[],o=d(h,k);for(let v=1;v<=o;v+=7){const N=l(v,h,k,i);r.push(N)}return r}return{getMonthlyCalendar:y,getWeeklyCalendar:l,getPreviousDay:s,getNextDay:V,getDayInPreviousWeek:g,getDayInNextWeek:D,getDayInPreviousMonth:n,getDayInNextMonth:p}}function F(){const{getTimeInMilliseconds:t}=G();function a(l){return l&&l.year!==0&&l.month!==0&&l.day!==0}function d(l){return l&&l.year!==0&&l.month!==0}function m(l){return l&&l.year!==0}function f(l,y){return t(l)<t(y)}function u(l,y){return t(l)<=t(y)}function c(l,y){return t(l)===t(y)}function s(l,y){const h=t(y);return t(l.from)===h||t(l.to)===h}function V(l,y){return!y||!a(y.to)||!a(y.from)?!1:u(y.from,l)&&u(l,y.to)}function n(l,y){return a(y)&&t(l)>=t(y)}function p(l,y){return a(y)&&t(l)<=t(y)}function g(l,y){return t({year:l.year,month:l.month,day:l.day})===t({year:y.year,month:y.month,day:y.day})}function D(l,y){return t({hour:l.hour,minute:l.minute,second:l.second})===t({hour:y.hour,minute:y.minute,second:y.second})}return{isDateEarlier:f,equal:c,inPeriod:V,isPoint:s,equalOrEarlier:u,isInitializedDate:a,isInitializedMonth:d,isInitializedYear:m,isMonthDisabledByDisableSince:n,isMonthDisabledByDisableUntil:p,sameTime:D,sameDay:g}}const L={1:"Jan",2:"Feb",3:"Mar",4:"Apr",5:"May",6:"Jun",7:"Jul",8:"Aug",9:"Sep",10:"Oct",11:"Nov",12:"Dec"},ee={activeView:{Type:Number,default:3},title:{Type:String,default:""},dailyViewTitle:{Type:String,default:"Day"},weeklyViewTitle:{Type:String,default:"Week"},monthlyViewTitle:{Type:String,default:"Month"}},I=e.defineComponent({name:"FCalendarHeader",props:ee,emits:["ViewChange","Previous","Next","ResetToToday"],setup(t,a){const d=e.ref(t.title),m=e.ref(t.dailyViewTitle),f=e.ref(t.weeklyViewTitle),u=e.ref(t.monthlyViewTitle),c=2,s=62,V=e.ref(t.activeView),n=e.ref("Today");e.watch(()=>t.title,()=>{d.value=t.title});const p=e.computed(()=>({top:`${c}px`,left:`${V.value*(c+1)+(V.value-1)*(s+1)}px`})),g=e.computed(()=>V.value===1?m.value:V.value===2?f.value:u.value);function D(){V.value=1,a.emit("ViewChange",1)}function l(){V.value=2,a.emit("ViewChange",2)}function y(){V.value=3,a.emit("ViewChange",3)}function h(){a.emit("Previous",V.value)}function k(){a.emit("Next",V.value)}function i(){a.emit("ResetToToday")}return()=>e.createVNode("div",{class:"f-calendar-header"},[e.createVNode("div",{class:"f-calendar-title"},[d.value]),e.createVNode("div",{class:"f-calendar-navigator"},[e.createVNode("div",{class:"f-calendar-navigator-today btn btn-default",onClick:()=>i()},[n.value]),e.createVNode("div",{class:"f-calendar-navigator-button-group"},[e.createVNode("div",{class:"f-calendar-navigator-previous btn btn-default",onClick:()=>h()},[e.createVNode("i",{class:"f-icon f-icon-arrow-chevron-left"},null)]),e.createVNode("div",{class:"f-calendar-navigator-next btn btn-default",onClick:()=>k()},[e.createVNode("i",{class:"f-icon f-icon-arrow-chevron-right"},null)])])]),e.createVNode("div",{class:"f-calendar-view-switch"},[e.createVNode("div",{class:"f-calendar-view-switch-panel"},[e.createVNode("span",{class:"f-calendar-view-switch-daily",onClick:r=>D()},[m.value]),e.createVNode("span",{class:"f-calendar-view-switch-weekly",onClick:r=>l()},[f.value]),e.createVNode("span",{class:"f-calendar-view-switch-monthly",onClick:r=>y()},[u.value])]),e.createVNode("div",{class:"f-calendar-view-switch-active-view",style:p.value},[g.value])])])}}),te={dates:{Type:Array,default:[]},daysInWeek:{Type:Array,default:E},enableKeyboadNavigate:{Type:Boolean,default:!0},enableMarkCurrent:{Type:Boolean,default:!0},events:{Type:Array,default:[]},activeDay:{Type:Object,default:null}};var Y=(t=>(t[t.enter=13]="enter",t[t.esc=27]="esc",t[t.space=32]="space",t[t.leftArrow=37]="leftArrow",t[t.upArrow=38]="upArrow",t[t.rightArrow=39]="rightArrow",t[t.downArrow=40]="downArrow",t[t.tab=9]="tab",t[t.shift=16]="shift",t))(Y||{});function ve(){function t(a){const d=a.key||a.keyCode;return d==="Enter"||d===13?13:d==="Escape"||d===27?27:d===" "||d===32?32:d==="ArrowLeft"||d===37?37:d==="ArrowUp"||d===38?38:d==="ArrowRight"||d===39?39:d==="ArrowDown"||d===40?40:d==="Tab"||d===9?9:d==="Shift"||d===16?16:-1}return{getKeyCodeFromEvent:t}}const B=e.defineComponent({name:"FCalendarMonthView",props:te,emits:["click","keyDown"],setup(t,a){const d=e.ref(t.daysInWeek),m=e.ref(t.enableKeyboadNavigate),f=e.ref(t.enableMarkCurrent),u=e.ref(t.activeDay),c=e.ref(t.events),{equal:s,sameDay:V}=F(),{getKeyCodeFromEvent:n}=ve();function p(i,r){return i.forEach(o=>{o.days.forEach(v=>{const N=r.filter(w=>V(w.starts,v.date));N&&N.length&&(v.events=[...N])})}),i}const g=e.ref(p(t.dates,c.value));e.watch(()=>t.dates,()=>{g.value=p(t.dates,c.value)}),e.watch(()=>t.activeDay,()=>{u.value=t.activeDay}),e.watch(()=>t.events,()=>{c.value=t.events});function D(i){return!!u.value&&s({year:u.value.year,month:u.value.month,day:u.value.day},i)}const l=(i,r,o)=>{const N={"f-datepicker-no-currmonth":i.monthTag===A.previous||i.monthTag===A.next},w=`d_${r}_${o}`;return N[w]=!0,N},y=i=>{const r=i.monthTag===A.current&&D(i.date),o=i.isCurrent&&f.value;return{"f-calendar-month-view-date":!0,"f-calendar-month-view-selected":r,"f-calendar-month-view-current":o}};function h(i,r){i.stopPropagation(),a.emit("click",r.date)}function k(i,r){const o=n(i);o!==Y.tab&&(i.preventDefault(),o===Y.enter||o===Y.space?h(i,r):m.value&&a.emit("keyDown",r.date))}return()=>e.createVNode("div",{class:"f-calendar-month-view"},[e.createVNode("table",{class:"f-datepicker-table",cellpadding:"0"},[e.createVNode("thead",null,[e.createVNode("tr",null,[d.value&&d.value.map(i=>e.createVNode("th",{scope:"col",style:"padding: 4px 4px 8px"},[i]))])]),e.createVNode("tbody",null,[g.value&&g.value.map((i,r)=>e.createVNode("tr",null,[i.days&&i.days.map((o,v)=>e.createVNode("td",{id:`d_${r}_${v}`,tabindex:"0",class:l(o,r,v),onClick:N=>h(N,o),onKeydown:N=>k(N,o)},[e.createVNode("div",{class:"f-calendar-month-view-title"},[e.createVNode("div",{class:y(o)},[o.date.day]),e.createVNode("div",{class:"f-calendar-month-view-date-month"},[o.date.day===1?L[o.date.month||1]:""])]),o.events&&o.events.length&&o.events.map(N=>e.createVNode("div",{class:"f-calendar-month-view-event-item"},[N.title]))]))]))])])])}}),ne={daysInWeek:{Type:Array,default:E},enableMarkCurrent:{Type:Boolean,default:!0},events:{Type:Array,default:[]},week:{Type:Object,default:{days:[],weekNumber:0,year:0}}},R=e.defineComponent({name:"FCalendarWeekView",props:ne,emits:[],setup(t){const a=e.ref(),d=e.ref(),m=e.ref(t.daysInWeek),f=e.ref(t.week),u=e.ref(t.enableMarkCurrent),c=e.ref(t.events),s=e.ref([]),{equal:V}=F();function n(r){return f.value.days.map(v=>{const N={year:v.date.year,month:v.date.month,day:v.date.day,hour:r.hour,minute:r.minute,second:r.second},w=c.value.filter(M=>V(M.starts,N));return{day:N,events:w}})}function p(){const r=[];for(let o=0;o<24;o++){const v={hour:o,minute:0,second:0},N={hour:o,minute:30,second:0},w=n(v),M=n(N);r.push({time:v,events:w,title:o>0?`${o}:00`:"",part:"upper"}),r.push({time:N,events:M,title:`${o}:30`,part:"lower"})}s.value=r}p(),e.watch(()=>t.week,()=>{f.value=t.week,p()}),e.watch(()=>t.events,()=>{c.value=t.events,p()});const g=r=>({"f-calendar-week-view-date":!0,"f-calendar-week-view-current":r.isCurrent&&u.value});function D(){return e.createVNode("div",{class:"f-calendar-week-view-header"},[e.createVNode("div",{class:"f-calendar-week-view-header-corner"},null),e.createVNode("div",{class:"f-calendar-week-view-header-primary"},[e.createVNode("div",{class:"f-calendar-week-view-header-columns"},[m.value.map((r,o)=>e.createVNode("div",{class:"f-calendar-week-view-header-cell"},[e.createVNode("div",{class:g(f.value.days[o])},[f.value.days[o].date.day]),e.createVNode("span",null,[r])]))])])])}function l(){return e.createVNode("div",{class:"f-calendar-week-view-content-side"},[e.createVNode("div",{class:"f-calendar-side"},[s.value.map(r=>e.createVNode("div",{class:"f-calendar-side-row"},[e.createVNode("div",{class:"f-calendar-side-row-number"},[r.part==="upper"?r.title:""])]))])])}function y(r){return{"f-calendar-week-view-item":!0,"f-calendar-week-view-item-upper":r.part==="upper","f-calendar-week-view-item-lower":r.part==="lower"}}function h(r){const b=(r.starts.hour||0)+(r.starts.minute||0)/60;return{height:`${44*((r.ends.hour||0)+(r.ends.minute||0)/60-b)-2-2-1-1}px`}}function k(){return s.value.map(r=>e.createVNode("div",{class:y(r)},[r.events.map(o=>e.createVNode("div",{class:"f-calendar-week-view-item-cell"},[o.events.length>0&&o.events.map(v=>e.createVNode("div",{class:"f-calendar-event",style:h(v)},[v.title]))]))]))}function i(){return e.createVNode("div",{ref:d,class:"f-calendar-content-primary"},[e.createVNode("div",{class:"f-calendar-content-data"},[k()])])}return e.onMounted(()=>{a.value&&a.value.scrollTo(0,250)}),()=>e.createVNode("div",{class:"f-calendar-week-view"},[D(),e.createVNode("div",{class:"f-calendar-week-view-content",ref:a},[l(),i()])])}}),ae={day:{Type:Object,default:{}},dayInWeek:{Type:String,default:""},enableMarkCurrent:{Type:Boolean,default:!0},events:{Type:Array,default:[]}},q=e.defineComponent({name:"FCalendarDayView",props:ae,emits:[],setup(t){const a=e.ref(),d=e.ref(),m=e.ref(t.dayInWeek),f=e.ref(t.day),u=e.ref(t.enableMarkCurrent),c=e.ref(t.events),s=e.ref([]),{equal:V}=F();function n(r){const o={year:f.value.date.year,month:f.value.date.month,day:f.value.date.day,hour:r.hour,minute:r.minute,second:r.second},v=c.value.filter(N=>V(N.starts,o));return[{day:o,events:v}]}function p(){const r=[];for(let o=0;o<24;o++){const v={hour:o,minute:0,second:0},N={hour:o,minute:30,second:0},w=n(v),M=n(N);r.push({time:v,events:w,title:o>0?`${o}:00`:"",part:"upper"}),r.push({time:N,events:M,title:`${o}:30`,part:"lower"})}s.value=r}p(),e.watch(()=>t.day,()=>{f.value=t.day,p()}),e.watch(()=>t.events,()=>{c.value=t.events,p()});const g=r=>({"f-calendar-day-view-date":!0,"f-calendar-day-view-current":r.isCurrent&&u.value});function D(){return e.createVNode("div",{class:"f-calendar-day-view-header"},[e.createVNode("div",{class:"f-calendar-day-view-header-corner"},null),e.createVNode("div",{class:"f-calendar-day-view-header-primary"},[e.createVNode("div",{class:"f-calendar-day-view-header-columns"},[e.createVNode("div",{class:"f-calendar-day-view-header-cell"},[e.createVNode("div",{class:g(f.value)},[f.value.date.day]),e.createVNode("span",null,[m.value])])])])])}function l(){return e.createVNode("div",{class:"f-calendar-day-view-content-side"},[e.createVNode("div",{class:"f-calendar-side"},[s.value.map(r=>e.createVNode("div",{class:"f-calendar-side-row"},[e.createVNode("div",{class:"f-calendar-side-row-number"},[r.part==="upper"?r.title:""])]))])])}function y(r){return{"f-calendar-day-view-item":!0,"f-calendar-day-view-item-upper":r.part==="upper","f-calendar-day-view-item-lower":r.part==="lower"}}function h(r){const b=(r.starts.hour||0)+(r.starts.minute||0)/60;return{height:`${44*((r.ends.hour||0)+(r.ends.minute||0)/60-b)-2-2-1-1}px`}}function k(){return s.value.map(r=>e.createVNode("div",{class:y(r)},[r.events.map(o=>e.createVNode("div",{class:"f-calendar-day-view-item-cell"},[o.events.length>0&&o.events.map(v=>e.createVNode("div",{class:"f-calendar-event",style:h(v)},[v.title]))]))]))}function i(){return e.createVNode("div",{ref:d,class:"f-calendar-content-primary"},[e.createVNode("div",{class:"f-calendar-content-data"},[k()])])}return e.onMounted(()=>{a.value&&a.value.scrollTo(0,250)}),()=>e.createVNode("div",{class:"f-calendar-day-view"},[D(),e.createVNode("div",{class:"f-calendar-day-view-content",ref:a},[l(),i()])])}}),$=e.defineComponent({name:"FCalendar",props:_,emits:[],setup(t){const{sameDay:a}=F(),{getToday:d}=G(),m=e.ref(t.firstDayOfTheWeek),f=e.ref(t.events),u=d(),c=e.ref({year:u.year||1,month:u.month||1,day:u.day||1}),s=e.ref(3),{getMonthlyCalendar:V,getWeeklyCalendar:n,getPreviousDay:p,getNextDay:g,getDayInPreviousWeek:D,getDayInNextWeek:l,getDayInPreviousMonth:y,getDayInNextMonth:h}=K(),k=e.computed(()=>`${L[c.value.month||1]} ${c.value.year}`),i=e.computed(()=>V(c.value.month||1,c.value.year||1,m.value)),r=e.computed(()=>n(c.value.day||1,c.value.month||1,c.value.year||1,m.value)),o=e.computed(()=>r.value.days.find(T=>a(T.date,c.value))||r.value.days[1]),v=e.computed(()=>{const T=r.value.days.findIndex(j=>a(j.date,c.value)),J=T>-1?T:1;return E[J]}),N=e.computed(()=>s.value===3),w=e.computed(()=>s.value===2),M=e.computed(()=>s.value===1);function b(T){s.value=T}function O(T){T===1&&(c.value=p(c.value)),T===2&&(c.value=D(c.value)),T===3&&(c.value=y(c.value))}function W(T){T===1&&(c.value=g(c.value)),T===2&&(c.value=l(c.value)),T===3&&(c.value=h(c.value))}function S(){c.value={year:u.year||1,month:u.month||1,day:u.day||1}}return()=>e.createVNode("div",{class:"f-calendar"},[e.createVNode(I,{activeView:s.value,title:k.value,onViewChange:T=>b(T),onPrevious:T=>O(T),onNext:T=>W(T),onResetToToday:()=>S()},null),e.createVNode("div",null,[M.value&&e.createVNode(q,{day:o.value,dayInWeek:v.value,events:f.value},null),w.value&&e.createVNode(R,{week:r.value,events:f.value},null),N.value&&e.createVNode(B,{activeDay:c.value,dates:i.value,events:f.value},null)])])}});function we(t,a,d){var N;function m(){}const f="",u="",c=e.ref();function s(){return(a==null?void 0:a.schema.componentType)!=="frame"}function V(){return!1}function n(){return(a==null?void 0:a.schema.componentType)!=="frame"}function p(){return(a==null?void 0:a.schema.componentType)==="frame"}function g(w){if(!w||!w.value)return null;if(w.value.schema&&w.value.schema.type==="component")return w.value;const M=e.ref(w==null?void 0:w.value.parent),b=g(M);return b||null}function D(w=a){const{componentInstance:M,designerItemElementRef:b}=w;return!M||!M.value?null:M.value.canMove?b:D(w.parent)}function l(w){return!!d}function y(){return(a==null?void 0:a.schema.label)||(a==null?void 0:a.schema.title)||(a==null?void 0:a.schema.name)}function h(){}function k(w,M){}function i(w,M){const{componentType:b}=w;let O=U(b,w,M);const W=b.toLowerCase().replace("-","_");return O&&!O.id&&O.type===b&&(O.id=`${W}_${Math.random().toString().slice(2,6)}`),O}function r(w,M){const b=String(w.getAttribute("data-controltype")),O=w.getAttribute("data-feature"),W=O?JSON.parse(O):{};W.parentComponentInstance=c.value;let S=U(b,W);const T=b.toLowerCase().replace("-","_");return S&&!S.id&&S.type===b&&(S.id=`${T}_${Math.random().toString().slice(2,6)}`),S}function o(w){}function v(...w){}return c.value={canMove:s(),canSelectParent:V(),canDelete:n(),canNested:!p(),contents:a==null?void 0:a.schema.contents,elementRef:t,parent:(N=a==null?void 0:a.parent)==null?void 0:N.componentInstance,schema:a==null?void 0:a.schema,styles:f,designerClass:u,canAccepts:l,getBelongedComponentInstance:g,getDraggableDesignItemElement:D,getDraggingDisplayText:y,getPropConfig:v,getDragScopeElement:h,onAcceptMovedChildElement:k,onAcceptNewChildElement:r,onChildElementMovedOut:o,addNewChildComponentSchema:i,updateDragAndDropRules:m,triggerBelongedComponentToMoveWhenMoved:e.ref(!1),triggerBelongedComponentToDeleteWhenDeleted:e.ref(!1)},c}const ge=e.defineComponent({name:"FCalendarDesign",props:_,emits:[],setup(t,a){const{sameDay:d}=F(),{getToday:m}=G(),f=e.ref(t.firstDayOfTheWeek),u=e.ref(t.events),c=m(),s=e.ref({year:c.year||1,month:c.month||1,day:c.day||1}),V=e.ref(3),n=e.ref(),p=e.inject("design-item-context"),g=we(n,p);e.onMounted(()=>{n.value.componentInstance=g}),a.expose(g.value);const{getMonthlyCalendar:D,getWeeklyCalendar:l,getPreviousDay:y,getNextDay:h,getDayInPreviousWeek:k,getDayInNextWeek:i,getDayInPreviousMonth:r,getDayInNextMonth:o}=K(),v=e.computed(()=>`${L[s.value.month||1]} ${s.value.year}`),N=e.computed(()=>D(s.value.month||1,s.value.year||1,f.value)),w=e.computed(()=>l(s.value.day||1,s.value.month||1,s.value.year||1,f.value)),M=e.computed(()=>w.value.days.find(C=>d(C.date,s.value))||w.value.days[1]),b=e.computed(()=>{const C=w.value.days.findIndex(ke=>d(ke.date,s.value)),Ve=C>-1?C:1;return E[Ve]}),O=e.computed(()=>V.value===3),W=e.computed(()=>V.value===2),S=e.computed(()=>V.value===1);function T(C){V.value=C}function J(C){C===1&&(s.value=y(s.value)),C===2&&(s.value=k(s.value)),C===3&&(s.value=r(s.value))}function j(C){C===1&&(s.value=h(s.value)),C===2&&(s.value=i(s.value)),C===3&&(s.value=o(s.value))}function H(){s.value={year:c.year||1,month:c.month||1,day:c.day||1}}return()=>e.createVNode("div",{ref:n,class:"f-calendar"},[e.createVNode(I,{activeView:V.value,title:v.value,onViewChange:C=>T(C),onPrevious:C=>J(C),onNext:C=>j(C),onResetToToday:()=>H()},null),e.createVNode("div",null,[S.value&&e.createVNode(q,{day:M.value,dayInWeek:b.value,events:u.value},null),W.value&&e.createVNode(R,{week:w.value,events:u.value},null),O.value&&e.createVNode(B,{activeDay:s.value,dates:N.value,events:u.value},null)])])}});$.install=t=>{t.component($.name,$).component(q.name,q).component(I.name,I).component(B.name,B).component(R.name,R)},$.register=(t,a,d,m)=>{t.calendar=$,a.calendar=Q},$.registerDesigner=(t,a,d)=>{t.calendar=ge,a.calendar=Q},P.FCalendar=$,P.FCalendarDayView=q,P.FCalendarHeader=I,P.FCalendarMonthView=B,P.FCalendarWeekView=R,P.MonthTag=A,P.calendarProps=_,P.dayViewProps=ae,P.default=$,P.defaultNameOfMonths=L,P.headerProps=ee,P.monthViewProps=te,P.propsResolver=Q,P.weekDays=E,P.weekViewProps=ne,Object.defineProperties(P,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}})});
1
+ (function(C,e){typeof exports=="object"&&typeof module<"u"?e(exports,require("vue"),require("lodash-es")):typeof define=="function"&&define.amd?define(["exports","vue","lodash-es"],e):(C=typeof globalThis<"u"?globalThis:C||self,e(C.calendar={},C.Vue,C.LodashES))})(this,function(C,e,J){"use strict";const X={},Z={};function U(t){const{properties:a,title:l,ignore:p}=t,f=p&&Array.isArray(p),i=Object.keys(a).reduce((c,s)=>((!f||!p.find(V=>V===s))&&(c[s]=a[s].type==="object"&&a[s].properties?U(a[s]):J.cloneDeep(a[s].default)),c),{});if(l&&(!f||!p.find(c=>c==="id"))){const c=l.toLowerCase().replace(/-/g,"_");i.id=`${c}_${Math.random().toString().slice(2,6)}`}return i}function x(t,a={},l){const p=X[t];if(p){let f=U(p);const i=Z[t];return f=i?i({getSchemaByType:x},f,a,l):f,f}return null}function re(t,a){const l=U(a);return Object.keys(l).reduce((p,f)=>(p[f]&&J.isPlainObject(p[f])&&J.isPlainObject(t[f]||!t[f])?Object.assign(p[f],t[f]||{}):p[f]=t[f],p),l),l}function oe(t,a){return Object.keys(t).filter(p=>t[p]!=null).reduce((p,f)=>{if(a.has(f)){const i=a.get(f);if(typeof i=="string")p[i]=t[f];else{const c=i(f,t[f],t);Object.assign(p,c)}}else p[f]=t[f];return p},{})}function ce(t,a,l=new Map){const p=re(t,a);return oe(p,l)}function se(t={}){function a(n,v,g,N){if(typeof g=="number")return N[n].length===g;if(typeof g=="object"){const u=Object.keys(g)[0],h=g[u];if(u==="not")return Number(N[n].length)!==Number(h);if(u==="moreThan")return Number(N[n].length)>=Number(h);if(u==="lessThan")return Number(N[n].length)<=Number(h)}return!1}function l(n,v,g,N){return N[n]&&N[n].propertyValue&&String(N[n].propertyValue.value)===String(g)}const p=new Map([["length",a],["getProperty",l]]);Object.keys(t).reduce((n,v)=>(n.set(v,t[v]),n),p);function f(n,v){const g=n;return typeof v=="number"?[{target:g,operator:"length",param:null,value:Number(v)}]:typeof v=="boolean"?[{target:g,operator:"getProperty",param:n,value:!!v}]:typeof v=="object"?Object.keys(v).map(N=>{if(N==="length")return{target:g,operator:"length",param:null,value:v[N]};const u=N,h=v[N];return{target:g,operator:"getProperty",param:u,value:h}}):[]}function i(n){return Object.keys(n).reduce((g,N)=>{const u=f(N,n[N]);return g.push(...u),g},[])}function c(n,v){if(p.has(n.operator)){const g=p.get(n.operator);return g&&g(n.target,n.param,n.value,v)||!1}return!1}function s(n,v){return i(n).reduce((u,h)=>u&&c(h,v),!0)}function V(n,v){const g=Object.keys(n),N=g.includes("allOf"),u=g.includes("anyOf"),h=N||u,d=(h?n[h?N?"allOf":"anyOf":"allOf"]:[n]).map(o=>s(o,v));return N?!d.includes(!1):d.includes(!0)}return{parseValueSchema:V}}const le={},ie={};se();function ue(t,a,l=new Map,p=(c,s,V,n)=>s,f={},i=c=>c){return X[a.title]=a,Z[a.title]=p,le[a.title]=f,ie[a.title]=i,(c={})=>{const s=ce(c,a,l),V=Object.keys(t).reduce((n,v)=>(n[v]=t[v].default,n),{});return Object.assign(V,s)}}function de(t,a){return{customClass:a.class,customStyle:a.style}}const fe=new Map([["appearance",de]]);function ye(t,a,l){return a}const he={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://farris-design.gitee.io/calendar.schema.json",title:"calendar",description:"A Farris Input Component",type:"object",properties:{id:{description:"The unique identifier for calendar",type:"string"},type:{description:"The type string of calendar",type:"string",default:"calendar"},appearance:{description:"",type:"object",properties:{class:{type:"string"},style:{type:"string"}},default:{}}},required:["id","type"]},me={title:"calendar",description:"A Farris Component",type:"object",categories:{basic:{description:"Basic Infomation",title:"基本信息",properties:{id:{description:"组件标识",title:"标识",type:"string",readonly:!0},type:{description:"组件类型",title:"控件类型",type:"select",editor:{type:"waiting for modification",enum:[]}}}}}},_={events:{Type:Array,default:[]},firstDayOfTheWeek:{type:String,default:"Sun."}},Q=ue(_,he,fe,ye,me),E=["Sun","Mon","Tue","Wed","Thu","Fri","Sat"];var j=(t=>(t[t.previous=1]="previous",t[t.current=2]="current",t[t.next=3]="next",t))(j||{});function G(){function t(){return{year:0,month:0,day:0}}function a(n){return new Date(n.year||0,n.month?n.month-1:0,n.day||0,n.hour?n.hour:0,n.minute?n.minute:0,n.second?n.second:0,0)}function l(n){const v=new Date;return n.year||(n.year=v.getFullYear()),n.month||(n.month=v.getMonth()+1),n.day||(n.day=1),new Date(n.year,n.month-1,n.day,n.hour?n.hour:0,n.minute?n.minute:0,n.second?n.second:0,0)}function p(n){return new Date(n.year||1,(n.month||1)-1,n.day,n.hour?n.hour:0,n.minute?n.minute:0,n.second?n.second:0,0).getDay()}function f(n){return E.indexOf(n)}function i(n){return a(n).getTime()}function c(n){return Math.round(i(n)/1e3)}function s(n,v,g){const N=i(v),u=i(g),h=i(n);return u-h>h-N?v:g}function V(){const n=new Date;return{year:n.getFullYear(),month:n.getMonth()+1,day:n.getDate(),hour:n.getHours(),minute:n.getMinutes(),second:n.getSeconds()}}return{emptyDate:t,getDate:a,getDate2:l,getDayNumber:p,getEpocTime:c,getNearDate:s,getWeekdayIndex:f,getTimeInMilliseconds:i,getToday:V}}function pe(){function t(i,c){return new Date(c,i,0).getDate()}function a(i,c,s){return new Date(i,c-1,s,0,0,0,0)}function l(i,c){const s=a(c,i,1);return s.setMonth(s.getMonth()-1),t(s.getMonth()+1,s.getFullYear())}function p(i,c){const s={year:i===12?c+1:c},V=i===12?1:i+1;return s.month=V,s}function f(i,c){const s={year:i===1?c-1:c},V=i===1?12:i-1;return s.month=V,s}return{daysInMonth:t,daysInPreMonth:l,getNextMonth:p,getPreviousMonth:f}}function K(){const{getToday:t,getDayNumber:a}=G(),{daysInMonth:l,daysInPreMonth:p,getNextMonth:f,getPreviousMonth:i}=pe();function c(m){const k=E.indexOf(m);return k>0?7-k:0}function s(m){const{day:k,month:d,year:r}=m;if(k===void 0||d===void 0||r===void 0)throw new Error("invalided date.");const o=k===1,w=o?p(d,r):k-1,y=o?d-1:d,D=y<1,M=D?12:y;return{year:D?r-1:r,month:M,day:w}}function V(m){const{day:k,month:d,year:r}=m;if(k===void 0||d===void 0||r===void 0)throw new Error("invalided date.");const o=l(d,r),w=k===o,y=w?1:k+1,D=w?d+1:d,M=D>12,b=M?1:D;return{year:M?r+1:r,month:b,day:y}}function n(m){const k=i(m.month||1,m.year||1),d=l(k.month||1,k.year||1);return{day:(m.day||1)<=d?m.day:d,month:k.month,year:k.year}}function v(m){const k=f(m.month||1,m.year||1),d=l(k.month||1,k.year||1);return{day:(m.day||1)<=d?m.day:d,month:k.month,year:k.year}}function g(m){const d=(m.day||1)-7,r=d<1,o=r?l(m.month||1,m.year||1)+d:d,w=r?i(m.month||1,m.year||1):m;return{day:o,month:w.month,year:w.year}}function N(m){const d=(m.day||1)+7,r=l(m.month||1,m.year||1),o=d>r,w=o?d-r:d,y=o?f(m.month||1,m.year||1):m;return{day:w,month:y.month,year:y.year}}function u(m,k,d,r){const o={day:m,month:k,year:d},y=c(r)===0?1:0,D=a(o)+y,M=t();let b=s(o);const W=[];for(let S=D-1;S>=1;S--){const H=b.month!==o.month?j.previous:j.current,P=b.month===k&&b.day===M.day&&b.month===M.month&&b.year===M.year;W.push({date:b,monthTag:H,isCurrent:P}),S>1&&(b=s(b))}let O=V(o);const $=[];for(let S=D+1;S<=7;S++){const H=b.month!==o.month?j.next:j.current,P=O.day===M.day&&O.month===M.month&&O.year===M.year;$.push({date:O,monthTag:H,isCurrent:P}),S<7&&(O=V(O))}const T=m===M.day&&k===M.month&&d===M.year;return{days:[...W.reverse(),{date:o,monthTag:j.current,isCurrent:T},...$],weekNumber:0,year:d}}function h(m,k,d){const r=[],o=l(m,k);for(let w=1;w<=o;w+=7){const y=u(w,m,k,d);r.push(y)}return r}return{getMonthlyCalendar:h,getWeeklyCalendar:u,getPreviousDay:s,getNextDay:V,getDayInPreviousWeek:g,getDayInNextWeek:N,getDayInPreviousMonth:n,getDayInNextMonth:v}}function F(){const{getTimeInMilliseconds:t}=G();function a(u){return u&&u.year!==0&&u.month!==0&&u.day!==0}function l(u){return u&&u.year!==0&&u.month!==0}function p(u){return u&&u.year!==0}function f(u,h){return t(u)<t(h)}function i(u,h){return t(u)<=t(h)}function c(u,h){return t(u)===t(h)}function s(u,h){const m=t(h);return t(u.from)===m||t(u.to)===m}function V(u,h){return!h||!a(h.to)||!a(h.from)?!1:i(h.from,u)&&i(u,h.to)}function n(u,h){return a(h)&&t(u)>=t(h)}function v(u,h){return a(h)&&t(u)<=t(h)}function g(u,h){return t({year:u.year,month:u.month,day:u.day})===t({year:h.year,month:h.month,day:h.day})}function N(u,h){return t({hour:u.hour,minute:u.minute,second:u.second})===t({hour:h.hour,minute:h.minute,second:h.second})}return{isDateEarlier:f,equal:c,inPeriod:V,isPoint:s,equalOrEarlier:i,isInitializedDate:a,isInitializedMonth:l,isInitializedYear:p,isMonthDisabledByDisableSince:n,isMonthDisabledByDisableUntil:v,sameTime:N,sameDay:g}}const L={1:"Jan",2:"Feb",3:"Mar",4:"Apr",5:"May",6:"Jun",7:"Jul",8:"Aug",9:"Sep",10:"Oct",11:"Nov",12:"Dec"},ee={activeView:{Type:Number,default:3},title:{Type:String,default:""},dailyViewTitle:{Type:String,default:"Day"},weeklyViewTitle:{Type:String,default:"Week"},monthlyViewTitle:{Type:String,default:"Month"}},B=e.defineComponent({name:"FCalendarHeader",props:ee,emits:["ViewChange","Previous","Next","ResetToToday"],setup(t,a){const l=e.ref(t.title),p=e.ref(t.dailyViewTitle),f=e.ref(t.weeklyViewTitle),i=e.ref(t.monthlyViewTitle),c=2,s=62,V=e.ref(t.activeView),n=e.ref("Today");e.watch(()=>t.title,()=>{l.value=t.title});const v=e.computed(()=>({top:`${c}px`,left:`${V.value*(c+1)+(V.value-1)*(s+1)}px`})),g=e.computed(()=>V.value===1?p.value:V.value===2?f.value:i.value);function N(){V.value=1,a.emit("ViewChange",1)}function u(){V.value=2,a.emit("ViewChange",2)}function h(){V.value=3,a.emit("ViewChange",3)}function m(){a.emit("Previous",V.value)}function k(){a.emit("Next",V.value)}function d(){a.emit("ResetToToday")}return()=>e.createVNode("div",{class:"f-calendar-header"},[e.createVNode("div",{class:"f-calendar-title"},[l.value]),e.createVNode("div",{class:"f-calendar-navigator"},[e.createVNode("div",{class:"f-calendar-navigator-today btn btn-default",onClick:()=>d()},[n.value]),e.createVNode("div",{class:"f-calendar-navigator-button-group"},[e.createVNode("div",{class:"f-calendar-navigator-previous btn btn-default",onClick:()=>m()},[e.createVNode("i",{class:"f-icon f-icon-arrow-chevron-left"},null)]),e.createVNode("div",{class:"f-calendar-navigator-next btn btn-default",onClick:()=>k()},[e.createVNode("i",{class:"f-icon f-icon-arrow-chevron-right"},null)])])]),e.createVNode("div",{class:"f-calendar-view-switch"},[e.createVNode("div",{class:"f-calendar-view-switch-panel"},[e.createVNode("span",{class:"f-calendar-view-switch-daily",onClick:r=>N()},[p.value]),e.createVNode("span",{class:"f-calendar-view-switch-weekly",onClick:r=>u()},[f.value]),e.createVNode("span",{class:"f-calendar-view-switch-monthly",onClick:r=>h()},[i.value])]),e.createVNode("div",{class:"f-calendar-view-switch-active-view",style:v.value},[g.value])])])}}),te={dates:{Type:Array,default:[]},daysInWeek:{Type:Array,default:E},enableKeyboadNavigate:{Type:Boolean,default:!0},enableMarkCurrent:{Type:Boolean,default:!0},events:{Type:Array,default:[]},activeDay:{Type:Object,default:null}};var Y=(t=>(t[t.enter=13]="enter",t[t.esc=27]="esc",t[t.space=32]="space",t[t.leftArrow=37]="leftArrow",t[t.upArrow=38]="upArrow",t[t.rightArrow=39]="rightArrow",t[t.downArrow=40]="downArrow",t[t.tab=9]="tab",t[t.shift=16]="shift",t))(Y||{});function ve(){function t(a){const l=a.key||a.keyCode;return l==="Enter"||l===13?13:l==="Escape"||l===27?27:l===" "||l===32?32:l==="ArrowLeft"||l===37?37:l==="ArrowUp"||l===38?38:l==="ArrowRight"||l===39?39:l==="ArrowDown"||l===40?40:l==="Tab"||l===9?9:l==="Shift"||l===16?16:-1}return{getKeyCodeFromEvent:t}}const R=e.defineComponent({name:"FCalendarMonthView",props:te,emits:["click","keyDown"],setup(t,a){const l=e.ref(t.daysInWeek),p=e.ref(t.enableKeyboadNavigate),f=e.ref(t.enableMarkCurrent),i=e.ref(t.activeDay),c=e.ref(t.events),{equal:s,sameDay:V}=F(),{getKeyCodeFromEvent:n}=ve();function v(d,r){return d.forEach(o=>{o.days.forEach(w=>{const y=r.filter(D=>V(D.starts,w.date));y&&y.length&&(w.events=[...y])})}),d}const g=e.ref(v(t.dates,c.value));e.watch(()=>t.dates,()=>{g.value=v(t.dates,c.value)}),e.watch(()=>t.activeDay,()=>{i.value=t.activeDay}),e.watch(()=>t.events,()=>{c.value=t.events});function N(d){return!!i.value&&s({year:i.value.year,month:i.value.month,day:i.value.day},d)}const u=(d,r,o)=>{const y={"f-datepicker-no-currmonth":d.monthTag===j.previous||d.monthTag===j.next},D=`d_${r}_${o}`;return y[D]=!0,y},h=d=>{const r=d.monthTag===j.current&&N(d.date),o=d.isCurrent&&f.value;return{"f-calendar-month-view-date":!0,"f-calendar-month-view-selected":r,"f-calendar-month-view-current":o}};function m(d,r){d.stopPropagation(),a.emit("click",r.date)}function k(d,r){const o=n(d);o!==Y.tab&&(d.preventDefault(),o===Y.enter||o===Y.space?m(d,r):p.value&&a.emit("keyDown",r.date))}return()=>e.createVNode("div",{class:"f-calendar-month-view"},[e.createVNode("table",{class:"f-datepicker-table",cellpadding:"0"},[e.createVNode("thead",null,[e.createVNode("tr",null,[l.value&&l.value.map(d=>e.createVNode("th",{scope:"col",style:"padding: 4px 4px 8px"},[d]))])]),e.createVNode("tbody",null,[g.value&&g.value.map((d,r)=>e.createVNode("tr",null,[d.days&&d.days.map((o,w)=>e.createVNode("td",{id:`d_${r}_${w}`,tabindex:"0",class:u(o,r,w),onClick:y=>m(y,o),onKeydown:y=>k(y,o)},[e.createVNode("div",{class:"f-calendar-month-view-title"},[e.createVNode("div",{class:h(o)},[o.date.day]),e.createVNode("div",{class:"f-calendar-month-view-date-month"},[o.date.day===1?L[o.date.month||1]:""])]),o.events&&o.events.length&&o.events.map(y=>e.createVNode("div",{class:"f-calendar-month-view-event-item"},[y.title]))]))]))])])])}}),ne={daysInWeek:{Type:Array,default:E},enableMarkCurrent:{Type:Boolean,default:!0},events:{Type:Array,default:[]},week:{Type:Object,default:{days:[],weekNumber:0,year:0}}},I=e.defineComponent({name:"FCalendarWeekView",props:ne,emits:[],setup(t){const a=e.ref(),l=e.ref(),p=e.ref(t.daysInWeek),f=e.ref(t.week),i=e.ref(t.enableMarkCurrent),c=e.ref(t.events),s=e.ref([]),{equal:V}=F();function n(r){return f.value.days.map(w=>{const y={year:w.date.year,month:w.date.month,day:w.date.day,hour:r.hour,minute:r.minute,second:r.second},D=c.value.filter(M=>V(M.starts,y));return{day:y,events:D}})}function v(){const r=[];for(let o=0;o<24;o++){const w={hour:o,minute:0,second:0},y={hour:o,minute:30,second:0},D=n(w),M=n(y);r.push({time:w,events:D,title:o>0?`${o}:00`:"",part:"upper"}),r.push({time:y,events:M,title:`${o}:30`,part:"lower"})}s.value=r}v(),e.watch(()=>t.week,()=>{f.value=t.week,v()}),e.watch(()=>t.events,()=>{c.value=t.events,v()});const g=r=>({"f-calendar-week-view-date":!0,"f-calendar-week-view-current":r.isCurrent&&i.value});function N(){return e.createVNode("div",{class:"f-calendar-week-view-header"},[e.createVNode("div",{class:"f-calendar-week-view-header-corner"},null),e.createVNode("div",{class:"f-calendar-week-view-header-primary"},[e.createVNode("div",{class:"f-calendar-week-view-header-columns"},[p.value.map((r,o)=>e.createVNode("div",{class:"f-calendar-week-view-header-cell"},[e.createVNode("div",{class:g(f.value.days[o])},[f.value.days[o].date.day]),e.createVNode("span",null,[r])]))])])])}function u(){return e.createVNode("div",{class:"f-calendar-week-view-content-side"},[e.createVNode("div",{class:"f-calendar-side"},[s.value.map(r=>e.createVNode("div",{class:"f-calendar-side-row"},[e.createVNode("div",{class:"f-calendar-side-row-number"},[r.part==="upper"?r.title:""])]))])])}function h(r){return{"f-calendar-week-view-item":!0,"f-calendar-week-view-item-upper":r.part==="upper","f-calendar-week-view-item-lower":r.part==="lower"}}function m(r){const b=(r.starts.hour||0)+(r.starts.minute||0)/60;return{height:`${44*((r.ends.hour||0)+(r.ends.minute||0)/60-b)-2-2-1-1}px`}}function k(){return s.value.map(r=>e.createVNode("div",{class:h(r)},[r.events.map(o=>e.createVNode("div",{class:"f-calendar-week-view-item-cell"},[o.events.length>0&&o.events.map(w=>e.createVNode("div",{class:"f-calendar-event",style:m(w)},[w.title]))]))]))}function d(){return e.createVNode("div",{ref:l,class:"f-calendar-content-primary"},[e.createVNode("div",{class:"f-calendar-content-data"},[k()])])}return e.onMounted(()=>{a.value&&a.value.scrollTo(0,250)}),()=>e.createVNode("div",{class:"f-calendar-week-view"},[N(),e.createVNode("div",{class:"f-calendar-week-view-content",ref:a},[u(),d()])])}}),ae={day:{Type:Object,default:{}},dayInWeek:{Type:String,default:""},enableMarkCurrent:{Type:Boolean,default:!0},events:{Type:Array,default:[]}},q=e.defineComponent({name:"FCalendarDayView",props:ae,emits:[],setup(t){const a=e.ref(),l=e.ref(),p=e.ref(t.dayInWeek),f=e.ref(t.day),i=e.ref(t.enableMarkCurrent),c=e.ref(t.events),s=e.ref([]),{equal:V}=F();function n(r){const o={year:f.value.date.year,month:f.value.date.month,day:f.value.date.day,hour:r.hour,minute:r.minute,second:r.second},w=c.value.filter(y=>V(y.starts,o));return[{day:o,events:w}]}function v(){const r=[];for(let o=0;o<24;o++){const w={hour:o,minute:0,second:0},y={hour:o,minute:30,second:0},D=n(w),M=n(y);r.push({time:w,events:D,title:o>0?`${o}:00`:"",part:"upper"}),r.push({time:y,events:M,title:`${o}:30`,part:"lower"})}s.value=r}v(),e.watch(()=>t.day,()=>{f.value=t.day,v()}),e.watch(()=>t.events,()=>{c.value=t.events,v()});const g=r=>({"f-calendar-day-view-date":!0,"f-calendar-day-view-current":r.isCurrent&&i.value});function N(){return e.createVNode("div",{class:"f-calendar-day-view-header"},[e.createVNode("div",{class:"f-calendar-day-view-header-corner"},null),e.createVNode("div",{class:"f-calendar-day-view-header-primary"},[e.createVNode("div",{class:"f-calendar-day-view-header-columns"},[e.createVNode("div",{class:"f-calendar-day-view-header-cell"},[e.createVNode("div",{class:g(f.value)},[f.value.date.day]),e.createVNode("span",null,[p.value])])])])])}function u(){return e.createVNode("div",{class:"f-calendar-day-view-content-side"},[e.createVNode("div",{class:"f-calendar-side"},[s.value.map(r=>e.createVNode("div",{class:"f-calendar-side-row"},[e.createVNode("div",{class:"f-calendar-side-row-number"},[r.part==="upper"?r.title:""])]))])])}function h(r){return{"f-calendar-day-view-item":!0,"f-calendar-day-view-item-upper":r.part==="upper","f-calendar-day-view-item-lower":r.part==="lower"}}function m(r){const b=(r.starts.hour||0)+(r.starts.minute||0)/60;return{height:`${44*((r.ends.hour||0)+(r.ends.minute||0)/60-b)-2-2-1-1}px`}}function k(){return s.value.map(r=>e.createVNode("div",{class:h(r)},[r.events.map(o=>e.createVNode("div",{class:"f-calendar-day-view-item-cell"},[o.events.length>0&&o.events.map(w=>e.createVNode("div",{class:"f-calendar-event",style:m(w)},[w.title]))]))]))}function d(){return e.createVNode("div",{ref:l,class:"f-calendar-content-primary"},[e.createVNode("div",{class:"f-calendar-content-data"},[k()])])}return e.onMounted(()=>{a.value&&a.value.scrollTo(0,250)}),()=>e.createVNode("div",{class:"f-calendar-day-view"},[N(),e.createVNode("div",{class:"f-calendar-day-view-content",ref:a},[u(),d()])])}}),A=e.defineComponent({name:"FCalendar",props:_,emits:[],setup(t){const{sameDay:a}=F(),{getToday:l}=G(),p=e.ref(t.firstDayOfTheWeek),f=e.ref(t.events),i=l(),c=e.ref({year:i.year||1,month:i.month||1,day:i.day||1}),s=e.ref(3),{getMonthlyCalendar:V,getWeeklyCalendar:n,getPreviousDay:v,getNextDay:g,getDayInPreviousWeek:N,getDayInNextWeek:u,getDayInPreviousMonth:h,getDayInNextMonth:m}=K(),k=e.computed(()=>`${L[c.value.month||1]} ${c.value.year}`),d=e.computed(()=>V(c.value.month||1,c.value.year||1,p.value)),r=e.computed(()=>n(c.value.day||1,c.value.month||1,c.value.year||1,p.value)),o=e.computed(()=>r.value.days.find(T=>a(T.date,c.value))||r.value.days[1]),w=e.computed(()=>{const T=r.value.days.findIndex(S=>a(S.date,c.value)),z=T>-1?T:1;return E[z]}),y=e.computed(()=>s.value===3),D=e.computed(()=>s.value===2),M=e.computed(()=>s.value===1);function b(T){s.value=T}function W(T){T===1&&(c.value=v(c.value)),T===2&&(c.value=N(c.value)),T===3&&(c.value=h(c.value))}function O(T){T===1&&(c.value=g(c.value)),T===2&&(c.value=u(c.value)),T===3&&(c.value=m(c.value))}function $(){c.value={year:i.year||1,month:i.month||1,day:i.day||1}}return()=>e.createVNode("div",{class:"f-calendar"},[e.createVNode(B,{activeView:s.value,title:k.value,onViewChange:T=>b(T),onPrevious:T=>W(T),onNext:T=>O(T),onResetToToday:()=>$()},null),e.createVNode("div",null,[M.value&&e.createVNode(q,{day:o.value,dayInWeek:w.value,events:f.value},null),D.value&&e.createVNode(I,{week:r.value,events:f.value},null),y.value&&e.createVNode(R,{activeDay:c.value,dates:d.value,events:f.value},null)])])}});function we(t,a,l){var w;const p="",f="",i=e.ref();function c(){return(a==null?void 0:a.schema.componentType)!=="frame"}function s(){return!1}function V(){return(a==null?void 0:a.schema.componentType)!=="frame"}function n(){return(a==null?void 0:a.schema.componentType)==="frame"}function v(y){if(!y||!y.value)return null;if(y.value.schema&&y.value.schema.type==="component")return y.value;const D=e.ref(y==null?void 0:y.value.parent),M=v(D);return M||null}function g(y=a){const{componentInstance:D,designerItemElementRef:M}=y;return!D||!D.value?null:D.value.canMove?M:g(y.parent)}function N(y){return!!l}function u(){return(a==null?void 0:a.schema.label)||(a==null?void 0:a.schema.title)||(a==null?void 0:a.schema.name)}function h(){}function m(y,D){}function k(y,D){const{componentType:M}=y;let b=x(M,y,D);const W=M.toLowerCase().replace(/-/g,"_");return b&&!b.id&&b.type===M&&(b.id=`${W}_${Math.random().toString().slice(2,6)}`),b}function d(y){}function r(...y){}function o(){a!=null&&a.schema.contents&&a.schema.contents.map(y=>{var b;let D=y.id;y.type==="component-ref"&&(D=y.component);const M=t.value.querySelector(`#${D}-design-item`);(b=M==null?void 0:M.componentInstance)!=null&&b.value.onRemoveComponent&&M.componentInstance.value.onRemoveComponent()})}return i.value={canMove:c(),canSelectParent:s(),canDelete:V(),canNested:!n(),contents:a==null?void 0:a.schema.contents,elementRef:t,parent:(w=a==null?void 0:a.parent)==null?void 0:w.componentInstance,schema:a==null?void 0:a.schema,styles:p,designerClass:f,canAccepts:N,getBelongedComponentInstance:v,getDraggableDesignItemElement:g,getDraggingDisplayText:u,getPropConfig:r,getDragScopeElement:h,onAcceptMovedChildElement:m,onChildElementMovedOut:d,addNewChildComponentSchema:k,triggerBelongedComponentToMoveWhenMoved:e.ref(!1),triggerBelongedComponentToDeleteWhenDeleted:e.ref(!1),onRemoveComponent:o},i}const ge=e.defineComponent({name:"FCalendarDesign",props:_,emits:[],setup(t,a){const{sameDay:l}=F(),{getToday:p}=G(),f=e.ref(t.firstDayOfTheWeek),i=e.ref(t.events),c=p(),s=e.ref({year:c.year||1,month:c.month||1,day:c.day||1}),V=e.ref(3),n=e.ref(),v=e.inject("design-item-context"),g=we(n,v);e.onMounted(()=>{n.value.componentInstance=g}),a.expose(g.value);const{getMonthlyCalendar:N,getWeeklyCalendar:u,getPreviousDay:h,getNextDay:m,getDayInPreviousWeek:k,getDayInNextWeek:d,getDayInPreviousMonth:r,getDayInNextMonth:o}=K(),w=e.computed(()=>`${L[s.value.month||1]} ${s.value.year}`),y=e.computed(()=>N(s.value.month||1,s.value.year||1,f.value)),D=e.computed(()=>u(s.value.day||1,s.value.month||1,s.value.year||1,f.value)),M=e.computed(()=>D.value.days.find(P=>l(P.date,s.value))||D.value.days[1]),b=e.computed(()=>{const P=D.value.days.findIndex(ke=>l(ke.date,s.value)),Ve=P>-1?P:1;return E[Ve]}),W=e.computed(()=>V.value===3),O=e.computed(()=>V.value===2),$=e.computed(()=>V.value===1);function T(P){V.value=P}function z(P){P===1&&(s.value=h(s.value)),P===2&&(s.value=k(s.value)),P===3&&(s.value=r(s.value))}function S(P){P===1&&(s.value=m(s.value)),P===2&&(s.value=d(s.value)),P===3&&(s.value=o(s.value))}function H(){s.value={year:c.year||1,month:c.month||1,day:c.day||1}}return()=>e.createVNode("div",{ref:n,class:"f-calendar"},[e.createVNode(B,{activeView:V.value,title:w.value,onViewChange:P=>T(P),onPrevious:P=>z(P),onNext:P=>S(P),onResetToToday:()=>H()},null),e.createVNode("div",null,[$.value&&e.createVNode(q,{day:M.value,dayInWeek:b.value,events:i.value},null),O.value&&e.createVNode(I,{week:D.value,events:i.value},null),W.value&&e.createVNode(R,{activeDay:s.value,dates:y.value,events:i.value},null)])])}});A.install=t=>{t.component(A.name,A).component(q.name,q).component(B.name,B).component(R.name,R).component(I.name,I)},A.register=(t,a,l,p)=>{t.calendar=A,a.calendar=Q},A.registerDesigner=(t,a,l)=>{t.calendar=ge,a.calendar=Q},C.FCalendar=A,C.FCalendarDayView=q,C.FCalendarHeader=B,C.FCalendarMonthView=R,C.FCalendarWeekView=I,C.MonthTag=j,C.calendarProps=_,C.dayViewProps=ae,C.default=A,C.defaultNameOfMonths=L,C.headerProps=ee,C.monthViewProps=te,C.propsResolver=Q,C.weekDays=E,C.weekViewProps=ne,Object.defineProperties(C,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}})});