@ai-table/grid 0.0.12 → 0.0.14
Sign up to get free protection for your applications and to get access to all the features.
- package/angular-konva/components/container.component.d.ts +7 -0
- package/angular-konva/components/container.component.d.ts.map +1 -0
- package/angular-konva/components/container.token.d.ts +3 -0
- package/angular-konva/components/container.token.d.ts.map +1 -0
- package/angular-konva/components/index.d.ts +4 -0
- package/angular-konva/components/index.d.ts.map +1 -0
- package/angular-konva/components/shape.component.d.ts +61 -0
- package/angular-konva/components/shape.component.d.ts.map +1 -0
- package/angular-konva/components/stage.component.d.ts +40 -0
- package/angular-konva/components/stage.component.d.ts.map +1 -0
- package/angular-konva/index.d.ts +5 -0
- package/angular-konva/index.d.ts.map +1 -0
- package/angular-konva/interfaces/component.d.ts +49 -0
- package/angular-konva/interfaces/component.d.ts.map +1 -0
- package/angular-konva/interfaces/config.d.ts +26 -0
- package/angular-konva/interfaces/config.d.ts.map +1 -0
- package/angular-konva/interfaces/event-object.d.ts +7 -0
- package/angular-konva/interfaces/event-object.d.ts.map +1 -0
- package/angular-konva/interfaces/index.d.ts +5 -0
- package/angular-konva/interfaces/index.d.ts.map +1 -0
- package/angular-konva/interfaces/shape.d.ts +42 -0
- package/angular-konva/interfaces/shape.d.ts.map +1 -0
- package/angular-konva/utils/apply-node-props.d.ts +4 -0
- package/angular-konva/utils/apply-node-props.d.ts.map +1 -0
- package/angular-konva/utils/common.d.ts +8 -0
- package/angular-konva/utils/common.d.ts.map +1 -0
- package/angular-konva/utils/index.d.ts +5 -0
- package/angular-konva/utils/index.d.ts.map +1 -0
- package/angular-konva/utils/types.d.ts +4 -0
- package/angular-konva/utils/types.d.ts.map +1 -0
- package/angular-konva/utils/update-picture.d.ts +4 -0
- package/angular-konva/utils/update-picture.d.ts.map +1 -0
- package/components/cell-editors/abstract-cell-editor.component.d.ts +7 -5
- package/components/cell-editors/abstract-cell-editor.component.d.ts.map +1 -1
- package/components/cell-editors/cell-editor.scss +38 -25
- package/components/cell-editors/cell-editor.variables.scss +5 -0
- package/components/cell-editors/date/date-editor.component.d.ts.map +1 -1
- package/components/cell-editors/link/edit-link/edit-link.component.d.ts +33 -0
- package/components/cell-editors/link/edit-link/edit-link.component.d.ts.map +1 -0
- package/components/cell-editors/link/link-editor.component.d.ts +36 -0
- package/components/cell-editors/link/link-editor.component.d.ts.map +1 -0
- package/components/cell-editors/link/link-editor.component.scss +21 -0
- package/components/cell-editors/progress/progress-editor.component.d.ts +0 -1
- package/components/cell-editors/progress/progress-editor.component.d.ts.map +1 -1
- package/components/cell-editors/progress/progress-editor.component.scss +12 -4
- package/components/cell-editors/rating/rating-editor.component.d.ts +0 -1
- package/components/cell-editors/rating/rating-editor.component.d.ts.map +1 -1
- package/components/cell-editors/rating/rating-editor.component.scss +10 -0
- package/components/cell-editors/select/select-editor.component.d.ts +3 -4
- package/components/cell-editors/select/select-editor.component.d.ts.map +1 -1
- package/components/cell-editors/text/text-editor.component.d.ts +0 -1
- package/components/cell-editors/text/text-editor.component.d.ts.map +1 -1
- package/components/cell-views/select/option.component.d.ts.map +1 -1
- package/components/cell-views/select/option.scss +10 -0
- package/components/field-menu/field-menu.component.d.ts +8 -3
- package/components/field-menu/field-menu.component.d.ts.map +1 -1
- package/components/field-property-editor/field-property-editor.component.d.ts +4 -2
- package/components/field-property-editor/field-property-editor.component.d.ts.map +1 -1
- package/components/index.d.ts +3 -1
- package/components/index.d.ts.map +1 -1
- package/constants/colors.d.ts +18 -0
- package/constants/colors.d.ts.map +1 -0
- package/constants/grid.d.ts +17 -1
- package/constants/grid.d.ts.map +1 -1
- package/constants/icon.d.ts +19 -0
- package/constants/icon.d.ts.map +1 -0
- package/constants/index.d.ts +5 -1
- package/constants/index.d.ts.map +1 -1
- package/constants/table.d.ts +60 -0
- package/constants/table.d.ts.map +1 -0
- package/constants/text.d.ts +22 -0
- package/constants/text.d.ts.map +1 -0
- package/core/context.d.ts +14 -0
- package/core/context.d.ts.map +1 -0
- package/core/coordinate.d.ts +96 -0
- package/core/coordinate.d.ts.map +1 -0
- package/core/index.d.ts +3 -2
- package/core/index.d.ts.map +1 -1
- package/core/types/ai-table.d.ts +56 -0
- package/core/types/ai-table.d.ts.map +1 -0
- package/core/types/core.d.ts +29 -23
- package/core/types/core.d.ts.map +1 -1
- package/core/types/index.d.ts +1 -1
- package/core/types/index.d.ts.map +1 -1
- package/core/utils/common.d.ts +1 -2
- package/core/utils/common.d.ts.map +1 -1
- package/core/utils/field.d.ts +3 -1
- package/core/utils/field.d.ts.map +1 -1
- package/core/utils/index.d.ts +0 -1
- package/core/utils/index.d.ts.map +1 -1
- package/core/utils/queries.d.ts +5 -5
- package/core/utils/queries.d.ts.map +1 -1
- package/dom-grid.component.d.ts +11 -0
- package/dom-grid.component.d.ts.map +1 -0
- package/esm2022/angular-konva/components/container.component.mjs +29 -0
- package/esm2022/angular-konva/components/container.token.mjs +3 -0
- package/esm2022/angular-konva/components/index.mjs +4 -0
- package/esm2022/angular-konva/components/shape.component.mjs +142 -0
- package/esm2022/angular-konva/components/stage.component.mjs +123 -0
- package/esm2022/angular-konva/index.mjs +5 -0
- package/esm2022/angular-konva/interfaces/component.mjs +4 -0
- package/esm2022/angular-konva/interfaces/config.mjs +2 -0
- package/esm2022/angular-konva/interfaces/event-object.mjs +2 -0
- package/esm2022/angular-konva/interfaces/index.mjs +5 -0
- package/esm2022/angular-konva/interfaces/shape.mjs +42 -0
- package/esm2022/angular-konva/utils/apply-node-props.mjs +67 -0
- package/esm2022/angular-konva/utils/common.mjs +48 -0
- package/esm2022/angular-konva/utils/index.mjs +5 -0
- package/esm2022/angular-konva/utils/types.mjs +2 -0
- package/esm2022/angular-konva/utils/update-picture.mjs +7 -0
- package/esm2022/components/cell-editors/abstract-cell-editor.component.mjs +15 -7
- package/esm2022/components/cell-editors/date/date-editor.component.mjs +6 -3
- package/esm2022/components/cell-editors/link/edit-link/edit-link.component.mjs +66 -0
- package/esm2022/components/cell-editors/link/link-editor.component.mjs +117 -0
- package/esm2022/components/cell-editors/number/number-editor.component.mjs +2 -2
- package/esm2022/components/cell-editors/progress/progress-editor.component.mjs +3 -6
- package/esm2022/components/cell-editors/rating/rating-editor.component.mjs +4 -7
- package/esm2022/components/cell-editors/select/select-editor.component.mjs +19 -17
- package/esm2022/components/cell-editors/text/text-editor.component.mjs +10 -11
- package/esm2022/components/cell-views/select/option.component.mjs +6 -5
- package/esm2022/components/field-menu/field-menu.component.mjs +11 -8
- package/esm2022/components/field-property-editor/field-property-editor.component.mjs +17 -12
- package/esm2022/components/index.mjs +4 -2
- package/esm2022/constants/colors.mjs +18 -0
- package/esm2022/constants/editor.mjs +2 -3
- package/esm2022/constants/grid.mjs +22 -4
- package/esm2022/constants/icon.mjs +26 -0
- package/esm2022/constants/index.mjs +6 -2
- package/esm2022/constants/table.mjs +62 -0
- package/esm2022/constants/text.mjs +23 -0
- package/esm2022/core/context.mjs +25 -0
- package/esm2022/core/coordinate.mjs +222 -0
- package/esm2022/core/index.mjs +4 -3
- package/esm2022/core/types/ai-table.mjs +44 -0
- package/esm2022/core/types/core.mjs +6 -1
- package/esm2022/core/types/index.mjs +2 -2
- package/esm2022/core/utils/common.mjs +3 -20
- package/esm2022/core/utils/field.mjs +18 -5
- package/esm2022/core/utils/index.mjs +1 -2
- package/esm2022/core/utils/queries.mjs +4 -4
- package/esm2022/dom-grid.component.mjs +82 -0
- package/esm2022/grid-base.component.mjs +154 -0
- package/esm2022/grid.component.mjs +337 -160
- package/esm2022/public-api.mjs +9 -5
- package/esm2022/renderer/components/add-field-column.component.mjs +68 -0
- package/esm2022/renderer/components/cells.component.mjs +35 -0
- package/esm2022/renderer/components/field-head.component.mjs +130 -0
- package/esm2022/renderer/components/field-icon.component.mjs +66 -0
- package/esm2022/renderer/components/frozen-cells.component.mjs +36 -0
- package/esm2022/renderer/components/frozen-heads.component.mjs +117 -0
- package/esm2022/renderer/components/frozen-placeholder-cells.component.mjs +38 -0
- package/esm2022/renderer/components/heads.component.mjs +38 -0
- package/esm2022/renderer/components/hover-row-heads.component.mjs +107 -0
- package/esm2022/renderer/components/icon.component.mjs +80 -0
- package/esm2022/renderer/components/index.mjs +14 -0
- package/esm2022/renderer/components/other-rows.component.mjs +68 -0
- package/esm2022/renderer/components/placeholder-cells.component.mjs +33 -0
- package/esm2022/renderer/components/text.component.mjs +45 -0
- package/esm2022/renderer/creations/create-active-cell-border.mjs +68 -0
- package/esm2022/renderer/creations/create-cells.mjs +135 -0
- package/esm2022/renderer/creations/create-heads.mjs +45 -0
- package/esm2022/renderer/drawers/add-row-layout-drawer.mjs +97 -0
- package/esm2022/renderer/drawers/cell-drawer.mjs +587 -0
- package/esm2022/renderer/drawers/drawer.mjs +936 -0
- package/esm2022/renderer/drawers/layout-drawer.mjs +58 -0
- package/esm2022/renderer/drawers/record-row-layout-drawer.mjs +101 -0
- package/esm2022/renderer/index.mjs +4 -0
- package/esm2022/renderer/renderer.component.mjs +174 -0
- package/esm2022/services/event.service.mjs +120 -11
- package/esm2022/services/field.service.mjs +28 -5
- package/esm2022/services/index.mjs +4 -0
- package/esm2022/services/selection.service.mjs +8 -1
- package/esm2022/types/avatar.mjs +27 -0
- package/esm2022/types/canvas.mjs +2 -0
- package/esm2022/types/cell.mjs +2 -0
- package/esm2022/types/component-config.mjs +7 -0
- package/esm2022/types/field.mjs +1 -1
- package/esm2022/types/grid.mjs +16 -2
- package/esm2022/types/index.mjs +8 -2
- package/esm2022/types/layout.mjs +2 -0
- package/esm2022/types/row.mjs +6 -0
- package/esm2022/utils/build.mjs +39 -0
- package/esm2022/utils/cell.mjs +71 -0
- package/esm2022/utils/common.mjs +49 -0
- package/esm2022/utils/get-placeholder-cells.mjs +66 -0
- package/esm2022/utils/get-text-width.mjs +30 -0
- package/esm2022/utils/image-cache.mjs +57 -0
- package/esm2022/utils/index.mjs +12 -0
- package/esm2022/utils/os.mjs +16 -0
- package/esm2022/utils/position.mjs +48 -0
- package/esm2022/utils/style.mjs +25 -0
- package/esm2022/utils/text-measure.mjs +122 -0
- package/esm2022/utils/visible-range.mjs +38 -0
- package/fesm2022/ai-table-grid.mjs +5549 -690
- package/fesm2022/ai-table-grid.mjs.map +1 -1
- package/grid-base.component.d.ts +52 -0
- package/grid-base.component.d.ts.map +1 -0
- package/grid.component.d.ts +43 -40
- package/grid.component.d.ts.map +1 -1
- package/package.json +5 -2
- package/public-api.d.ts +8 -4
- package/public-api.d.ts.map +1 -1
- package/renderer/components/add-field-column.component.d.ts +16 -0
- package/renderer/components/add-field-column.component.d.ts.map +1 -0
- package/renderer/components/cells.component.d.ts +14 -0
- package/renderer/components/cells.component.d.ts.map +1 -0
- package/renderer/components/field-head.component.d.ts +73 -0
- package/renderer/components/field-head.component.d.ts.map +1 -0
- package/renderer/components/field-icon.component.d.ts +17 -0
- package/renderer/components/field-icon.component.d.ts.map +1 -0
- package/renderer/components/frozen-cells.component.d.ts +14 -0
- package/renderer/components/frozen-cells.component.d.ts.map +1 -0
- package/renderer/components/frozen-heads.component.d.ts +47 -0
- package/renderer/components/frozen-heads.component.d.ts.map +1 -0
- package/renderer/components/frozen-placeholder-cells.component.d.ts +22 -0
- package/renderer/components/frozen-placeholder-cells.component.d.ts.map +1 -0
- package/renderer/components/heads.component.d.ts +9 -0
- package/renderer/components/heads.component.d.ts.map +1 -0
- package/renderer/components/hover-row-heads.component.d.ts +11 -0
- package/renderer/components/hover-row-heads.component.d.ts.map +1 -0
- package/renderer/components/icon.component.d.ts +37 -0
- package/renderer/components/icon.component.d.ts.map +1 -0
- package/renderer/components/index.d.ts +14 -0
- package/renderer/components/index.d.ts.map +1 -0
- package/renderer/components/other-rows.component.d.ts +31 -0
- package/renderer/components/other-rows.component.d.ts.map +1 -0
- package/renderer/components/placeholder-cells.component.d.ts +22 -0
- package/renderer/components/placeholder-cells.component.d.ts.map +1 -0
- package/renderer/components/text.component.d.ts +99 -0
- package/renderer/components/text.component.d.ts.map +1 -0
- package/renderer/creations/create-active-cell-border.d.ts +7 -0
- package/renderer/creations/create-active-cell-border.d.ts.map +1 -0
- package/renderer/creations/create-cells.d.ts +8 -0
- package/renderer/creations/create-cells.d.ts.map +1 -0
- package/renderer/creations/create-heads.d.ts +3 -0
- package/renderer/creations/create-heads.d.ts.map +1 -0
- package/renderer/drawers/add-row-layout-drawer.d.ts +12 -0
- package/renderer/drawers/add-row-layout-drawer.d.ts.map +1 -0
- package/renderer/drawers/cell-drawer.d.ts +22 -0
- package/renderer/drawers/cell-drawer.d.ts.map +1 -0
- package/renderer/drawers/drawer.d.ts +136 -0
- package/renderer/drawers/drawer.d.ts.map +1 -0
- package/renderer/drawers/layout-drawer.d.ts +22 -0
- package/renderer/drawers/layout-drawer.d.ts.map +1 -0
- package/renderer/drawers/record-row-layout-drawer.d.ts +14 -0
- package/renderer/drawers/record-row-layout-drawer.d.ts.map +1 -0
- package/renderer/index.d.ts +4 -0
- package/renderer/index.d.ts.map +1 -0
- package/renderer/renderer.component.d.ts +64 -0
- package/renderer/renderer.component.d.ts.map +1 -0
- package/services/event.service.d.ts +17 -3
- package/services/event.service.d.ts.map +1 -1
- package/services/field.service.d.ts +5 -4
- package/services/field.service.d.ts.map +1 -1
- package/services/index.d.ts +4 -0
- package/services/index.d.ts.map +1 -0
- package/services/selection.service.d.ts.map +1 -1
- package/styles/styles.scss +71 -11
- package/types/avatar.d.ts +24 -0
- package/types/avatar.d.ts.map +1 -0
- package/types/canvas.d.ts +83 -0
- package/types/canvas.d.ts.map +1 -0
- package/types/cell.d.ts +43 -0
- package/types/cell.d.ts.map +1 -0
- package/types/component-config.d.ts +50 -0
- package/types/component-config.d.ts.map +1 -0
- package/types/field.d.ts +27 -1
- package/types/field.d.ts.map +1 -1
- package/types/grid.d.ts +81 -2
- package/types/grid.d.ts.map +1 -1
- package/types/index.d.ts +7 -1
- package/types/index.d.ts.map +1 -1
- package/types/layout.d.ts +11 -0
- package/types/layout.d.ts.map +1 -0
- package/types/row.d.ts +27 -0
- package/types/row.d.ts.map +1 -0
- package/utils/build.d.ts +5 -0
- package/utils/build.d.ts.map +1 -0
- package/utils/cell.d.ts +19 -0
- package/utils/cell.d.ts.map +1 -0
- package/utils/common.d.ts +20 -0
- package/utils/common.d.ts.map +1 -0
- package/utils/get-placeholder-cells.d.ts +16 -0
- package/utils/get-placeholder-cells.d.ts.map +1 -0
- package/utils/get-text-width.d.ts +9 -0
- package/utils/get-text-width.d.ts.map +1 -0
- package/utils/image-cache.d.ts +16 -0
- package/utils/image-cache.d.ts.map +1 -0
- package/utils/index.d.ts +12 -0
- package/utils/index.d.ts.map +1 -0
- package/utils/os.d.ts +4 -0
- package/utils/os.d.ts.map +1 -0
- package/utils/position.d.ts +20 -0
- package/utils/position.d.ts.map +1 -0
- package/utils/style.d.ts +4 -0
- package/utils/style.d.ts.map +1 -0
- package/utils/text-measure.d.ts +32 -0
- package/utils/text-measure.d.ts.map +1 -0
- package/utils/visible-range.d.ts +13 -0
- package/utils/visible-range.d.ts.map +1 -0
- package/components/cell-editors/link/number-editor.component.d.ts +0 -8
- package/components/cell-editors/link/number-editor.component.d.ts.map +0 -1
- package/constants/field.d.ts +0 -20
- package/constants/field.d.ts.map +0 -1
- package/core/action/field.d.ts +0 -12
- package/core/action/field.d.ts.map +0 -1
- package/core/action/general.d.ts +0 -5
- package/core/action/general.d.ts.map +0 -1
- package/core/action/index.d.ts +0 -12
- package/core/action/index.d.ts.map +0 -1
- package/core/action/record.d.ts +0 -12
- package/core/action/record.d.ts.map +0 -1
- package/core/types/action.d.ts +0 -64
- package/core/types/action.d.ts.map +0 -1
- package/core/utils/weak-map.d.ts +0 -3
- package/core/utils/weak-map.d.ts.map +0 -1
- package/esm2022/components/cell-editors/link/number-editor.component.mjs +0 -25
- package/esm2022/constants/field.mjs +0 -25
- package/esm2022/core/action/field.mjs +0 -57
- package/esm2022/core/action/general.mjs +0 -116
- package/esm2022/core/action/index.mjs +0 -9
- package/esm2022/core/action/record.mjs +0 -44
- package/esm2022/core/types/action.mjs +0 -18
- package/esm2022/core/utils/weak-map.mjs +0 -2
package/esm2022/public-api.mjs
CHANGED
@@ -1,7 +1,11 @@
|
|
1
|
+
export * from './components';
|
2
|
+
export * from './constants';
|
3
|
+
export * from './core/index';
|
4
|
+
export * from './dom-grid.component';
|
1
5
|
export * from './grid.component';
|
2
|
-
export * from './types';
|
3
6
|
export * from './pipes';
|
4
|
-
export * from './
|
5
|
-
export * from './
|
6
|
-
export * from './
|
7
|
-
|
7
|
+
export * from './renderer';
|
8
|
+
export * from './services';
|
9
|
+
export * from './types';
|
10
|
+
export * from './utils';
|
11
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3BhY2thZ2VzL2dyaWQvc3JjL3B1YmxpYy1hcGkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxjQUFjLENBQUM7QUFDN0IsY0FBYyxhQUFhLENBQUM7QUFDNUIsY0FBYyxjQUFjLENBQUM7QUFDN0IsY0FBYyxzQkFBc0IsQ0FBQztBQUNyQyxjQUFjLGtCQUFrQixDQUFDO0FBQ2pDLGNBQWMsU0FBUyxDQUFDO0FBQ3hCLGNBQWMsWUFBWSxDQUFDO0FBQzNCLGNBQWMsWUFBWSxDQUFDO0FBQzNCLGNBQWMsU0FBUyxDQUFDO0FBQ3hCLGNBQWMsU0FBUyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9jb21wb25lbnRzJztcbmV4cG9ydCAqIGZyb20gJy4vY29uc3RhbnRzJztcbmV4cG9ydCAqIGZyb20gJy4vY29yZS9pbmRleCc7XG5leHBvcnQgKiBmcm9tICcuL2RvbS1ncmlkLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2dyaWQuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vcGlwZXMnO1xuZXhwb3J0ICogZnJvbSAnLi9yZW5kZXJlcic7XG5leHBvcnQgKiBmcm9tICcuL3NlcnZpY2VzJztcbmV4cG9ydCAqIGZyb20gJy4vdHlwZXMnO1xuZXhwb3J0ICogZnJvbSAnLi91dGlscyc7XG4iXX0=
|
@@ -0,0 +1,68 @@
|
|
1
|
+
import { ChangeDetectionStrategy, Component, computed, input } from '@angular/core';
|
2
|
+
import { KoContainer, KoShape, KoStage } from '../../angular-konva';
|
3
|
+
import { AddOutlinedPath, AI_TABLE_CELL_PADDING, AI_TABLE_FIELD_ADD_BUTTON, AI_TABLE_FIELD_ADD_BUTTON_WIDTH, AI_TABLE_ICON_COMMON_SIZE, AI_TABLE_OFFSET, Colors } from '../../constants';
|
4
|
+
import { generateTargetName } from '../../utils';
|
5
|
+
import { AITableIcon } from './icon.component';
|
6
|
+
import * as i0 from "@angular/core";
|
7
|
+
export class AITableAddField {
|
8
|
+
constructor() {
|
9
|
+
this.coordinate = input.required();
|
10
|
+
this.fields = input.required();
|
11
|
+
this.columnStopIndex = input.required();
|
12
|
+
this.btnWidth = AI_TABLE_FIELD_ADD_BUTTON_WIDTH;
|
13
|
+
this.x = computed(() => {
|
14
|
+
const lastColumnWidth = this.coordinate().getColumnWidth(this.columnStopIndex());
|
15
|
+
const lastColumnOffset = this.coordinate().getColumnOffset(this.columnStopIndex());
|
16
|
+
return lastColumnWidth + lastColumnOffset;
|
17
|
+
});
|
18
|
+
this.rectConfig = computed(() => {
|
19
|
+
return {
|
20
|
+
name: generateTargetName({
|
21
|
+
targetName: AI_TABLE_FIELD_ADD_BUTTON,
|
22
|
+
fieldId: this.fields()[this.columnStopIndex()]._id,
|
23
|
+
mouseStyle: 'pointer'
|
24
|
+
}),
|
25
|
+
x: AI_TABLE_OFFSET,
|
26
|
+
y: AI_TABLE_OFFSET,
|
27
|
+
width: this.coordinate().containerWidth - this.x() < this.btnWidth ? this.btnWidth : this.coordinate().containerWidth - this.x(),
|
28
|
+
height: this.coordinate().rowInitSize,
|
29
|
+
stroke: Colors.gray200,
|
30
|
+
strokeWidth: 1,
|
31
|
+
listening: true
|
32
|
+
};
|
33
|
+
});
|
34
|
+
this.addIconConfig = computed(() => {
|
35
|
+
const offsetY = (this.coordinate().rowInitSize - AI_TABLE_ICON_COMMON_SIZE) / 2;
|
36
|
+
return {
|
37
|
+
x: AI_TABLE_CELL_PADDING,
|
38
|
+
y: offsetY,
|
39
|
+
data: AddOutlinedPath,
|
40
|
+
fill: Colors.gray600,
|
41
|
+
listening: false
|
42
|
+
};
|
43
|
+
});
|
44
|
+
}
|
45
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: AITableAddField, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
46
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "18.2.0", type: AITableAddField, isStandalone: true, selector: "ai-table-add-field", inputs: { coordinate: { classPropertyName: "coordinate", publicName: "coordinate", isSignal: true, isRequired: true, transformFunction: null }, fields: { classPropertyName: "fields", publicName: "fields", isSignal: true, isRequired: true, transformFunction: null }, columnStopIndex: { classPropertyName: "columnStopIndex", publicName: "columnStopIndex", isSignal: true, isRequired: true, transformFunction: null } }, ngImport: i0, template: `
|
47
|
+
<ko-group [config]="{ x: x() }">
|
48
|
+
<ko-rect [config]="rectConfig()"></ko-rect>
|
49
|
+
<ai-table-icon [config]="addIconConfig()"></ai-table-icon>
|
50
|
+
</ko-group>
|
51
|
+
`, isInline: true, dependencies: [{ kind: "component", type: KoContainer, selector: "ko-layer, ko-fastlayer, ko-group" }, { kind: "component", type: KoShape, selector: "ko-shape, ko-circle, ko-label, ko-rect, ko-ellipse, ko-wedge, ko-line, ko-sprite, ko-image, ko-text, ko-text-path, ko-star, ko-ring, ko-arc, ko-tag, ko-path, ko-regular-polygon, ko-arrow, ko-transformer", inputs: ["config"], outputs: ["koMouseover", "koMousemove", "koMouseout", "koMouseenter", "koMouseleave", "koMousedown", "koMouseup", "koWheel", "koContextmenu", "koClick", "koDblclick", "koTouchstart", "koTouchmove", "koTouchend", "koTap", "koDbltap", "koDragstart", "koDragmove", "koDragend"] }, { kind: "component", type: AITableIcon, selector: "ai-table-icon", inputs: ["config"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
52
|
+
}
|
53
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: AITableAddField, decorators: [{
|
54
|
+
type: Component,
|
55
|
+
args: [{
|
56
|
+
selector: 'ai-table-add-field',
|
57
|
+
template: `
|
58
|
+
<ko-group [config]="{ x: x() }">
|
59
|
+
<ko-rect [config]="rectConfig()"></ko-rect>
|
60
|
+
<ai-table-icon [config]="addIconConfig()"></ai-table-icon>
|
61
|
+
</ko-group>
|
62
|
+
`,
|
63
|
+
standalone: true,
|
64
|
+
imports: [KoContainer, KoStage, KoShape, AITableIcon],
|
65
|
+
changeDetection: ChangeDetectionStrategy.OnPush
|
66
|
+
}]
|
67
|
+
}] });
|
68
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWRkLWZpZWxkLWNvbHVtbi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9ncmlkL3NyYy9yZW5kZXJlci9jb21wb25lbnRzL2FkZC1maWVsZC1jb2x1bW4uY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxTQUFTLEVBQUUsUUFBUSxFQUFFLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUVwRixPQUFPLEVBQUUsV0FBVyxFQUFFLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUNwRSxPQUFPLEVBQ0gsZUFBZSxFQUNmLHFCQUFxQixFQUNyQix5QkFBeUIsRUFDekIsK0JBQStCLEVBQy9CLHlCQUF5QixFQUN6QixlQUFlLEVBQ2YsTUFBTSxFQUNULE1BQU0saUJBQWlCLENBQUM7QUFHekIsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sYUFBYSxDQUFDO0FBQ2pELE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQzs7QUFjL0MsTUFBTSxPQUFPLGVBQWU7SUFaNUI7UUFhSSxlQUFVLEdBQUcsS0FBSyxDQUFDLFFBQVEsRUFBYyxDQUFDO1FBRTFDLFdBQU0sR0FBRyxLQUFLLENBQUMsUUFBUSxFQUFrQixDQUFDO1FBRTFDLG9CQUFlLEdBQUcsS0FBSyxDQUFDLFFBQVEsRUFBVSxDQUFDO1FBRTNDLGFBQVEsR0FBRywrQkFBK0IsQ0FBQztRQUUzQyxNQUFDLEdBQUcsUUFBUSxDQUFDLEdBQUcsRUFBRTtZQUNkLE1BQU0sZUFBZSxHQUFHLElBQUksQ0FBQyxVQUFVLEVBQUUsQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDLGVBQWUsRUFBRSxDQUFDLENBQUM7WUFDakYsTUFBTSxnQkFBZ0IsR0FBRyxJQUFJLENBQUMsVUFBVSxFQUFFLENBQUMsZUFBZSxDQUFDLElBQUksQ0FBQyxlQUFlLEVBQUUsQ0FBQyxDQUFDO1lBQ25GLE9BQU8sZUFBZSxHQUFHLGdCQUFnQixDQUFDO1FBQzlDLENBQUMsQ0FBQyxDQUFDO1FBRUgsZUFBVSxHQUFHLFFBQVEsQ0FBdUIsR0FBRyxFQUFFO1lBQzdDLE9BQU87Z0JBQ0gsSUFBSSxFQUFFLGtCQUFrQixDQUFDO29CQUNyQixVQUFVLEVBQUUseUJBQXlCO29CQUNyQyxPQUFPLEVBQUUsSUFBSSxDQUFDLE1BQU0sRUFBRSxDQUFDLElBQUksQ0FBQyxlQUFlLEVBQUUsQ0FBQyxDQUFDLEdBQUc7b0JBQ2xELFVBQVUsRUFBRSxTQUFTO2lCQUN4QixDQUFDO2dCQUNGLENBQUMsRUFBRSxlQUFlO2dCQUNsQixDQUFDLEVBQUUsZUFBZTtnQkFDbEIsS0FBSyxFQUNELElBQUksQ0FBQyxVQUFVLEVBQUUsQ0FBQyxjQUFjLEdBQUcsSUFBSSxDQUFDLENBQUMsRUFBRSxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxVQUFVLEVBQUUsQ0FBQyxjQUFjLEdBQUcsSUFBSSxDQUFDLENBQUMsRUFBRTtnQkFDN0gsTUFBTSxFQUFFLElBQUksQ0FBQyxVQUFVLEVBQUUsQ0FBQyxXQUFXO2dCQUNyQyxNQUFNLEVBQUUsTUFBTSxDQUFDLE9BQU87Z0JBQ3RCLFdBQVcsRUFBRSxDQUFDO2dCQUNkLFNBQVMsRUFBRSxJQUFJO2FBQ2xCLENBQUM7UUFDTixDQUFDLENBQUMsQ0FBQztRQUVILGtCQUFhLEdBQUcsUUFBUSxDQUFvQixHQUFHLEVBQUU7WUFDN0MsTUFBTSxPQUFPLEdBQUcsQ0FBQyxJQUFJLENBQUMsVUFBVSxFQUFFLENBQUMsV0FBVyxHQUFHLHlCQUF5QixDQUFDLEdBQUcsQ0FBQyxDQUFDO1lBQ2hGLE9BQU87Z0JBQ0gsQ0FBQyxFQUFFLHFCQUFxQjtnQkFDeEIsQ0FBQyxFQUFFLE9BQU87Z0JBQ1YsSUFBSSxFQUFFLGVBQWU7Z0JBQ3JCLElBQUksRUFBRSxNQUFNLENBQUMsT0FBTztnQkFDcEIsU0FBUyxFQUFFLEtBQUs7YUFDbkIsQ0FBQztRQUNOLENBQUMsQ0FBQyxDQUFDO0tBQ047OEdBM0NZLGVBQWU7a0dBQWYsZUFBZSwrZUFWZDs7Ozs7S0FLVCw0REFFUyxXQUFXLDZFQUFXLE9BQU8sK2hCQUFFLFdBQVc7OzJGQUczQyxlQUFlO2tCQVozQixTQUFTO21CQUFDO29CQUNQLFFBQVEsRUFBRSxvQkFBb0I7b0JBQzlCLFFBQVEsRUFBRTs7Ozs7S0FLVDtvQkFDRCxVQUFVLEVBQUUsSUFBSTtvQkFDaEIsT0FBTyxFQUFFLENBQUMsV0FBVyxFQUFFLE9BQU8sRUFBRSxPQUFPLEVBQUUsV0FBVyxDQUFDO29CQUNyRCxlQUFlLEVBQUUsdUJBQXVCLENBQUMsTUFBTTtpQkFDbEQiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBjb21wdXRlZCwgaW5wdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFN0YWdlQ29uZmlnIH0gZnJvbSAna29udmEvbGliL1N0YWdlJztcbmltcG9ydCB7IEtvQ29udGFpbmVyLCBLb1NoYXBlLCBLb1N0YWdlIH0gZnJvbSAnLi4vLi4vYW5ndWxhci1rb252YSc7XG5pbXBvcnQge1xuICAgIEFkZE91dGxpbmVkUGF0aCxcbiAgICBBSV9UQUJMRV9DRUxMX1BBRERJTkcsXG4gICAgQUlfVEFCTEVfRklFTERfQUREX0JVVFRPTixcbiAgICBBSV9UQUJMRV9GSUVMRF9BRERfQlVUVE9OX1dJRFRILFxuICAgIEFJX1RBQkxFX0lDT05fQ09NTU9OX1NJWkUsXG4gICAgQUlfVEFCTEVfT0ZGU0VULFxuICAgIENvbG9yc1xufSBmcm9tICcuLi8uLi9jb25zdGFudHMnO1xuaW1wb3J0IHsgQUlUYWJsZUZpZWxkLCBDb29yZGluYXRlIH0gZnJvbSAnLi4vLi4vY29yZSc7XG5pbXBvcnQgeyBBSVRhYmxlSWNvbkNvbmZpZyB9IGZyb20gJy4uLy4uL3R5cGVzJztcbmltcG9ydCB7IGdlbmVyYXRlVGFyZ2V0TmFtZSB9IGZyb20gJy4uLy4uL3V0aWxzJztcbmltcG9ydCB7IEFJVGFibGVJY29uIH0gZnJvbSAnLi9pY29uLmNvbXBvbmVudCc7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAnYWktdGFibGUtYWRkLWZpZWxkJyxcbiAgICB0ZW1wbGF0ZTogYFxuICAgICAgICA8a28tZ3JvdXAgW2NvbmZpZ109XCJ7IHg6IHgoKSB9XCI+XG4gICAgICAgICAgICA8a28tcmVjdCBbY29uZmlnXT1cInJlY3RDb25maWcoKVwiPjwva28tcmVjdD5cbiAgICAgICAgICAgIDxhaS10YWJsZS1pY29uIFtjb25maWddPVwiYWRkSWNvbkNvbmZpZygpXCI+PC9haS10YWJsZS1pY29uPlxuICAgICAgICA8L2tvLWdyb3VwPlxuICAgIGAsXG4gICAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgICBpbXBvcnRzOiBbS29Db250YWluZXIsIEtvU3RhZ2UsIEtvU2hhcGUsIEFJVGFibGVJY29uXSxcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaFxufSlcbmV4cG9ydCBjbGFzcyBBSVRhYmxlQWRkRmllbGQge1xuICAgIGNvb3JkaW5hdGUgPSBpbnB1dC5yZXF1aXJlZDxDb29yZGluYXRlPigpO1xuXG4gICAgZmllbGRzID0gaW5wdXQucmVxdWlyZWQ8QUlUYWJsZUZpZWxkW10+KCk7XG5cbiAgICBjb2x1bW5TdG9wSW5kZXggPSBpbnB1dC5yZXF1aXJlZDxudW1iZXI+KCk7XG5cbiAgICBidG5XaWR0aCA9IEFJX1RBQkxFX0ZJRUxEX0FERF9CVVRUT05fV0lEVEg7XG5cbiAgICB4ID0gY29tcHV0ZWQoKCkgPT4ge1xuICAgICAgICBjb25zdCBsYXN0Q29sdW1uV2lkdGggPSB0aGlzLmNvb3JkaW5hdGUoKS5nZXRDb2x1bW5XaWR0aCh0aGlzLmNvbHVtblN0b3BJbmRleCgpKTtcbiAgICAgICAgY29uc3QgbGFzdENvbHVtbk9mZnNldCA9IHRoaXMuY29vcmRpbmF0ZSgpLmdldENvbHVtbk9mZnNldCh0aGlzLmNvbHVtblN0b3BJbmRleCgpKTtcbiAgICAgICAgcmV0dXJuIGxhc3RDb2x1bW5XaWR0aCArIGxhc3RDb2x1bW5PZmZzZXQ7XG4gICAgfSk7XG5cbiAgICByZWN0Q29uZmlnID0gY29tcHV0ZWQ8UGFydGlhbDxTdGFnZUNvbmZpZz4+KCgpID0+IHtcbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgIG5hbWU6IGdlbmVyYXRlVGFyZ2V0TmFtZSh7XG4gICAgICAgICAgICAgICAgdGFyZ2V0TmFtZTogQUlfVEFCTEVfRklFTERfQUREX0JVVFRPTixcbiAgICAgICAgICAgICAgICBmaWVsZElkOiB0aGlzLmZpZWxkcygpW3RoaXMuY29sdW1uU3RvcEluZGV4KCldLl9pZCxcbiAgICAgICAgICAgICAgICBtb3VzZVN0eWxlOiAncG9pbnRlcidcbiAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgeDogQUlfVEFCTEVfT0ZGU0VULFxuICAgICAgICAgICAgeTogQUlfVEFCTEVfT0ZGU0VULFxuICAgICAgICAgICAgd2lkdGg6XG4gICAgICAgICAgICAgICAgdGhpcy5jb29yZGluYXRlKCkuY29udGFpbmVyV2lkdGggLSB0aGlzLngoKSA8IHRoaXMuYnRuV2lkdGggPyB0aGlzLmJ0bldpZHRoIDogdGhpcy5jb29yZGluYXRlKCkuY29udGFpbmVyV2lkdGggLSB0aGlzLngoKSxcbiAgICAgICAgICAgIGhlaWdodDogdGhpcy5jb29yZGluYXRlKCkucm93SW5pdFNpemUsXG4gICAgICAgICAgICBzdHJva2U6IENvbG9ycy5ncmF5MjAwLFxuICAgICAgICAgICAgc3Ryb2tlV2lkdGg6IDEsXG4gICAgICAgICAgICBsaXN0ZW5pbmc6IHRydWVcbiAgICAgICAgfTtcbiAgICB9KTtcblxuICAgIGFkZEljb25Db25maWcgPSBjb21wdXRlZDxBSVRhYmxlSWNvbkNvbmZpZz4oKCkgPT4ge1xuICAgICAgICBjb25zdCBvZmZzZXRZID0gKHRoaXMuY29vcmRpbmF0ZSgpLnJvd0luaXRTaXplIC0gQUlfVEFCTEVfSUNPTl9DT01NT05fU0laRSkgLyAyO1xuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgeDogQUlfVEFCTEVfQ0VMTF9QQURESU5HLFxuICAgICAgICAgICAgeTogb2Zmc2V0WSxcbiAgICAgICAgICAgIGRhdGE6IEFkZE91dGxpbmVkUGF0aCxcbiAgICAgICAgICAgIGZpbGw6IENvbG9ycy5ncmF5NjAwLFxuICAgICAgICAgICAgbGlzdGVuaW5nOiBmYWxzZVxuICAgICAgICB9O1xuICAgIH0pO1xufVxuIl19
|
@@ -0,0 +1,35 @@
|
|
1
|
+
import { ChangeDetectionStrategy, Component, computed, input } from '@angular/core';
|
2
|
+
import { KoShape } from '../../angular-konva';
|
3
|
+
import { createCells } from '../creations/create-cells';
|
4
|
+
import * as i0 from "@angular/core";
|
5
|
+
export class AITableCells {
|
6
|
+
constructor() {
|
7
|
+
this.config = input.required();
|
8
|
+
this.cellsShapeConfig = computed(() => {
|
9
|
+
const { coordinate, columnStartIndex } = this.config();
|
10
|
+
const { frozenColumnCount } = coordinate;
|
11
|
+
return {
|
12
|
+
listening: false,
|
13
|
+
perfectDrawEnabled: false,
|
14
|
+
sceneFunc: (ctx) => createCells({
|
15
|
+
...this.config(),
|
16
|
+
ctx,
|
17
|
+
columnStartIndex: Math.max(columnStartIndex, frozenColumnCount)
|
18
|
+
})
|
19
|
+
};
|
20
|
+
});
|
21
|
+
}
|
22
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: AITableCells, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
23
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "18.2.0", type: AITableCells, isStandalone: true, selector: "ai-table-cells", inputs: { config: { classPropertyName: "config", publicName: "config", isSignal: true, isRequired: true, transformFunction: null } }, ngImport: i0, template: ` <ko-shape [config]="cellsShapeConfig()"></ko-shape> `, isInline: true, dependencies: [{ kind: "component", type: KoShape, selector: "ko-shape, ko-circle, ko-label, ko-rect, ko-ellipse, ko-wedge, ko-line, ko-sprite, ko-image, ko-text, ko-text-path, ko-star, ko-ring, ko-arc, ko-tag, ko-path, ko-regular-polygon, ko-arrow, ko-transformer", inputs: ["config"], outputs: ["koMouseover", "koMousemove", "koMouseout", "koMouseenter", "koMouseleave", "koMousedown", "koMouseup", "koWheel", "koContextmenu", "koClick", "koDblclick", "koTouchstart", "koTouchmove", "koTouchend", "koTap", "koDbltap", "koDragstart", "koDragmove", "koDragend"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
24
|
+
}
|
25
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: AITableCells, decorators: [{
|
26
|
+
type: Component,
|
27
|
+
args: [{
|
28
|
+
selector: 'ai-table-cells',
|
29
|
+
template: ` <ko-shape [config]="cellsShapeConfig()"></ko-shape> `,
|
30
|
+
standalone: true,
|
31
|
+
imports: [KoShape],
|
32
|
+
changeDetection: ChangeDetectionStrategy.OnPush
|
33
|
+
}]
|
34
|
+
}] });
|
35
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2VsbHMuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvZ3JpZC9zcmMvcmVuZGVyZXIvY29tcG9uZW50cy9jZWxscy5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxRQUFRLEVBQUUsS0FBSyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRXBGLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUU5QyxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sMkJBQTJCLENBQUM7O0FBU3hELE1BQU0sT0FBTyxZQUFZO0lBUHpCO1FBUUksV0FBTSxHQUFHLEtBQUssQ0FBQyxRQUFRLEVBQXNCLENBQUM7UUFFOUMscUJBQWdCLEdBQUcsUUFBUSxDQUFDLEdBQUcsRUFBRTtZQUM3QixNQUFNLEVBQUUsVUFBVSxFQUFFLGdCQUFnQixFQUFFLEdBQUcsSUFBSSxDQUFDLE1BQU0sRUFBRSxDQUFDO1lBQ3ZELE1BQU0sRUFBRSxpQkFBaUIsRUFBRSxHQUFHLFVBQVUsQ0FBQztZQUN6QyxPQUFPO2dCQUNILFNBQVMsRUFBRSxLQUFLO2dCQUNoQixrQkFBa0IsRUFBRSxLQUFLO2dCQUN6QixTQUFTLEVBQUUsQ0FBQyxHQUFrQixFQUFFLEVBQUUsQ0FDOUIsV0FBVyxDQUFDO29CQUNSLEdBQUcsSUFBSSxDQUFDLE1BQU0sRUFBRTtvQkFDaEIsR0FBRztvQkFDSCxnQkFBZ0IsRUFBRSxJQUFJLENBQUMsR0FBRyxDQUFDLGdCQUFnQixFQUFFLGlCQUFpQixDQUFDO2lCQUNsRSxDQUFDO2FBQ1QsQ0FBQztRQUNOLENBQUMsQ0FBQyxDQUFDO0tBQ047OEdBakJZLFlBQVk7a0dBQVosWUFBWSxnTkFMWCx1REFBdUQsNERBRXZELE9BQU87OzJGQUdSLFlBQVk7a0JBUHhCLFNBQVM7bUJBQUM7b0JBQ1AsUUFBUSxFQUFFLGdCQUFnQjtvQkFDMUIsUUFBUSxFQUFFLHVEQUF1RDtvQkFDakUsVUFBVSxFQUFFLElBQUk7b0JBQ2hCLE9BQU8sRUFBRSxDQUFDLE9BQU8sQ0FBQztvQkFDbEIsZUFBZSxFQUFFLHVCQUF1QixDQUFDLE1BQU07aUJBQ2xEIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgY29tcHV0ZWQsIGlucHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgS29udmEgZnJvbSAna29udmEnO1xuaW1wb3J0IHsgS29TaGFwZSB9IGZyb20gJy4uLy4uL2FuZ3VsYXIta29udmEnO1xuaW1wb3J0IHsgQUlUYWJsZUNlbGxzQ29uZmlnIH0gZnJvbSAnLi4vLi4vdHlwZXMnO1xuaW1wb3J0IHsgY3JlYXRlQ2VsbHMgfSBmcm9tICcuLi9jcmVhdGlvbnMvY3JlYXRlLWNlbGxzJztcblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICdhaS10YWJsZS1jZWxscycsXG4gICAgdGVtcGxhdGU6IGAgPGtvLXNoYXBlIFtjb25maWddPVwiY2VsbHNTaGFwZUNvbmZpZygpXCI+PC9rby1zaGFwZT4gYCxcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxuICAgIGltcG9ydHM6IFtLb1NoYXBlXSxcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaFxufSlcbmV4cG9ydCBjbGFzcyBBSVRhYmxlQ2VsbHMge1xuICAgIGNvbmZpZyA9IGlucHV0LnJlcXVpcmVkPEFJVGFibGVDZWxsc0NvbmZpZz4oKTtcblxuICAgIGNlbGxzU2hhcGVDb25maWcgPSBjb21wdXRlZCgoKSA9PiB7XG4gICAgICAgIGNvbnN0IHsgY29vcmRpbmF0ZSwgY29sdW1uU3RhcnRJbmRleCB9ID0gdGhpcy5jb25maWcoKTtcbiAgICAgICAgY29uc3QgeyBmcm96ZW5Db2x1bW5Db3VudCB9ID0gY29vcmRpbmF0ZTtcbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgIGxpc3RlbmluZzogZmFsc2UsXG4gICAgICAgICAgICBwZXJmZWN0RHJhd0VuYWJsZWQ6IGZhbHNlLFxuICAgICAgICAgICAgc2NlbmVGdW5jOiAoY3R4OiBLb252YS5Db250ZXh0KSA9PlxuICAgICAgICAgICAgICAgIGNyZWF0ZUNlbGxzKHtcbiAgICAgICAgICAgICAgICAgICAgLi4udGhpcy5jb25maWcoKSxcbiAgICAgICAgICAgICAgICAgICAgY3R4LFxuICAgICAgICAgICAgICAgICAgICBjb2x1bW5TdGFydEluZGV4OiBNYXRoLm1heChjb2x1bW5TdGFydEluZGV4LCBmcm96ZW5Db2x1bW5Db3VudClcbiAgICAgICAgICAgICAgICB9KVxuICAgICAgICB9O1xuICAgIH0pO1xufVxuIl19
|
@@ -0,0 +1,130 @@
|
|
1
|
+
import { ChangeDetectionStrategy, Component, computed, input } from '@angular/core';
|
2
|
+
import { KoContainer, KoShape, KoStage } from '../../angular-konva';
|
3
|
+
import { AI_TABLE_ACTION_COMMON_SIZE, AI_TABLE_CELL_PADDING, AI_TABLE_FIELD_HEAD, AI_TABLE_FIELD_HEAD_ICON_GAP_SIZE, AI_TABLE_FIELD_HEAD_MORE, AI_TABLE_FIELD_HEAD_TEXT_MIN_WIDTH, AI_TABLE_ICON_COMMON_SIZE, AI_TABLE_OFFSET, Colors, DEFAULT_FONT_SIZE, MoreStandOutlinedPath } from '../../constants';
|
4
|
+
import { generateTargetName, TextMeasure } from '../../utils';
|
5
|
+
import { AITableFieldIcon } from './field-icon.component';
|
6
|
+
import { AITableIcon } from './icon.component';
|
7
|
+
import { AITableText } from './text.component';
|
8
|
+
import * as i0 from "@angular/core";
|
9
|
+
export class AITableFieldHead {
|
10
|
+
constructor() {
|
11
|
+
this.config = input.required();
|
12
|
+
this.textOffset = AI_TABLE_CELL_PADDING + AI_TABLE_ICON_COMMON_SIZE + AI_TABLE_FIELD_HEAD_ICON_GAP_SIZE;
|
13
|
+
this.textMeasure = TextMeasure();
|
14
|
+
this.availableTextWidth = computed(() => {
|
15
|
+
const { width, iconVisible } = this.config();
|
16
|
+
return (width -
|
17
|
+
(iconVisible
|
18
|
+
? 2 * (AI_TABLE_CELL_PADDING + AI_TABLE_ICON_COMMON_SIZE + AI_TABLE_FIELD_HEAD_ICON_GAP_SIZE)
|
19
|
+
: 2 * AI_TABLE_CELL_PADDING + AI_TABLE_ICON_COMMON_SIZE + AI_TABLE_FIELD_HEAD_ICON_GAP_SIZE));
|
20
|
+
});
|
21
|
+
this.textData = computed(() => {
|
22
|
+
const fieldName = this.config().field.name.replace(/\r|\n/g, ' ');
|
23
|
+
this.textMeasure.setFont({ fontSize: DEFAULT_FONT_SIZE });
|
24
|
+
const { width, height, isOverflow } = this.textMeasure.measureText(fieldName, this.availableTextWidth(), 1);
|
25
|
+
return {
|
26
|
+
width: Math.min(width, this.availableTextWidth()),
|
27
|
+
height,
|
28
|
+
isOverflow
|
29
|
+
};
|
30
|
+
});
|
31
|
+
this.groupConfig = computed(() => {
|
32
|
+
return {
|
33
|
+
x: this.config().x,
|
34
|
+
y: this.config().y
|
35
|
+
};
|
36
|
+
});
|
37
|
+
this.bgConfig = computed(() => {
|
38
|
+
const { field, width, height, stroke, isSelected, iconVisible } = this.config();
|
39
|
+
return {
|
40
|
+
x: AI_TABLE_OFFSET,
|
41
|
+
y: AI_TABLE_OFFSET,
|
42
|
+
name: generateTargetName({
|
43
|
+
targetName: AI_TABLE_FIELD_HEAD,
|
44
|
+
fieldId: field._id
|
45
|
+
}),
|
46
|
+
width: width,
|
47
|
+
height: height,
|
48
|
+
fill: isSelected ? Colors.headSelectedBgColor : iconVisible ? Colors.gray80 : Colors.white,
|
49
|
+
stroke: stroke || Colors.gray200,
|
50
|
+
strokeWidth: 1,
|
51
|
+
opacity: 1
|
52
|
+
};
|
53
|
+
});
|
54
|
+
this.fieldIconConfig = computed(() => {
|
55
|
+
const { field, height } = this.config();
|
56
|
+
return {
|
57
|
+
field: field,
|
58
|
+
x: AI_TABLE_CELL_PADDING,
|
59
|
+
y: (height - AI_TABLE_ICON_COMMON_SIZE) / 2,
|
60
|
+
width: AI_TABLE_ICON_COMMON_SIZE,
|
61
|
+
height: AI_TABLE_ICON_COMMON_SIZE,
|
62
|
+
fill: Colors.gray600
|
63
|
+
};
|
64
|
+
});
|
65
|
+
this.textConfig = computed(() => {
|
66
|
+
const { field, height } = this.config();
|
67
|
+
return {
|
68
|
+
x: this.textOffset,
|
69
|
+
y: undefined,
|
70
|
+
width: Math.max(this.textData().width, AI_TABLE_FIELD_HEAD_TEXT_MIN_WIDTH),
|
71
|
+
height: height + 2,
|
72
|
+
text: field.name,
|
73
|
+
lineHeight: 1.84
|
74
|
+
};
|
75
|
+
});
|
76
|
+
this.moreIconConfig = computed(() => {
|
77
|
+
const { field, width, height, isHoverIcon, isSelected } = this.config();
|
78
|
+
const commonIconOffsetY = (height - AI_TABLE_ACTION_COMMON_SIZE) / 2;
|
79
|
+
return {
|
80
|
+
name: generateTargetName({
|
81
|
+
targetName: AI_TABLE_FIELD_HEAD_MORE,
|
82
|
+
fieldId: field._id
|
83
|
+
}),
|
84
|
+
x: width - AI_TABLE_CELL_PADDING - AI_TABLE_ACTION_COMMON_SIZE,
|
85
|
+
y: commonIconOffsetY,
|
86
|
+
data: MoreStandOutlinedPath,
|
87
|
+
fill: isHoverIcon ? Colors.primary : Colors.gray600,
|
88
|
+
background: isSelected || isHoverIcon ? Colors.itemActiveBgColor : Colors.gray80,
|
89
|
+
backgroundWidth: AI_TABLE_ACTION_COMMON_SIZE,
|
90
|
+
backgroundHeight: AI_TABLE_ACTION_COMMON_SIZE,
|
91
|
+
cornerRadius: 4
|
92
|
+
};
|
93
|
+
});
|
94
|
+
}
|
95
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: AITableFieldHead, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
96
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.0", type: AITableFieldHead, isStandalone: true, selector: "ai-table-field-head", inputs: { config: { classPropertyName: "config", publicName: "config", isSignal: true, isRequired: true, transformFunction: null } }, ngImport: i0, template: `
|
97
|
+
<ko-group [config]="groupConfig()">
|
98
|
+
<ko-rect [config]="bgConfig()"></ko-rect>
|
99
|
+
<ko-group>
|
100
|
+
<ai-table-field-icon [config]="fieldIconConfig()"></ai-table-field-icon>
|
101
|
+
<ai-table-text [config]="textConfig()"></ai-table-text>
|
102
|
+
@if (config().iconVisible) {
|
103
|
+
<ai-table-icon [config]="moreIconConfig()"></ai-table-icon>
|
104
|
+
}
|
105
|
+
</ko-group>
|
106
|
+
</ko-group>
|
107
|
+
`, isInline: true, dependencies: [{ kind: "component", type: KoContainer, selector: "ko-layer, ko-fastlayer, ko-group" }, { kind: "component", type: KoShape, selector: "ko-shape, ko-circle, ko-label, ko-rect, ko-ellipse, ko-wedge, ko-line, ko-sprite, ko-image, ko-text, ko-text-path, ko-star, ko-ring, ko-arc, ko-tag, ko-path, ko-regular-polygon, ko-arrow, ko-transformer", inputs: ["config"], outputs: ["koMouseover", "koMousemove", "koMouseout", "koMouseenter", "koMouseleave", "koMousedown", "koMouseup", "koWheel", "koContextmenu", "koClick", "koDblclick", "koTouchstart", "koTouchmove", "koTouchend", "koTap", "koDbltap", "koDragstart", "koDragmove", "koDragend"] }, { kind: "component", type: AITableFieldIcon, selector: "ai-table-field-icon", inputs: ["config"] }, { kind: "component", type: AITableText, selector: "ai-table-text", inputs: ["config"] }, { kind: "component", type: AITableIcon, selector: "ai-table-icon", inputs: ["config"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
108
|
+
}
|
109
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: AITableFieldHead, decorators: [{
|
110
|
+
type: Component,
|
111
|
+
args: [{
|
112
|
+
selector: 'ai-table-field-head',
|
113
|
+
template: `
|
114
|
+
<ko-group [config]="groupConfig()">
|
115
|
+
<ko-rect [config]="bgConfig()"></ko-rect>
|
116
|
+
<ko-group>
|
117
|
+
<ai-table-field-icon [config]="fieldIconConfig()"></ai-table-field-icon>
|
118
|
+
<ai-table-text [config]="textConfig()"></ai-table-text>
|
119
|
+
@if (config().iconVisible) {
|
120
|
+
<ai-table-icon [config]="moreIconConfig()"></ai-table-icon>
|
121
|
+
}
|
122
|
+
</ko-group>
|
123
|
+
</ko-group>
|
124
|
+
`,
|
125
|
+
standalone: true,
|
126
|
+
imports: [KoContainer, KoStage, KoShape, AITableFieldIcon, AITableText, AITableIcon],
|
127
|
+
changeDetection: ChangeDetectionStrategy.OnPush
|
128
|
+
}]
|
129
|
+
}] });
|
130
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmllbGQtaGVhZC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9ncmlkL3NyYy9yZW5kZXJlci9jb21wb25lbnRzL2ZpZWxkLWhlYWQuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxTQUFTLEVBQUUsUUFBUSxFQUFFLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUVwRixPQUFPLEVBQUUsV0FBVyxFQUFFLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUNwRSxPQUFPLEVBQ0gsMkJBQTJCLEVBQzNCLHFCQUFxQixFQUNyQixtQkFBbUIsRUFDbkIsaUNBQWlDLEVBQ2pDLHdCQUF3QixFQUN4QixrQ0FBa0MsRUFDbEMseUJBQXlCLEVBQ3pCLGVBQWUsRUFDZixNQUFNLEVBQ04saUJBQWlCLEVBQ2pCLHFCQUFxQixFQUN4QixNQUFNLGlCQUFpQixDQUFDO0FBRXpCLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxXQUFXLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFDOUQsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDMUQsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQzs7QUFvQi9DLE1BQU0sT0FBTyxnQkFBZ0I7SUFsQjdCO1FBbUJJLFdBQU0sR0FBRyxLQUFLLENBQUMsUUFBUSxFQUEwQixDQUFDO1FBRWxELGVBQVUsR0FBRyxxQkFBcUIsR0FBRyx5QkFBeUIsR0FBRyxpQ0FBaUMsQ0FBQztRQUVuRyxnQkFBVyxHQUFHLFdBQVcsRUFBRSxDQUFDO1FBRTVCLHVCQUFrQixHQUFHLFFBQVEsQ0FBQyxHQUFHLEVBQUU7WUFDL0IsTUFBTSxFQUFFLEtBQUssRUFBRSxXQUFXLEVBQUUsR0FBRyxJQUFJLENBQUMsTUFBTSxFQUFFLENBQUM7WUFDN0MsT0FBTyxDQUNILEtBQUs7Z0JBQ0wsQ0FBQyxXQUFXO29CQUNSLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxxQkFBcUIsR0FBRyx5QkFBeUIsR0FBRyxpQ0FBaUMsQ0FBQztvQkFDN0YsQ0FBQyxDQUFDLENBQUMsR0FBRyxxQkFBcUIsR0FBRyx5QkFBeUIsR0FBRyxpQ0FBaUMsQ0FBQyxDQUNuRyxDQUFDO1FBQ04sQ0FBQyxDQUFDLENBQUM7UUFFSCxhQUFRLEdBQUcsUUFBUSxDQUFDLEdBQUcsRUFBRTtZQUNyQixNQUFNLFNBQVMsR0FBRyxJQUFJLENBQUMsTUFBTSxFQUFFLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsUUFBUSxFQUFFLEdBQUcsQ0FBQyxDQUFDO1lBQ2xFLElBQUksQ0FBQyxXQUFXLENBQUMsT0FBTyxDQUFDLEVBQUUsUUFBUSxFQUFFLGlCQUFpQixFQUFFLENBQUMsQ0FBQztZQUMxRCxNQUFNLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsR0FBRyxJQUFJLENBQUMsV0FBVyxDQUFDLFdBQVcsQ0FBQyxTQUFTLEVBQUUsSUFBSSxDQUFDLGtCQUFrQixFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUM7WUFDNUcsT0FBTztnQkFDSCxLQUFLLEVBQUUsSUFBSSxDQUFDLEdBQUcsQ0FBQyxLQUFLLEVBQUUsSUFBSSxDQUFDLGtCQUFrQixFQUFFLENBQUM7Z0JBQ2pELE1BQU07Z0JBQ04sVUFBVTthQUNiLENBQUM7UUFDTixDQUFDLENBQUMsQ0FBQztRQUVILGdCQUFXLEdBQUcsUUFBUSxDQUF1QixHQUFHLEVBQUU7WUFDOUMsT0FBTztnQkFDSCxDQUFDLEVBQUUsSUFBSSxDQUFDLE1BQU0sRUFBRSxDQUFDLENBQUM7Z0JBQ2xCLENBQUMsRUFBRSxJQUFJLENBQUMsTUFBTSxFQUFFLENBQUMsQ0FBQzthQUNyQixDQUFDO1FBQ04sQ0FBQyxDQUFDLENBQUM7UUFFSCxhQUFRLEdBQUcsUUFBUSxDQUFDLEdBQUcsRUFBRTtZQUNyQixNQUFNLEVBQUUsS0FBSyxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRSxXQUFXLEVBQUUsR0FBRyxJQUFJLENBQUMsTUFBTSxFQUFFLENBQUM7WUFDaEYsT0FBTztnQkFDSCxDQUFDLEVBQUUsZUFBZTtnQkFDbEIsQ0FBQyxFQUFFLGVBQWU7Z0JBQ2xCLElBQUksRUFBRSxrQkFBa0IsQ0FBQztvQkFDckIsVUFBVSxFQUFFLG1CQUFtQjtvQkFDL0IsT0FBTyxFQUFFLEtBQUssQ0FBQyxHQUFHO2lCQUNyQixDQUFDO2dCQUNGLEtBQUssRUFBRSxLQUFLO2dCQUNaLE1BQU0sRUFBRSxNQUFNO2dCQUNkLElBQUksRUFBRSxVQUFVLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxtQkFBbUIsQ0FBQyxDQUFDLENBQUMsV0FBVyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsS0FBSztnQkFDMUYsTUFBTSxFQUFFLE1BQU0sSUFBSSxNQUFNLENBQUMsT0FBTztnQkFDaEMsV0FBVyxFQUFFLENBQUM7Z0JBQ2QsT0FBTyxFQUFFLENBQUM7YUFDYixDQUFDO1FBQ04sQ0FBQyxDQUFDLENBQUM7UUFFSCxvQkFBZSxHQUFHLFFBQVEsQ0FBQyxHQUFHLEVBQUU7WUFDNUIsTUFBTSxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsR0FBRyxJQUFJLENBQUMsTUFBTSxFQUFFLENBQUM7WUFDeEMsT0FBTztnQkFDSCxLQUFLLEVBQUUsS0FBSztnQkFDWixDQUFDLEVBQUUscUJBQXFCO2dCQUN4QixDQUFDLEVBQUUsQ0FBQyxNQUFNLEdBQUcseUJBQXlCLENBQUMsR0FBRyxDQUFDO2dCQUMzQyxLQUFLLEVBQUUseUJBQXlCO2dCQUNoQyxNQUFNLEVBQUUseUJBQXlCO2dCQUNqQyxJQUFJLEVBQUUsTUFBTSxDQUFDLE9BQU87YUFDdkIsQ0FBQztRQUNOLENBQUMsQ0FBQyxDQUFDO1FBRUgsZUFBVSxHQUFHLFFBQVEsQ0FBQyxHQUFHLEVBQUU7WUFDdkIsTUFBTSxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsR0FBRyxJQUFJLENBQUMsTUFBTSxFQUFFLENBQUM7WUFDeEMsT0FBTztnQkFDSCxDQUFDLEVBQUUsSUFBSSxDQUFDLFVBQVU7Z0JBQ2xCLENBQUMsRUFBRSxTQUFTO2dCQUNaLEtBQUssRUFBRSxJQUFJLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQyxLQUFLLEVBQUUsa0NBQWtDLENBQUM7Z0JBQzFFLE1BQU0sRUFBRSxNQUFNLEdBQUcsQ0FBQztnQkFDbEIsSUFBSSxFQUFFLEtBQUssQ0FBQyxJQUFJO2dCQUNoQixVQUFVLEVBQUUsSUFBSTthQUNuQixDQUFDO1FBQ04sQ0FBQyxDQUFDLENBQUM7UUFFSCxtQkFBYyxHQUFHLFFBQVEsQ0FBQyxHQUFHLEVBQUU7WUFDM0IsTUFBTSxFQUFFLEtBQUssRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLFdBQVcsRUFBRSxVQUFVLEVBQUUsR0FBRyxJQUFJLENBQUMsTUFBTSxFQUFFLENBQUM7WUFDeEUsTUFBTSxpQkFBaUIsR0FBRyxDQUFDLE1BQU0sR0FBRywyQkFBMkIsQ0FBQyxHQUFHLENBQUMsQ0FBQztZQUNyRSxPQUFPO2dCQUNILElBQUksRUFBRSxrQkFBa0IsQ0FBQztvQkFDckIsVUFBVSxFQUFFLHdCQUF3QjtvQkFDcEMsT0FBTyxFQUFFLEtBQUssQ0FBQyxHQUFHO2lCQUNyQixDQUFDO2dCQUNGLENBQUMsRUFBRSxLQUFLLEdBQUcscUJBQXFCLEdBQUcsMkJBQTJCO2dCQUM5RCxDQUFDLEVBQUUsaUJBQWlCO2dCQUNwQixJQUFJLEVBQUUscUJBQXFCO2dCQUMzQixJQUFJLEVBQUUsV0FBVyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsT0FBTztnQkFDbkQsVUFBVSxFQUFFLFVBQVUsSUFBSSxXQUFXLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLE1BQU07Z0JBQ2hGLGVBQWUsRUFBRSwyQkFBMkI7Z0JBQzVDLGdCQUFnQixFQUFFLDJCQUEyQjtnQkFDN0MsWUFBWSxFQUFFLENBQUM7YUFDbEIsQ0FBQztRQUNOLENBQUMsQ0FBQyxDQUFDO0tBQ047OEdBL0ZZLGdCQUFnQjtrR0FBaEIsZ0JBQWdCLHFOQWhCZjs7Ozs7Ozs7Ozs7S0FXVCw0REFFUyxXQUFXLDZFQUFXLE9BQU8sK2hCQUFFLGdCQUFnQixvRkFBRSxXQUFXLDhFQUFFLFdBQVc7OzJGQUcxRSxnQkFBZ0I7a0JBbEI1QixTQUFTO21CQUFDO29CQUNQLFFBQVEsRUFBRSxxQkFBcUI7b0JBQy9CLFFBQVEsRUFBRTs7Ozs7Ozs7Ozs7S0FXVDtvQkFDRCxVQUFVLEVBQUUsSUFBSTtvQkFDaEIsT0FBTyxFQUFFLENBQUMsV0FBVyxFQUFFLE9BQU8sRUFBRSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsV0FBVyxFQUFFLFdBQVcsQ0FBQztvQkFDcEYsZUFBZSxFQUFFLHVCQUF1QixDQUFDLE1BQU07aUJBQ2xEIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgY29tcHV0ZWQsIGlucHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBTdGFnZUNvbmZpZyB9IGZyb20gJ2tvbnZhL2xpYi9TdGFnZSc7XG5pbXBvcnQgeyBLb0NvbnRhaW5lciwgS29TaGFwZSwgS29TdGFnZSB9IGZyb20gJy4uLy4uL2FuZ3VsYXIta29udmEnO1xuaW1wb3J0IHtcbiAgICBBSV9UQUJMRV9BQ1RJT05fQ09NTU9OX1NJWkUsXG4gICAgQUlfVEFCTEVfQ0VMTF9QQURESU5HLFxuICAgIEFJX1RBQkxFX0ZJRUxEX0hFQUQsXG4gICAgQUlfVEFCTEVfRklFTERfSEVBRF9JQ09OX0dBUF9TSVpFLFxuICAgIEFJX1RBQkxFX0ZJRUxEX0hFQURfTU9SRSxcbiAgICBBSV9UQUJMRV9GSUVMRF9IRUFEX1RFWFRfTUlOX1dJRFRILFxuICAgIEFJX1RBQkxFX0lDT05fQ09NTU9OX1NJWkUsXG4gICAgQUlfVEFCTEVfT0ZGU0VULFxuICAgIENvbG9ycyxcbiAgICBERUZBVUxUX0ZPTlRfU0laRSxcbiAgICBNb3JlU3RhbmRPdXRsaW5lZFBhdGhcbn0gZnJvbSAnLi4vLi4vY29uc3RhbnRzJztcbmltcG9ydCB7IEFJVGFibGVGaWVsZEhlYWRDb25maWcgfSBmcm9tICcuLi8uLi90eXBlcyc7XG5pbXBvcnQgeyBnZW5lcmF0ZVRhcmdldE5hbWUsIFRleHRNZWFzdXJlIH0gZnJvbSAnLi4vLi4vdXRpbHMnO1xuaW1wb3J0IHsgQUlUYWJsZUZpZWxkSWNvbiB9IGZyb20gJy4vZmllbGQtaWNvbi5jb21wb25lbnQnO1xuaW1wb3J0IHsgQUlUYWJsZUljb24gfSBmcm9tICcuL2ljb24uY29tcG9uZW50JztcbmltcG9ydCB7IEFJVGFibGVUZXh0IH0gZnJvbSAnLi90ZXh0LmNvbXBvbmVudCc7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAnYWktdGFibGUtZmllbGQtaGVhZCcsXG4gICAgdGVtcGxhdGU6IGBcbiAgICAgICAgPGtvLWdyb3VwIFtjb25maWddPVwiZ3JvdXBDb25maWcoKVwiPlxuICAgICAgICAgICAgPGtvLXJlY3QgW2NvbmZpZ109XCJiZ0NvbmZpZygpXCI+PC9rby1yZWN0PlxuICAgICAgICAgICAgPGtvLWdyb3VwPlxuICAgICAgICAgICAgICAgIDxhaS10YWJsZS1maWVsZC1pY29uIFtjb25maWddPVwiZmllbGRJY29uQ29uZmlnKClcIj48L2FpLXRhYmxlLWZpZWxkLWljb24+XG4gICAgICAgICAgICAgICAgPGFpLXRhYmxlLXRleHQgW2NvbmZpZ109XCJ0ZXh0Q29uZmlnKClcIj48L2FpLXRhYmxlLXRleHQ+XG4gICAgICAgICAgICAgICAgQGlmIChjb25maWcoKS5pY29uVmlzaWJsZSkge1xuICAgICAgICAgICAgICAgICAgICA8YWktdGFibGUtaWNvbiBbY29uZmlnXT1cIm1vcmVJY29uQ29uZmlnKClcIj48L2FpLXRhYmxlLWljb24+XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgPC9rby1ncm91cD5cbiAgICAgICAgPC9rby1ncm91cD5cbiAgICBgLFxuICAgIHN0YW5kYWxvbmU6IHRydWUsXG4gICAgaW1wb3J0czogW0tvQ29udGFpbmVyLCBLb1N0YWdlLCBLb1NoYXBlLCBBSVRhYmxlRmllbGRJY29uLCBBSVRhYmxlVGV4dCwgQUlUYWJsZUljb25dLFxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoXG59KVxuZXhwb3J0IGNsYXNzIEFJVGFibGVGaWVsZEhlYWQge1xuICAgIGNvbmZpZyA9IGlucHV0LnJlcXVpcmVkPEFJVGFibGVGaWVsZEhlYWRDb25maWc+KCk7XG5cbiAgICB0ZXh0T2Zmc2V0ID0gQUlfVEFCTEVfQ0VMTF9QQURESU5HICsgQUlfVEFCTEVfSUNPTl9DT01NT05fU0laRSArIEFJX1RBQkxFX0ZJRUxEX0hFQURfSUNPTl9HQVBfU0laRTtcblxuICAgIHRleHRNZWFzdXJlID0gVGV4dE1lYXN1cmUoKTtcblxuICAgIGF2YWlsYWJsZVRleHRXaWR0aCA9IGNvbXB1dGVkKCgpID0+IHtcbiAgICAgICAgY29uc3QgeyB3aWR0aCwgaWNvblZpc2libGUgfSA9IHRoaXMuY29uZmlnKCk7XG4gICAgICAgIHJldHVybiAoXG4gICAgICAgICAgICB3aWR0aCAtXG4gICAgICAgICAgICAoaWNvblZpc2libGVcbiAgICAgICAgICAgICAgICA/IDIgKiAoQUlfVEFCTEVfQ0VMTF9QQURESU5HICsgQUlfVEFCTEVfSUNPTl9DT01NT05fU0laRSArIEFJX1RBQkxFX0ZJRUxEX0hFQURfSUNPTl9HQVBfU0laRSlcbiAgICAgICAgICAgICAgICA6IDIgKiBBSV9UQUJMRV9DRUxMX1BBRERJTkcgKyBBSV9UQUJMRV9JQ09OX0NPTU1PTl9TSVpFICsgQUlfVEFCTEVfRklFTERfSEVBRF9JQ09OX0dBUF9TSVpFKVxuICAgICAgICApO1xuICAgIH0pO1xuXG4gICAgdGV4dERhdGEgPSBjb21wdXRlZCgoKSA9PiB7XG4gICAgICAgIGNvbnN0IGZpZWxkTmFtZSA9IHRoaXMuY29uZmlnKCkuZmllbGQubmFtZS5yZXBsYWNlKC9cXHJ8XFxuL2csICcgJyk7XG4gICAgICAgIHRoaXMudGV4dE1lYXN1cmUuc2V0Rm9udCh7IGZvbnRTaXplOiBERUZBVUxUX0ZPTlRfU0laRSB9KTtcbiAgICAgICAgY29uc3QgeyB3aWR0aCwgaGVpZ2h0LCBpc092ZXJmbG93IH0gPSB0aGlzLnRleHRNZWFzdXJlLm1lYXN1cmVUZXh0KGZpZWxkTmFtZSwgdGhpcy5hdmFpbGFibGVUZXh0V2lkdGgoKSwgMSk7XG4gICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICB3aWR0aDogTWF0aC5taW4od2lkdGgsIHRoaXMuYXZhaWxhYmxlVGV4dFdpZHRoKCkpLFxuICAgICAgICAgICAgaGVpZ2h0LFxuICAgICAgICAgICAgaXNPdmVyZmxvd1xuICAgICAgICB9O1xuICAgIH0pO1xuXG4gICAgZ3JvdXBDb25maWcgPSBjb21wdXRlZDxQYXJ0aWFsPFN0YWdlQ29uZmlnPj4oKCkgPT4ge1xuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgeDogdGhpcy5jb25maWcoKS54LFxuICAgICAgICAgICAgeTogdGhpcy5jb25maWcoKS55XG4gICAgICAgIH07XG4gICAgfSk7XG5cbiAgICBiZ0NvbmZpZyA9IGNvbXB1dGVkKCgpID0+IHtcbiAgICAgICAgY29uc3QgeyBmaWVsZCwgd2lkdGgsIGhlaWdodCwgc3Ryb2tlLCBpc1NlbGVjdGVkLCBpY29uVmlzaWJsZSB9ID0gdGhpcy5jb25maWcoKTtcbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgIHg6IEFJX1RBQkxFX09GRlNFVCxcbiAgICAgICAgICAgIHk6IEFJX1RBQkxFX09GRlNFVCxcbiAgICAgICAgICAgIG5hbWU6IGdlbmVyYXRlVGFyZ2V0TmFtZSh7XG4gICAgICAgICAgICAgICAgdGFyZ2V0TmFtZTogQUlfVEFCTEVfRklFTERfSEVBRCxcbiAgICAgICAgICAgICAgICBmaWVsZElkOiBmaWVsZC5faWRcbiAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgd2lkdGg6IHdpZHRoLFxuICAgICAgICAgICAgaGVpZ2h0OiBoZWlnaHQsXG4gICAgICAgICAgICBmaWxsOiBpc1NlbGVjdGVkID8gQ29sb3JzLmhlYWRTZWxlY3RlZEJnQ29sb3IgOiBpY29uVmlzaWJsZSA/IENvbG9ycy5ncmF5ODAgOiBDb2xvcnMud2hpdGUsXG4gICAgICAgICAgICBzdHJva2U6IHN0cm9rZSB8fCBDb2xvcnMuZ3JheTIwMCxcbiAgICAgICAgICAgIHN0cm9rZVdpZHRoOiAxLFxuICAgICAgICAgICAgb3BhY2l0eTogMVxuICAgICAgICB9O1xuICAgIH0pO1xuXG4gICAgZmllbGRJY29uQ29uZmlnID0gY29tcHV0ZWQoKCkgPT4ge1xuICAgICAgICBjb25zdCB7IGZpZWxkLCBoZWlnaHQgfSA9IHRoaXMuY29uZmlnKCk7XG4gICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICBmaWVsZDogZmllbGQsXG4gICAgICAgICAgICB4OiBBSV9UQUJMRV9DRUxMX1BBRERJTkcsXG4gICAgICAgICAgICB5OiAoaGVpZ2h0IC0gQUlfVEFCTEVfSUNPTl9DT01NT05fU0laRSkgLyAyLFxuICAgICAgICAgICAgd2lkdGg6IEFJX1RBQkxFX0lDT05fQ09NTU9OX1NJWkUsXG4gICAgICAgICAgICBoZWlnaHQ6IEFJX1RBQkxFX0lDT05fQ09NTU9OX1NJWkUsXG4gICAgICAgICAgICBmaWxsOiBDb2xvcnMuZ3JheTYwMFxuICAgICAgICB9O1xuICAgIH0pO1xuXG4gICAgdGV4dENvbmZpZyA9IGNvbXB1dGVkKCgpID0+IHtcbiAgICAgICAgY29uc3QgeyBmaWVsZCwgaGVpZ2h0IH0gPSB0aGlzLmNvbmZpZygpO1xuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgeDogdGhpcy50ZXh0T2Zmc2V0LFxuICAgICAgICAgICAgeTogdW5kZWZpbmVkLFxuICAgICAgICAgICAgd2lkdGg6IE1hdGgubWF4KHRoaXMudGV4dERhdGEoKS53aWR0aCwgQUlfVEFCTEVfRklFTERfSEVBRF9URVhUX01JTl9XSURUSCksXG4gICAgICAgICAgICBoZWlnaHQ6IGhlaWdodCArIDIsXG4gICAgICAgICAgICB0ZXh0OiBmaWVsZC5uYW1lLFxuICAgICAgICAgICAgbGluZUhlaWdodDogMS44NFxuICAgICAgICB9O1xuICAgIH0pO1xuXG4gICAgbW9yZUljb25Db25maWcgPSBjb21wdXRlZCgoKSA9PiB7XG4gICAgICAgIGNvbnN0IHsgZmllbGQsIHdpZHRoLCBoZWlnaHQsIGlzSG92ZXJJY29uLCBpc1NlbGVjdGVkIH0gPSB0aGlzLmNvbmZpZygpO1xuICAgICAgICBjb25zdCBjb21tb25JY29uT2Zmc2V0WSA9IChoZWlnaHQgLSBBSV9UQUJMRV9BQ1RJT05fQ09NTU9OX1NJWkUpIC8gMjtcbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgIG5hbWU6IGdlbmVyYXRlVGFyZ2V0TmFtZSh7XG4gICAgICAgICAgICAgICAgdGFyZ2V0TmFtZTogQUlfVEFCTEVfRklFTERfSEVBRF9NT1JFLFxuICAgICAgICAgICAgICAgIGZpZWxkSWQ6IGZpZWxkLl9pZFxuICAgICAgICAgICAgfSksXG4gICAgICAgICAgICB4OiB3aWR0aCAtIEFJX1RBQkxFX0NFTExfUEFERElORyAtIEFJX1RBQkxFX0FDVElPTl9DT01NT05fU0laRSxcbiAgICAgICAgICAgIHk6IGNvbW1vbkljb25PZmZzZXRZLFxuICAgICAgICAgICAgZGF0YTogTW9yZVN0YW5kT3V0bGluZWRQYXRoLFxuICAgICAgICAgICAgZmlsbDogaXNIb3Zlckljb24gPyBDb2xvcnMucHJpbWFyeSA6IENvbG9ycy5ncmF5NjAwLFxuICAgICAgICAgICAgYmFja2dyb3VuZDogaXNTZWxlY3RlZCB8fCBpc0hvdmVySWNvbiA/IENvbG9ycy5pdGVtQWN0aXZlQmdDb2xvciA6IENvbG9ycy5ncmF5ODAsXG4gICAgICAgICAgICBiYWNrZ3JvdW5kV2lkdGg6IEFJX1RBQkxFX0FDVElPTl9DT01NT05fU0laRSxcbiAgICAgICAgICAgIGJhY2tncm91bmRIZWlnaHQ6IEFJX1RBQkxFX0FDVElPTl9DT01NT05fU0laRSxcbiAgICAgICAgICAgIGNvcm5lclJhZGl1czogNFxuICAgICAgICB9O1xuICAgIH0pO1xufVxuIl19
|
@@ -0,0 +1,66 @@
|
|
1
|
+
import { ChangeDetectionStrategy, Component, computed, input } from '@angular/core';
|
2
|
+
import { ColumnCalendarFilledPath, ColumnLinkOutlinedPath, ColumnMemberFilledPath, ColumnMultipleFillPath, ColumnNumberFilledPath, ColumnProgressFilledPath, ColumnRatingFilledPath, ColumnSelectFilledPath, ColumnTextFilledPath } from '../../constants';
|
3
|
+
import { AITableFieldType } from '../../core';
|
4
|
+
import { AITableIcon } from './icon.component';
|
5
|
+
import * as i0 from "@angular/core";
|
6
|
+
export class AITableFieldIcon {
|
7
|
+
constructor() {
|
8
|
+
this.config = input.required();
|
9
|
+
this.iconConfig = computed(() => {
|
10
|
+
const { field, x, y, width, height, fill } = this.config();
|
11
|
+
let data = null;
|
12
|
+
switch (field.type) {
|
13
|
+
case AITableFieldType.text:
|
14
|
+
data = ColumnTextFilledPath;
|
15
|
+
break;
|
16
|
+
case AITableFieldType.select:
|
17
|
+
data = field.settings?.is_multiple ? ColumnMultipleFillPath : ColumnSelectFilledPath;
|
18
|
+
break;
|
19
|
+
case AITableFieldType.date:
|
20
|
+
case AITableFieldType.createdAt:
|
21
|
+
case AITableFieldType.updatedAt:
|
22
|
+
data = ColumnCalendarFilledPath;
|
23
|
+
break;
|
24
|
+
case AITableFieldType.number:
|
25
|
+
data = ColumnNumberFilledPath;
|
26
|
+
break;
|
27
|
+
case AITableFieldType.link:
|
28
|
+
data = ColumnLinkOutlinedPath;
|
29
|
+
break;
|
30
|
+
case AITableFieldType.rate:
|
31
|
+
data = ColumnRatingFilledPath;
|
32
|
+
break;
|
33
|
+
case AITableFieldType.member:
|
34
|
+
case AITableFieldType.createdBy:
|
35
|
+
case AITableFieldType.updatedBy:
|
36
|
+
data = ColumnMemberFilledPath;
|
37
|
+
break;
|
38
|
+
case AITableFieldType.progress:
|
39
|
+
data = ColumnProgressFilledPath;
|
40
|
+
break;
|
41
|
+
}
|
42
|
+
return {
|
43
|
+
x,
|
44
|
+
y,
|
45
|
+
size: width,
|
46
|
+
backgroundHeight: height,
|
47
|
+
listening: false,
|
48
|
+
data,
|
49
|
+
fill
|
50
|
+
};
|
51
|
+
});
|
52
|
+
}
|
53
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: AITableFieldIcon, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
54
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "18.2.0", type: AITableFieldIcon, isStandalone: true, selector: "ai-table-field-icon", inputs: { config: { classPropertyName: "config", publicName: "config", isSignal: true, isRequired: true, transformFunction: null } }, ngImport: i0, template: ` <ai-table-icon [config]="iconConfig()"></ai-table-icon> `, isInline: true, dependencies: [{ kind: "component", type: AITableIcon, selector: "ai-table-icon", inputs: ["config"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
55
|
+
}
|
56
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: AITableFieldIcon, decorators: [{
|
57
|
+
type: Component,
|
58
|
+
args: [{
|
59
|
+
selector: 'ai-table-field-icon',
|
60
|
+
template: ` <ai-table-icon [config]="iconConfig()"></ai-table-icon> `,
|
61
|
+
standalone: true,
|
62
|
+
imports: [AITableIcon],
|
63
|
+
changeDetection: ChangeDetectionStrategy.OnPush
|
64
|
+
}]
|
65
|
+
}] });
|
66
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmllbGQtaWNvbi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9ncmlkL3NyYy9yZW5kZXJlci9jb21wb25lbnRzL2ZpZWxkLWljb24uY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxTQUFTLEVBQUUsUUFBUSxFQUFFLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNwRixPQUFPLEVBQ0gsd0JBQXdCLEVBQ3hCLHNCQUFzQixFQUN0QixzQkFBc0IsRUFDdEIsc0JBQXNCLEVBQ3RCLHNCQUFzQixFQUN0Qix3QkFBd0IsRUFDeEIsc0JBQXNCLEVBQ3RCLHNCQUFzQixFQUN0QixvQkFBb0IsRUFDdkIsTUFBTSxpQkFBaUIsQ0FBQztBQUN6QixPQUFPLEVBQUUsZ0JBQWdCLEVBQWtCLE1BQU0sWUFBWSxDQUFDO0FBRTlELE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQzs7QUFTL0MsTUFBTSxPQUFPLGdCQUFnQjtJQVA3QjtRQVFJLFdBQU0sR0FBRyxLQUFLLENBQUMsUUFBUSxFQUE4QixDQUFDO1FBRXRELGVBQVUsR0FBRyxRQUFRLENBQUMsR0FBRyxFQUFFO1lBQ3ZCLE1BQU0sRUFBRSxLQUFLLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRSxHQUFHLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQztZQUMzRCxJQUFJLElBQUksR0FBRyxJQUFJLENBQUM7WUFDaEIsUUFBUSxLQUFLLENBQUMsSUFBSSxFQUFFLENBQUM7Z0JBQ2pCLEtBQUssZ0JBQWdCLENBQUMsSUFBSTtvQkFDdEIsSUFBSSxHQUFHLG9CQUFvQixDQUFDO29CQUM1QixNQUFNO2dCQUNWLEtBQUssZ0JBQWdCLENBQUMsTUFBTTtvQkFDeEIsSUFBSSxHQUFJLEtBQUssQ0FBQyxRQUEyQixFQUFFLFdBQVcsQ0FBQyxDQUFDLENBQUMsc0JBQXNCLENBQUMsQ0FBQyxDQUFDLHNCQUFzQixDQUFDO29CQUN6RyxNQUFNO2dCQUNWLEtBQUssZ0JBQWdCLENBQUMsSUFBSSxDQUFDO2dCQUMzQixLQUFLLGdCQUFnQixDQUFDLFNBQVMsQ0FBQztnQkFDaEMsS0FBSyxnQkFBZ0IsQ0FBQyxTQUFTO29CQUMzQixJQUFJLEdBQUcsd0JBQXdCLENBQUM7b0JBQ2hDLE1BQU07Z0JBQ1YsS0FBSyxnQkFBZ0IsQ0FBQyxNQUFNO29CQUN4QixJQUFJLEdBQUcsc0JBQXNCLENBQUM7b0JBQzlCLE1BQU07Z0JBQ1YsS0FBSyxnQkFBZ0IsQ0FBQyxJQUFJO29CQUN0QixJQUFJLEdBQUcsc0JBQXNCLENBQUM7b0JBQzlCLE1BQU07Z0JBQ1YsS0FBSyxnQkFBZ0IsQ0FBQyxJQUFJO29CQUN0QixJQUFJLEdBQUcsc0JBQXNCLENBQUM7b0JBQzlCLE1BQU07Z0JBQ1YsS0FBSyxnQkFBZ0IsQ0FBQyxNQUFNLENBQUM7Z0JBQzdCLEtBQUssZ0JBQWdCLENBQUMsU0FBUyxDQUFDO2dCQUNoQyxLQUFLLGdCQUFnQixDQUFDLFNBQVM7b0JBQzNCLElBQUksR0FBRyxzQkFBc0IsQ0FBQztvQkFDOUIsTUFBTTtnQkFDVixLQUFLLGdCQUFnQixDQUFDLFFBQVE7b0JBQzFCLElBQUksR0FBRyx3QkFBd0IsQ0FBQztvQkFDaEMsTUFBTTtZQUNkLENBQUM7WUFDRCxPQUFPO2dCQUNILENBQUM7Z0JBQ0QsQ0FBQztnQkFDRCxJQUFJLEVBQUUsS0FBSztnQkFDWCxnQkFBZ0IsRUFBRSxNQUFNO2dCQUN4QixTQUFTLEVBQUUsS0FBSztnQkFDaEIsSUFBSTtnQkFDSixJQUFJO2FBQ1AsQ0FBQztRQUNOLENBQUMsQ0FBQyxDQUFDO0tBQ047OEdBOUNZLGdCQUFnQjtrR0FBaEIsZ0JBQWdCLHFOQUxmLDJEQUEyRCw0REFFM0QsV0FBVzs7MkZBR1osZ0JBQWdCO2tCQVA1QixTQUFTO21CQUFDO29CQUNQLFFBQVEsRUFBRSxxQkFBcUI7b0JBQy9CLFFBQVEsRUFBRSwyREFBMkQ7b0JBQ3JFLFVBQVUsRUFBRSxJQUFJO29CQUNoQixPQUFPLEVBQUUsQ0FBQyxXQUFXLENBQUM7b0JBQ3RCLGVBQWUsRUFBRSx1QkFBdUIsQ0FBQyxNQUFNO2lCQUNsRCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIGNvbXB1dGVkLCBpbnB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtcbiAgICBDb2x1bW5DYWxlbmRhckZpbGxlZFBhdGgsXG4gICAgQ29sdW1uTGlua091dGxpbmVkUGF0aCxcbiAgICBDb2x1bW5NZW1iZXJGaWxsZWRQYXRoLFxuICAgIENvbHVtbk11bHRpcGxlRmlsbFBhdGgsXG4gICAgQ29sdW1uTnVtYmVyRmlsbGVkUGF0aCxcbiAgICBDb2x1bW5Qcm9ncmVzc0ZpbGxlZFBhdGgsXG4gICAgQ29sdW1uUmF0aW5nRmlsbGVkUGF0aCxcbiAgICBDb2x1bW5TZWxlY3RGaWxsZWRQYXRoLFxuICAgIENvbHVtblRleHRGaWxsZWRQYXRoXG59IGZyb20gJy4uLy4uL2NvbnN0YW50cyc7XG5pbXBvcnQgeyBBSVRhYmxlRmllbGRUeXBlLCBTZWxlY3RTZXR0aW5ncyB9IGZyb20gJy4uLy4uL2NvcmUnO1xuaW1wb3J0IHsgQUlUYWJsZUZpZWxkVHlwZUljb25Db25maWcgfSBmcm9tICcuLi8uLi90eXBlcyc7XG5pbXBvcnQgeyBBSVRhYmxlSWNvbiB9IGZyb20gJy4vaWNvbi5jb21wb25lbnQnO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ2FpLXRhYmxlLWZpZWxkLWljb24nLFxuICAgIHRlbXBsYXRlOiBgIDxhaS10YWJsZS1pY29uIFtjb25maWddPVwiaWNvbkNvbmZpZygpXCI+PC9haS10YWJsZS1pY29uPiBgLFxuICAgIHN0YW5kYWxvbmU6IHRydWUsXG4gICAgaW1wb3J0czogW0FJVGFibGVJY29uXSxcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaFxufSlcbmV4cG9ydCBjbGFzcyBBSVRhYmxlRmllbGRJY29uIHtcbiAgICBjb25maWcgPSBpbnB1dC5yZXF1aXJlZDxBSVRhYmxlRmllbGRUeXBlSWNvbkNvbmZpZz4oKTtcblxuICAgIGljb25Db25maWcgPSBjb21wdXRlZCgoKSA9PiB7XG4gICAgICAgIGNvbnN0IHsgZmllbGQsIHgsIHksIHdpZHRoLCBoZWlnaHQsIGZpbGwgfSA9IHRoaXMuY29uZmlnKCk7XG4gICAgICAgIGxldCBkYXRhID0gbnVsbDtcbiAgICAgICAgc3dpdGNoIChmaWVsZC50eXBlKSB7XG4gICAgICAgICAgICBjYXNlIEFJVGFibGVGaWVsZFR5cGUudGV4dDpcbiAgICAgICAgICAgICAgICBkYXRhID0gQ29sdW1uVGV4dEZpbGxlZFBhdGg7XG4gICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICBjYXNlIEFJVGFibGVGaWVsZFR5cGUuc2VsZWN0OlxuICAgICAgICAgICAgICAgIGRhdGEgPSAoZmllbGQuc2V0dGluZ3MgYXMgU2VsZWN0U2V0dGluZ3MpPy5pc19tdWx0aXBsZSA/IENvbHVtbk11bHRpcGxlRmlsbFBhdGggOiBDb2x1bW5TZWxlY3RGaWxsZWRQYXRoO1xuICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgY2FzZSBBSVRhYmxlRmllbGRUeXBlLmRhdGU6XG4gICAgICAgICAgICBjYXNlIEFJVGFibGVGaWVsZFR5cGUuY3JlYXRlZEF0OlxuICAgICAgICAgICAgY2FzZSBBSVRhYmxlRmllbGRUeXBlLnVwZGF0ZWRBdDpcbiAgICAgICAgICAgICAgICBkYXRhID0gQ29sdW1uQ2FsZW5kYXJGaWxsZWRQYXRoO1xuICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgY2FzZSBBSVRhYmxlRmllbGRUeXBlLm51bWJlcjpcbiAgICAgICAgICAgICAgICBkYXRhID0gQ29sdW1uTnVtYmVyRmlsbGVkUGF0aDtcbiAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgIGNhc2UgQUlUYWJsZUZpZWxkVHlwZS5saW5rOlxuICAgICAgICAgICAgICAgIGRhdGEgPSBDb2x1bW5MaW5rT3V0bGluZWRQYXRoO1xuICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgY2FzZSBBSVRhYmxlRmllbGRUeXBlLnJhdGU6XG4gICAgICAgICAgICAgICAgZGF0YSA9IENvbHVtblJhdGluZ0ZpbGxlZFBhdGg7XG4gICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICBjYXNlIEFJVGFibGVGaWVsZFR5cGUubWVtYmVyOlxuICAgICAgICAgICAgY2FzZSBBSVRhYmxlRmllbGRUeXBlLmNyZWF0ZWRCeTpcbiAgICAgICAgICAgIGNhc2UgQUlUYWJsZUZpZWxkVHlwZS51cGRhdGVkQnk6XG4gICAgICAgICAgICAgICAgZGF0YSA9IENvbHVtbk1lbWJlckZpbGxlZFBhdGg7XG4gICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICBjYXNlIEFJVGFibGVGaWVsZFR5cGUucHJvZ3Jlc3M6XG4gICAgICAgICAgICAgICAgZGF0YSA9IENvbHVtblByb2dyZXNzRmlsbGVkUGF0aDtcbiAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgeCxcbiAgICAgICAgICAgIHksXG4gICAgICAgICAgICBzaXplOiB3aWR0aCxcbiAgICAgICAgICAgIGJhY2tncm91bmRIZWlnaHQ6IGhlaWdodCxcbiAgICAgICAgICAgIGxpc3RlbmluZzogZmFsc2UsXG4gICAgICAgICAgICBkYXRhLFxuICAgICAgICAgICAgZmlsbFxuICAgICAgICB9O1xuICAgIH0pO1xufVxuIl19
|
@@ -0,0 +1,36 @@
|
|
1
|
+
import { ChangeDetectionStrategy, Component, computed, input } from '@angular/core';
|
2
|
+
import { KoShape } from '../../angular-konva';
|
3
|
+
import { createCells } from '../creations/create-cells';
|
4
|
+
import * as i0 from "@angular/core";
|
5
|
+
export class AITableFrozenCells {
|
6
|
+
constructor() {
|
7
|
+
this.config = input.required();
|
8
|
+
this.frozenCellsConfig = computed(() => {
|
9
|
+
const { coordinate } = this.config();
|
10
|
+
const { frozenColumnCount } = coordinate;
|
11
|
+
return {
|
12
|
+
listening: false,
|
13
|
+
perfectDrawEnabled: false,
|
14
|
+
sceneFunc: (ctx) => createCells({
|
15
|
+
...this.config(),
|
16
|
+
ctx,
|
17
|
+
columnStartIndex: 0,
|
18
|
+
columnStopIndex: frozenColumnCount - 1
|
19
|
+
})
|
20
|
+
};
|
21
|
+
});
|
22
|
+
}
|
23
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: AITableFrozenCells, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
24
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "18.2.0", type: AITableFrozenCells, isStandalone: true, selector: "ai-table-frozen-cells", inputs: { config: { classPropertyName: "config", publicName: "config", isSignal: true, isRequired: true, transformFunction: null } }, ngImport: i0, template: `<ko-shape [config]="frozenCellsConfig()"></ko-shape>`, isInline: true, dependencies: [{ kind: "component", type: KoShape, selector: "ko-shape, ko-circle, ko-label, ko-rect, ko-ellipse, ko-wedge, ko-line, ko-sprite, ko-image, ko-text, ko-text-path, ko-star, ko-ring, ko-arc, ko-tag, ko-path, ko-regular-polygon, ko-arrow, ko-transformer", inputs: ["config"], outputs: ["koMouseover", "koMousemove", "koMouseout", "koMouseenter", "koMouseleave", "koMousedown", "koMouseup", "koWheel", "koContextmenu", "koClick", "koDblclick", "koTouchstart", "koTouchmove", "koTouchend", "koTap", "koDbltap", "koDragstart", "koDragmove", "koDragend"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
25
|
+
}
|
26
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: AITableFrozenCells, decorators: [{
|
27
|
+
type: Component,
|
28
|
+
args: [{
|
29
|
+
selector: 'ai-table-frozen-cells',
|
30
|
+
template: `<ko-shape [config]="frozenCellsConfig()"></ko-shape>`,
|
31
|
+
standalone: true,
|
32
|
+
imports: [KoShape],
|
33
|
+
changeDetection: ChangeDetectionStrategy.OnPush
|
34
|
+
}]
|
35
|
+
}] });
|
36
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZnJvemVuLWNlbGxzLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2dyaWQvc3JjL3JlbmRlcmVyL2NvbXBvbmVudHMvZnJvemVuLWNlbGxzLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLFFBQVEsRUFBRSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFcEYsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBRTlDLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQzs7QUFTeEQsTUFBTSxPQUFPLGtCQUFrQjtJQVAvQjtRQVFJLFdBQU0sR0FBRyxLQUFLLENBQUMsUUFBUSxFQUFzQixDQUFDO1FBRTlDLHNCQUFpQixHQUFHLFFBQVEsQ0FBQyxHQUFHLEVBQUU7WUFDOUIsTUFBTSxFQUFFLFVBQVUsRUFBRSxHQUFHLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQztZQUNyQyxNQUFNLEVBQUUsaUJBQWlCLEVBQUUsR0FBRyxVQUFVLENBQUM7WUFDekMsT0FBTztnQkFDSCxTQUFTLEVBQUUsS0FBSztnQkFDaEIsa0JBQWtCLEVBQUUsS0FBSztnQkFDekIsU0FBUyxFQUFFLENBQUMsR0FBa0IsRUFBRSxFQUFFLENBQzlCLFdBQVcsQ0FBQztvQkFDUixHQUFHLElBQUksQ0FBQyxNQUFNLEVBQUU7b0JBQ2hCLEdBQUc7b0JBQ0gsZ0JBQWdCLEVBQUUsQ0FBQztvQkFDbkIsZUFBZSxFQUFFLGlCQUFpQixHQUFHLENBQUM7aUJBQ3pDLENBQUM7YUFDVCxDQUFDO1FBQ04sQ0FBQyxDQUFDLENBQUM7S0FDTjs4R0FsQlksa0JBQWtCO2tHQUFsQixrQkFBa0IsdU5BTGpCLHNEQUFzRCw0REFFdEQsT0FBTzs7MkZBR1Isa0JBQWtCO2tCQVA5QixTQUFTO21CQUFDO29CQUNQLFFBQVEsRUFBRSx1QkFBdUI7b0JBQ2pDLFFBQVEsRUFBRSxzREFBc0Q7b0JBQ2hFLFVBQVUsRUFBRSxJQUFJO29CQUNoQixPQUFPLEVBQUUsQ0FBQyxPQUFPLENBQUM7b0JBQ2xCLGVBQWUsRUFBRSx1QkFBdUIsQ0FBQyxNQUFNO2lCQUNsRCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIGNvbXB1dGVkLCBpbnB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IEtvbnZhIGZyb20gJ2tvbnZhJztcbmltcG9ydCB7IEtvU2hhcGUgfSBmcm9tICcuLi8uLi9hbmd1bGFyLWtvbnZhJztcbmltcG9ydCB7IEFJVGFibGVDZWxsc0NvbmZpZyB9IGZyb20gJy4uLy4uL3R5cGVzJztcbmltcG9ydCB7IGNyZWF0ZUNlbGxzIH0gZnJvbSAnLi4vY3JlYXRpb25zL2NyZWF0ZS1jZWxscyc7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAnYWktdGFibGUtZnJvemVuLWNlbGxzJyxcbiAgICB0ZW1wbGF0ZTogYDxrby1zaGFwZSBbY29uZmlnXT1cImZyb3plbkNlbGxzQ29uZmlnKClcIj48L2tvLXNoYXBlPmAsXG4gICAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgICBpbXBvcnRzOiBbS29TaGFwZV0sXG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2hcbn0pXG5leHBvcnQgY2xhc3MgQUlUYWJsZUZyb3plbkNlbGxzIHtcbiAgICBjb25maWcgPSBpbnB1dC5yZXF1aXJlZDxBSVRhYmxlQ2VsbHNDb25maWc+KCk7XG5cbiAgICBmcm96ZW5DZWxsc0NvbmZpZyA9IGNvbXB1dGVkKCgpID0+IHtcbiAgICAgICAgY29uc3QgeyBjb29yZGluYXRlIH0gPSB0aGlzLmNvbmZpZygpO1xuICAgICAgICBjb25zdCB7IGZyb3plbkNvbHVtbkNvdW50IH0gPSBjb29yZGluYXRlO1xuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgbGlzdGVuaW5nOiBmYWxzZSxcbiAgICAgICAgICAgIHBlcmZlY3REcmF3RW5hYmxlZDogZmFsc2UsXG4gICAgICAgICAgICBzY2VuZUZ1bmM6IChjdHg6IEtvbnZhLkNvbnRleHQpID0+XG4gICAgICAgICAgICAgICAgY3JlYXRlQ2VsbHMoe1xuICAgICAgICAgICAgICAgICAgICAuLi50aGlzLmNvbmZpZygpLFxuICAgICAgICAgICAgICAgICAgICBjdHgsXG4gICAgICAgICAgICAgICAgICAgIGNvbHVtblN0YXJ0SW5kZXg6IDAsXG4gICAgICAgICAgICAgICAgICAgIGNvbHVtblN0b3BJbmRleDogZnJvemVuQ29sdW1uQ291bnQgLSAxXG4gICAgICAgICAgICAgICAgfSlcbiAgICAgICAgfTtcbiAgICB9KTtcbn1cbiJdfQ==
|
@@ -0,0 +1,117 @@
|
|
1
|
+
import { ChangeDetectionStrategy, Component, computed, input } from '@angular/core';
|
2
|
+
import { KoShape, KoStage, KoContainer } from '../../angular-konva';
|
3
|
+
import { AI_TABLE_CELL_PADDING, AI_TABLE_FIELD_HEAD_SELECT_CHECKBOX, AI_TABLE_ICON_COMMON_SIZE, AI_TABLE_OFFSET, AI_TABLE_ROW_HEAD_WIDTH, Colors } from '../../constants';
|
4
|
+
import { AITableCheckType } from '../../types';
|
5
|
+
import { createColumnHeads } from '../creations/create-heads';
|
6
|
+
import { AITableFieldHead } from './field-head.component';
|
7
|
+
import { AITableIcon } from './icon.component';
|
8
|
+
import * as i0 from "@angular/core";
|
9
|
+
export class AITableFrozenColumnHeads {
|
10
|
+
constructor() {
|
11
|
+
this.config = input.required();
|
12
|
+
this.coordinate = computed(() => {
|
13
|
+
return this.config().coordinate;
|
14
|
+
});
|
15
|
+
this.isChecked = computed(() => {
|
16
|
+
const { selection, records } = this.config().aiTable;
|
17
|
+
return selection().selectedRecords.size === records().length;
|
18
|
+
});
|
19
|
+
this.fieldHeadHeight = computed(() => {
|
20
|
+
return this.coordinate().rowInitSize;
|
21
|
+
});
|
22
|
+
this.headConfigs = computed(() => {
|
23
|
+
return createColumnHeads({
|
24
|
+
...this.config(),
|
25
|
+
columnStartIndex: 0,
|
26
|
+
columnStopIndex: this.coordinate().frozenColumnCount - 1
|
27
|
+
});
|
28
|
+
});
|
29
|
+
this.numberHeadBgConfig = computed(() => {
|
30
|
+
return {
|
31
|
+
x: AI_TABLE_OFFSET,
|
32
|
+
y: AI_TABLE_OFFSET,
|
33
|
+
width: AI_TABLE_ROW_HEAD_WIDTH,
|
34
|
+
height: this.fieldHeadHeight(),
|
35
|
+
fill: Colors.white,
|
36
|
+
listening: false
|
37
|
+
};
|
38
|
+
});
|
39
|
+
this.topLineConfig = {
|
40
|
+
x: AI_TABLE_OFFSET,
|
41
|
+
y: AI_TABLE_OFFSET,
|
42
|
+
points: [0, 0, AI_TABLE_ROW_HEAD_WIDTH, 0],
|
43
|
+
stroke: Colors.gray200,
|
44
|
+
strokeWidth: 1,
|
45
|
+
listening: false
|
46
|
+
};
|
47
|
+
this.bottomLineConfig = computed(() => {
|
48
|
+
return {
|
49
|
+
x: AI_TABLE_OFFSET,
|
50
|
+
y: AI_TABLE_OFFSET,
|
51
|
+
points: [AI_TABLE_ROW_HEAD_WIDTH, this.fieldHeadHeight(), 0, this.fieldHeadHeight()],
|
52
|
+
stroke: Colors.gray200,
|
53
|
+
strokeWidth: 1,
|
54
|
+
listening: false
|
55
|
+
};
|
56
|
+
});
|
57
|
+
this.iconConfig = computed(() => {
|
58
|
+
return {
|
59
|
+
name: AI_TABLE_FIELD_HEAD_SELECT_CHECKBOX,
|
60
|
+
x: AI_TABLE_CELL_PADDING,
|
61
|
+
y: (this.fieldHeadHeight() - AI_TABLE_ICON_COMMON_SIZE) / 2,
|
62
|
+
type: this.isChecked() ? AITableCheckType.checked : AITableCheckType.unchecked,
|
63
|
+
fill: this.isChecked() || (this.config().pointPosition.targetName === AI_TABLE_FIELD_HEAD_SELECT_CHECKBOX && !this.isChecked())
|
64
|
+
? Colors.primary
|
65
|
+
: Colors.gray300
|
66
|
+
};
|
67
|
+
});
|
68
|
+
this.headBgConfig = computed(() => {
|
69
|
+
const { frozenColumnWidth } = this.coordinate();
|
70
|
+
return {
|
71
|
+
x: AI_TABLE_ROW_HEAD_WIDTH,
|
72
|
+
y: AI_TABLE_OFFSET,
|
73
|
+
width: frozenColumnWidth + AI_TABLE_OFFSET,
|
74
|
+
height: this.fieldHeadHeight(),
|
75
|
+
stroke: Colors.gray200,
|
76
|
+
strokeWidth: 1,
|
77
|
+
fill: Colors.transparent,
|
78
|
+
listening: false
|
79
|
+
};
|
80
|
+
});
|
81
|
+
}
|
82
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: AITableFrozenColumnHeads, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
83
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.0", type: AITableFrozenColumnHeads, isStandalone: true, selector: "ai-table-frozen-column-heads", inputs: { config: { classPropertyName: "config", publicName: "config", isSignal: true, isRequired: true, transformFunction: null } }, ngImport: i0, template: `
|
84
|
+
<ko-rect [config]="numberHeadBgConfig()"></ko-rect>
|
85
|
+
<ko-line [config]="topLineConfig"></ko-line>
|
86
|
+
<ko-line [config]="bottomLineConfig()"></ko-line>
|
87
|
+
<ko-group>
|
88
|
+
<ai-table-icon [config]="iconConfig()"></ai-table-icon>
|
89
|
+
</ko-group>
|
90
|
+
@for (config of headConfigs(); track $index) {
|
91
|
+
<ai-table-field-head [config]="config"></ai-table-field-head>
|
92
|
+
}
|
93
|
+
<ko-rect [config]="headBgConfig()"></ko-rect>
|
94
|
+
`, isInline: true, dependencies: [{ kind: "component", type: KoShape, selector: "ko-shape, ko-circle, ko-label, ko-rect, ko-ellipse, ko-wedge, ko-line, ko-sprite, ko-image, ko-text, ko-text-path, ko-star, ko-ring, ko-arc, ko-tag, ko-path, ko-regular-polygon, ko-arrow, ko-transformer", inputs: ["config"], outputs: ["koMouseover", "koMousemove", "koMouseout", "koMouseenter", "koMouseleave", "koMousedown", "koMouseup", "koWheel", "koContextmenu", "koClick", "koDblclick", "koTouchstart", "koTouchmove", "koTouchend", "koTap", "koDbltap", "koDragstart", "koDragmove", "koDragend"] }, { kind: "component", type: AITableFieldHead, selector: "ai-table-field-head", inputs: ["config"] }, { kind: "component", type: AITableIcon, selector: "ai-table-icon", inputs: ["config"] }, { kind: "component", type: KoContainer, selector: "ko-layer, ko-fastlayer, ko-group" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
95
|
+
}
|
96
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: AITableFrozenColumnHeads, decorators: [{
|
97
|
+
type: Component,
|
98
|
+
args: [{
|
99
|
+
selector: 'ai-table-frozen-column-heads',
|
100
|
+
template: `
|
101
|
+
<ko-rect [config]="numberHeadBgConfig()"></ko-rect>
|
102
|
+
<ko-line [config]="topLineConfig"></ko-line>
|
103
|
+
<ko-line [config]="bottomLineConfig()"></ko-line>
|
104
|
+
<ko-group>
|
105
|
+
<ai-table-icon [config]="iconConfig()"></ai-table-icon>
|
106
|
+
</ko-group>
|
107
|
+
@for (config of headConfigs(); track $index) {
|
108
|
+
<ai-table-field-head [config]="config"></ai-table-field-head>
|
109
|
+
}
|
110
|
+
<ko-rect [config]="headBgConfig()"></ko-rect>
|
111
|
+
`,
|
112
|
+
standalone: true,
|
113
|
+
imports: [KoStage, KoShape, AITableFieldHead, AITableIcon, KoContainer],
|
114
|
+
changeDetection: ChangeDetectionStrategy.OnPush
|
115
|
+
}]
|
116
|
+
}] });
|
117
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZnJvemVuLWhlYWRzLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2dyaWQvc3JjL3JlbmRlcmVyL2NvbXBvbmVudHMvZnJvemVuLWhlYWRzLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLFFBQVEsRUFBRSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFcEYsT0FBTyxFQUFFLE9BQU8sRUFBRSxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDcEUsT0FBTyxFQUNILHFCQUFxQixFQUNyQixtQ0FBbUMsRUFDbkMseUJBQXlCLEVBQ3pCLGVBQWUsRUFDZix1QkFBdUIsRUFDdkIsTUFBTSxFQUNULE1BQU0saUJBQWlCLENBQUM7QUFDekIsT0FBTyxFQUFFLGdCQUFnQixFQUE0QixNQUFNLGFBQWEsQ0FBQztBQUN6RSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUM5RCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUMxRCxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sa0JBQWtCLENBQUM7O0FBb0IvQyxNQUFNLE9BQU8sd0JBQXdCO0lBbEJyQztRQW1CSSxXQUFNLEdBQUcsS0FBSyxDQUFDLFFBQVEsRUFBNEIsQ0FBQztRQUVwRCxlQUFVLEdBQUcsUUFBUSxDQUFDLEdBQUcsRUFBRTtZQUN2QixPQUFPLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQyxVQUFVLENBQUM7UUFDcEMsQ0FBQyxDQUFDLENBQUM7UUFFSCxjQUFTLEdBQUcsUUFBUSxDQUFDLEdBQUcsRUFBRTtZQUN0QixNQUFNLEVBQUUsU0FBUyxFQUFFLE9BQU8sRUFBRSxHQUFHLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQyxPQUFPLENBQUM7WUFDckQsT0FBTyxTQUFT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QUMxQyxNQUFNLEVBQUUsSUFBSSxDQUFDLGVBQWUsRUFBRTtnQkFDOUIsTUFBTSxFQUFFLE1BQU0sQ0FBQyxPQUFPO2dCQUN0QixXQUFXLEVBQUUsQ0FBQztnQkFDZCxJQUFJLEVBQUUsTUFBTSxDQUFDLFdBQVc7Z0JBQ3hCLFNBQVMsRUFBRSxLQUFLO2FBQ25CLENBQUM7UUFDTixDQUFDLENBQUMsQ0FBQztLQUNOOzhHQWpGWSx3QkFBd0I7a0dBQXhCLHdCQUF3Qiw4TkFoQnZCOzs7Ozs7Ozs7OztLQVdULDREQUVrQixPQUFPLCtoQkFBRSxnQkFBZ0Isb0ZBQUUsV0FBVyw4RUFBRSxXQUFXOzsyRkFHN0Qsd0JBQXdCO2tCQWxCcEMsU0FBUzttQkFBQztvQkFDUCxRQUFRLEVBQUUsOEJBQThCO29CQUN4QyxRQUFRLEVBQUU7Ozs7Ozs7Ozs7O0tBV1Q7b0JBQ0QsVUFBVSxFQUFFLElBQUk7b0JBQ2hCLE9BQU8sRUFBRSxDQUFDLE9BQU8sRUFBRSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsV0FBVyxFQUFFLFdBQVcsQ0FBQztvQkFDdkUsZUFBZSxFQUFFLHVCQUF1QixDQUFDLE1BQU07aUJBQ2xEIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgY29tcHV0ZWQsIGlucHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBTdGFnZUNvbmZpZyB9IGZyb20gJ2tvbnZhL2xpYi9TdGFnZSc7XG5pbXBvcnQgeyBLb1NoYXBlLCBLb1N0YWdlLCBLb0NvbnRhaW5lciB9IGZyb20gJy4uLy4uL2FuZ3VsYXIta29udmEnO1xuaW1wb3J0IHtcbiAgICBBSV9UQUJMRV9DRUxMX1BBRERJTkcsXG4gICAgQUlfVEFCTEVfRklFTERfSEVBRF9TRUxFQ1RfQ0hFQ0tCT1gsXG4gICAgQUlfVEFCTEVfSUNPTl9DT01NT05fU0laRSxcbiAgICBBSV9UQUJMRV9PRkZTRVQsXG4gICAgQUlfVEFCTEVfUk9XX0hFQURfV0lEVEgsXG4gICAgQ29sb3JzXG59IGZyb20gJy4uLy4uL2NvbnN0YW50cyc7XG5pbXBvcnQgeyBBSVRhYmxlQ2hlY2tUeXBlLCBBSVRhYmxlQ3JlYXRlSGVhZHNDb25maWcgfSBmcm9tICcuLi8uLi90eXBlcyc7XG5pbXBvcnQgeyBjcmVhdGVDb2x1bW5IZWFkcyB9IGZyb20gJy4uL2NyZWF0aW9ucy9jcmVhdGUtaGVhZHMnO1xuaW1wb3J0IHsgQUlUYWJsZUZpZWxkSGVhZCB9IGZyb20gJy4vZmllbGQtaGVhZC5jb21wb25lbnQnO1xuaW1wb3J0IHsgQUlUYWJsZUljb24gfSBmcm9tICcuL2ljb24uY29tcG9uZW50JztcblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICdhaS10YWJsZS1mcm96ZW4tY29sdW1uLWhlYWRzJyxcbiAgICB0ZW1wbGF0ZTogYFxuICAgICAgICA8a28tcmVjdCBbY29uZmlnXT1cIm51bWJlckhlYWRCZ0NvbmZpZygpXCI+PC9rby1yZWN0PlxuICAgICAgICA8a28tbGluZSBbY29uZmlnXT1cInRvcExpbmVDb25maWdcIj48L2tvLWxpbmU+XG4gICAgICAgIDxrby1saW5lIFtjb25maWddPVwiYm90dG9tTGluZUNvbmZpZygpXCI+PC9rby1saW5lPlxuICAgICAgICA8a28tZ3JvdXA+XG4gICAgICAgICAgICA8YWktdGFibGUtaWNvbiBbY29uZmlnXT1cImljb25Db25maWcoKVwiPjwvYWktdGFibGUtaWNvbj5cbiAgICAgICAgPC9rby1ncm91cD5cbiAgICAgICAgQGZvciAoY29uZmlnIG9mIGhlYWRDb25maWdzKCk7IHRyYWNrICRpbmRleCkge1xuICAgICAgICAgICAgPGFpLXRhYmxlLWZpZWxkLWhlYWQgW2NvbmZpZ109XCJjb25maWdcIj48L2FpLXRhYmxlLWZpZWxkLWhlYWQ+XG4gICAgICAgIH1cbiAgICAgICAgPGtvLXJlY3QgW2NvbmZpZ109XCJoZWFkQmdDb25maWcoKVwiPjwva28tcmVjdD5cbiAgICBgLFxuICAgIHN0YW5kYWxvbmU6IHRydWUsXG4gICAgaW1wb3J0czogW0tvU3RhZ2UsIEtvU2hhcGUsIEFJVGFibGVGaWVsZEhlYWQsIEFJVGFibGVJY29uLCBLb0NvbnRhaW5lcl0sXG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2hcbn0pXG5leHBvcnQgY2xhc3MgQUlUYWJsZUZyb3plbkNvbHVtbkhlYWRzIHtcbiAgICBjb25maWcgPSBpbnB1dC5yZXF1aXJlZDxBSVRhYmxlQ3JlYXRlSGVhZHNDb25maWc+KCk7XG5cbiAgICBjb29yZGluYXRlID0gY29tcHV0ZWQoKCkgPT4ge1xuICAgICAgICByZXR1cm4gdGhpcy5jb25maWcoKS5jb29yZGluYXRlO1xuICAgIH0pO1xuXG4gICAgaXNDaGVja2VkID0gY29tcHV0ZWQoKCkgPT4ge1xuICAgICAgICBjb25zdCB7IHNlbGVjdGlvbiwgcmVjb3JkcyB9ID0gdGhpcy5jb25maWcoKS5haVRhYmxlO1xuICAgICAgICByZXR1cm4gc2VsZWN0aW9uKCkuc2VsZWN0ZWRSZWNvcmRzLnNpemUgPT09IHJlY29yZHMoKS5sZW5ndGg7XG4gICAgfSk7XG5cbiAgICBmaWVsZEhlYWRIZWlnaHQgPSBjb21wdXRlZCgoKSA9PiB7XG4gICAgICAgIHJldHVybiB0aGlzLmNvb3JkaW5hdGUoKS5yb3dJbml0U2l6ZTtcbiAgICB9KTtcblxuICAgIGhlYWRDb25maWdzID0gY29tcHV0ZWQoKCkgPT4ge1xuICAgICAgICByZXR1cm4gY3JlYXRlQ29sdW1uSGVhZHMoe1xuICAgICAgICAgICAgLi4udGhpcy5jb25maWcoKSxcbiAgICAgICAgICAgIGNvbHVtblN0YXJ0SW5kZXg6IDAsXG4gICAgICAgICAgICBjb2x1bW5TdG9wSW5kZXg6IHRoaXMuY29vcmRpbmF0ZSgpLmZyb3plbkNvbHVtbkNvdW50IC0gMVxuICAgICAgICB9KTtcbiAgICB9KTtcblxuICAgIG51bWJlckhlYWRCZ0NvbmZpZyA9IGNvbXB1dGVkPFBhcnRpYWw8U3RhZ2VDb25maWc+PigoKSA9PiB7XG4gICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICB4OiBBSV9UQUJMRV9PRkZTRVQsXG4gICAgICAgICAgICB5OiBBSV9UQUJMRV9PRkZTRVQsXG4gICAgICAgICAgICB3aWR0aDogQUlfVEFCTEVfUk9XX0hFQURfV0lEVEgsXG4gICAgICAgICAgICBoZWlnaHQ6IHRoaXMuZmllbGRIZWFkSGVpZ2h0KCksXG4gICAgICAgICAgICBmaWxsOiBDb2xvcnMud2hpdGUsXG4gICAgICAgICAgICBsaXN0ZW5pbmc6IGZhbHNlXG4gICAgICAgIH07XG4gICAgfSk7XG5cbiAgICB0b3BMaW5lQ29uZmlnID0ge1xuICAgICAgICB4OiBBSV9UQUJMRV9PRkZTRVQsXG4gICAgICAgIHk6IEFJX1RBQkxFX09GRlNFVCxcbiAgICAgICAgcG9pbnRzOiBbMCwgMCwgQUlfVEFCTEVfUk9XX0hFQURfV0lEVEgsIDBdLFxuICAgICAgICBzdHJva2U6IENvbG9ycy5ncmF5MjAwLFxuICAgICAgICBzdHJva2VXaWR0aDogMSxcbiAgICAgICAgbGlzdGVuaW5nOiBmYWxzZVxuICAgIH07XG5cbiAgICBib3R0b21MaW5lQ29uZmlnID0gY29tcHV0ZWQoKCkgPT4ge1xuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgeDogQUlfVEFCTEVfT0ZGU0VULFxuICAgICAgICAgICAgeTogQUlfVEFCTEVfT0ZGU0VULFxuICAgICAgICAgICAgcG9pbnRzOiBbQUlfVEFCTEVfUk9XX0hFQURfV0lEVEgsIHRoaXMuZmllbGRIZWFkSGVpZ2h0KCksIDAsIHRoaXMuZmllbGRIZWFkSGVpZ2h0KCldLFxuICAgICAgICAgICAgc3Ryb2tlOiBDb2xvcnMuZ3JheTIwMCxcbiAgICAgICAgICAgIHN0cm9rZVdpZHRoOiAxLFxuICAgICAgICAgICAgbGlzdGVuaW5nOiBmYWxzZVxuICAgICAgICB9O1xuICAgIH0pO1xuXG4gICAgaWNvbkNvbmZpZyA9IGNvbXB1dGVkKCgpID0+IHtcbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgIG5hbWU6IEFJX1RBQkxFX0ZJRUxEX0hFQURfU0VMRUNUX0NIRUNLQk9YLFxuICAgICAgICAgICAgeDogQUlfVEFCTEVfQ0VMTF9QQURESU5HLFxuICAgICAgICAgICAgeTogKHRoaXMuZmllbGRIZWFkSGVpZ2h0KCkgLSBBSV9UQUJMRV9JQ09OX0NPTU1PTl9TSVpFKSAvIDIsXG4gICAgICAgICAgICB0eXBlOiB0aGlzLmlzQ2hlY2tlZCgpID8gQUlUYWJsZUNoZWNrVHlwZS5jaGVja2VkIDogQUlUYWJsZUNoZWNrVHlwZS51bmNoZWNrZWQsXG4gICAgICAgICAgICBmaWxsOlxuICAgICAgICAgICAgICAgIHRoaXMuaXNDaGVja2VkKCkgfHwgKHRoaXMuY29uZmlnKCkucG9pbnRQb3NpdGlvbi50YXJnZXROYW1lID09PSBBSV9UQUJMRV9GSUVMRF9IRUFEX1NFTEVDVF9DSEVDS0JPWCAmJiAhdGhpcy5pc0NoZWNrZWQoKSlcbiAgICAgICAgICAgICAgICAgICAgPyBDb2xvcnMucHJpbWFyeVxuICAgICAgICAgICAgICAgICAgICA6IENvbG9ycy5ncmF5MzAwXG4gICAgICAgIH07XG4gICAgfSk7XG5cbiAgICBoZWFkQmdDb25maWcgPSBjb21wdXRlZCgoKSA9PiB7XG4gICAgICAgIGNvbnN0IHsgZnJvemVuQ29sdW1uV2lkdGggfSA9IHRoaXMuY29vcmRpbmF0ZSgpO1xuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgeDogQUlfVEFCTEVfUk9XX0hFQURfV0lEVEgsXG4gICAgICAgICAgICB5OiBBSV9UQUJMRV9PRkZTRVQsXG4gICAgICAgICAgICB3aWR0aDogZnJvemVuQ29sdW1uV2lkdGggKyBBSV9UQUJMRV9PRkZTRVQsXG4gICAgICAgICAgICBoZWlnaHQ6IHRoaXMuZmllbGRIZWFkSGVpZ2h0KCksXG4gICAgICAgICAgICBzdHJva2U6IENvbG9ycy5ncmF5MjAwLFxuICAgICAgICAgICAgc3Ryb2tlV2lkdGg6IDEsXG4gICAgICAgICAgICBmaWxsOiBDb2xvcnMudHJhbnNwYXJlbnQsXG4gICAgICAgICAgICBsaXN0ZW5pbmc6IGZhbHNlXG4gICAgICAgIH07XG4gICAgfSk7XG59XG4iXX0=
|
@@ -0,0 +1,38 @@
|
|
1
|
+
import { ChangeDetectionStrategy, Component, computed, input } from '@angular/core';
|
2
|
+
import { KoShape } from '../../angular-konva';
|
3
|
+
import { getPlaceHolderCellsConfigs } from '../../utils';
|
4
|
+
import * as i0 from "@angular/core";
|
5
|
+
export class AITableFrozenPlaceholderCells {
|
6
|
+
constructor() {
|
7
|
+
this.config = input.required();
|
8
|
+
this.frozenPlaceHolderCellsConfig = computed(() => {
|
9
|
+
const { coordinate } = this.config();
|
10
|
+
return getPlaceHolderCellsConfigs({
|
11
|
+
...this.config(),
|
12
|
+
columnStartIndex: 0,
|
13
|
+
columnStopIndex: coordinate.frozenColumnCount - 1
|
14
|
+
});
|
15
|
+
});
|
16
|
+
}
|
17
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: AITableFrozenPlaceholderCells, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
18
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.0", type: AITableFrozenPlaceholderCells, isStandalone: true, selector: "ai-table-frozen-placeholder-cells", inputs: { config: { classPropertyName: "config", publicName: "config", isSignal: true, isRequired: true, transformFunction: null } }, ngImport: i0, template: `
|
19
|
+
@for (item of frozenPlaceHolderCellsConfig(); track $index) {
|
20
|
+
<ko-rect [config]="item"></ko-rect>
|
21
|
+
}
|
22
|
+
`, isInline: true, dependencies: [{ kind: "component", type: KoShape, selector: "ko-shape, ko-circle, ko-label, ko-rect, ko-ellipse, ko-wedge, ko-line, ko-sprite, ko-image, ko-text, ko-text-path, ko-star, ko-ring, ko-arc, ko-tag, ko-path, ko-regular-polygon, ko-arrow, ko-transformer", inputs: ["config"], outputs: ["koMouseover", "koMousemove", "koMouseout", "koMouseenter", "koMouseleave", "koMousedown", "koMouseup", "koWheel", "koContextmenu", "koClick", "koDblclick", "koTouchstart", "koTouchmove", "koTouchend", "koTap", "koDbltap", "koDragstart", "koDragmove", "koDragend"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
23
|
+
}
|
24
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: AITableFrozenPlaceholderCells, decorators: [{
|
25
|
+
type: Component,
|
26
|
+
args: [{
|
27
|
+
selector: 'ai-table-frozen-placeholder-cells',
|
28
|
+
template: `
|
29
|
+
@for (item of frozenPlaceHolderCellsConfig(); track $index) {
|
30
|
+
<ko-rect [config]="item"></ko-rect>
|
31
|
+
}
|
32
|
+
`,
|
33
|
+
standalone: true,
|
34
|
+
imports: [KoShape],
|
35
|
+
changeDetection: ChangeDetectionStrategy.OnPush
|
36
|
+
}]
|
37
|
+
}] });
|
38
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZnJvemVuLXBsYWNlaG9sZGVyLWNlbGxzLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2dyaWQvc3JjL3JlbmRlcmVyL2NvbXBvbmVudHMvZnJvemVuLXBsYWNlaG9sZGVyLWNlbGxzLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLFFBQVEsRUFBRSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDcEYsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBRTlDLE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxNQUFNLGFBQWEsQ0FBQzs7QUFhekQsTUFBTSxPQUFPLDZCQUE2QjtJQVgxQztRQVlJLFdBQU0sR0FBRyxLQUFLLENBQUMsUUFBUSxFQUFzQixDQUFDO1FBRTlDLGlDQUE0QixHQUFHLFFBQVEsQ0FBQyxHQUFHLEVBQUU7WUFDekMsTUFBTSxFQUFFLFVBQVUsRUFBRSxHQUFHLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQztZQUNyQyxPQUFPLDBCQUEwQixDQUFDO2dCQUM5QixHQUFHLElBQUksQ0FBQyxNQUFNLEVBQUU7Z0JBQ2hCLGdCQUFnQixFQUFFLENBQUM7Z0JBQ25CLGVBQWUsRUFBRSxVQUFVLENBQUMsaUJBQWlCLEdBQUcsQ0FBQzthQUNwRCxDQUFDLENBQUM7UUFDUCxDQUFDLENBQUMsQ0FBQztLQUNOOzhHQVhZLDZCQUE2QjtrR0FBN0IsNkJBQTZCLG1PQVQ1Qjs7OztLQUlULDREQUVTLE9BQU87OzJGQUdSLDZCQUE2QjtrQkFYekMsU0FBUzttQkFBQztvQkFDUCxRQUFRLEVBQUUsbUNBQW1DO29CQUM3QyxRQUFRLEVBQUU7Ozs7S0FJVDtvQkFDRCxVQUFVLEVBQUUsSUFBSTtvQkFDaEIsT0FBTyxFQUFFLENBQUMsT0FBTyxDQUFDO29CQUNsQixlQUFlLEVBQUUsdUJBQXVCLENBQUMsTUFBTTtpQkFDbEQiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBjb21wdXRlZCwgaW5wdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEtvU2hhcGUgfSBmcm9tICcuLi8uLi9hbmd1bGFyLWtvbnZhJztcbmltcG9ydCB7IEFJVGFibGVDZWxsc0NvbmZpZyB9IGZyb20gJy4uLy4uL3R5cGVzJztcbmltcG9ydCB7IGdldFBsYWNlSG9sZGVyQ2VsbHNDb25maWdzIH0gZnJvbSAnLi4vLi4vdXRpbHMnO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ2FpLXRhYmxlLWZyb3plbi1wbGFjZWhvbGRlci1jZWxscycsXG4gICAgdGVtcGxhdGU6IGBcbiAgICAgICAgQGZvciAoaXRlbSBvZiBmcm96ZW5QbGFjZUhvbGRlckNlbGxzQ29uZmlnKCk7IHRyYWNrICRpbmRleCkge1xuICAgICAgICAgICAgPGtvLXJlY3QgW2NvbmZpZ109XCJpdGVtXCI+PC9rby1yZWN0PlxuICAgICAgICB9XG4gICAgYCxcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxuICAgIGltcG9ydHM6IFtLb1NoYXBlXSxcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaFxufSlcbmV4cG9ydCBjbGFzcyBBSVRhYmxlRnJvemVuUGxhY2Vob2xkZXJDZWxscyB7XG4gICAgY29uZmlnID0gaW5wdXQucmVxdWlyZWQ8QUlUYWJsZUNlbGxzQ29uZmlnPigpO1xuXG4gICAgZnJvemVuUGxhY2VIb2xkZXJDZWxsc0NvbmZpZyA9IGNvbXB1dGVkKCgpID0+IHtcbiAgICAgICAgY29uc3QgeyBjb29yZGluYXRlIH0gPSB0aGlzLmNvbmZpZygpO1xuICAgICAgICByZXR1cm4gZ2V0UGxhY2VIb2xkZXJDZWxsc0NvbmZpZ3Moe1xuICAgICAgICAgICAgLi4udGhpcy5jb25maWcoKSxcbiAgICAgICAgICAgIGNvbHVtblN0YXJ0SW5kZXg6IDAsXG4gICAgICAgICAgICBjb2x1bW5TdG9wSW5kZXg6IGNvb3JkaW5hdGUuZnJvemVuQ29sdW1uQ291bnQgLSAxXG4gICAgICAgIH0pO1xuICAgIH0pO1xufVxuIl19
|