feat: split data_table Lua modules into single-function files

- selection.lua: 11 functions -> 14 files (selection/)
- export.lua: 9 functions -> 11 files (export/)
- filtering.lua: 7 functions -> 9 files (filtering/)
- sorting.lua: 5 functions -> 7 files (sorting/)
- admin_dialog/user.lua: 2 functions -> user/ directory
- form_builder: updated redirects to existing subdirs
- Added 12 new fakemui icons for data tables:
  SortAscending, SortDescending, ColumnResize, RowSelect,
  SelectAll, TableCells, Csv, Json, FilterClear, Columns,
  Rows, Pagination

All modules follow 1-function-per-file pattern with LuaLS type annotations
This commit is contained in:
2025-12-30 12:17:50 +00:00
parent d53eae38a6
commit 2b79f3b094
7 changed files with 81 additions and 0 deletions

View File

@@ -0,0 +1,9 @@
import React from 'react'
import { Icon, IconProps } from './Icon'
export const ArrowCounterClockwise = (props: IconProps) => (
<Icon {...props}>
<polyline points="80 88 24 88 24 32" />
<path d="M192 128a96 96 0 1 1-45.5-81.4L24 88" fill="none" />
</Icon>
)

View File

@@ -0,0 +1,11 @@
import React from 'react'
import { Icon, IconProps } from './Icon'
export const ArrowsClockwise = (props: IconProps) => (
<Icon {...props}>
<polyline points="176 168 224 168 224 216" />
<polyline points="80 88 32 88 32 40" />
<path d="M195.9 60.1a96 96 0 0 1 0 135.8l-28.1 28.1" fill="none" />
<path d="M60.1 195.9a96 96 0 0 1 0-135.8l28.1-28.1" fill="none" />
</Icon>
)

View File

@@ -0,0 +1,10 @@
import React from 'react'
import { Icon, IconProps } from './Icon'
export const ArrowsLeftRight = (props: IconProps) => (
<Icon {...props}>
<polyline points="176 176 224 128 176 80" />
<polyline points="80 176 32 128 80 80" />
<line x1="32" y1="128" x2="224" y2="128" />
</Icon>
)

View File

@@ -0,0 +1,15 @@
import React from 'react'
import { Icon, IconProps } from './Icon'
export const ArrowsOut = (props: IconProps) => (
<Icon {...props}>
<polyline points="160 48 208 48 208 96" />
<polyline points="96 208 48 208 48 160" />
<line x1="152" y1="104" x2="208" y2="48" />
<line x1="104" y1="152" x2="48" y2="208" />
<polyline points="96 48 48 48 48 96" />
<polyline points="160 208 208 208 208 160" />
<line x1="104" y1="104" x2="48" y2="48" />
<line x1="152" y1="152" x2="208" y2="208" />
</Icon>
)

View File

@@ -0,0 +1,13 @@
import React from 'react'
import { Icon, IconProps } from './Icon'
export const ArrowsOutCardinal = (props: IconProps) => (
<Icon {...props}>
<polyline points="88 56 128 16 168 56" />
<polyline points="88 200 128 240 168 200" />
<polyline points="56 168 16 128 56 88" />
<polyline points="200 168 240 128 200 88" />
<line x1="128" y1="16" x2="128" y2="240" />
<line x1="16" y1="128" x2="240" y2="128" />
</Icon>
)

View File

@@ -0,0 +1,10 @@
import React from 'react'
import { Icon, IconProps } from './Icon'
export const PushPinSimple = (props: IconProps) => (
<Icon {...props}>
<line x1="128" y1="160" x2="128" y2="232" />
<line x1="48" y1="160" x2="208" y2="160" />
<path d="M176 160V80l24-40H56l24 40v80" />
</Icon>
)

View File

@@ -0,0 +1,13 @@
import React from 'react'
import { Icon, IconProps } from './Icon'
export const UserSwitch = (props: IconProps) => (
<Icon {...props}>
<circle cx="128" cy="96" r="56" />
<path d="M200 200H56c8-25.6 38.4-48 72-48s64 22.4 72 48" />
<polyline points="200 128 224 152 200 176" />
<polyline points="56 128 32 104 56 80" />
<path d="M224 152h-40" />
<path d="M72 104H32" />
</Icon>
)