@mlightcad/common 1.1.1 → 1.1.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (58) hide show
  1. package/dist/common.js +201 -12
  2. package/lib/AcCmColor.d.ts +162 -3
  3. package/lib/AcCmColor.d.ts.map +1 -1
  4. package/lib/AcCmColor.js +187 -9
  5. package/lib/AcCmColor.js.map +1 -1
  6. package/lib/AcCmColorUtil.d.ts +35 -3
  7. package/lib/AcCmColorUtil.d.ts.map +1 -1
  8. package/lib/AcCmColorUtil.js +43 -7
  9. package/lib/AcCmColorUtil.js.map +1 -1
  10. package/lib/AcCmErrors.d.ts +33 -0
  11. package/lib/AcCmErrors.d.ts.map +1 -1
  12. package/lib/AcCmErrors.js +33 -0
  13. package/lib/AcCmErrors.js.map +1 -1
  14. package/lib/AcCmEventDispatcher.d.ts +53 -0
  15. package/lib/AcCmEventDispatcher.d.ts.map +1 -1
  16. package/lib/AcCmEventDispatcher.js +37 -0
  17. package/lib/AcCmEventDispatcher.js.map +1 -1
  18. package/lib/AcCmEventManager.d.ts +40 -1
  19. package/lib/AcCmEventManager.d.ts.map +1 -1
  20. package/lib/AcCmEventManager.js +40 -1
  21. package/lib/AcCmEventManager.js.map +1 -1
  22. package/lib/AcCmLodashUtils.d.ts +125 -18
  23. package/lib/AcCmLodashUtils.d.ts.map +1 -1
  24. package/lib/AcCmLodashUtils.js +127 -20
  25. package/lib/AcCmLodashUtils.js.map +1 -1
  26. package/lib/AcCmLogUtil.d.ts +51 -2
  27. package/lib/AcCmLogUtil.d.ts.map +1 -1
  28. package/lib/AcCmLogUtil.js +51 -2
  29. package/lib/AcCmLogUtil.js.map +1 -1
  30. package/lib/AcCmObject.d.ts +58 -4
  31. package/lib/AcCmObject.d.ts.map +1 -1
  32. package/lib/AcCmObject.js +31 -2
  33. package/lib/AcCmObject.js.map +1 -1
  34. package/lib/AcCmPerformanceCollector.d.ts +22 -1
  35. package/lib/AcCmPerformanceCollector.d.ts.map +1 -1
  36. package/lib/AcCmPerformanceCollector.js +9 -0
  37. package/lib/AcCmPerformanceCollector.js.map +1 -1
  38. package/lib/AcCmStringUtil.d.ts +37 -4
  39. package/lib/AcCmStringUtil.d.ts.map +1 -1
  40. package/lib/AcCmStringUtil.js +37 -4
  41. package/lib/AcCmStringUtil.js.map +1 -1
  42. package/lib/AcCmTaskScheduler.d.ts +84 -15
  43. package/lib/AcCmTaskScheduler.d.ts.map +1 -1
  44. package/lib/AcCmTaskScheduler.js +71 -7
  45. package/lib/AcCmTaskScheduler.js.map +1 -1
  46. package/lib/loader/AcCmFileLoader.d.ts +45 -8
  47. package/lib/loader/AcCmFileLoader.d.ts.map +1 -1
  48. package/lib/loader/AcCmFileLoader.js +52 -2
  49. package/lib/loader/AcCmFileLoader.js.map +1 -1
  50. package/lib/loader/AcCmLoader.d.ts +34 -1
  51. package/lib/loader/AcCmLoader.d.ts.map +1 -1
  52. package/lib/loader/AcCmLoader.js +29 -1
  53. package/lib/loader/AcCmLoader.js.map +1 -1
  54. package/lib/loader/AcCmLoadingManager.d.ts +64 -17
  55. package/lib/loader/AcCmLoadingManager.d.ts.map +1 -1
  56. package/lib/loader/AcCmLoadingManager.js +43 -4
  57. package/lib/loader/AcCmLoadingManager.js.map +1 -1
  58. package/package.json +1 -1
@@ -1,3 +1,12 @@
1
+ /**
2
+ * @fileoverview Task scheduling and execution system for the AutoCAD Common library.
3
+ *
4
+ * This module provides a type-safe task scheduler that can execute a chain of named tasks
5
+ * in sequence, with progress reporting, error handling, and data flow between tasks.
6
+ *
7
+ * @module AcCmTaskScheduler
8
+ * @version 1.0.0
9
+ */
1
10
  var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
2
11
  function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
