tsv2-library 1.0.65 → 1.1.0-dev-alpha.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (93) hide show
  1. package/dist/no-data-fa-7f1ccd18.js +4 -0
  2. package/dist/src/build-entry.d.ts +7 -4
  3. package/dist/src/components/v2/Animation/Animation.vue.d.ts +1 -1
  4. package/dist/src/components/v2/AssetTable/AssetFilters.vue.d.ts +70 -0
  5. package/dist/src/components/v2/{AssetAttribute → AssetTable}/UrlFormat.vue.d.ts +6 -7
  6. package/dist/src/components/v2/AssetTable/columns/assetColumns.d.ts +7 -0
  7. package/dist/src/components/v2/AssetTable/helpers/assetFilters.d.ts +7 -0
  8. package/dist/src/components/v2/AssetTable/helpers/formatAssetData.d.ts +3 -0
  9. package/dist/src/components/v2/AssetTable/helpers/index.d.ts +2 -0
  10. package/dist/src/components/v2/AssetTable/store/assetTable.store.d.ts +16 -0
  11. package/dist/src/components/v2/AssetTable/store/index.d.ts +1 -0
  12. package/dist/src/components/v2/Calendar/Calendar.vue.d.ts +31 -0
  13. package/dist/src/components/v2/Calendar/CustomCalendar.vue.d.ts +12 -0
  14. package/dist/src/components/v2/CustomColumn/CustomColumn.vue.d.ts +1 -1
  15. package/dist/src/components/v2/DataTable/DataTable.vue.d.ts +15 -0
  16. package/dist/src/components/v2/DatePicker/DatePicker.vue.d.ts +23 -0
  17. package/dist/src/components/v2/DayOfYearPicker/DayOfYearPicker.vue.d.ts +97 -0
  18. package/dist/src/components/v2/DayPicker/DayPicker.vue.d.ts +23 -0
  19. package/dist/src/components/v2/DialogCoordinate/services/googleMapsService.d.ts +23 -3
  20. package/dist/src/components/v2/DialogDataLocked/DialogDataLocked.vue.d.ts +6 -0
  21. package/dist/src/components/v2/DialogSelectAsset/DialogSelectAsset.vue.d.ts +1 -1
  22. package/dist/src/components/v2/DialogSelectAssetName/DialogSelectAssetName.vue.d.ts +75 -0
  23. package/dist/src/components/v2/DisposalReport/DisposalReportTable.vue.d.ts +9 -1
  24. package/dist/src/components/v2/Dropdown/Dropdown.vue.d.ts +1 -0
  25. package/dist/src/components/v2/Image/Image.vue.d.ts +5 -0
  26. package/dist/src/components/v2/InputNumber/InputNumber.vue.d.ts +6 -0
  27. package/dist/src/components/v2/InputRangeNumber/InputRangeNumber.vue.d.ts +2 -2
  28. package/dist/src/components/v2/InputText/InputText.vue.d.ts +6 -0
  29. package/dist/src/components/v2/MultiSelect/MultiSelect.vue.d.ts +4 -0
  30. package/dist/src/components/v2/Textarea/Textarea.vue.d.ts +5 -0
  31. package/dist/src/components/v2/index.d.ts +5 -3
  32. package/dist/src/dto/customField.dto.d.ts +9 -0
  33. package/dist/src/event-bus/index.d.ts +10 -3
  34. package/dist/src/presets/datepicker/index.js +13 -1
  35. package/dist/src/presets/dayofyearpicker/index.js +73 -0
  36. package/dist/src/presets/daypicker/index.js +14 -2
  37. package/dist/src/services/assetName.service.d.ts +8 -6
  38. package/dist/src/services/assets.service.d.ts +13 -13
  39. package/dist/src/services/damage.service.d.ts +1 -1
  40. package/dist/src/services/dataLock.service.d.ts +7 -0
  41. package/dist/src/services/globalSettings.service.d.ts +6 -0
  42. package/dist/src/services/missing.service.d.ts +1 -1
  43. package/dist/src/services/scanLog.service.d.ts +1 -1
  44. package/dist/src/services/settingsAttribute.service.d.ts +2 -0
  45. package/dist/src/services/tagQr.service.d.ts +1 -1
  46. package/dist/src/services/tagTransaction.service.d.ts +1 -1
  47. package/dist/src/services/tracking.service.d.ts +2 -2
  48. package/dist/src/services/transferTransaction.service.d.ts +1 -1
  49. package/dist/src/types/assets.type.d.ts +64 -1
  50. package/dist/src/types/globalSettings.type.d.ts +9 -0
  51. package/dist/src/types/settingsAttribute.type.d.ts +0 -14
  52. package/dist/src/utils/getVisibleColumns.util.d.ts +2 -0
  53. package/dist/src/utils/index.d.ts +3 -2
  54. package/dist/src/utils/role.util.d.ts +1 -1
  55. package/dist/src/utils/textFormater.util.d.ts +0 -2
  56. package/dist/style.css +1 -1
  57. package/dist/tsv2-library.es.js +58961 -57256
  58. package/dist/tsv2-library.umd.js +7 -7
  59. package/package.json +4 -3
  60. package/src/components/v2/Animation/Animation.vue.d.ts +1 -1
  61. package/src/components/v2/AssetTable/AssetFilters.vue.d.ts +70 -0
  62. package/src/components/v2/Calendar/Calendar.vue.d.ts +31 -0
  63. package/src/components/v2/CustomColumn/CustomColumn.vue.d.ts +1 -1
  64. package/src/components/v2/DataTable/DataTable.vue.d.ts +15 -0
  65. package/src/components/v2/DatePicker/DatePicker.vue.d.ts +23 -0
  66. package/src/components/v2/DayOfYearPicker/DayOfYearPicker.vue.d.ts +97 -0
  67. package/src/components/v2/DayPicker/DayPicker.vue.d.ts +23 -0
  68. package/src/components/v2/DialogSelectAsset/DialogSelectAsset.vue.d.ts +1 -1
  69. package/src/components/v2/DialogSelectAssetName/DialogSelectAssetName.vue.d.ts +75 -0
  70. package/src/components/v2/Dropdown/Dropdown.vue.d.ts +1 -0
  71. package/src/components/v2/Image/Image.vue.d.ts +5 -0
  72. package/src/components/v2/InputNumber/InputNumber.vue.d.ts +6 -0
  73. package/src/components/v2/InputRangeNumber/InputRangeNumber.vue.d.ts +2 -2
  74. package/src/components/v2/InputText/InputText.vue.d.ts +6 -0
  75. package/src/components/v2/MultiSelect/MultiSelect.vue.d.ts +4 -0
  76. package/src/components/v2/Textarea/Textarea.vue.d.ts +5 -0
  77. package/src/module.d.ts +3 -0
  78. package/src/presets/datepicker/index.js +13 -1
  79. package/src/presets/dayofyearpicker/index.js +73 -0
  80. package/src/presets/daypicker/index.js +14 -2
  81. package/src/services/assetDamage.service.ts +1 -1
  82. package/src/services/assetName.service.ts +10 -0
  83. package/src/services/column.service.ts +2 -2
  84. package/src/services/dataLock.service.ts +33 -0
  85. package/src/services/globalSettings.service.ts +33 -0
  86. package/src/services/settingsAttribute.service.ts +13 -0
  87. package/dist/src/components/v2/DialogCoordinate/services/openStreetMapService.d.ts +0 -59
  88. package/dist/src/components/v2/FilterAssetValue/FilterAssetValue.vue.d.ts +0 -20
  89. package/dist/src/components/v2/FilterCustomField/FilterCustomField.vue.d.ts +0 -17
  90. package/dist/src/store/assetAttribute.store.d.ts +0 -12
  91. package/dist/src/store/index.d.ts +0 -1
  92. package/src/components/v2/FilterAssetValue/FilterAssetValue.vue.d.ts +0 -20
  93. package/src/components/v2/FilterCustomField/FilterCustomField.vue.d.ts +0 -17
