@trackunit/iris-app-api 1.3.138 → 1.3.141

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.
package/CHANGELOG.md CHANGED
@@ -1,3 +1,15 @@
1
+ ## 1.3.141 (2025-06-10)
2
+
3
+ This was a version bump only for iris-app-api to align it with other projects, there were no code changes.
4
+
5
+ ## 1.3.140 (2025-06-10)
6
+
7
+ This was a version bump only for iris-app-api to align it with other projects, there were no code changes.
8
+
9
+ ## 1.3.139 (2025-06-09)
10
+
11
+ This was a version bump only for iris-app-api to align it with other projects, there were no code changes.
12
+
1
13
  ## 1.3.138 (2025-06-08)
2
14
 
3
15
  This was a version bump only for iris-app-api to align it with other projects, there were no code changes.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@trackunit/iris-app-api",
3
- "version": "1.3.138",
3
+ "version": "1.3.141",
4
4
  "license": "SEE LICENSE IN LICENSE.txt",
5
5
  "repository": "https://github.com/Trackunit/manager",
6
6
  "engines": {
@@ -5,8 +5,32 @@ export type WidgetSupportedFilterBars = "CUSTOMERS" | "ASSETS" | "SITES";
5
5
  export type WidgetSupportedFilters = WidgetSupportedFilterBars | "TIME_RANGE";
6
6
  export declare const widgetTypes: readonly ["KPI", "CHART", "LIST", "MAP", "OTHER"];
7
7
  export type WidgetType = (typeof widgetTypes)[number];
8
+ export declare const allAssetFilterKeys: readonly ["search", "siteIds", "groups", "types", "assetType", "brands", "models", "criticality", "activity", "metadataCompleteness", "lastSeen", "followed", "siteType", "ownerAccountIds", "area", "partner", "productionYears", "serviceStatus", "telematicsConnected", "activeFilter", "siteDepotOwnershipIds"];
9
+ export declare const customFieldFilterKey: "customFields";
10
+ export type AssetFilterKeys = typeof allAssetFilterKeys;
11
+ export declare const allAssetFilterKeysWithCustomFields: readonly ["search", "siteIds", "groups", "types", "assetType", "brands", "models", "criticality", "activity", "metadataCompleteness", "lastSeen", "followed", "siteType", "ownerAccountIds", "area", "partner", "productionYears", "serviceStatus", "telematicsConnected", "activeFilter", "siteDepotOwnershipIds", "customFields"];
12
+ export type AssetFilterKeysWithCustomFields = typeof allAssetFilterKeysWithCustomFields;
13
+ export declare const allSiteFilterKeys: readonly ["search", "siteStatus", "siteType"];
14
+ export type SiteFilterKeys = typeof allSiteFilterKeys;
15
+ export declare const allSiteFilterKeysWithCustomFields: readonly ["search", "siteStatus", "siteType", "customFields"];
16
+ export type SiteFilterKeysWithCustomFields = typeof allSiteFilterKeysWithCustomFields;
17
+ export declare const allCustomerFilterKeys: readonly ["search", "customerType", "criticality", "servicePlan"];
18
+ export type CustomerFilterKeys = typeof allCustomerFilterKeys;
19
+ export declare const allCustomerFilterKeysWithCustomFields: readonly ["search", "customerType", "criticality", "servicePlan", "customFields"];
20
+ export type CustomerFilterKeysWithCustomFields = typeof allCustomerFilterKeysWithCustomFields;
21
+ export declare const allTimeRangeFilterKeys: readonly ["ALL"];
22
+ export type TimeRangeFilterKeys = typeof allTimeRangeFilterKeys;
23
+ type FilterConfig<TFilterKeys extends readonly string[]> = {
24
+ include: TFilterKeys[number][];
25
+ };
26
+ export type SupportedFiltersConfig = {
27
+ ASSETS?: FilterConfig<AssetFilterKeysWithCustomFields>;
28
+ SITES?: FilterConfig<SiteFilterKeysWithCustomFields>;
29
+ CUSTOMERS?: FilterConfig<CustomerFilterKeysWithCustomFields>;
30
+ TIME_RANGE?: FilterConfig<TimeRangeFilterKeys>;
31
+ };
8
32
  /**
9
- * BETA! DONT USE THIS YET - its under development
33
+ * BETA! DO NOT USE THIS YET - its under development
10
34
  */
11
35
  export interface WidgetExtensionManifest extends AbstractExtensionManifest {
12
36
  type: "WIDGET_EXTENSION";
@@ -59,5 +83,6 @@ export interface WidgetExtensionManifest extends AbstractExtensionManifest {
59
83
  /**
60
84
  * The filters that the widget can be filtered by.
61
85
  */
62
- supportedFilters?: WidgetSupportedFilters[];
86
+ supportedFilters?: SupportedFiltersConfig;
63
87
  }
88
+ export {};
@@ -1,5 +1,35 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.widgetTypes = void 0;
3
+ exports.allTimeRangeFilterKeys = exports.allCustomerFilterKeysWithCustomFields = exports.allCustomerFilterKeys = exports.allSiteFilterKeysWithCustomFields = exports.allSiteFilterKeys = exports.allAssetFilterKeysWithCustomFields = exports.customFieldFilterKey = exports.allAssetFilterKeys = exports.widgetTypes = void 0;
4
4
  exports.widgetTypes = ["KPI", "CHART", "LIST", "MAP", "OTHER"];
5
+ exports.allAssetFilterKeys = [
6
+ "search",
7
+ "siteIds",
8
+ "groups",
9
+ "types",
10
+ "assetType",
11
+ "brands",
12
+ "models",
13
+ "criticality",
14
+ "activity",
15
+ "metadataCompleteness",
16
+ "lastSeen",
17
+ "followed",
18
+ "siteType",
19
+ "ownerAccountIds",
20
+ "area",
21
+ "partner",
22
+ "productionYears",
23
+ "serviceStatus",
24
+ "telematicsConnected",
25
+ "activeFilter",
26
+ "siteDepotOwnershipIds",
27
+ ];
28
+ exports.customFieldFilterKey = "customFields";
29
+ exports.allAssetFilterKeysWithCustomFields = [...exports.allAssetFilterKeys, exports.customFieldFilterKey];
30
+ exports.allSiteFilterKeys = ["search", "siteStatus", "siteType"];
31
+ exports.allSiteFilterKeysWithCustomFields = [...exports.allSiteFilterKeys, exports.customFieldFilterKey];
32
+ exports.allCustomerFilterKeys = ["search", "customerType", "criticality", "servicePlan"];
33
+ exports.allCustomerFilterKeysWithCustomFields = [...exports.allCustomerFilterKeys, exports.customFieldFilterKey];
34
+ exports.allTimeRangeFilterKeys = ["ALL"];
5
35
  //# sourceMappingURL=widgetExtensionManifest.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"widgetExtensionManifest.js","sourceRoot":"","sources":["../../../../../../../libs/iris-app-sdk/iris-app-api/src/types/extensions/widgetExtensionManifest.ts"],"names":[],"mappings":";;;AASa,QAAA,WAAW,GAAG,CAAC,KAAK,EAAE,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,CAAU,CAAC","sourcesContent":["import { IconByName, IconByPath } from \"../iconImage\";\nimport { AbstractExtensionManifest, TranslationKey, Translations } from \"../irisAppExtensionManifest\";\n\nexport type WidgetSupportedLocations = \"MY_HOME\" | \"SITE_HOME\";\n\nexport type WidgetSupportedFilterBars = \"CUSTOMERS\" | \"ASSETS\" | \"SITES\";\n\nexport type WidgetSupportedFilters = WidgetSupportedFilterBars | \"TIME_RANGE\";\n\nexport const widgetTypes = [\"KPI\", \"CHART\", \"LIST\", \"MAP\", \"OTHER\"] as const;\n\nexport type WidgetType = (typeof widgetTypes)[number];\n\n/**\n * BETA! DONT USE THIS YET - its under development\n */\nexport interface WidgetExtensionManifest extends AbstractExtensionManifest {\n type: \"WIDGET_EXTENSION\";\n\n preview?: {\n /**\n * The description of the widget to display on Adding drawer.\n */\n description?: string | Translations | TranslationKey;\n };\n\n widgetType: WidgetType;\n\n size: {\n default: {\n width: 1 | 2 | 3 | 4 | 5 | 6;\n height: 1 | 2 | 3 | 4 | 5 | 6;\n };\n allowFullWidth?: boolean;\n };\n\n header: {\n /**\n * The name of the widget to display in the header\n */\n name: string | Translations | TranslationKey;\n\n /**\n * The image of the widget to display in the header, if not it will default to the icon of the manifest.\n */\n image?: IconByName | IconByPath;\n\n /**\n * If true a button will be on the header and an editDialog from the src folder of this extension will be loaded\n */\n hasEditDialog?: boolean;\n };\n\n footer?: {\n /**\n * The link description to display in the footer, if not it will default to localized version of 'See full details'.\n */\n linkDescription?: string | Translations | TranslationKey;\n\n /**\n * The link to display in the footer, the absolute path to the route of the extension you want to link to.\n */\n link: string;\n\n /**\n * The powered by image to display in the footer.\n */\n poweredByImage?: IconByPath;\n };\n\n /**\n * The locations where the widget can be placed.\n */\n supportedLocations: WidgetSupportedLocations[];\n\n /**\n * The filters that the widget can be filtered by.\n */\n supportedFilters?: WidgetSupportedFilters[];\n}\n"]}
1
+ {"version":3,"file":"widgetExtensionManifest.js","sourceRoot":"","sources":["../../../../../../../libs/iris-app-sdk/iris-app-api/src/types/extensions/widgetExtensionManifest.ts"],"names":[],"mappings":";;;AASa,QAAA,WAAW,GAAG,CAAC,KAAK,EAAE,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,CAAU,CAAC;AAIhE,QAAA,kBAAkB,GAAG;IAChC,QAAQ;IACR,SAAS;IACT,QAAQ;IACR,OAAO;IACP,WAAW;IACX,QAAQ;IACR,QAAQ;IACR,aAAa;IACb,UAAU;IACV,sBAAsB;IACtB,UAAU;IACV,UAAU;IACV,UAAU;IACV,iBAAiB;IACjB,MAAM;IACN,SAAS;IACT,iBAAiB;IACjB,eAAe;IACf,qBAAqB;IACrB,cAAc;IACd,uBAAuB;CACf,CAAC;AAEE,QAAA,oBAAoB,GAAG,cAAuB,CAAC;AAE/C,QAAA,kCAAkC,GAAG,CAAC,GAAG,0BAAkB,EAAE,4BAAoB,CAAU,CAAC;AAG5F,QAAA,iBAAiB,GAAG,CAAC,QAAQ,EAAE,YAAY,EAAE,UAAU,CAAU,CAAC;AAElE,QAAA,iCAAiC,GAAG,CAAC,GAAG,yBAAiB,EAAE,4BAAoB,CAAU,CAAC;AAG1F,QAAA,qBAAqB,GAAG,CAAC,QAAQ,EAAE,cAAc,EAAE,aAAa,EAAE,aAAa,CAAU,CAAC;AAE1F,QAAA,qCAAqC,GAAG,CAAC,GAAG,6BAAqB,EAAE,4BAAoB,CAAU,CAAC;AAGlG,QAAA,sBAAsB,GAAG,CAAC,KAAK,CAAU,CAAC","sourcesContent":["import { IconByName, IconByPath } from \"../iconImage\";\nimport { AbstractExtensionManifest, TranslationKey, Translations } from \"../irisAppExtensionManifest\";\n\nexport type WidgetSupportedLocations = \"MY_HOME\" | \"SITE_HOME\";\n\nexport type WidgetSupportedFilterBars = \"CUSTOMERS\" | \"ASSETS\" | \"SITES\";\n\nexport type WidgetSupportedFilters = WidgetSupportedFilterBars | \"TIME_RANGE\";\n\nexport const widgetTypes = [\"KPI\", \"CHART\", \"LIST\", \"MAP\", \"OTHER\"] as const;\n\nexport type WidgetType = (typeof widgetTypes)[number];\n\nexport const allAssetFilterKeys = [\n \"search\",\n \"siteIds\",\n \"groups\",\n \"types\",\n \"assetType\",\n \"brands\",\n \"models\",\n \"criticality\",\n \"activity\",\n \"metadataCompleteness\",\n \"lastSeen\",\n \"followed\",\n \"siteType\",\n \"ownerAccountIds\",\n \"area\",\n \"partner\",\n \"productionYears\",\n \"serviceStatus\",\n \"telematicsConnected\",\n \"activeFilter\",\n \"siteDepotOwnershipIds\",\n] as const;\n\nexport const customFieldFilterKey = \"customFields\" as const;\nexport type AssetFilterKeys = typeof allAssetFilterKeys;\nexport const allAssetFilterKeysWithCustomFields = [...allAssetFilterKeys, customFieldFilterKey] as const;\nexport type AssetFilterKeysWithCustomFields = typeof allAssetFilterKeysWithCustomFields;\n\nexport const allSiteFilterKeys = [\"search\", \"siteStatus\", \"siteType\"] as const;\nexport type SiteFilterKeys = typeof allSiteFilterKeys;\nexport const allSiteFilterKeysWithCustomFields = [...allSiteFilterKeys, customFieldFilterKey] as const;\nexport type SiteFilterKeysWithCustomFields = typeof allSiteFilterKeysWithCustomFields;\n\nexport const allCustomerFilterKeys = [\"search\", \"customerType\", \"criticality\", \"servicePlan\"] as const;\nexport type CustomerFilterKeys = typeof allCustomerFilterKeys;\nexport const allCustomerFilterKeysWithCustomFields = [...allCustomerFilterKeys, customFieldFilterKey] as const;\nexport type CustomerFilterKeysWithCustomFields = typeof allCustomerFilterKeysWithCustomFields;\n\nexport const allTimeRangeFilterKeys = [\"ALL\"] as const;\nexport type TimeRangeFilterKeys = typeof allTimeRangeFilterKeys;\n\ntype FilterConfig<TFilterKeys extends readonly string[]> = {\n include: TFilterKeys[number][];\n};\n\nexport type SupportedFiltersConfig = {\n ASSETS?: FilterConfig<AssetFilterKeysWithCustomFields>;\n SITES?: FilterConfig<SiteFilterKeysWithCustomFields>;\n CUSTOMERS?: FilterConfig<CustomerFilterKeysWithCustomFields>;\n TIME_RANGE?: FilterConfig<TimeRangeFilterKeys>;\n};\n\n/**\n * BETA! DO NOT USE THIS YET - its under development\n */\nexport interface WidgetExtensionManifest extends AbstractExtensionManifest {\n type: \"WIDGET_EXTENSION\";\n\n preview?: {\n /**\n * The description of the widget to display on Adding drawer.\n */\n description?: string | Translations | TranslationKey;\n };\n\n widgetType: WidgetType;\n\n size: {\n default: {\n width: 1 | 2 | 3 | 4 | 5 | 6;\n height: 1 | 2 | 3 | 4 | 5 | 6;\n };\n allowFullWidth?: boolean;\n };\n\n header: {\n /**\n * The name of the widget to display in the header\n */\n name: string | Translations | TranslationKey;\n\n /**\n * The image of the widget to display in the header, if not it will default to the icon of the manifest.\n */\n image?: IconByName | IconByPath;\n\n /**\n * If true a button will be on the header and an editDialog from the src folder of this extension will be loaded\n */\n hasEditDialog?: boolean;\n };\n\n footer?: {\n /**\n * The link description to display in the footer, if not it will default to localized version of 'See full details'.\n */\n linkDescription?: string | Translations | TranslationKey;\n\n /**\n * The link to display in the footer, the absolute path to the route of the extension you want to link to.\n */\n link: string;\n\n /**\n * The powered by image to display in the footer.\n */\n poweredByImage?: IconByPath;\n };\n\n /**\n * The locations where the widget can be placed.\n */\n supportedLocations: WidgetSupportedLocations[];\n\n /**\n * The filters that the widget can be filtered by.\n */\n supportedFilters?: SupportedFiltersConfig;\n}\n"]}