3
12
  return new (P || (P = Promise))(function (resolve, reject) {
@@ -36,15 +45,45 @@ var __generator = (this && this.__generator) || function (thisArg, body) {
36
45
  };
37
46
  /**
38
47
  * Represents a named unit of work with an asynchronous or synchronous execution function.
39
- * @template TIn Input type
40
- * @template TOut Output type
48
+ *
49
+ * Tasks can be chained together in a scheduler to create complex workflows with
50
+ * proper data flow and error handling.
51
+ *
52
+ * @template TIn - Input type for the task.
53
+ * @template TOut - Output type for the task.
54
+ *
55
+ * @example
56
+ * ```typescript
57
+ * class LoadFileTask extends AcCmTask<string, ArrayBuffer> {
58
+ * constructor() {
59
+ * super('LoadFile')
60
+ * }
61
+ *
62
+ * async run(url: string): Promise<ArrayBuffer> {
63
+ * const response = await fetch(url)
64
+ * return response.arrayBuffer()
65
+ * }
66
+ * }
67
+ * ```
41
68
  */
42
69
  var AcCmTask = /** @class */ (function () {
70
+ /**
71
+ * Creates a new task with the specified name.
72
+ *
73
+ * @param {string} name - The name identifier for this task.
74
+ */
43
75
  function AcCmTask(name) {
44
76
  this.name = name;
45
77
  }
46
78
  /**
47
- * Executes the task.
79
+ * Executes the task with the given input.
80
+ *
81
+ * This method must be implemented by subclasses to define the actual work
82
+ * performed by the task. Can return either a synchronous result or a Promise.
83
+ *
84
+ * @param {TIn} _input - The input data for the task.
85
+ * @returns {TOut | Promise<TOut>} The task result, either synchronous or asynchronous.
86
+ * @throws {Error} When the method is not implemented by a subclass.
48
87
  */
49
88
  AcCmTask.prototype.run = function (_input) {
50
89
  throw new Error('run() must be implemented by subclass');
@@ -53,11 +92,36 @@ var AcCmTask = /** @class */ (function () {
53
92
  }());
54
93
  export { AcCmTask };
55
94
  /**
56
- * Type-safe task scheduler that executes a chain of named tasks in order,
57
- * passing results between them and stopping on the first failure.
95
+ * Type-safe task scheduler that executes a chain of named tasks in order.
96
+ *
97
+ * The scheduler passes results between tasks, reports progress, and stops
98
+ * execution on the first failure. Supports both synchronous and asynchronous tasks.
99
+ *
100
+ * @template TInitial - Initial input type for the first task.
101
+ * @template TFinal - Final output type from the last task.
102
+ *
103
+ * @example
104
+ * ```typescript
105
+ * // Create scheduler with string input and object output
106
+ * const scheduler = new AcCmTaskScheduler<string, ParsedData>()
107
+ *
108
+ * // Add tasks
109
+ * scheduler.addTask(new LoadFileTask())
110
+ * scheduler.addTask(new ParseDataTask())
111
+ * scheduler.addTask(new ValidateDataTask())
112
+ *
113
+ * // Set callbacks
114
+ * scheduler.setProgressCallback((progress, task) => {
115
+ * console.log(`${task.name}: ${(progress * 100).toFixed(1)}%`)
116
+ * })
117
+ *
118
+ * scheduler.setCompleteCallback((result) => {
119
+ * console.log('All tasks completed:', result)
120
+ * })
58
121
  *
59
- * @template TInitial Initial input type
60
- * @template TFinal Final output type
122
+ * // Execute
123
+ * await scheduler.execute('file.dwg')
124
+ * ```
61
125
  */
62
126
  var AcCmTaskScheduler = /** @class */ (function () {
63
127
  function AcCmTaskScheduler() {
@@ -1 +1 @@
1
- {"version":3,"file":"AcCmTaskScheduler.js","sourceRoot":"","sources":["../src/AcCmTaskScheduler.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;;;;GAIG;AACH;IAME,kBAAY,IAAY;QACtB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAA;IAClB,CAAC;IAED;;OAEG;IACH,sBAAG,GAAH,UAAI,MAAW;QACb,MAAM,IAAI,KAAK,CAAC,uCAAuC,CAAC,CAAA;IAC1D,CAAC;IACH,eAAC;AAAD,CAAC,AAhBD,IAgBC;;AA6BD;;;;;;GAMG;AACH;IAAA;QACU,UAAK,GAAiC,EAAE,CAAA;QACxC,eAAU,GAAyB,cAAO,CAAC,CAAA;QAC3C,eAAU,GAAiC,cAAO,CAAC,CAAA;QACnD,YAAO,GAAsB,cAAO,CAAC,CAAA;IA8D/C,CAAC;IA5DC;;;;OAIG;IACH,mCAAO,GAAP,UAAmB,IAAyB;QAC1C,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAkC,CAAC,CAAA;IACrD,CAAC;IAED;;OAEG;IACH,+CAAmB,GAAnB,UAAoB,QAA8B;QAChD,IAAI,CAAC,UAAU,GAAG,QAAQ,CAAA;IAC5B,CAAC;IAED;;OAEG;IACH,+CAAmB,GAAnB,UAAoB,QAAsC;QACxD,IAAI,CAAC,UAAU,GAAG,QAAQ,CAAA;IAC5B,CAAC;IAED;;OAEG;IACH,4CAAgB,GAAhB,UAAiB,QAA2B;QAC1C,IAAI,CAAC,OAAO,GAAG,QAAQ,CAAA;IACzB,CAAC;IAED;;OAEG;IACG,+BAAG,GAAT,UAAU,WAAqB;;;;;;;wBACvB,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAA;wBAC3B,MAAM,GAAY,WAAW,CAAA;4CAExB,CAAC;;;;;wCACF,IAAI,GAAG,OAAK,KAAK,CAAC,CAAC,CAAC,CAAA;;;;wCAGf,qBAAM,IAAI,OAAO,CAAC,UAAC,OAAO,EAAE,MAAM;gDACzC,UAAU,CAAC;;;;;;gEAEQ,qBAAM,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,EAAA;;gEAA/B,MAAM,GAAG,SAAsB;gEACrC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,KAAK,EAAE,IAAI,CAAC,CAAA;gEACtC,OAAO,CAAC,MAAM,CAAC,CAAA;;;;gEAEf,MAAM,CAAC,KAAG,CAAC,CAAA;;;;;qDAEd,EAAE,CAAC,CAAC,CAAA;4CACP,CAAC,CAAC,EAAA;;wCAVF,MAAM,GAAG,SAUP,CAAA;;;;wCAEF,OAAK,OAAO,CAAC,OAAK,EAAE,CAAC,EAAE,IAAI,CAAC,CAAA;;;;;;;wBAhBvB,CAAC,GAAG,CAAC;;;6BAAE,CAAA,CAAC,GAAG,KAAK,CAAA;sDAAhB,CAAC;;;;;;;wBAAiB,CAAC,EAAE,CAAA;;;wBAqB9B,IAAI,CAAC,UAAU,CAAC,MAAgB,CAAC,CAAA;;;;;KAClC;IACH,wBAAC;AAAD,CAAC,AAlED,IAkEC"}
1
+ {"version":3,"file":"AcCmTaskScheduler.js","sourceRoot":"","sources":["../src/AcCmTaskScheduler.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEH;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH;IAME;;;;OAIG;IACH,kBAAY,IAAY;QACtB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAA;IAClB,CAAC;IAED;;;;;;;;;OASG;IACH,sBAAG,GAAH,UAAI,MAAW;QACb,MAAM,IAAI,KAAK,CAAC,uCAAuC,CAAC,CAAA;IAC1D,CAAC;IACH,eAAC;AAAD,CAAC,AA5BD,IA4BC;;AAkCD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+BG;AACH;IAAA;QACU,UAAK,GAAiC,EAAE,CAAA;QACxC,eAAU,GAAyB,cAAO,CAAC,CAAA;QAC3C,eAAU,GAAiC,cAAO,CAAC,CAAA;QACnD,YAAO,GAAsB,cAAO,CAAC,CAAA;IA8D/C,CAAC;IA5DC;;;;OAIG;IACH,mCAAO,GAAP,UAAmB,IAAyB;QAC1C,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAkC,CAAC,CAAA;IACrD,CAAC;IAED;;OAEG;IACH,+CAAmB,GAAnB,UAAoB,QAA8B;QAChD,IAAI,CAAC,UAAU,GAAG,QAAQ,CAAA;IAC5B,CAAC;IAED;;OAEG;IACH,+CAAmB,GAAnB,UAAoB,QAAsC;QACxD,IAAI,CAAC,UAAU,GAAG,QAAQ,CAAA;IAC5B,CAAC;IAED;;OAEG;IACH,4CAAgB,GAAhB,UAAiB,QAA2B;QAC1C,IAAI,CAAC,OAAO,GAAG,QAAQ,CAAA;IACzB,CAAC;IAED;;OAEG;IACG,+BAAG,GAAT,UAAU,WAAqB;;;;;;;wBACvB,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAA;wBAC3B,MAAM,GAAY,WAAW,CAAA;4CAExB,CAAC;;;;;wCACF,IAAI,GAAG,OAAK,KAAK,CAAC,CAAC,CAAC,CAAA;;;;wCAGf,qBAAM,IAAI,OAAO,CAAC,UAAC,OAAO,EAAE,MAAM;gDACzC,UAAU,CAAC;;;;;;gEAEQ,qBAAM,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,EAAA;;gEAA/B,MAAM,GAAG,SAAsB;gEACrC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,KAAK,EAAE,IAAI,CAAC,CAAA;gEACtC,OAAO,CAAC,MAAM,CAAC,CAAA;;;;gEAEf,MAAM,CAAC,KAAG,CAAC,CAAA;;;;;qDAEd,EAAE,CAAC,CAAC,CAAA;4CACP,CAAC,CAAC,EAAA;;wCAVF,MAAM,GAAG,SAUP,CAAA;;;;wCAEF,OAAK,OAAO,CAAC,OAAK,EAAE,CAAC,EAAE,IAAI,CAAC,CAAA;;;;;;;wBAhBvB,CAAC,GAAG,CAAC;;;6BAAE,CAAA,CAAC,GAAG,KAAK,CAAA;sDAAhB,CAAC;;;;;;;wBAAiB,CAAC,EAAE,CAAA;;;wBAqB9B,IAAI,CAAC,UAAU,CAAC,MAAgB,CAAC,CAAA;;;;;KAClC;IACH,wBAAC;AAAD,CAAC,AAlED,IAkEC"}
@@ -1,17 +1,54 @@
1
+ /**
2
+ * @fileoverview HTTP-based file loader implementation for the AutoCAD Common library.
3
+ *
4
+ * This module provides a concrete implementation of the loader interface using
5
+ * the Fetch API for loading files over HTTP. Supports various response types
6
+ * and provides comprehensive error handling.
7
+ *
8
+ * @module AcCmFileLoader
9
+ * @version 1.0.0
10
+ */
1
11
  import { AcCmLoader, AcCmLoaderProgressCallback } from './AcCmLoader';
2
12
  import { AcCmLoadingManager, AcCmOnErrorCallback, AcCmOnLoadCallback } from './AcCmLoadingManager';
3
13
  /**
4
- * The response type. Valid values are:
5
- * - text or empty string (default) - returns the data as String.
6
- * - arraybuffer - loads the data into a ArrayBuffer and returns that.
7
- * - blob - returns the data as a Blob.
8
- * - document - parses the file using the DOMParser.
9
- * - json - parses the file using JSON.parse.
14
+ * The supported response types for file loading operations.
15
+ *
16
+ * - `''` or `'text'` - Returns the data as a string (default).
17
+ * - `'arraybuffer'` - Loads the data into an ArrayBuffer.
18
+ * - `'blob'` - Returns the data as a Blob.
19
+ * - `'document'` - Parses the file using the DOMParser.
20
+ * - `'json'` - Parses the file using JSON.parse.
10
21
  */
11
22
  type AcCmResponseType = '' | 'text' | 'arraybuffer' | 'blob' | 'document' | 'json';
12
23
  /**
13
- * A low level class for loading resources with 'Fetch', used internally by most loaders. It can also
14
- * be used directly to load any file type that does not have a loader.
24
+ * HTTP-based file loader using the Fetch API.
25
+ *
26
+ * A low-level class for loading resources over HTTP, used internally by most loaders.
27
+ * It can also be used directly to load any file type that does not have a specialized loader.
28
+ *
29
+ * Supports various response types, custom MIME types, and provides comprehensive error handling
30
+ * with automatic retry mechanisms for failed requests.
31
+ *
32
+ * @example
33
+ * ```typescript
34
+ * import { AcCmFileLoader } from './AcCmFileLoader'
35
+ *
36
+ * const loader = new AcCmFileLoader()
37
+ *
38
+ * // Load a text file
39
+ * loader.load(
40
+ * 'data.txt',
41
+ * (data) => console.log('Loaded:', data),
42
+ * (progress) => console.log('Progress:', progress.loaded / progress.total),
43
+ * (error) => console.error('Error:', error)
44
+ * )
45
+ *
46
+ * // Load binary data
47
+ * loader.setResponseType('arraybuffer')
48
+ * loader.load('file.dwg', (arrayBuffer) => {
49
+ * // Process binary data
50
+ * })
51
+ * ```
15
52
  */
16
53
  export declare class AcCmFileLoader extends AcCmLoader {
17
54
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"AcCmFileLoader.d.ts","sourceRoot":"","sources":["../../src/loader/AcCmFileLoader.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,0BAA0B,EAAE,MAAM,cAAc,CAAA;AACrE,OAAO,EACL,kBAAkB,EAClB,mBAAmB,EACnB,kBAAkB,EACnB,MAAM,sBAAsB,CAAA;AAmB7B;;;;;;;GAOG;AACH,KAAK,gBAAgB,GACjB,EAAE,GACF,MAAM,GACN,aAAa,GACb,MAAM,GACN,UAAU,GACV,MAAM,CAAA;AAEV;;;GAGG;AACH,qBAAa,cAAe,SAAQ,UAAU;IAC5C;;OAEG;IACH,QAAQ,CAAC,EAAE,sBAAsB,CAAA;IACjC;;OAEG;IACH,YAAY,CAAC,EAAE,gBAAgB,CAAA;IAE/B;;;OAGG;gBACS,OAAO,CAAC,EAAE,kBAAkB;IAIxC;;;;;;OAMG;IACH,IAAI,CACF,GAAG,EAAE,MAAM,EACX,MAAM,EAAE,kBAAkB,EAC1B,UAAU,EAAE,0BAA0B,EACtC,OAAO,EAAE,mBAAmB;IAmL9B;;;;;;;;;OASG;IACH,eAAe,CAAC,KAAK,EAAE,gBAAgB;IAKvC;;;;;OAKG;IACH,WAAW,CAAC,KAAK,EAAE,sBAAsB;CAI1C"}
1
+ {"version":3,"file":"AcCmFileLoader.d.ts","sourceRoot":"","sources":["../../src/loader/AcCmFileLoader.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,EAAE,UAAU,EAAE,0BAA0B,EAAE,MAAM,cAAc,CAAA;AACrE,OAAO,EACL,kBAAkB,EAClB,mBAAmB,EACnB,kBAAkB,EACnB,MAAM,sBAAsB,CAAA;AAmC7B;;;;;;;;GAQG;AACH,KAAK,gBAAgB,GACjB,EAAE,GACF,MAAM,GACN,aAAa,GACb,MAAM,GACN,UAAU,GACV,MAAM,CAAA;AAEV;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AACH,qBAAa,cAAe,SAAQ,UAAU;IAC5C;;OAEG;IACH,QAAQ,CAAC,EAAE,sBAAsB,CAAA;IACjC;;OAEG;IACH,YAAY,CAAC,EAAE,gBAAgB,CAAA;IAE/B;;;OAGG;gBACS,OAAO,CAAC,EAAE,kBAAkB;IAIxC;;;;;;OAMG;IACH,IAAI,CACF,GAAG,EAAE,MAAM,EACX,MAAM,EAAE,kBAAkB,EAC1B,UAAU,EAAE,0BAA0B,EACtC,OAAO,EAAE,mBAAmB;IAmL9B;;;;;;;;;OASG;IACH,eAAe,CAAC,KAAK,EAAE,gBAAgB;IAKvC;;;;;OAKG;IACH,WAAW,CAAC,KAAK,EAAE,sBAAsB;CAI1C"}
@@ -1,3 +1,13 @@
1
+ /**
2
+ * @fileoverview HTTP-based file loader implementation for the AutoCAD Common library.
3
+ *
4
+ * This module provides a concrete implementation of the loader interface using
5
+ * the Fetch API for loading files over HTTP. Supports various response types
6
+ * and provides comprehensive error handling.
7
+ *
8
+ * @module AcCmFileLoader
9
+ * @version 1.0.0
10
+ */
1
11
  var __extends = (this && this.__extends) || (function () {
2
12
  var extendStatics = function (d, b) {
3
13
  extendStatics = Object.setPrototypeOf ||
@@ -14,9 +24,23 @@ var __extends = (this && this.__extends) || (function () {
14
24
  };
15
25
  })();
16
26
  import { AcCmLoader } from './AcCmLoader';
27
+ /**
28
+ * @internal
29
+ */
17
30
  var loading = {};
31
+ /**
32
+ * Custom error class for HTTP-related failures.
33
+ *
34
+ * @internal
35
+ */
18
36
  var HttpError = /** @class */ (function (_super) {
19
37
  __extends(HttpError, _super);
38
+ /**
39
+ * Creates a new HttpError.
40
+ *
41
+ * @param {string} message - The error message.
42
+ * @param {Response} response - The HTTP response that caused the error.
43
+ */
20
44
  function HttpError(message, response) {
21
45
  var _this = _super.call(this, message) || this;
22
46
  _this.response = response;
@@ -25,8 +49,34 @@ var HttpError = /** @class */ (function (_super) {
25
49
  return HttpError;
26
50
  }(Error));
27
51
  /**
28
- * A low level class for loading resources with 'Fetch', used internally by most loaders. It can also
29
- * be used directly to load any file type that does not have a loader.
52
+ * HTTP-based file loader using the Fetch API.
53
+ *
54
+ * A low-level class for loading resources over HTTP, used internally by most loaders.
55
+ * It can also be used directly to load any file type that does not have a specialized loader.
56
+ *
57
+ * Supports various response types, custom MIME types, and provides comprehensive error handling
58
+ * with automatic retry mechanisms for failed requests.
59
+ *
60
+ * @example
61
+ * ```typescript
62
+ * import { AcCmFileLoader } from './AcCmFileLoader'
63
+ *
64
+ * const loader = new AcCmFileLoader()
65
+ *
66
+ * // Load a text file
67
+ * loader.load(
68
+ * 'data.txt',
69
+ * (data) => console.log('Loaded:', data),
70
+ * (progress) => console.log('Progress:', progress.loaded / progress.total),
71
+ * (error) => console.error('Error:', error)
72
+ * )
73
+ *
74
+ * // Load binary data
75
+ * loader.setResponseType('arraybuffer')
76
+ * loader.load('file.dwg', (arrayBuffer) => {
77
+ * // Process binary data
78
+ * })
79
+ * ```
30
80
  */
31
81
  var AcCmFileLoader = /** @class */ (function (_super) {
32
82
  __extends(AcCmFileLoader, _super);
@@ -1 +1 @@
1
- {"version":3,"file":"AcCmFileLoader.js","sourceRoot":"","sources":["../../src/loader/AcCmFileLoader.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,OAAO,EAAE,UAAU,EAA8B,MAAM,cAAc,CAAA;AAOrE,IAAM,OAAO,GAOT,EAAE,CAAA;AAEN;IAAwB,6BAAK;IAE3B,mBAAY,OAAe,EAAE,QAAkB;QAC7C,YAAA,MAAK,YAAC,OAAO,CAAC,SAAA;QACd,KAAI,CAAC,QAAQ,GAAG,QAAQ,CAAA;;IAC1B,CAAC;IACH,gBAAC;AAAD,CAAC,AAND,CAAwB,KAAK,GAM5B;AAkBD;;;GAGG;AACH;IAAoC,kCAAU;IAU5C;;;OAGG;IACH,wBAAY,OAA4B;QACtC,OAAA,MAAK,YAAC,OAAO,CAAC,SAAA;IAChB,CAAC;IAED;;;;;;OAMG;IACH,6BAAI,GAAJ,UACE,GAAW,EACX,MAA0B,EAC1B,UAAsC,EACtC,OAA4B;QAJ9B,iBAqLC;QA/KC,IAAI,GAAG,KAAK,SAAS;YAAE,GAAG,GAAG,EAAE,CAAA;QAC/B,IAAI,IAAI,CAAC,IAAI,KAAK,SAAS;YAAE,GAAG,GAAG,IAAI,CAAC,IAAI,GAAG,GAAG,CAAA;QAClD,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,GAAG,CAAC,CAAA;QAElC,gCAAgC;QAChC,IAAI,OAAO,CAAC,GAAG,CAAC,KAAK,SAAS,EAAE,CAAC;YAC/B,OAAO,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC;gBAChB,MAAM,EAAE,MAAM;gBACd,UAAU,EAAE,UAAU;gBACtB,OAAO,EAAE,OAAO;aACjB,CAAC,CAAA;YAEF,OAAM;QACR,CAAC;QAED,0CAA0C;QAC1C,OAAO,CAAC,GAAG,CAAC,GAAG,EAAE,CAAA;QAEjB,OAAO,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC;YAChB,MAAM,EAAE,MAAM;YACd,UAAU,EAAE,UAAU;YACtB,OAAO,EAAE,OAAO;SACjB,CAAC,CAAA;QAEF,iBAAiB;QACjB,IAAM,GAAG,GAAG,IAAI,OAAO,CAAC,GAAG,EAAE;YAC3B,OAAO,EAAE,IAAI,OAAO,CAAC,IAAI,CAAC,aAAa,CAAC;YACxC,WAAW,EAAE,IAAI,CAAC,eAAe,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,aAAa;YAC7D,wDAAwD;SACzD,CAAC,CAAA;QAEF,oCAAoC;QACpC,IAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAA;QAC9B,IAAM,YAAY,GAAG,IAAI,CAAC,YAAY,CAAA;QAEtC,kBAAkB;QAClB,KAAK,CAAC,GAAG,CAAC;aACP,IAAI,CAAC,UAAA,QAAQ;;YACZ,IAAI,QAAQ,CAAC,MAAM,KAAK,GAAG,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBACrD,kEAAkE;gBAClE,kDAAkD;gBAElD,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;oBAC1B,OAAO,CAAC,IAAI,CAAC,yBAAyB,CAAC,CAAA;gBACzC,CAAC;gBAED,gFAAgF;gBAEhF,IACE,OAAO,cAAc,KAAK,WAAW;oBACrC,QAAQ,CAAC,IAAI,KAAK,SAAS;oBAC3B,CAAA,MAAA,QAAQ,CAAC,IAAI,0CAAE,SAAS,MAAK,SAAS,EACtC,CAAC;oBACD,OAAO,QAAQ,CAAA;gBACjB,CAAC;gBAED,IAAM,WAAS,GAAG,OAAO,CAAC,GAAG,CAAC,CAAA;gBAC9B,IAAM,QAAM,GAAG,QAAQ,CAAC,IAAI,CAAC,SAAS,EAAE,CAAA;gBAExC,gCAAgC;gBAChC,2GAA2G;gBAC3G,IAAM,aAAa,GACjB,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,aAAa,CAAC;oBACnC,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAA;gBACxC,IAAM,OAAK,GAAG,aAAa,CAAC,CAAC,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;gBACzD,IAAM,kBAAgB,GAAG,OAAK,KAAK,CAAC,CAAA;gBACpC,IAAI,QAAM,GAAG,CAAC,CAAA;gBAEd,8EAA8E;gBAC9E,IAAM,MAAM,GAAG,IAAI,cAAc,CAAC;oBAChC,KAAK,YAAC,UAAU;wBACd,QAAQ,EAAE,CAAA;wBAEV,SAAS,QAAQ;4BACf,QAAM,CAAC,IAAI,EAAE,CAAC,IAAI,CAChB,UAAC,EAAe;oCAAb,IAAI,UAAA,EAAE,KAAK,WAAA;gCACZ,IAAI,IAAI,EAAE,CAAC;oCACT,UAAU,CAAC,KAAK,EAAE,CAAA;gCACpB,CAAC;qCAAM,CAAC;oCACN,QAAM,IAAI,KAAK,CAAC,UAAU,CAAA;oCAE1B,IAAM,OAAK,GAAG,IAAI,aAAa,CAAC,UAAU,EAAE;wCAC1C,gBAAgB,oBAAA;wCAChB,MAAM,UAAA;wCACN,KAAK,SAAA;qCACN,CAAC,CAAA;oCACF,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,GAAG,WAAS,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC;wCACnD,IAAM,QAAQ,GAAG,WAAS,CAAC,CAAC,CAAC,CAAA;wCAC7B,IAAI,QAAQ,CAAC,UAAU;4CAAE,QAAQ,CAAC,UAAU,CAAC,OAAK,CAAC,CAAA;oCACrD,CAAC;oCAED,UAAU,CAAC,OAAO,CAAC,KAAK,CAAC,CAAA;oCACzB,QAAQ,EAAE,CAAA;gCACZ,CAAC;4BACH,CAAC,EACD,UAAA,CAAC;gCACC,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC,CAAA;4BACrB,CAAC,CACF,CAAA;wBACH,CAAC;oBACH,CAAC;iBACF,CAAC,CAAA;gBAEF,OAAO,IAAI,QAAQ,CAAC,MAAM,CAAC,CAAA;YAC7B,CAAC;iBAAM,CAAC;gBACN,MAAM,IAAI,SAAS,CACjB,sBAAc,QAAQ,CAAC,GAAG,+BAAoB,QAAQ,CAAC,MAAM,eAAK,QAAQ,CAAC,UAAU,CAAE,EACvF,QAAQ,CACT,CAAA;YACH,CAAC;QACH,CAAC,CAAC;aACD,IAAI,CAAC,UAAA,QAAQ;YACZ,QAAQ,YAAY,EAAE,CAAC;gBACrB,KAAK,aAAa;oBAChB,OAAO,QAAQ,CAAC,WAAW,EAAE,CAAA;gBAE/B,KAAK,MAAM;oBACT,OAAO,QAAQ,CAAC,IAAI,EAAE,CAAA;gBAExB,KAAK,UAAU;oBACb,OAAO,QAAQ,CAAC,IAAI,EAAE,CAAC,IAAI,CAAC,UAAA,IAAI;wBAC9B,IAAM,MAAM,GAAG,IAAI,SAAS,EAAE,CAAA;wBAC9B,OAAO,MAAM,CAAC,eAAe,CAAC,IAAI,EAAE,QAAS,CAAC,CAAA;oBAChD,CAAC,CAAC,CAAA;gBAEJ,KAAK,MAAM;oBACT,OAAO,QAAQ,CAAC,IAAI,EAAE,CAAA;gBAExB;oBACE,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;wBAC3B,OAAO,QAAQ,CAAC,IAAI,EAAE,CAAA;oBACxB,CAAC;yBAAM,CAAC;wBACN,iBAAiB;wBACjB,IAAM,EAAE,GAAG,yBAAyB,CAAA;wBACpC,IAAM,IAAI,GAAG,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;wBAC9B,IAAM,KAAK,GAAG,IAAI,IAAI,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,SAAS,CAAA;wBACjE,IAAM,SAAO,GAAG,IAAI,WAAW,CAAC,KAAK,CAAC,CAAA;wBACtC,OAAO,QAAQ,CAAC,WAAW,EAAE,CAAC,IAAI,CAAC,UAAA,EAAE,IAAI,OAAA,SAAO,CAAC,MAAM,CAAC,EAAE,CAAC,EAAlB,CAAkB,CAAC,CAAA;oBAC9D,CAAC;YACL,CAAC;QACH,CAAC,CAAC;aACD,IAAI,CAAC,UAAA,IAAI;YACR,IAAM,SAAS,GAAG,OAAO,CAAC,GAAG,CAAC,CAAA;YAC9B,OAAO,OAAO,CAAC,GAAG,CAAC,CAAA;YAEnB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,GAAG,SAAS,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC;gBACnD,IAAM,QAAQ,GAAG,SAAS,CAAC,CAAC,CAAC,CAAA;gBAC7B,IAAI,QAAQ,CAAC,MAAM;oBAAE,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA;YAC5C,CAAC;QACH,CAAC,CAAC;aACD,KAAK,CAAC,UAAA,GAAG;YACR,qDAAqD;YAErD,IAAM,SAAS,GAAG,OAAO,CAAC,GAAG,CAAC,CAAA;YAE9B,IAAI,SAAS,KAAK,SAAS,EAAE,CAAC;gBAC5B,0DAA0D;gBAC1D,KAAI,CAAC,OAAO,CAAC,SAAS,CAAC,GAAG,CAAC,CAAA;gBAC3B,MAAM,GAAG,CAAA;YACX,CAAC;YAED,OAAO,OAAO,CAAC,GAAG,CAAC,CAAA;YAEnB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,GAAG,SAAS,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC;gBACnD,IAAM,QAAQ,GAAG,SAAS,CAAC,CAAC,CAAC,CAAA;gBAC7B,IAAI,QAAQ,CAAC,OAAO;oBAAE,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,CAAA;YAC7C,CAAC;YAED,KAAI,CAAC,OAAO,CAAC,SAAS,CAAC,GAAG,CAAC,CAAA;QAC7B,CAAC,CAAC;aACD,OAAO,CAAC;YACP,KAAI,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,CAAA;QAC3B,CAAC,CAAC,CAAA;QAEJ,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,GAAG,CAAC,CAAA;IAC7B,CAAC;IAED;;;;;;;;;OASG;IACH,wCAAe,GAAf,UAAgB,KAAuB;QACrC,IAAI,CAAC,YAAY,GAAG,KAAK,CAAA;QACzB,OAAO,IAAI,CAAA;IACb,CAAC;IAED;;;;;OAKG;IACH,oCAAW,GAAX,UAAY,KAA6B;QACvC,IAAI,CAAC,QAAQ,GAAG,KAAK,CAAA;QACrB,OAAO,IAAI,CAAA;IACb,CAAC;IACH,qBAAC;AAAD,CAAC,AAzOD,CAAoC,UAAU,GAyO7C"}
1
+ {"version":3,"file":"AcCmFileLoader.js","sourceRoot":"","sources":["../../src/loader/AcCmFileLoader.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,40 @@
1
+ /**
2
+ * @fileoverview Base loader implementation for the AutoCAD Common library.
3
+ *
4
+ * This module provides the abstract base class for all loaders in the system,
5
+ * defining the common interface and shared functionality for loading various
6
+ * types of resources.
7
+ *
8
+ * @module AcCmLoader
9
+ * @version 1.0.0
10
+ */
1
11
  import { AcCmLoadingManager, AcCmOnErrorCallback } from './AcCmLoadingManager';
12
+ /**
13
+ * Callback function for reporting loading progress.
14
+ *
15
+ * @param {ProgressEvent} progress - The progress event containing loading information.
16
+ */
2
17
  export type AcCmLoaderProgressCallback = (progress: ProgressEvent) => void;
3
18
  /**
4
- * Base class for implementing loaders.
19
+ * Abstract base class for implementing resource loaders.
20
+ *
21
+ * This class provides the common functionality and interface that all loaders
22
+ * must implement, including loading manager integration, path handling, and
23
+ * configuration options for cross-origin requests.
24
+ *
25
+ * @abstract
26
+ *
27
+ * @example
28
+ * ```typescript
29
+ * class MyCustomLoader extends AcCmLoader {
30
+ * load(url: string, onLoad: (data: MyDataType) => void, onProgress?: AcCmLoaderProgressCallback, onError?: AcCmOnErrorCallback): void {
31
+ * // Implementation specific loading logic
32
+ * const fullUrl = this.resolveURL(url)
33
+ * // ... fetch and process data
34
+ * onLoad(processedData)
35
+ * }
36
+ * }
37
+ * ```
5
38
  */
6
39
  export declare abstract class AcCmLoader {
7
40
  manager: AcCmLoadingManager;
@@ -1 +1 @@
1
- {"version":3,"file":"AcCmLoader.d.ts","sourceRoot":"","sources":["../../src/loader/AcCmLoader.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,kBAAkB,EAClB,mBAAmB,EAEpB,MAAM,sBAAsB,CAAA;AAE7B,MAAM,MAAM,0BAA0B,GAAG,CAAC,QAAQ,EAAE,aAAa,KAAK,IAAI,CAAA;AAE1E;;GAEG;AACH,8BAAsB,UAAU;IAC9B,OAAO,EAAE,kBAAkB,CAAA;IAC3B;;;OAGG;IACH,WAAW,EAAE,MAAM,CAAA;IACnB;;OAEG;IACH,eAAe,EAAE,OAAO,CAAA;IACxB;;OAEG;IACH,IAAI,EAAE,MAAM,CAAA;IACZ;;;OAGG;IACH,YAAY,EAAE,MAAM,CAAA;IACpB;;OAEG;IACH,aAAa,EAAE,WAAW,CAAA;IAE1B;;;OAGG;gBACS,OAAO,CAAC,EAAE,kBAAkB;IASxC;;;;;;;OAOG;IACH,QAAQ,CAAC,IAAI,CACX,GAAG,EAAE,MAAM,EACX,MAAM,CAAC,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,IAAI,EAChC,UAAU,CAAC,EAAE,0BAA0B,EACvC,OAAO,CAAC,EAAE,mBAAmB,GAC5B,IAAI;IAEP;;;;;;;OAOG;IACH,SAAS,CAAC,GAAG,EAAE,MAAM,EAAE,UAAU,EAAE,0BAA0B;IAM7D;;OAEG;IACH,KAAK,CAAC,KAAK,EAAE,OAAO;IAEpB;;;;;OAKG;IACH,cAAc,CAAC,WAAW,EAAE,MAAM;IAKlC;;;;;;OAMG;IACH,kBAAkB,CAAC,KAAK,EAAE,OAAO;IAKjC;;;;OAIG;IACH,OAAO,CAAC,IAAI,EAAE,MAAM;IAKpB;;;;OAIG;IACH,eAAe,CAAC,YAAY,EAAE,MAAM;IAKpC;;;;;OAKG;IACH,gBAAgB,CAAC,aAAa,EAAE,WAAW;CAI5C"}
1
+ {"version":3,"file":"AcCmLoader.d.ts","sourceRoot":"","sources":["../../src/loader/AcCmLoader.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,EACL,kBAAkB,EAClB,mBAAmB,EAEpB,MAAM,sBAAsB,CAAA;AAE7B;;;;GAIG;AACH,MAAM,MAAM,0BAA0B,GAAG,CAAC,QAAQ,EAAE,aAAa,KAAK,IAAI,CAAA;AAE1E;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,8BAAsB,UAAU;IAC9B,OAAO,EAAE,kBAAkB,CAAA;IAC3B;;;OAGG;IACH,WAAW,EAAE,MAAM,CAAA;IACnB;;OAEG;IACH,eAAe,EAAE,OAAO,CAAA;IACxB;;OAEG;IACH,IAAI,EAAE,MAAM,CAAA;IACZ;;;OAGG;IACH,YAAY,EAAE,MAAM,CAAA;IACpB;;OAEG;IACH,aAAa,EAAE,WAAW,CAAA;IAE1B;;;OAGG;gBACS,OAAO,CAAC,EAAE,kBAAkB;IASxC;;;;;;;OAOG;IACH,QAAQ,CAAC,IAAI,CACX,GAAG,EAAE,MAAM,EACX,MAAM,CAAC,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,IAAI,EAChC,UAAU,CAAC,EAAE,0BAA0B,EACvC,OAAO,CAAC,EAAE,mBAAmB,GAC5B,IAAI;IAEP;;;;;;;OAOG;IACH,SAAS,CAAC,GAAG,EAAE,MAAM,EAAE,UAAU,EAAE,0BAA0B;IAM7D;;OAEG;IACH,KAAK,CAAC,KAAK,EAAE,OAAO;IAEpB;;;;;OAKG;IACH,cAAc,CAAC,WAAW,EAAE,MAAM;IAKlC;;;;;;OAMG;IACH,kBAAkB,CAAC,KAAK,EAAE,OAAO;IAKjC;;;;OAIG;IACH,OAAO,CAAC,IAAI,EAAE,MAAM;IAKpB;;;;OAIG;IACH,eAAe,CAAC,YAAY,EAAE,MAAM;IAKpC;;;;;OAKG;IACH,gBAAgB,CAAC,aAAa,EAAE,WAAW;CAI5C"}
@@ -1,6 +1,34 @@
1
+ /**
2
+ * @fileoverview Base loader implementation for the AutoCAD Common library.
3
+ *
4
+ * This module provides the abstract base class for all loaders in the system,
5
+ * defining the common interface and shared functionality for loading various
6
+ * types of resources.
7
+ *
8
+ * @module AcCmLoader
9
+ * @version 1.0.0
10
+ */
1
11
  import { DefaultLoadingManager } from './AcCmLoadingManager';
2
12
  /**
3
- * Base class for implementing loaders.
13
+ * Abstract base class for implementing resource loaders.
14
+ *
15
+ * This class provides the common functionality and interface that all loaders
16
+ * must implement, including loading manager integration, path handling, and
17
+ * configuration options for cross-origin requests.
18
+ *
19
+ * @abstract
20
+ *
21
+ * @example
22
+ * ```typescript
23
+ * class MyCustomLoader extends AcCmLoader {
24
+ * load(url: string, onLoad: (data: MyDataType) => void, onProgress?: AcCmLoaderProgressCallback, onError?: AcCmOnErrorCallback): void {
25
+ * // Implementation specific loading logic
26
+ * const fullUrl = this.resolveURL(url)
27
+ * // ... fetch and process data
28
+ * onLoad(processedData)
29
+ * }
30
+ * }
31
+ * ```
4
32
  */
5
33
  var AcCmLoader = /** @class */ (function () {
6
34
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"AcCmLoader.js","sourceRoot":"","sources":["../../src/loader/AcCmLoader.ts"],"names":[],"mappings":"AAAA,OAAO,EAGL,qBAAqB,EACtB,MAAM,sBAAsB,CAAA;AAI7B;;GAEG;AACH;IAyBE;;;OAGG;IACH,oBAAY,OAA4B;QACtC,IAAI,CAAC,OAAO,GAAG,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,qBAAqB,CAAA;QACtE,IAAI,CAAC,WAAW,GAAG,WAAW,CAAA;QAC9B,IAAI,CAAC,eAAe,GAAG,KAAK,CAAA;QAC5B,IAAI,CAAC,IAAI,GAAG,EAAE,CAAA;QACd,IAAI,CAAC,YAAY,GAAG,EAAE,CAAA;QACtB,IAAI,CAAC,aAAa,GAAG,EAAE,CAAA;IACzB,CAAC;IAiBD;;;;;;;OAOG;IACH,8BAAS,GAAT,UAAU,GAAW,EAAE,UAAsC;QAA7D,iBAIC;QAHC,OAAO,IAAI,OAAO,CAAC,UAAC,OAAO,EAAE,MAAM;YACjC,KAAI,CAAC,IAAI,CAAC,GAAG,EAAE,OAAO,EAAE,UAAU,EAAE,MAAM,CAAC,CAAA;QAC7C,CAAC,CAAC,CAAA;IACJ,CAAC;IAED;;OAEG;IACH,0BAAK,GAAL,UAAM,KAAc,IAAG,CAAC;IAExB;;;;;OAKG;IACH,mCAAc,GAAd,UAAe,WAAmB;QAChC,IAAI,CAAC,WAAW,GAAG,WAAW,CAAA;QAC9B,OAAO,IAAI,CAAA;IACb,CAAC;IAED;;;;;;OAMG;IACH,uCAAkB,GAAlB,UAAmB,KAAc;QAC/B,IAAI,CAAC,eAAe,GAAG,KAAK,CAAA;QAC5B,OAAO,IAAI,CAAA;IACb,CAAC;IAED;;;;OAIG;IACH,4BAAO,GAAP,UAAQ,IAAY;QAClB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAA;QAChB,OAAO,IAAI,CAAA;IACb,CAAC;IAED;;;;OAIG;IACH,oCAAe,GAAf,UAAgB,YAAoB;QAClC,IAAI,CAAC,YAAY,GAAG,YAAY,CAAA;QAChC,OAAO,IAAI,CAAA;IACb,CAAC;IAED;;;;;OAKG;IACH,qCAAgB,GAAhB,UAAiB,aAA0B;QACzC,IAAI,CAAC,aAAa,GAAG,aAAa,CAAA;QAClC,OAAO,IAAI,CAAA;IACb,CAAC;IACH,iBAAC;AAAD,CAAC,AA7HD,IA6HC"}
1
+ {"version":3,"file":"AcCmLoader.js","sourceRoot":"","sources":["../../src/loader/AcCmLoader.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,EAGL,qBAAqB,EACtB,MAAM,sBAAsB,CAAA;AAS7B;;;;;;;;;;;;;;;;;;;;GAoBG;AACH;IAyBE;;;OAGG;IACH,oBAAY,OAA4B;QACtC,IAAI,CAAC,OAAO,GAAG,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,qBAAqB,CAAA;QACtE,IAAI,CAAC,WAAW,GAAG,WAAW,CAAA;QAC9B,IAAI,CAAC,eAAe,GAAG,KAAK,CAAA;QAC5B,IAAI,CAAC,IAAI,GAAG,EAAE,CAAA;QACd,IAAI,CAAC,YAAY,GAAG,EAAE,CAAA;QACtB,IAAI,CAAC,aAAa,GAAG,EAAE,CAAA;IACzB,CAAC;IAiBD;;;;;;;OAOG;IACH,8BAAS,GAAT,UAAU,GAAW,EAAE,UAAsC;QAA7D,iBAIC;QAHC,OAAO,IAAI,OAAO,CAAC,UAAC,OAAO,EAAE,MAAM;YACjC,KAAI,CAAC,IAAI,CAAC,GAAG,EAAE,OAAO,EAAE,UAAU,EAAE,MAAM,CAAC,CAAA;QAC7C,CAAC,CAAC,CAAA;IACJ,CAAC;IAED;;OAEG;IACH,0BAAK,GAAL,UAAM,KAAc,IAAG,CAAC;IAExB;;;;;OAKG;IACH,mCAAc,GAAd,UAAe,WAAmB;QAChC,IAAI,CAAC,WAAW,GAAG,WAAW,CAAA;QAC9B,OAAO,IAAI,CAAA;IACb,CAAC;IAED;;;;;;OAMG;IACH,uCAAkB,GAAlB,UAAmB,KAAc;QAC/B,IAAI,CAAC,eAAe,GAAG,KAAK,CAAA;QAC5B,OAAO,IAAI,CAAA;IACb,CAAC;IAED;;;;OAIG;IACH,4BAAO,GAAP,UAAQ,IAAY;QAClB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAA;QAChB,OAAO,IAAI,CAAA;IACb,CAAC;IAED;;;;OAIG;IACH,oCAAe,GAAf,UAAgB,YAAoB;QAClC,IAAI,CAAC,YAAY,GAAG,YAAY,CAAA;QAChC,OAAO,IAAI,CAAA;IACb,CAAC;IAED;;;;;OAKG;IACH,qCAAgB,GAAhB,UAAiB,aAA0B;QACzC,IAAI,CAAC,aAAa,GAAG,aAAa,CAAA;QAClC,OAAO,IAAI,CAAA;IACb,CAAC;IACH,iBAAC;AAAD,CAAC,AA7HD,IA6HC"}
@@ -1,37 +1,84 @@
1
+ /**
2
+ * @fileoverview Loading management system for the AutoCAD Common library.
3
+ *
4
+ * This module provides a centralized loading manager that tracks and coordinates
5
+ * multiple file loading operations with progress reporting, error handling, and
6
+ * URL modification capabilities.
7
+ *
8
+ * @module AcCmLoadingManager
9
+ * @version 1.0.0
10
+ */
1
11
  import { AcCmLoader } from './AcCmLoader';
2
12
  /**
3
- * This function will be called when loading starts. The arguments are:
4
- * - url: The url of the item just loaded.
5
- * - itemsLoaded: the number of items already loaded so far.
6
- * - itemsTotal: the total amount of items to be loaded.
13
+ * Callback function that is called when loading starts.
14
+ *
15
+ * @param {string} url - The URL of the item that just started loading.
16
+ * @param {number} itemsLoaded - The number of items already loaded so far.
17
+ * @param {number} itemsTotal - The total number of items to be loaded.
7
18
  */
8
19
  export type AcCmOnStartCallback = (url: string, itemsLoaded: number, itemsTotal: number) => void;
9
20
  /**
10
- * This function will be called when all loading is completed.
21
+ * Callback function that is called when all loading operations are completed successfully.
11
22
  */
12
23
  export type AcCmOnLoadCallback = () => void;
13
24
  /**
14
- * This function will be called when an item is complete. The arguments are:
15
- * - url: The url of the item just loaded.
16
- * - itemsLoaded: the number of items already loaded so far.
17
- * - itemsTotal: the total amount of items to be loaded.
25
+ * Callback function that is called when an individual item completes loading.
26
+ *
27
+ * @param {string} url - The URL of the item that just finished loading.
28
+ * @param {number} itemsLoaded - The number of items loaded so far.
29
+ * @param {number} itemsTotal - The total number of items to be loaded.
18
30
  */
19
31
  export type AcCmOnProgressCallback = (url: string, itemsLoaded: number, itemsTotal: number) => void;
20
32
  /**
21
- * This function will be called when any item errors, with the argument:
22
- * - url: The url of the item that errored.
33
+ * Callback function that is called when any loading operation encounters an error.
34
+ *
35
+ * @param {string} url - The URL of the item that failed to load.
23
36
  */
24
37
  export type AcCmOnErrorCallback = (url: string) => void;
25
38
  /**
26
- * The callback called before a request is sent. It may return the original URL, or a new URL to override
27
- * loading behavior.
39
+ * Function that modifies URLs before loading requests are sent.
40
+ *
41
+ * This callback allows intercepting and modifying URLs to implement custom loading
42
+ * behavior, such as adding authentication tokens or redirecting to different servers.
43
+ *
44
+ * @param {string} url - The original URL.
45
+ * @returns {string} The modified URL or the original URL if no changes are needed.
28
46
  */
29
47
  export type AcCmUrlModifier = (url: string) => string;
30
48
  /**
31
- * Handles and keeps track of loaded and pending data. A default global instance of this class is
32
- * created and used by loaders if not supplied manually. In general that should be sufficient,
33
- * however there are times when it can be useful to have separate loaders - for example if you want
34
- * to show separate loading bars for objects and textures.
49
+ * Centralized loading manager that handles and tracks multiple loading operations.
50
+ *
51
+ * This class manages the loading state across multiple file operations, providing
52
+ * progress tracking, error handling, and URL modification capabilities. A default
53
+ * global instance is created and used by loaders if not supplied manually.
54
+ *
55
+ * Separate loading managers can be useful when you need independent loading progress
56
+ * tracking (e.g., separate progress bars for different types of resources).
57
+ *
58
+ * @example
59
+ * ```typescript
60
+ * import { AcCmLoadingManager } from './AcCmLoadingManager'
61
+ *
62
+ * // Create a custom loading manager
63
+ * const manager = new AcCmLoadingManager()
64
+ *
65
+ * // Set up callbacks
66
+ * manager.onStart = (url, loaded, total) => {
67
+ * console.log(`Started loading: ${url} (${loaded}/${total})`)
68
+ * }
69
+ *
70
+ * manager.onProgress = (url, loaded, total) => {
71
+ * console.log(`Progress: ${url} (${loaded}/${total})`)
72
+ * }
73
+ *
74
+ * manager.onLoad = () => {
75
+ * console.log('All loading completed!')
76
+ * }
77
+ *
78
+ * manager.onError = (url) => {
79
+ * console.error(`Failed to load: ${url}`)
80
+ * }
81
+ * ```
35
82
  */
36
83
  export declare class AcCmLoadingManager {
37
84
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"AcCmLoadingManager.d.ts","sourceRoot":"","sources":["../../src/loader/AcCmLoadingManager.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAA;AAEzC;;;;;GAKG;AACH,MAAM,MAAM,mBAAmB,GAAG,CAChC,GAAG,EAAE,MAAM,EACX,WAAW,EAAE,MAAM,EACnB,UAAU,EAAE,MAAM,KACf,IAAI,CAAA;AAET;;GAEG;AACH,MAAM,MAAM,kBAAkB,GAAG,MAAM,IAAI,CAAA;AAE3C;;;;;GAKG;AACH,MAAM,MAAM,sBAAsB,GAAG,CACnC,GAAG,EAAE,MAAM,EACX,WAAW,EAAE,MAAM,EACnB,UAAU,EAAE,MAAM,KACf,IAAI,CAAA;AAET;;;GAGG;AACH,MAAM,MAAM,mBAAmB,GAAG,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,CAAA;AAEvD;;;GAGG;AACH,MAAM,MAAM,eAAe,GAAG,CAAC,GAAG,EAAE,MAAM,KAAK,MAAM,CAAA;AAErD;;;;;GAKG;AACH,qBAAa,kBAAkB;IAC7B;;OAEG;IACI,OAAO,CAAC,EAAE,mBAAmB,CAAA;IACpC;;;OAGG;IACI,MAAM,CAAC,EAAE,kBAAkB,CAAA;IAClC;;OAEG;IACI,UAAU,CAAC,EAAE,sBAAsB,CAAA;IAC1C;;OAEG;IACI,OAAO,CAAC,EAAE,mBAAmB,CAAA;IACpC,OAAO,CAAC,SAAS,CAAS;IAC1B,OAAO,CAAC,WAAW,CAAQ;IAC3B,OAAO,CAAC,UAAU,CAAQ;IAC1B,OAAO,CAAC,QAAQ,CAAyB;IACzC,OAAO,CAAC,WAAW,CAAC,CAAiB;IAErC;;;;;OAKG;gBAED,MAAM,CAAC,EAAE,kBAAkB,EAC3B,UAAU,CAAC,EAAE,sBAAsB,EACnC,OAAO,CAAC,EAAE,mBAAmB;IAiB/B;;;OAGG;IACH,SAAS,CAAC,GAAG,EAAE,MAAM;IAYrB;;;OAGG;IACH,OAAO,CAAC,GAAG,EAAE,MAAM;IAgBnB;;;OAGG;IACH,SAAS,CAAC,GAAG,EAAE,MAAM;IAMrB;;;;;OAKG;IACH,UAAU,CAAC,GAAG,EAAE,MAAM;IAQtB;;;;;;OAMG;IACH,cAAc,CAAC,SAAS,EAAE,eAAe;IAMzC;;;;;;;OAOG;IACH,UAAU,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,UAAU;IAK5C;;;;OAIG;IACH,aAAa,CAAC,KAAK,EAAE,MAAM;IAU3B;;;;OAIG;IACH,UAAU,CAAC,IAAI,EAAE,MAAM;CAcxB;AAED,eAAO,MAAM,qBAAqB,oBAAyC,CAAA"}
1
+ {"version":3,"file":"AcCmLoadingManager.d.ts","sourceRoot":"","sources":["../../src/loader/AcCmLoadingManager.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAA;AAEzC;;;;;;GAMG;AACH,MAAM,MAAM,mBAAmB,GAAG,CAChC,GAAG,EAAE,MAAM,EACX,WAAW,EAAE,MAAM,EACnB,UAAU,EAAE,MAAM,KACf,IAAI,CAAA;AAET;;GAEG;AACH,MAAM,MAAM,kBAAkB,GAAG,MAAM,IAAI,CAAA;AAE3C;;;;;;GAMG;AACH,MAAM,MAAM,sBAAsB,GAAG,CACnC,GAAG,EAAE,MAAM,EACX,WAAW,EAAE,MAAM,EACnB,UAAU,EAAE,MAAM,KACf,IAAI,CAAA;AAET;;;;GAIG;AACH,MAAM,MAAM,mBAAmB,GAAG,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,CAAA;AAEvD;;;;;;;;GAQG;AACH,MAAM,MAAM,eAAe,GAAG,CAAC,GAAG,EAAE,MAAM,KAAK,MAAM,CAAA;AAErD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAkCG;AACH,qBAAa,kBAAkB;IAC7B;;OAEG;IACI,OAAO,CAAC,EAAE,mBAAmB,CAAA;IACpC;;;OAGG;IACI,MAAM,CAAC,EAAE,kBAAkB,CAAA;IAClC;;OAEG;IACI,UAAU,CAAC,EAAE,sBAAsB,CAAA;IAC1C;;OAEG;IACI,OAAO,CAAC,EAAE,mBAAmB,CAAA;IACpC,OAAO,CAAC,SAAS,CAAS;IAC1B,OAAO,CAAC,WAAW,CAAQ;IAC3B,OAAO,CAAC,UAAU,CAAQ;IAC1B,OAAO,CAAC,QAAQ,CAAyB;IACzC,OAAO,CAAC,WAAW,CAAC,CAAiB;IAErC;;;;;OAKG;gBAED,MAAM,CAAC,EAAE,kBAAkB,EAC3B,UAAU,CAAC,EAAE,sBAAsB,EACnC,OAAO,CAAC,EAAE,mBAAmB;IAiB/B;;;OAGG;IACH,SAAS,CAAC,GAAG,EAAE,MAAM;IAYrB;;;OAGG;IACH,OAAO,CAAC,GAAG,EAAE,MAAM;IAgBnB;;;OAGG;IACH,SAAS,CAAC,GAAG,EAAE,MAAM;IAMrB;;;;;OAKG;IACH,UAAU,CAAC,GAAG,EAAE,MAAM;IAQtB;;;;;;OAMG;IACH,cAAc,CAAC,SAAS,EAAE,eAAe;IAMzC;;;;;;;OAOG;IACH,UAAU,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,UAAU;IAK5C;;;;OAIG;IACH,aAAa,CAAC,KAAK,EAAE,MAAM;IAU3B;;;;OAIG;IACH,UAAU,CAAC,IAAI,EAAE,MAAM;CAcxB;AAED,eAAO,MAAM,qBAAqB,oBAAyC,CAAA"}
@@ -1,8 +1,47 @@
1
1
  /**
2
- * Handles and keeps track of loaded and pending data. A default global instance of this class is
3
- * created and used by loaders if not supplied manually. In general that should be sufficient,
4
- * however there are times when it can be useful to have separate loaders - for example if you want
5
- * to show separate loading bars for objects and textures.
2
+ * @fileoverview Loading management system for the AutoCAD Common library.
3
+ *
4
+ * This module provides a centralized loading manager that tracks and coordinates
5
+ * multiple file loading operations with progress reporting, error handling, and
6
+ * URL modification capabilities.
7
+ *
8
+ * @module AcCmLoadingManager
9
+ * @version 1.0.0
10
+ */
11
+ /**
12
+ * Centralized loading manager that handles and tracks multiple loading operations.
13
+ *
14
+ * This class manages the loading state across multiple file operations, providing
15
+ * progress tracking, error handling, and URL modification capabilities. A default
16
+ * global instance is created and used by loaders if not supplied manually.
17
+ *
18
+ * Separate loading managers can be useful when you need independent loading progress
19
+ * tracking (e.g., separate progress bars for different types of resources).
20
+ *
21
+ * @example
22
+ * ```typescript
23
+ * import { AcCmLoadingManager } from './AcCmLoadingManager'
24
+ *
25
+ * // Create a custom loading manager
26
+ * const manager = new AcCmLoadingManager()
27
+ *
28
+ * // Set up callbacks
29
+ * manager.onStart = (url, loaded, total) => {
30
+ * console.log(`Started loading: ${url} (${loaded}/${total})`)
31
+ * }
32
+ *
33
+ * manager.onProgress = (url, loaded, total) => {
34
+ * console.log(`Progress: ${url} (${loaded}/${total})`)
35
+ * }
36
+ *
37
+ * manager.onLoad = () => {
38
+ * console.log('All loading completed!')
39
+ * }
40
+ *
41
+ * manager.onError = (url) => {
42
+ * console.error(`Failed to load: ${url}`)
43
+ * }
44
+ * ```
6
45
  */
7
46
  var AcCmLoadingManager = /** @class */ (function () {
8
47
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"AcCmLoadingManager.js","sourceRoot":"","sources":["../../src/loader/AcCmLoadingManager.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"AcCmLoadingManager.js","sourceRoot":"","sources":["../../src/loader/AcCmLoadingManager.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@mlightcad/common",
3
- "version": "1.1.1",
3
+ "version": "1.1.3",
4
4
  "license": "MIT",
5
5
  "type": "module",
6
6
  "repository": {