@@ -0,0 +1,4 @@
1
+ const noDataFa = "data:application/octet-stream;base64,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";
2
+ export {
3
+ noDataFa as default
4
+ };
@@ -4,6 +4,7 @@ import TSToastService from '../node_modules/primevue/toastservice';
4
4
  import AssetsServices from './services/assets.service';
5
5
  import AssetNameService from './services/assetName.service';
6
6
  import AssetBrandService from './services/assetBrand.service';
7
+ import DataLockService from './services/dataLock.service';
7
8
  import DisposalServices, { API as DisposalAPI } from './services/disposal.service';
8
9
  import { FilterMatchMode } from '../node_modules/primevue/api';
9
10
  import { API as TreeAPI } from './services/tree.service';
@@ -19,18 +20,20 @@ interface TSFormContext<T> {
19
20
  declare const useForm: <T>() => TSFormContext<T>;
20
21
  declare const useField: <T>(path: MaybeRefOrGetter<string>, rules?: MaybeRef<RuleExpression<T>>, opts?: Partial<FieldOptions<T>> | undefined) => FieldContext<T>;
21
22
  import Presets from './presets';
22
- import { handleTokenExpiration, exportToExcel, formatGoDate, formatDate, getUserLocale, formatAssetValue, formatDateReadable, formatUserName, formatVowelSoundLabel, getImageURL, downloadFile, isObjectEmpty, useToast, listenSidebarChanges, unListenSidebarChanges, getCurrency, formatCurrency, getHostName, getBaseURL, useI18n, getNestedProperyValue, getSeverityByAssetStatus, clearStorage, forceLogout, reLogin, isValidJSONString, buildBodyParams, formatLogResponseData, googleMapLoader, getTransactionRole, getSystemRole, hasSystemRole, hasTransactionRole, checkRouteAccess, hasApprovalRole, hasManagerRole, hasAnyManagerRole, hasMonitoringReportRole, hasAnyMonitoringReportRole, hasStaffRole, hasAccessToAssetDetail } from './utils';
23
+ import { handleTokenExpiration, exportToExcel, formatGoDate, formatDate, getUserLocale, formatDateReadable, formatUserName, formatVowelSoundLabel, getImageURL, downloadFile, isObjectEmpty, useToast, listenSidebarChanges, unListenSidebarChanges, getCurrency, formatCurrency, getHostName, getBaseURL, useI18n, getNestedProperyValue, getSeverityByAssetStatus, clearStorage, forceLogout, reLogin, isValidJSONString, buildBodyParams, formatLogResponseData, googleMapLoader, getVisibleColumns, getTransactionRole, getSystemRole, hasSystemRole, hasTransactionRole, checkRouteAccess, hasApprovalRole, hasManagerRole, hasAnyManagerRole, hasMonitoringReportRole, hasAnyMonitoringReportRole, hasStaffRole, hasAccessToAssetDetail } from './utils';
23
24
  import { default as eventBus, extendEventBus } from './event-bus';
24
25
  import { flattenTreeNodeChildren, parseNodeKeys, filterNodeKeys } from './components/v2/Tree/helpers';
25
26
  import useLoadingStore from './components/v2/Loading/store/loading.store';
26
- import { useAssetAttributeStore } from './store';
27
+ import { useAssetTableStore } from './components/v2/AssetTable/store';
27
28
  import Tooltip from '../node_modules/primevue/tooltip';
28
29
  import Focus from './directives/v-focus';
29
30
  import VueHtmlToPaper from './plugins/VueHtmlToPaper';
30
- import { DialogDamageLog, DialogMissingLog, DialogTransferLog, TSAnimation, TSAssetInfo, TSApproverInfo, TSBadge, TSBadgeGroup, TSBreadcrumb, TSButton, TSButtonAddByScan, TSButtonBulkAction, TSButtonCopy, TSButtonDownload, TSButtonFilter, TSButtonLogHistory, TSButtonRadio, TSButtonViewLog, TSButtonScan, TSButtonSearchByScan, TSButtonSearch, TSButtonSync, TSButtonSelectTree, TSButtonSelectUser, TSButtonToggle, TSCalendar, TSCard, TSCarousel, TSCheckbox, TSCustomColumn, TSDataTable, TSDatePicker, TSDayPicker, TSDialog, TSDialogApprovalList, TSDialogAssetNameDetail, TSDialogConfirm, TSDialogCoordinate, TSDialogForm, TSDialogLinkedAsset, TSDialogPrintQR, TSDialogReportDamage, TSDialogReportMissing, TSDialogReportTag, TSDialogSelectTree, TSDialogSelectAsset, TSDialogSelectUser, TSDisposalReport, TSDropdown, TSFailedLoad, TSFilterContainer, TSFilterAssetValue, TSFilterCustomField, TSFileUpload, TSForm, TSIcon, TSImage, TSImageCompressor, TSInlineMessage, TSInputBadge, TSInputCurrency, TSInputCurrencyReference, TSInputCoordinate, TSInputEmail, TSInputNumber, TSInputOTP, TSInputPassword, TSInputPhoneNumber, TSInputRangeNumber, TSInputSearch, TSInputText, TSInputURL, TSLoading, TSMenu, TSMultiSelect, TSOverlayPanel, TSPaginator, TSProgressBar, TSSteps, TSTabMenu, TSTagType, TSTextarea, TSTimeline, TSToast, TSTransactionRoles, TSTree, TSTreeSearchInput, TSUserWithIcon, TSValidatorMessage } from './components/v2';
31
+ import { ASSET_COL_FIELDS, assetValueColumns, assetValueColumnsWithDefault, customFieldColumns, defaultAssetColumns } from './components/v2/AssetTable/columns/assetColumns';
32
+ import { parseAssetStaticFilter, formatAssetValue } from './components/v2/AssetTable/helpers';
33
+ import { DialogDamageLog, DialogMissingLog, DialogTransferLog, TSAnimation, TSAssetInfo, TSApproverInfo, TSBadge, TSBadgeGroup, TSBreadcrumb, TSButton, TSButtonAddByScan, TSButtonBulkAction, TSButtonCopy, TSButtonDownload, TSButtonFilter, TSButtonLogHistory, TSButtonRadio, TSButtonViewLog, TSButtonScan, TSButtonSearchByScan, TSButtonSearch, TSButtonSync, TSButtonSelectTree, TSButtonSelectUser, TSButtonToggle, TSCalendar, TSCard, TSCarousel, TSCheckbox, TSCustomColumn, TSDataTable, TSDatePicker, TSDayPicker, TSDayOfYearPicker, TSDialog, TSDialogApprovalList, TSDialogAssetNameDetail, TSDialogConfirm, TSDialogCoordinate, TSDialogDataLocked, TSDialogForm, TSDialogLinkedAsset, TSDialogPrintQR, TSDialogReportDamage, TSDialogReportMissing, TSDialogReportTag, TSDialogSelectAssetName, TSDialogSelectTree, TSDialogSelectAsset, TSDialogSelectUser, TSDisposalReport, TSDropdown, TSFailedLoad, TSFilterContainer, TSAssetFilters, TSFileUpload, TSForm, TSIcon, TSImage, TSImageCompressor, TSInlineMessage, TSInputBadge, TSInputCurrency, TSInputCurrencyReference, TSInputCoordinate, TSInputEmail, TSInputNumber, TSInputOTP, TSInputPassword, TSInputPhoneNumber, TSInputRangeNumber, TSInputSearch, TSInputText, TSInputURL, TSLoading, TSMenu, TSMultiSelect, TSOverlayPanel, TSPaginator, TSProgressBar, TSSteps, TSTabMenu, TSTagType, TSTextarea, TSTimeline, TSToast, TSTransactionRoles, TSTree, TSTreeSearchInput, TSUserWithIcon, TSValidatorMessage } from './components/v2';
31
34
  declare const TSi18n: import("vue-i18n").I18n<{}, {}, {}, string, false>;
32
35
  declare const _default: {
33
36
  install: (app: App) => void;
34
37
  };
35
38
  export default _default;
36
- export { LibConfig, TSToastService, TSi18n, VueHtmlToPaper, Tooltip, Focus, DialogDamageLog, DialogMissingLog, DialogTransferLog, TSAnimation, TSAssetInfo, TSApproverInfo, TSBadge, TSBadgeGroup, TSBreadcrumb, TSButton, TSButtonAddByScan, TSButtonBulkAction, TSButtonCopy, TSButtonDownload, TSButtonFilter, TSButtonLogHistory, TSButtonRadio, TSButtonViewLog, TSButtonScan, TSButtonSearch, TSButtonSearchByScan, TSButtonSelectTree, TSButtonSelectUser, TSButtonSync, TSButtonToggle, TSCalendar, TSCard, TSCarousel, TSCheckbox, TSCustomColumn, TSDatePicker, TSDataTable, TSDayPicker, TSDialog, TSDialogApprovalList, TSDialogAssetNameDetail, TSDialogConfirm, TSDialogCoordinate, TSDialogForm, TSDialogLinkedAsset, TSDialogPrintQR, TSDialogReportDamage, TSDialogReportMissing, TSDialogReportTag, TSDialogSelectTree, TSDialogSelectAsset, TSDialogSelectUser, TSDisposalReport, TSDropdown, TSFailedLoad, TSFilterContainer, TSFilterAssetValue, TSFilterCustomField, TSFileUpload, TSForm, TSIcon, TSImage, TSImageCompressor, TSInlineMessage, TSInputBadge, TSInputCurrency, TSInputCurrencyReference, TSInputCoordinate, TSInputEmail, TSInputNumber, TSInputOTP, TSInputPassword, TSInputPhoneNumber, TSInputRangeNumber, TSInputText, TSInputSearch, TSInputURL, TSLoading, TSMenu, TSMultiSelect, TSOverlayPanel, TSPaginator, TSProgressBar, TSSteps, TSTabMenu, TSTagType, TSTextarea, TSTimeline, TSToast, TSTransactionRoles, TSTree, TSTreeSearchInput, TSUserWithIcon, TSValidatorMessage, handleTokenExpiration, exportToExcel, formatGoDate, formatDate, getUserLocale, formatAssetValue, formatDateReadable, formatUserName, formatVowelSoundLabel, getImageURL, downloadFile, isObjectEmpty, useToast, listenSidebarChanges, unListenSidebarChanges, getCurrency, formatCurrency, getHostName, getBaseURL, useI18n, useForm, useField, getNestedProperyValue, getSeverityByAssetStatus, clearStorage, forceLogout, reLogin, isValidJSONString, buildBodyParams, formatLogResponseData, googleMapLoader, getTransactionRole, getSystemRole, hasSystemRole, hasTransactionRole, checkRouteAccess, hasApprovalRole, hasManagerRole, hasAnyManagerRole, hasMonitoringReportRole, hasAnyMonitoringReportRole, hasStaffRole, hasAccessToAssetDetail, flattenTreeNodeChildren, parseNodeKeys, filterNodeKeys, TreeAPI, RoutineAPI, DisposalAPI, RoutineServices, AssetsServices, AssetNameService, AssetBrandService, DisposalServices, FilterMatchMode, useLoadingStore, useAssetAttributeStore, eventBus, extendEventBus, Presets, };
39
+ export { LibConfig, TSToastService, TSi18n, VueHtmlToPaper, Tooltip, Focus, DialogDamageLog, DialogMissingLog, DialogTransferLog, TSAnimation, TSAssetInfo, TSApproverInfo, TSBadge, TSBadgeGroup, TSBreadcrumb, TSButton, TSButtonAddByScan, TSButtonBulkAction, TSButtonCopy, TSButtonDownload, TSButtonFilter, TSButtonLogHistory, TSButtonRadio, TSButtonViewLog, TSButtonScan, TSButtonSearch, TSButtonSearchByScan, TSButtonSelectTree, TSButtonSelectUser, TSButtonSync, TSButtonToggle, TSCalendar, TSCard, TSCarousel, TSCheckbox, TSCustomColumn, TSDatePicker, TSDataTable, TSDayPicker, TSDayOfYearPicker, TSDialog, TSDialogApprovalList, TSDialogAssetNameDetail, TSDialogConfirm, TSDialogCoordinate, TSDialogDataLocked, TSDialogForm, TSDialogLinkedAsset, TSDialogPrintQR, TSDialogReportDamage, TSDialogReportMissing, TSDialogReportTag, TSDialogSelectAssetName, TSDialogSelectTree, TSDialogSelectAsset, TSDialogSelectUser, TSDisposalReport, TSDropdown, TSFailedLoad, TSFilterContainer, TSAssetFilters, TSFileUpload, TSForm, TSIcon, TSImage, TSImageCompressor, TSInlineMessage, TSInputBadge, TSInputCurrency, TSInputCurrencyReference, TSInputCoordinate, TSInputEmail, TSInputNumber, TSInputOTP, TSInputPassword, TSInputPhoneNumber, TSInputRangeNumber, TSInputText, TSInputSearch, TSInputURL, TSLoading, TSMenu, TSMultiSelect, TSOverlayPanel, TSPaginator, TSProgressBar, TSSteps, TSTabMenu, TSTagType, TSTextarea, TSTimeline, TSToast, TSTransactionRoles, TSTree, TSTreeSearchInput, TSUserWithIcon, TSValidatorMessage, handleTokenExpiration, exportToExcel, formatGoDate, formatDate, getUserLocale, formatAssetValue, formatDateReadable, formatUserName, formatVowelSoundLabel, getImageURL, downloadFile, isObjectEmpty, useToast, listenSidebarChanges, unListenSidebarChanges, getCurrency, formatCurrency, getHostName, getBaseURL, useI18n, useForm, useField, getNestedProperyValue, getSeverityByAssetStatus, clearStorage, forceLogout, reLogin, isValidJSONString, buildBodyParams, formatLogResponseData, googleMapLoader, getVisibleColumns, getTransactionRole, getSystemRole, hasSystemRole, hasTransactionRole, checkRouteAccess, hasApprovalRole, hasManagerRole, hasAnyManagerRole, hasMonitoringReportRole, hasAnyMonitoringReportRole, hasStaffRole, hasAccessToAssetDetail, flattenTreeNodeChildren, parseNodeKeys, filterNodeKeys, TreeAPI, RoutineAPI, DisposalAPI, RoutineServices, AssetsServices, AssetNameService, AssetBrandService, DataLockService, DisposalServices, FilterMatchMode, useLoadingStore, useAssetTableStore, eventBus, extendEventBus, Presets, ASSET_COL_FIELDS, assetValueColumns, assetValueColumnsWithDefault, customFieldColumns, defaultAssetColumns, parseAssetStaticFilter, };
@@ -7,7 +7,7 @@ export interface AnimationDefaultConfig {
7
7
  }
8
8
 
9
9
  export interface AnimationProps {
10
- animation: 'loading-table-fa';
10
+ animation: 'loading-table-fa' | 'no-data-fa';
11
11
  /**
12
12
  * @default true
13
13
  */
@@ -0,0 +1,70 @@
1
+ import { DefineComponent } from 'vue';
2
+ import { FilterField } from '../../../types/filterField.type';
3
+ import { QueryParams } from '../DataTable/DataTable.vue.d';
4
+
5
+ export type AssetFilterFields =
6
+ | 'name'
7
+ | 'assetValue'
8
+ | 'category'
9
+ | 'brand'
10
+ | 'model'
11
+ | 'tagType'
12
+ | 'group'
13
+ | 'maintenanceAuditStatus'
14
+ | 'isTransactionable'
15
+ | 'measurement'
16
+ | 'lastScannedAt'
17
+ | 'warrantyStatus'
18
+ | 'customField';
19
+
20
+ export interface AssetFilterQuery extends QueryParams {
21
+ name?: string[];
22
+ brand?: string[];
23
+ model?: string[];
24
+ tagType?: string[];
25
+ maintenanceAuditStatus?: string[];
26
+ isTransactionable?: boolean[];
27
+ audit?: string[];
28
+ maintenance?: string[];
29
+ measurement?: string[];
30
+ warrantyStatus?: string[];
31
+ category?: string[];
32
+ group?: string[];
33
+ lastScannedAt?: number[];
34
+ linkedAssetCount?: number[];
35
+ }
36
+
37
+ export interface AssetFilterProps {
38
+ /**
39
+ * The filter object.
40
+ */
41
+ filter: AssetFilterQuery;
42
+ /*
43
+ * The columns set as visible by the user. Used to determine which filters to show.
44
+ */
45
+ visibleColumns: Record<string, boolean> | undefined;
46
+ /*
47
+ * The name of the table attached to the filter.
48
+ */
49
+ tableName: string;
50
+ fetchOptions: FilterField<QueryParams>['fetchOptionFn'];
51
+ /*
52
+ * The list of filter fields to show.
53
+ */
54
+ showFields?: AssetFilterFields[];
55
+ /*
56
+ * The list of filter fields to hide. This has a higher priority than `showFields`.
57
+ */
58
+ hideFields?: AssetFilterFields[];
59
+ }
60
+
61
+ export type AssetFilterEmits = {
62
+ /*
63
+ * Used to update the filter container's key.
64
+ */
65
+ updateFields: [];
66
+ };
67
+
68
+ declare const AssetFilters: DefineComponent<AssetFilterProps, AssetFilterEmits>;
69
+
70
+ export default AssetFilters;
@@ -1,20 +1,19 @@
1
1
  import type { PropType as __PropType } from 'vue';
2
- import { CustomField } from '../../../types/settingsAttribute.type';
3
2
  declare const _sfc_main: import("vue").DefineComponent<{
4
- data: {
5
- type: __PropType<CustomField>;
3
+ dataType: {
4
+ type: __PropType<"URL" | "Document">;
6
5
  required: true;
7
6
  };
8
- value: {
7
+ rawValue: {
9
8
  type: __PropType<string>;
10
9
  required: true;
11
10
  };
12
11
  }, {}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
13
- data: {
14
- type: __PropType<CustomField>;
12
+ dataType: {
13
+ type: __PropType<"URL" | "Document">;
15
14
  required: true;
16
15
  };
17
- value: {
16
+ rawValue: {
18
17
  type: __PropType<string>;
19
18
  required: true;
20
19
  };
@@ -0,0 +1,7 @@
1
+ import { TableColumn } from '../../DataTable/DataTable.vue.d';
2
+ export declare const ASSET_COL_FIELDS: readonly ["assetImage", "name.nameWithSequence", "aliasName", "assetId", "group.name", "category.name", "brand.name", "model.name", "tagType", "measurement.name", "maintenanceStatus", "auditStatus", "transactions", "coordinates", "address", "warrantyStatus", "lastScannedAt", "linkedAssetCount"];
3
+ export type AssetColField = (typeof ASSET_COL_FIELDS)[number];
4
+ export declare const assetValueColumns: import("vue").Ref<TableColumn[], TableColumn[]>, assetValueColumnsWithDefault: import("vue").Ref<TableColumn[], TableColumn[]>, customFieldColumns: import("vue").Ref<TableColumn[], TableColumn[]>;
5
+ export declare const defaultAssetColumns: import("vue").ComputedRef<Record<"transactions" | "tagType" | "assetImage" | "name.nameWithSequence" | "aliasName" | "assetId" | "group.name" | "category.name" | "brand.name" | "model.name" | "measurement.name" | "maintenanceStatus" | "auditStatus" | "coordinates" | "address" | "warrantyStatus" | "lastScannedAt" | "linkedAssetCount", TableColumn & {
6
+ field: AssetColField;
7
+ }>>;
@@ -0,0 +1,7 @@
1
+ import { AssetFilterFields, AssetFilterQuery } from '../AssetFilters.vue.d';
2
+ export declare const COLUMN_FILTER_STATIC_MAP: Partial<Record<AssetFilterFields, string>>;
3
+ export type StaticAssetFilters = Record<string, {
4
+ value?: unknown;
5
+ matchMode: string;
6
+ }>;
7
+ export declare const parseAssetStaticFilter: (filter: AssetFilterQuery) => StaticAssetFilters;
@@ -0,0 +1,3 @@
1
+ import { AssetTableData, AssetTableDataPrint } from '../../../../types/assets.type';
2
+ declare const formatAssetData: (each: AssetTableData) => AssetTableDataPrint;
3
+ export default formatAssetData;
@@ -0,0 +1,2 @@
1
+ export { default as formatAssetValue } from './formatAssetData';
2
+ export { parseAssetStaticFilter, COLUMN_FILTER_STATIC_MAP, } from './assetFilters';
@@ -0,0 +1,16 @@
1
+ import { TableColumn } from '../../../../components/v2/DataTable/DataTable.vue.d';
2
+ import { FilterField } from '../../../../types/filterField.type';
3
+ import { CustomField, DepreciationCategory } from '../../../../types/settingsAttribute.type';
4
+ import { Ref } from 'vue';
5
+ export interface AssetTableStore {
6
+ customFieldColumns: Ref<TableColumn[]>;
7
+ assetValueColumns: Ref<TableColumn[]>;
8
+ assetValueColumnsWithDefault: Ref<TableColumn[]>;
9
+ customFieldFilterFields: Ref<Omit<FilterField, 'fetchOptionFn'>[] | undefined>;
10
+ assetValueFilterFields: Ref<Omit<FilterField, 'fetchOptionFn'>[] | undefined>;
11
+ customFields: Ref<CustomField[] | undefined>;
12
+ depreciationCategories: Ref<DepreciationCategory[] | undefined>;
13
+ getFields: () => void;
14
+ }
15
+ declare const useAssetTableStore: () => AssetTableStore;
16
+ export default useAssetTableStore;
@@ -0,0 +1 @@
1
+ export { default as useAssetTableStore } from './assetTable.store';
@@ -22,6 +22,12 @@ export interface TSCalendarProps {
22
22
  * Whether single date or date range model value.
23
23
  */
24
24
  mode?: 'range' | 'single';
25
+ /**
26
+ * In range selection mode, if the same date is chosen twice,
27
+ * set whether it should be shown as separate dates ("date 1" - "date 1") or not ("date 1").
28
+ * @default true
29
+ */
30
+ separateSameDate?: boolean;
25
31
  /**
26
32
  * Set the end date to 23.59.59
27
33
  *
@@ -71,6 +77,31 @@ export interface TSCalendarProps {
71
77
  * By default each field has preserved with its validator message, you don't need to worrying about the message.
72
78
  */
73
79
  validatorMessage?: string;
80
+ /**
81
+ * Validate value while the overlay is shown. This function is run on clicking the overlay's Apply button.
82
+ *
83
+ * @returns {boolean} - Return true if the value is valid.
84
+ */
85
+ overlayValidatorFunction?: (
86
+ value?: number | number[],
87
+ ) => Promise<boolean> | boolean;
88
+ /**
89
+ * Set the custom validator message to show on the overlay.
90
+ * Used alongside overlayValidatorFunction.
91
+ */
92
+ overlayValidatorMessage?: string;
93
+ /**
94
+ * Condition to show the date picker message.
95
+ *
96
+ * @returns {boolean} - Return true if the value is valid.
97
+ */
98
+ datePickerMessageFunction?: (
99
+ value?: number | number[],
100
+ ) => Promise<boolean> | boolean;
101
+ /**
102
+ * Set a message to be shown below the date picker.
103
+ */
104
+ datePickerMessage?: string;
74
105
  /**
75
106
  * Set custom validation message for certain condition
76
107
  */
@@ -7,6 +7,18 @@ declare const _sfc_main: {
7
7
  extends: import("vue").DefineComponent<{}, {}, any>;
8
8
  inheritAttrs: boolean;
9
9
  props: {
10
+ datePickerMessage: {
11
+ type: StringConstructor;
12
+ default: undefined;
13
+ };
14
+ showOverlayValidatorMessage: {
15
+ type: BooleanConstructor;
16
+ default: boolean;
17
+ };
18
+ separateSameDate: {
19
+ type: BooleanConstructor;
20
+ default: undefined;
21
+ };
10
22
  today: null;
11
23
  };
12
24
  emits: string[];
@@ -6,7 +6,7 @@ export type DragableColumn = TableColumn & { order?: number };
6
6
  export interface DataTableColumnConfig {
7
7
  field: string;
8
8
  pinned: boolean;
9
- width: number | string;
9
+ width?: number | string;
10
10
  visible: boolean;
11
11
  }
12
12
 
@@ -302,6 +302,11 @@ export interface DataTableSelectAllChangeEvent {
302
302
  }
303
303
 
304
304
  export interface TSDataTableProps {
305
+ /**
306
+ * Index of the first row to be displayed.
307
+ * @defaultValue 0
308
+ */
309
+ first?: number;
305
310
  /**
306
311
  * Optional property to set a unique name for the table. This name will be used as part of the unique table ID.
307
312
  *
@@ -553,6 +558,16 @@ export type TSDataTableEmits = {
553
558
  * This will update the `selectedData` value whenever a row is selected or deselected.
554
559
  */
555
560
  'update:selectedData': [datas: Data[]];
561
+ /**
562
+ * Emitted when the rows changes.
563
+ * @param {number} value - New value.
564
+ */
565
+ 'update:rows': [value: number];
566
+ /**
567
+ * Emitted when the first changes.
568
+ * @param {number} value - New value.
569
+ */
570
+ 'update:first': [value: number];
556
571
  };
557
572
 
558
573
  declare class DataTable extends ClassComponent<
@@ -38,6 +38,27 @@ export interface TSDatePickerProps {
38
38
  * By default each field has preserved with its validator message, you don't need to worrying about the message.
39
39
  */
40
40
  errorMessage?: { empty: string };
41
+ /**
42
+ * Whether multiple date or date range model value.
43
+ *
44
+ * @default 'range'
45
+ */
46
+ selectionMode?: 'range' | 'multiple';
47
+ /**
48
+ * Validate value while the overlay is shown. This function is run on clicking the dates in the overlay.
49
+ *
50
+ * @returns {boolean} - Return true if the value is valid.
51
+ */
52
+ overlayValidatorFunction?: (value?: number[]) => Promise<boolean> | boolean;
53
+ /**
54
+ * Set the custom validator message to show on the overlay.
55
+ * Used alongside overlayValidatorFunction.
56
+ */
57
+ overlayValidatorMessage?: string;
58
+ /**
59
+ * Set a message to be shown on top of the overlay.
60
+ */
61
+ overlayMessage?: string;
41
62
  }
42
63
 
43
64
  /**
@@ -45,6 +66,8 @@ export interface TSDatePickerProps {
45
66
  */
46
67
  export type TSDatePickerEmits = {
47
68
  'update:modelValue': [days?: number[]];
69
+ // Emits when overlay is hidden
70
+ 'hide': [];
48
71
  };
49
72
 
50
73
  /**
@@ -0,0 +1,97 @@
1
+ import { DefineComponent } from 'vue';
2
+
3
+ /**
4
+ * TSDayOfYearPicker component props
5
+ */
6
+ export interface TSDayOfYearPickerProps {
7
+ /**
8
+ * TSDayOfYearPicker modelValue is array of timestamps
9
+ */
10
+ modelValue?: number[];
11
+ /**
12
+ * TSDayOfYearPicker initialValue is array of timestamps
13
+ */
14
+ initialValue?: number[];
15
+ /**
16
+ * Array of timestamps representing dates that cannot be selected
17
+ * @default []
18
+ */
19
+ disabledDates?: number[];
20
+ /**
21
+ * Display label on top of Date Input.
22
+ */
23
+ label?: string;
24
+ /**
25
+ * Enable Validator using vee-validate. Combine with TSForm that handle form validation.
26
+ */
27
+ useValidator?: boolean;
28
+ /**
29
+ * When used as field in From Validation using TSForm,
30
+ * specify the unique field name, match with your needs for API request.
31
+ */
32
+ fieldName?: string;
33
+ /**
34
+ * Whether this field should be filled or not.
35
+ */
36
+ mandatory?: boolean;
37
+ /**
38
+ * Sets the invalid state.
39
+ */
40
+ invalid?: boolean;
41
+ /**
42
+ * Set the custom validator message.
43
+ * By default each field has preserved with its validator message, you don't need to worrying about the message.
44
+ */
45
+ errorMessage?: { empty: string };
46
+ /**
47
+ * Year to display (defaults to 2024 due to leap year requirement)
48
+ */
49
+ year?: number;
50
+ /**
51
+ * Validate value while the overlay is shown. This function is run on clicking the dates in the overlay.
52
+ *
53
+ * @returns {boolean} - Return true if the value is valid.
54
+ */
55
+ overlayValidatorFunction?: (value?: number[]) => Promise<boolean> | boolean;
56
+ /**
57
+ * Set the custom validator message to show on the overlay.
58
+ * Used alongside overlayValidatorFunction.
59
+ */
60
+ overlayValidatorMessage?: string;
61
+ /**
62
+ * Set a message to be shown on top of the overlay.
63
+ */
64
+ overlayMessage?: string;
65
+ /**
66
+ * In range selection mode, if the same date is chosen twice,
67
+ * set whether it should be shown as separate dates ("date 1" - "date 1") or not ("date 1").
68
+ * @default true
69
+ */
70
+ separateSameDate?: boolean;
71
+ }
72
+
73
+ /**
74
+ * TSDayOfYearPicker component emits
75
+ */
76
+ export type TSDayOfYearPickerEmits = {
77
+ 'update:modelValue': [days?: number[]];
78
+ // Emits when overlay is hidden
79
+ 'hide': [];
80
+ };
81
+
82
+ /**
83
+ * **TSVue - TSDayOfYearPicker**
84
+ *
85
+ * _Handle input day with form validation._
86
+ *
87
+ * --- ---
88
+ * ![TSVue](https://ik.imagekit.io/kurniadev/TS-HEAD-BLACK.png)
89
+ *
90
+ * @group form
91
+ */
92
+ declare const TSDayOfYearPicker: DefineComponent<
93
+ TSDayOfYearPickerProps,
94
+ TSDayOfYearPickerEmits
95
+ >;
96
+
97
+ export default TSDayOfYearPicker;
@@ -38,6 +38,27 @@ export interface TSDayPickerProps {
38
38
  * By default each field has preserved with its validator message, you don't need to worrying about the message.
39
39
  */
40
40
  errorMessage?: { empty: string };
41
+ /**
42
+ * Whether multiple date or date range model value.
43
+ *
44
+ * @default 'range'
45
+ */
46
+ selectionMode?: 'range' | 'multiple';
47
+ /**
48
+ * Validate value while the overlay is shown. This function is run on clicking the days in the overlay.
49
+ *
50
+ * @returns {boolean} - Return true if the value is valid.
51
+ */
52
+ overlayValidatorFunction?: (value?: number[]) => Promise<boolean> | boolean;
53
+ /**
54
+ * Set the custom validator message to show on the overlay.
55
+ * Used alongside overlayValidatorFunction.
56
+ */
57
+ overlayValidatorMessage?: string;
58
+ /**
59
+ * Set a message to be shown on top of the overlay.
60
+ */
61
+ overlayMessage?: string;
41
62
  }
42
63
 
43
64
  /**
@@ -45,6 +66,8 @@ export interface TSDayPickerProps {
45
66
  */
46
67
  export type TSDayPickerEmits = {
47
68
  'update:modelValue': [days?: number[]];
69
+ // Emits when overlay is hidden
70
+ 'hide': [];
48
71
  };
49
72
 
50
73
  /**
@@ -1,10 +1,30 @@
1
- export { type ReverseGeocodeResult } from './openStreetMapService';
2
- export { formatAddress } from './openStreetMapService';
1
+ export interface ReverseGeocodeResult {
2
+ displayName: string;
3
+ address?: {
4
+ house_number?: string;
5
+ road?: string;
6
+ suburb?: string;
7
+ city?: string;
8
+ town?: string;
9
+ village?: string;
10
+ county?: string;
11
+ state?: string;
12
+ postcode?: string;
13
+ country?: string;
14
+ country_code?: string;
15
+ };
16
+ }
3
17
  /**
4
18
  * Reverse geocodes coordinates to get full address using Google Maps Geocoding API
5
19
  * @param lat - Latitude coordinate
6
20
  * @param lon - Longitude coordinate
7
21
  * @returns Promise with the reverse geocoding result or null if failed
8
22
  */
9
- export declare const reverseGeocode: (lat: number, lon: number) => Promise<import('./openStreetMapService').ReverseGeocodeResult | null>;
23
+ export declare const reverseGeocode: (lat: number, lon: number) => Promise<ReverseGeocodeResult | null>;
10
24
  export declare const ensureGoogleMapsPlaces: () => Promise<void>;
25
+ /**
26
+ * Formats the address object into a readable string
27
+ * @param address - Address object from the API response
28
+ * @returns Formatted address string
29
+ */
30
+ export declare const formatAddress: (address: NonNullable<ReverseGeocodeResult['address']>) => string;
@@ -0,0 +1,6 @@
1
+ declare const _sfc_main: import("vue").DefineComponent<any, {}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, "update:visible"[], "update:visible", import("vue").PublicProps, Readonly<any> & {
2
+ "onUpdate:visible"?: ((...args: any[]) => any) | undefined;
3
+ }, {} | {
4
+ [x: string]: any;
5
+ }, {}>;
6
+ export default _sfc_main;
@@ -7,7 +7,7 @@ export interface DialogSelectAssetFilterModels {
7
7
  brands?: string[];
8
8
  models?: string[];
9
9
  tagType?: string[];
10
- group?: number[];
10
+ group?: string[];
11
11
  }
12
12
 
13
13
  export type AssetStatus =
@@ -0,0 +1,75 @@
1
+ import { DefineComponent } from 'vue';
2
+
3
+ export type DialogSelectAssetNameFilter = {
4
+ category?: string[];
5
+ };
6
+
7
+ export type DialogSelectAssetNameFilterQueryParams = Partial<
8
+ Record<keyof DialogSelectAssetNameFilter, string>
9
+ >;
10
+
11
+ export type FetchResponse = {
12
+ data: Data[];
13
+ totalRecords: number;
14
+ };
15
+
16
+ export interface AssetName {
17
+ _id: string;
18
+ name: string;
19
+ code: string;
20
+ aliasCode: string;
21
+ category: Category;
22
+ addOn: AddOn;
23
+ tagType: string;
24
+ brands: Category[];
25
+ models: Model[];
26
+ measurement: string;
27
+ totalAssets: number;
28
+ hasPairedAsset: boolean;
29
+ brandsLength: number;
30
+ modelsLength: number;
31
+ depreciationGroupsLength: number;
32
+ accountCode?: string;
33
+ updatedAt: string;
34
+ }
35
+
36
+ export type AssetNamePayload = Pick<AssetName, '_id' | 'name'>;
37
+
38
+ interface Model {
39
+ _id: string;
40
+ name: string;
41
+ brand: string;
42
+ category: string;
43
+ }
44
+
45
+ interface AddOn {
46
+ maintenance: boolean;
47
+ repairTicketing: boolean;
48
+ tracking: boolean;
49
+ assetControl: boolean;
50
+ audit: boolean;
51
+ map: boolean;
52
+ }
53
+
54
+ interface Category {
55
+ _id: string;
56
+ name: string;
57
+ }
58
+
59
+ export interface DialogSelectAssetNameProps {
60
+ visible?: boolean;
61
+ selectedAssetNames?: AssetNamePayload[];
62
+ // This prop is used only for CustomField
63
+ customFieldType?: 'General Information' | 'Purchase' | 'Accounting';
64
+ }
65
+
66
+ export type DialogSelectAssetNameEmit = {
67
+ select: [payload: AssetNamePayload[]];
68
+ };
69
+
70
+ declare const DialogSelectAssetName: DefineComponent<
71
+ DialogSelectAssetNameProps,
72
+ DialogSelectAssetNameEmit
73
+ >;
74
+
75
+ export default DialogSelectAssetName;
@@ -1,4 +1,8 @@
1
1
  declare const _sfc_main: import("vue").DefineComponent<{
2
+ first: {
3
+ type: NumberConstructor;
4
+ required: false;
5
+ };
2
6
  tableName: {
3
7
  type: StringConstructor;
4
8
  required: false;
@@ -160,6 +164,10 @@ declare const _sfc_main: import("vue").DefineComponent<{
160
164
  required: true;
161
165
  };
162
166
  }, {}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
167
+ first: {
168
+ type: NumberConstructor;
169
+ required: false;
170
+ };
163
171
  tableName: {
164
172
  type: StringConstructor;
165
173
  required: false;
@@ -322,8 +330,8 @@ declare const _sfc_main: import("vue").DefineComponent<{
322
330
  };
323
331
  }>>, {
324
332
  loading: boolean;
325
- disableOption: boolean;
326
333
  useOption: boolean;
334
+ disableOption: boolean;
327
335
  childrenUseOption: boolean;
328
336
  disableAllRows: boolean;
329
337
  disableAllCheckboxes: boolean;