@simplysm/sd-claude 14.0.50 → 14.0.52

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 (318) hide show
  1. package/claude/references/sd-frontend-design.md +10 -9
  2. package/claude/references/sd-simplysm-v14/angular/README.md +497 -0
  3. package/claude/references/sd-simplysm-v14/angular/bootstrap/provide-sd-angular.md +37 -0
  4. package/claude/references/sd-simplysm-v14/angular/bootstrap/sd-angular-config-provider.md +16 -0
  5. package/claude/references/sd-simplysm-v14/angular/directives/sd-command-directive.md +27 -0
  6. package/claude/references/sd-simplysm-v14/angular/directives/sd-events.md +25 -0
  7. package/claude/references/sd-simplysm-v14/angular/directives/sd-intersection-directive.md +36 -0
  8. package/claude/references/sd-simplysm-v14/angular/directives/sd-invalid.md +24 -0
  9. package/claude/references/sd-simplysm-v14/angular/directives/sd-resize-directive.md +42 -0
  10. package/claude/references/sd-simplysm-v14/angular/directives/sd-ripple.md +23 -0
  11. package/claude/references/sd-simplysm-v14/angular/directives/sd-router-link.md +38 -0
  12. package/claude/references/sd-simplysm-v14/angular/directives/sd-show-effect.md +18 -0
  13. package/claude/references/sd-simplysm-v14/angular/directives/sd-typed-template.md +69 -0
  14. package/claude/references/sd-simplysm-v14/angular/features/sd-address-search-modal.md +50 -0
  15. package/claude/references/sd-simplysm-v14/angular/features/sd-permission-table.md +20 -0
  16. package/claude/references/sd-simplysm-v14/angular/features/sd-shared-data-components.md +158 -0
  17. package/claude/references/sd-simplysm-v14/angular/features/sd-tiptap-editor.md +26 -0
  18. package/claude/references/sd-simplysm-v14/angular/pipes/format-pipe.md +41 -0
  19. package/claude/references/sd-simplysm-v14/angular/plugins/sd-global-error-handler.md +23 -0
  20. package/claude/references/sd-simplysm-v14/angular/plugins/sd-option-event-plugin.md +34 -0
  21. package/claude/references/sd-simplysm-v14/angular/provider-types/sd-menu.md +65 -0
  22. package/claude/references/sd-simplysm-v14/angular/provider-types/sd-modal-content-def.md +148 -0
  23. package/claude/references/sd-simplysm-v14/angular/provider-types/sd-toast-content-def.md +73 -0
  24. package/claude/references/sd-simplysm-v14/angular/provider-types/shared-data-base.md +59 -0
  25. package/claude/references/sd-simplysm-v14/angular/providers/sd-activated-modal-provider.md +34 -0
  26. package/claude/references/sd-simplysm-v14/angular/providers/sd-app-structure-provider.md +81 -0
  27. package/claude/references/sd-simplysm-v14/angular/providers/sd-busy-provider.md +18 -0
  28. package/claude/references/sd-simplysm-v14/angular/providers/sd-file-dialog-provider.md +40 -0
  29. package/claude/references/sd-simplysm-v14/angular/providers/sd-local-storage-provider.md +20 -0
  30. package/claude/references/sd-simplysm-v14/angular/providers/sd-modal-provider.md +67 -0
  31. package/claude/references/sd-simplysm-v14/angular/providers/sd-navigate-window-provider.md +18 -0
  32. package/claude/references/sd-simplysm-v14/angular/providers/sd-print-provider.md +25 -0
  33. package/claude/references/sd-simplysm-v14/angular/providers/sd-service-client-factory-provider.md +43 -0
  34. package/claude/references/sd-simplysm-v14/angular/providers/sd-shared-data-provider.md +64 -0
  35. package/claude/references/sd-simplysm-v14/angular/providers/sd-system-config-provider.md +46 -0
  36. package/claude/references/sd-simplysm-v14/angular/providers/sd-system-log-provider.md +18 -0
  37. package/claude/references/sd-simplysm-v14/angular/providers/sd-theme-provider.md +38 -0
  38. package/claude/references/sd-simplysm-v14/angular/providers/sd-toast-provider.md +65 -0
  39. package/claude/references/sd-simplysm-v14/angular/recipes/_common-rules.md +336 -0
  40. package/claude/references/sd-simplysm-v14/angular/recipes/crud-detail/extension-a-edit-save.md +191 -0
  41. package/claude/references/sd-simplysm-v14/angular/recipes/crud-detail/extension-b-delete-restore.md +103 -0
  42. package/claude/references/sd-simplysm-v14/angular/recipes/crud-detail/extension-c-modal-view.md +198 -0
  43. package/claude/references/sd-simplysm-v14/angular/recipes/crud-detail/extension-d-control-view.md +109 -0
  44. package/claude/references/sd-simplysm-v14/angular/recipes/crud-detail/extension-e-auxiliary.md +87 -0
  45. package/claude/references/sd-simplysm-v14/angular/recipes/crud-detail/extension-f-complex-detail.md +202 -0
  46. package/claude/references/sd-simplysm-v14/angular/recipes/crud-detail.md +280 -0
  47. package/claude/references/sd-simplysm-v14/angular/recipes/crud-list/extension-a-inline-edit.md +386 -0
  48. package/claude/references/sd-simplysm-v14/angular/recipes/crud-list/extension-b-selection.md +215 -0
  49. package/claude/references/sd-simplysm-v14/angular/recipes/crud-list/extension-c-inline-delete.md +64 -0
  50. package/claude/references/sd-simplysm-v14/angular/recipes/crud-list/extension-d-select-modal.md +193 -0
  51. package/claude/references/sd-simplysm-v14/angular/recipes/crud-list/extension-e-readonly-modal.md +140 -0
  52. package/claude/references/sd-simplysm-v14/angular/recipes/crud-list/extension-f-modal-edit.md +123 -0
  53. package/claude/references/sd-simplysm-v14/angular/recipes/crud-list/extension-g-excel.md +145 -0
  54. package/claude/references/sd-simplysm-v14/angular/recipes/crud-list.md +377 -0
  55. package/claude/references/sd-simplysm-v14/angular/recipes/data-select-button.md +368 -0
  56. package/claude/references/sd-simplysm-v14/angular/recipes/page-modal-container.md +238 -0
  57. package/claude/references/sd-simplysm-v14/angular/styling/classes.md +149 -0
  58. package/claude/references/sd-simplysm-v14/angular/styling/mixins.md +100 -0
  59. package/claude/references/sd-simplysm-v14/angular/styling/themes.md +35 -0
  60. package/claude/references/sd-simplysm-v14/angular/styling/variables.md +147 -0
  61. package/claude/references/sd-simplysm-v14/angular/type-utilities/directive-input-signals.md +232 -0
  62. package/claude/references/sd-simplysm-v14/angular/ui-data/sd-list.md +37 -0
  63. package/claude/references/sd-simplysm-v14/angular/ui-data/sd-sheet.md +212 -0
  64. package/claude/references/sd-simplysm-v14/angular/ui-form/sd-additional-button.md +26 -0
  65. package/claude/references/sd-simplysm-v14/angular/ui-form/sd-anchor.md +31 -0
  66. package/claude/references/sd-simplysm-v14/angular/ui-form/sd-button.md +103 -0
  67. package/claude/references/sd-simplysm-v14/angular/ui-form/sd-checkbox-group.md +39 -0
  68. package/claude/references/sd-simplysm-v14/angular/ui-form/sd-checkbox.md +81 -0
  69. package/claude/references/sd-simplysm-v14/angular/ui-form/sd-date-range-picker.md +27 -0
  70. package/claude/references/sd-simplysm-v14/angular/ui-form/sd-form.md +89 -0
  71. package/claude/references/sd-simplysm-v14/angular/ui-form/sd-modal-select-button.md +54 -0
  72. package/claude/references/sd-simplysm-v14/angular/ui-form/sd-numpad.md +26 -0
  73. package/claude/references/sd-simplysm-v14/angular/ui-form/sd-range.md +26 -0
  74. package/claude/references/sd-simplysm-v14/angular/ui-form/sd-select.md +68 -0
  75. package/claude/references/sd-simplysm-v14/angular/ui-form/sd-shared-data-select.md +52 -0
  76. package/claude/references/sd-simplysm-v14/angular/ui-form/sd-state-preset.md +37 -0
  77. package/claude/references/sd-simplysm-v14/angular/ui-form/sd-switch.md +27 -0
  78. package/claude/references/sd-simplysm-v14/angular/ui-form/sd-textarea.md +33 -0
  79. package/claude/references/sd-simplysm-v14/angular/ui-form/sd-textfield.md +145 -0
  80. package/claude/references/sd-simplysm-v14/angular/ui-layout/sd-dock-container.md +64 -0
  81. package/claude/references/sd-simplysm-v14/angular/ui-layout/sd-dock.md +37 -0
  82. package/claude/references/sd-simplysm-v14/angular/ui-layout/sd-gap.md +26 -0
  83. package/claude/references/sd-simplysm-v14/angular/ui-layout/sd-kanban-board.md +96 -0
  84. package/claude/references/sd-simplysm-v14/angular/ui-layout/sd-kanban-lane.md +34 -0
  85. package/claude/references/sd-simplysm-v14/angular/ui-layout/sd-kanban.md +29 -0
  86. package/claude/references/sd-simplysm-v14/angular/ui-navigation/sd-collapse.md +35 -0
  87. package/claude/references/sd-simplysm-v14/angular/ui-navigation/sd-pagination.md +26 -0
  88. package/claude/references/sd-simplysm-v14/angular/ui-navigation/sd-sidebar-container.md +49 -0
  89. package/claude/references/sd-simplysm-v14/angular/ui-navigation/sd-sidebar-menu.md +22 -0
  90. package/claude/references/sd-simplysm-v14/angular/ui-navigation/sd-sidebar-user.md +43 -0
  91. package/claude/references/sd-simplysm-v14/angular/ui-navigation/sd-tab.md +51 -0
  92. package/claude/references/sd-simplysm-v14/angular/ui-navigation/sd-topbar-container.md +97 -0
  93. package/claude/references/sd-simplysm-v14/angular/ui-navigation/sd-topbar-menu.md +23 -0
  94. package/claude/references/sd-simplysm-v14/angular/ui-navigation/sd-topbar-user.md +38 -0
  95. package/claude/references/sd-simplysm-v14/angular/ui-navigation/sd-topbar.md +30 -0
  96. package/claude/references/sd-simplysm-v14/angular/ui-overlay/sd-busy-container.md +69 -0
  97. package/claude/references/sd-simplysm-v14/angular/ui-overlay/sd-confirm-modal.md +30 -0
  98. package/claude/references/sd-simplysm-v14/angular/ui-overlay/sd-dropdown.md +40 -0
  99. package/claude/references/sd-simplysm-v14/angular/ui-overlay/sd-modal.md +34 -0
  100. package/claude/references/sd-simplysm-v14/angular/ui-overlay/sd-prompt-modal.md +30 -0
  101. package/claude/references/sd-simplysm-v14/angular/ui-overlay/sd-toast.md +35 -0
  102. package/claude/references/sd-simplysm-v14/angular/ui-visual/sd-barcode.md +36 -0
  103. package/claude/references/sd-simplysm-v14/angular/ui-visual/sd-calendar.md +34 -0
  104. package/claude/references/sd-simplysm-v14/angular/ui-visual/sd-echarts.md +32 -0
  105. package/claude/references/sd-simplysm-v14/angular/ui-visual/sd-label.md +24 -0
  106. package/claude/references/sd-simplysm-v14/angular/ui-visual/sd-note.md +23 -0
  107. package/claude/references/sd-simplysm-v14/angular/ui-visual/sd-progress.md +23 -0
  108. package/claude/references/sd-simplysm-v14/angular/utils/inject-routing-signals.md +161 -0
  109. package/claude/references/sd-simplysm-v14/angular/utils/inject-sd-system-config-resource.md +35 -0
  110. package/claude/references/sd-simplysm-v14/angular/utils/mark.md +43 -0
  111. package/claude/references/sd-simplysm-v14/angular/utils/selection-managers.md +96 -0
  112. package/claude/references/sd-simplysm-v14/angular/utils/set-safe-style.md +19 -0
  113. package/claude/references/sd-simplysm-v14/angular/utils/setup-functions.md +93 -0
  114. package/claude/references/sd-simplysm-v14/capacitor-plugin-auto-update/README.md +38 -0
  115. package/claude/references/sd-simplysm-v14/capacitor-plugin-auto-update/apk-installer/apk-installer.md +115 -0
  116. package/claude/references/sd-simplysm-v14/capacitor-plugin-auto-update/auto-update/auto-update.md +113 -0
  117. package/claude/references/sd-simplysm-v14/capacitor-plugin-file-system/README.md +197 -0
  118. package/claude/references/sd-simplysm-v14/capacitor-plugin-intent/README.md +235 -0
  119. package/claude/references/sd-simplysm-v14/capacitor-plugin-usb-storage/README.md +251 -0
  120. package/claude/references/sd-simplysm-v14/core-browser/README.md +52 -0
  121. package/claude/references/sd-simplysm-v14/core-browser/extensions/copy-paste.md +59 -0
  122. package/claude/references/sd-simplysm-v14/core-browser/extensions/element-prototype-extensions.md +137 -0
  123. package/claude/references/sd-simplysm-v14/core-browser/extensions/get-bounds.md +84 -0
  124. package/claude/references/sd-simplysm-v14/core-browser/utils/download-blob.md +59 -0
  125. package/claude/references/sd-simplysm-v14/core-browser/utils/fetch-url-bytes.md +91 -0
  126. package/claude/references/sd-simplysm-v14/core-browser/utils/indexed-db-store.md +131 -0
  127. package/claude/references/sd-simplysm-v14/core-browser/utils/indexed-db-virtual-fs.md +121 -0
  128. package/claude/references/sd-simplysm-v14/core-browser/utils/open-file-dialog.md +60 -0
  129. package/claude/references/sd-simplysm-v14/core-common/README.md +179 -0
  130. package/claude/references/sd-simplysm-v14/core-common/errors/argument-error.md +26 -0
  131. package/claude/references/sd-simplysm-v14/core-common/errors/not-implemented-error.md +33 -0
  132. package/claude/references/sd-simplysm-v14/core-common/errors/sd-error.md +38 -0
  133. package/claude/references/sd-simplysm-v14/core-common/errors/timeout-error.md +36 -0
  134. package/claude/references/sd-simplysm-v14/core-common/extensions/array.md +125 -0
  135. package/claude/references/sd-simplysm-v14/core-common/extensions/map.md +43 -0
  136. package/claude/references/sd-simplysm-v14/core-common/extensions/set.md +35 -0
  137. package/claude/references/sd-simplysm-v14/core-common/features/debounce-queue.md +48 -0
  138. package/claude/references/sd-simplysm-v14/core-common/features/event-emitter.md +52 -0
  139. package/claude/references/sd-simplysm-v14/core-common/features/serial-queue.md +44 -0
  140. package/claude/references/sd-simplysm-v14/core-common/type-utils/common-types.md +100 -0
  141. package/claude/references/sd-simplysm-v14/core-common/type-utils/env.md +42 -0
  142. package/claude/references/sd-simplysm-v14/core-common/types/date-only.md +86 -0
  143. package/claude/references/sd-simplysm-v14/core-common/types/date-time.md +106 -0
  144. package/claude/references/sd-simplysm-v14/core-common/types/lazy-gc-map.md +59 -0
  145. package/claude/references/sd-simplysm-v14/core-common/types/time.md +62 -0
  146. package/claude/references/sd-simplysm-v14/core-common/types/uuid.md +41 -0
  147. package/claude/references/sd-simplysm-v14/core-common/utils/bytes.md +36 -0
  148. package/claude/references/sd-simplysm-v14/core-common/utils/dt.md +60 -0
  149. package/claude/references/sd-simplysm-v14/core-common/utils/err.md +26 -0
  150. package/claude/references/sd-simplysm-v14/core-common/utils/json.md +58 -0
  151. package/claude/references/sd-simplysm-v14/core-common/utils/num.md +56 -0
  152. package/claude/references/sd-simplysm-v14/core-common/utils/obj.md +107 -0
  153. package/claude/references/sd-simplysm-v14/core-common/utils/path.md +30 -0
  154. package/claude/references/sd-simplysm-v14/core-common/utils/primitive.md +28 -0
  155. package/claude/references/sd-simplysm-v14/core-common/utils/str.md +63 -0
  156. package/claude/references/sd-simplysm-v14/core-common/utils/template-strings.md +49 -0
  157. package/claude/references/sd-simplysm-v14/core-common/utils/transfer.md +35 -0
  158. package/claude/references/sd-simplysm-v14/core-common/utils/wait.md +35 -0
  159. package/claude/references/sd-simplysm-v14/core-common/utils/xml.md +49 -0
  160. package/claude/references/sd-simplysm-v14/core-common/utils/zip-archive.md +77 -0
  161. package/claude/references/sd-simplysm-v14/core-node/README.md +59 -0
  162. package/claude/references/sd-simplysm-v14/core-node/features/fs-watcher.md +110 -0
  163. package/claude/references/sd-simplysm-v14/core-node/logging/create-file-reporter.md +78 -0
  164. package/claude/references/sd-simplysm-v14/core-node/logging/pretty-reporter.md +38 -0
  165. package/claude/references/sd-simplysm-v14/core-node/logging/setup-consola.md +77 -0
  166. package/claude/references/sd-simplysm-v14/core-node/utils/cpx.md +128 -0
  167. package/claude/references/sd-simplysm-v14/core-node/utils/fsx.md +168 -0
  168. package/claude/references/sd-simplysm-v14/core-node/utils/pathx.md +73 -0
  169. package/claude/references/sd-simplysm-v14/core-node/worker/create-worker.md +85 -0
  170. package/claude/references/sd-simplysm-v14/core-node/worker/worker.md +160 -0
  171. package/claude/references/sd-simplysm-v14/excel/README.md +66 -0
  172. package/claude/references/sd-simplysm-v14/excel/core-classes/excel-cell.md +79 -0
  173. package/claude/references/sd-simplysm-v14/excel/core-classes/excel-col.md +36 -0
  174. package/claude/references/sd-simplysm-v14/excel/core-classes/excel-row.md +34 -0
  175. package/claude/references/sd-simplysm-v14/excel/core-classes/excel-workbook.md +93 -0
  176. package/claude/references/sd-simplysm-v14/excel/core-classes/excel-worksheet.md +147 -0
  177. package/claude/references/sd-simplysm-v14/excel/types/excel-address-point.md +33 -0
  178. package/claude/references/sd-simplysm-v14/excel/types/excel-style-options.md +57 -0
  179. package/claude/references/sd-simplysm-v14/excel/types/excel-value-type.md +28 -0
  180. package/claude/references/sd-simplysm-v14/excel/types/excel-xml-content-type-data.md +23 -0
  181. package/claude/references/sd-simplysm-v14/excel/types/excel-xml-drawing-data.md +29 -0
  182. package/claude/references/sd-simplysm-v14/excel/types/excel-xml-relationship-data.md +39 -0
  183. package/claude/references/sd-simplysm-v14/excel/types/excel-xml-shared-string-data.md +42 -0
  184. package/claude/references/sd-simplysm-v14/excel/types/excel-xml-style-data.md +97 -0
  185. package/claude/references/sd-simplysm-v14/excel/types/excel-xml-workbook-data.md +22 -0
  186. package/claude/references/sd-simplysm-v14/excel/types/excel-xml-worksheet-data.md +68 -0
  187. package/claude/references/sd-simplysm-v14/excel/types/excel-xml.md +15 -0
  188. package/claude/references/sd-simplysm-v14/excel/utilities/excel-utils.md +101 -0
  189. package/claude/references/sd-simplysm-v14/excel/wrapper/excel-wrapper.md +108 -0
  190. package/claude/references/sd-simplysm-v14/lint/README.md +183 -0
  191. package/claude/references/sd-simplysm-v14/orm-common/README.md +156 -0
  192. package/claude/references/sd-simplysm-v14/orm-common/core/db-context.md +208 -0
  193. package/claude/references/sd-simplysm-v14/orm-common/core/db-transaction-error.md +64 -0
  194. package/claude/references/sd-simplysm-v14/orm-common/expression/expr-unit.md +62 -0
  195. package/claude/references/sd-simplysm-v14/orm-common/expression/expr.md +198 -0
  196. package/claude/references/sd-simplysm-v14/orm-common/models/migration.md +37 -0
  197. package/claude/references/sd-simplysm-v14/orm-common/query-builder/create-query-builder.md +80 -0
  198. package/claude/references/sd-simplysm-v14/orm-common/queryable-executable/executable.md +54 -0
  199. package/claude/references/sd-simplysm-v14/orm-common/queryable-executable/parse-search-query.md +75 -0
  200. package/claude/references/sd-simplysm-v14/orm-common/queryable-executable/queryable.md +238 -0
  201. package/claude/references/sd-simplysm-v14/orm-common/schema-builders/column-builder.md +63 -0
  202. package/claude/references/sd-simplysm-v14/orm-common/schema-builders/foreign-key-builder.md +137 -0
  203. package/claude/references/sd-simplysm-v14/orm-common/schema-builders/index-builder.md +54 -0
  204. package/claude/references/sd-simplysm-v14/orm-common/schema-builders/procedure.md +67 -0
  205. package/claude/references/sd-simplysm-v14/orm-common/schema-builders/table.md +95 -0
  206. package/claude/references/sd-simplysm-v14/orm-common/schema-builders/view.md +71 -0
  207. package/claude/references/sd-simplysm-v14/orm-common/types/data-type.md +146 -0
  208. package/claude/references/sd-simplysm-v14/orm-common/types/dialect.md +151 -0
  209. package/claude/references/sd-simplysm-v14/orm-common/types/expr.md +175 -0
  210. package/claude/references/sd-simplysm-v14/orm-common/types/parse-query-result.md +58 -0
  211. package/claude/references/sd-simplysm-v14/orm-common/types/query-def.md +224 -0
  212. package/claude/references/sd-simplysm-v14/orm-node/README.md +65 -0
  213. package/claude/references/sd-simplysm-v14/orm-node/connections/mssql-db-conn.md +85 -0
  214. package/claude/references/sd-simplysm-v14/orm-node/connections/mysql-db-conn.md +83 -0
  215. package/claude/references/sd-simplysm-v14/orm-node/connections/postgresql-db-conn.md +86 -0
  216. package/claude/references/sd-simplysm-v14/orm-node/core/create-db-conn.md +62 -0
  217. package/claude/references/sd-simplysm-v14/orm-node/core/create-orm.md +107 -0
  218. package/claude/references/sd-simplysm-v14/orm-node/core/node-db-context-executor.md +50 -0
  219. package/claude/references/sd-simplysm-v14/orm-node/types/db-conn-config.md +91 -0
  220. package/claude/references/sd-simplysm-v14/orm-node/types/db-conn-constants.md +33 -0
  221. package/claude/references/sd-simplysm-v14/orm-node/types/db-conn.md +60 -0
  222. package/claude/references/sd-simplysm-v14/orm-node/types/get-dialect-from-config.md +17 -0
  223. package/{README.md → claude/references/sd-simplysm-v14/sd-claude/README.md} +85 -84
  224. package/{docs → claude/references/sd-simplysm-v14/sd-claude}/assets.md +2 -2
  225. package/{docs → claude/references/sd-simplysm-v14/sd-claude}/hooks.md +15 -1
  226. package/claude/references/sd-simplysm-v14/sd-cli/README.md +138 -0
  227. package/claude/references/sd-simplysm-v14/sd-cli/angular-vite-plugin/sd-angular-plugin.md +60 -0
  228. package/claude/references/sd-simplysm-v14/sd-cli/config/build-target.md +31 -0
  229. package/claude/references/sd-simplysm-v14/sd-cli/config/npm-config.md +27 -0
  230. package/claude/references/sd-simplysm-v14/sd-cli/config/sd-browser-support-config.md +19 -0
  231. package/claude/references/sd-simplysm-v14/sd-cli/config/sd-build-package-config.md +21 -0
  232. package/claude/references/sd-simplysm-v14/sd-cli/config/sd-capacitor-config.md +109 -0
  233. package/claude/references/sd-simplysm-v14/sd-cli/config/sd-client-package-config.md +33 -0
  234. package/claude/references/sd-simplysm-v14/sd-cli/config/sd-config.md +78 -0
  235. package/claude/references/sd-simplysm-v14/sd-cli/config/sd-electron-config.md +27 -0
  236. package/claude/references/sd-simplysm-v14/sd-cli/config/sd-package-config.md +18 -0
  237. package/claude/references/sd-simplysm-v14/sd-cli/config/sd-post-publish-script-config.md +19 -0
  238. package/claude/references/sd-simplysm-v14/sd-cli/config/sd-publish-config.md +72 -0
  239. package/claude/references/sd-simplysm-v14/sd-cli/config/sd-pwa-config.md +41 -0
  240. package/claude/references/sd-simplysm-v14/sd-cli/config/sd-scripts-package-config.md +19 -0
  241. package/claude/references/sd-simplysm-v14/sd-cli/config/sd-server-package-config.md +32 -0
  242. package/claude/references/sd-simplysm-v14/sd-cli/config/sd-watch-hook-config.md +19 -0
  243. package/claude/references/sd-simplysm-v14/sd-cli/ts-compiler/sd-ts-compiler.md +158 -0
  244. package/claude/references/sd-simplysm-v14/service-client/README.md +74 -0
  245. package/claude/references/sd-simplysm-v14/service-client/features/event-client.md +93 -0
  246. package/claude/references/sd-simplysm-v14/service-client/features/file-client.md +63 -0
  247. package/claude/references/sd-simplysm-v14/service-client/features/orm-client-connector.md +89 -0
  248. package/claude/references/sd-simplysm-v14/service-client/features/orm-client-db-context-executor.md +31 -0
  249. package/claude/references/sd-simplysm-v14/service-client/main/service-client.md +206 -0
  250. package/claude/references/sd-simplysm-v14/service-client/protocol/client-protocol-wrapper.md +64 -0
  251. package/claude/references/sd-simplysm-v14/service-client/transport/service-transport.md +68 -0
  252. package/claude/references/sd-simplysm-v14/service-client/transport/socket-provider.md +100 -0
  253. package/claude/references/sd-simplysm-v14/service-client/types/blob-input.md +7 -0
  254. package/claude/references/sd-simplysm-v14/service-client/types/browser-worker.md +47 -0
  255. package/claude/references/sd-simplysm-v14/service-client/types/file-collection.md +21 -0
  256. package/claude/references/sd-simplysm-v14/service-client/types/service-connection-options.md +22 -0
  257. package/claude/references/sd-simplysm-v14/service-client/types/service-progress.md +39 -0
  258. package/claude/references/sd-simplysm-v14/service-common/README.md +161 -0
  259. package/claude/references/sd-simplysm-v14/service-common/app-structure/app-structure-item.md +107 -0
  260. package/claude/references/sd-simplysm-v14/service-common/app-structure/get-flat-permissions.md +57 -0
  261. package/claude/references/sd-simplysm-v14/service-common/app-structure/is-usable-modules-chain.md +23 -0
  262. package/claude/references/sd-simplysm-v14/service-common/app-structure/is-usable-modules.md +42 -0
  263. package/claude/references/sd-simplysm-v14/service-common/events/define-event.md +68 -0
  264. package/claude/references/sd-simplysm-v14/service-common/protocol/create-service-protocol.md +93 -0
  265. package/claude/references/sd-simplysm-v14/service-common/protocol/protocol-config.md +21 -0
  266. package/claude/references/sd-simplysm-v14/service-common/protocol/service-add-event-listener-message.md +23 -0
  267. package/claude/references/sd-simplysm-v14/service-common/protocol/service-auth-message.md +17 -0
  268. package/claude/references/sd-simplysm-v14/service-common/protocol/service-emit-event-message.md +21 -0
  269. package/claude/references/sd-simplysm-v14/service-common/protocol/service-error-message.md +29 -0
  270. package/claude/references/sd-simplysm-v14/service-common/protocol/service-event-message.md +21 -0
  271. package/claude/references/sd-simplysm-v14/service-common/protocol/service-get-event-listener-infos-message.md +19 -0
  272. package/claude/references/sd-simplysm-v14/service-common/protocol/service-message.md +52 -0
  273. package/claude/references/sd-simplysm-v14/service-common/protocol/service-progress-message.md +21 -0
  274. package/claude/references/sd-simplysm-v14/service-common/protocol/service-remove-event-listener-message.md +19 -0
  275. package/claude/references/sd-simplysm-v14/service-common/protocol/service-request-message.md +17 -0
  276. package/claude/references/sd-simplysm-v14/service-common/protocol/service-response-message.md +17 -0
  277. package/claude/references/sd-simplysm-v14/service-common/service-types/app-structure-service.md +15 -0
  278. package/claude/references/sd-simplysm-v14/service-common/service-types/auto-update-service.md +20 -0
  279. package/claude/references/sd-simplysm-v14/service-common/service-types/orm-service.md +61 -0
  280. package/claude/references/sd-simplysm-v14/service-common/types/service-upload-result.md +19 -0
  281. package/claude/references/sd-simplysm-v14/service-server/README.md +162 -0
  282. package/claude/references/sd-simplysm-v14/service-server/auth/auth-token-payload.md +18 -0
  283. package/claude/references/sd-simplysm-v14/service-server/auth/sign-jwt.md +30 -0
  284. package/claude/references/sd-simplysm-v14/service-server/auth/verify-jwt.md +35 -0
  285. package/claude/references/sd-simplysm-v14/service-server/core/auth.md +64 -0
  286. package/claude/references/sd-simplysm-v14/service-server/core/define-service.md +81 -0
  287. package/claude/references/sd-simplysm-v14/service-server/core/execute-service-method.md +43 -0
  288. package/claude/references/sd-simplysm-v14/service-server/core/service-context.md +79 -0
  289. package/claude/references/sd-simplysm-v14/service-server/legacy/handle-v1-connection.md +25 -0
  290. package/claude/references/sd-simplysm-v14/service-server/main/create-service-server.md +32 -0
  291. package/claude/references/sd-simplysm-v14/service-server/main/service-server.md +113 -0
  292. package/claude/references/sd-simplysm-v14/service-server/protocol/server-protocol-wrapper.md +35 -0
  293. package/claude/references/sd-simplysm-v14/service-server/services/app-structure-service.md +59 -0
  294. package/claude/references/sd-simplysm-v14/service-server/services/auto-update-service.md +34 -0
  295. package/claude/references/sd-simplysm-v14/service-server/services/orm-service.md +43 -0
  296. package/claude/references/sd-simplysm-v14/service-server/transport-http/handle-http-request.md +33 -0
  297. package/claude/references/sd-simplysm-v14/service-server/transport-http/handle-static-file.md +29 -0
  298. package/claude/references/sd-simplysm-v14/service-server/transport-http/handle-upload.md +33 -0
  299. package/claude/references/sd-simplysm-v14/service-server/transport-socket/service-socket.md +64 -0
  300. package/claude/references/sd-simplysm-v14/service-server/transport-socket/websocket-handler.md +57 -0
  301. package/claude/references/sd-simplysm-v14/service-server/types/service-server-options.md +36 -0
  302. package/claude/references/sd-simplysm-v14/service-server/utils/get-config.md +29 -0
  303. package/claude/references/sd-simplysm-v14/storage/README.md +99 -0
  304. package/claude/references/sd-simplysm-v14/storage/clients/ftp-storage-client.md +99 -0
  305. package/claude/references/sd-simplysm-v14/storage/clients/sftp-storage-client.md +108 -0
  306. package/claude/references/sd-simplysm-v14/storage/factory/storage-factory.md +114 -0
  307. package/claude/references/sd-simplysm-v14/storage/types/file-info.md +32 -0
  308. package/claude/references/sd-simplysm-v14/storage/types/storage-client.md +55 -0
  309. package/claude/references/sd-simplysm-v14/storage/types/storage-conn-config.md +34 -0
  310. package/claude/rules/sd-claude-rules.md +8 -8
  311. package/claude/rules/sd-simplysm-v14.md +33 -0
  312. package/claude/skills/sd-claude-docs/SKILL.md +41 -24
  313. package/claude/skills/sd-claude-docs/references/package-docs.md +240 -116
  314. package/claude/skills/sd-inner-debug/SKILL.md +1 -1
  315. package/claude/skills/sd-inner-review/SKILL.md +4 -2
  316. package/package.json +2 -3
  317. /package/{docs → claude/references/sd-simplysm-v14/sd-claude}/cli.md +0 -0
  318. /package/{docs → claude/references/sd-simplysm-v14/sd-claude}/scripts.md +0 -0
@@ -0,0 +1,147 @@
1
+ # ExcelWorksheet
2
+
3
+ Excel 워크시트를 나타내는 클래스. 셀 접근, 행/열 복사, 데이터 테이블 처리, 이미지 삽입, 뷰 설정 기능을 제공한다.
4
+
5
+ ## When to use
6
+
7
+ - ✅ 시트 내 셀/행/열을 접근하거나, 행 복사, 데이터 테이블 읽기/쓰기, 이미지 삽입이 필요할 때
8
+ - ✅ `ExcelWorkbook.getWorksheet()` 또는 `ExcelWorkbook.addWorksheet()`로 얻은 인스턴스를 통해 사용
9
+ - ❌ 타입 안전한 스키마 기반 읽기/쓰기가 필요하면 [`ExcelWrapper`](../wrapper/excel-wrapper.md) -- 내부적으로 `ExcelWorksheet`를 사용한다
10
+
11
+ ## Signature
12
+
13
+ ```typescript
14
+ export class ExcelWorksheet {
15
+ constructor(zipCache: ZipCache, relId: number, targetFileName: string);
16
+
17
+ // Name
18
+ async getName(): Promise<string>;
19
+ async setName(newName: string): Promise<void>;
20
+
21
+ // Cell Access (0 기반)
22
+ row(r: number): ExcelRow;
23
+ cell(r: number, c: number): ExcelCell;
24
+ col(c: number): ExcelCol;
25
+
26
+ // Copy
27
+ async copyRowStyle(srcR: number, targetR: number): Promise<void>;
28
+ async copyCellStyle(srcAddr: ExcelAddressPoint, targetAddr: ExcelAddressPoint): Promise<void>;
29
+ async copyRow(srcR: number, targetR: number): Promise<void>;
30
+ async copyCell(srcAddr: ExcelAddressPoint, targetAddr: ExcelAddressPoint): Promise<void>;
31
+ async insertCopyRow(srcR: number, targetR: number): Promise<void>;
32
+
33
+ // Range
34
+ async getRange(): Promise<ExcelAddressRangePoint>;
35
+ async getCells(): Promise<ExcelCell[][]>;
36
+
37
+ // Data
38
+ async getDataTable(opt?: {
39
+ headerRowIndex?: number;
40
+ checkEndColIndex?: number;
41
+ usableHeaderNameFn?: (headerName: string) => boolean;
42
+ }): Promise<Record<string, ExcelValueType>[]>;
43
+ async setDataMatrix(matrix: ExcelValueType[][]): Promise<void>;
44
+ async setRecords(records: Record<string, ExcelValueType>[]): Promise<void>;
45
+
46
+ // View
47
+ async setZoom(percent: number): Promise<void>;
48
+ async freezeAt(point: { r?: number; c?: number }): Promise<void>;
49
+
50
+ // Image
51
+ async addImage(opts: {
52
+ bytes: Bytes;
53
+ ext: string;
54
+ from: { r: number; c: number; rOff?: number | string; cOff?: number | string };
55
+ to?: { r: number; c: number; rOff?: number | string; cOff?: number | string };
56
+ }): Promise<void>;
57
+ }
58
+ ```
59
+
60
+ ## Members
61
+
62
+ | Member | Kind | Type | Description |
63
+ |--------|------|------|-------------|
64
+ | `getName` | method | `() => Promise<string>` | 워크시트 이름 반환 |
65
+ | `setName` | method | `(newName: string) => Promise<void>` | 워크시트 이름 변경 |
66
+ | `row` | method | `(r: number) => ExcelRow` | 행 객체 반환 (0 기반) |
67
+ | `cell` | method | `(r: number, c: number) => ExcelCell` | 셀 객체 반환 (0 기반). 동일 좌표에 대해 항상 동일한 인스턴스 반환 |
68
+ | `col` | method | `(c: number) => ExcelCol` | 열 객체 반환 (0 기반) |
69
+ | `copyRowStyle` | method | `(srcR: number, targetR: number) => Promise<void>` | 원본 행의 스타일을 대상 행으로 복사. 데이터 범위 내 모든 열에 적용 |
70
+ | `copyCellStyle` | method | `(srcAddr: ExcelAddressPoint, targetAddr: ExcelAddressPoint) => Promise<void>` | 원본 셀의 스타일을 대상 셀로 복사 |
71
+ | `copyRow` | method | `(srcR: number, targetR: number) => Promise<void>` | 원본 행을 대상 행으로 복사 (덮어쓰기) |
72
+ | `copyCell` | method | `(srcAddr: ExcelAddressPoint, targetAddr: ExcelAddressPoint) => Promise<void>` | 원본 셀을 대상 셀로 복사 |
73
+ | `insertCopyRow` | method | `(srcR: number, targetR: number) => Promise<void>` | 원본 행을 대상 위치에 삽입 복사. 대상 이하 행은 한 칸 아래로 이동. 병합 셀 자동 처리 |
74
+ | `getRange` | method | `() => Promise<ExcelAddressRangePoint>` | 워크시트의 데이터 범위 반환 |
75
+ | `getCells` | method | `() => Promise<ExcelCell[][]>` | 모든 셀을 2차원 배열로 반환 |
76
+ | `getDataTable` | method | `(opt?) => Promise<Record<string, ExcelValueType>[]>` | 워크시트 데이터를 테이블(레코드 배열)로 반환 |
77
+ | `setDataMatrix` | method | `(matrix: ExcelValueType[][]) => Promise<void>` | 2차원 배열 데이터를 워크시트에 쓰기 |
78
+ | `setRecords` | method | `(records: Record<string, ExcelValueType>[]) => Promise<void>` | 레코드 배열을 워크시트에 쓰기. 첫 행에 헤더 자동 생성 |
79
+ | `setZoom` | method | `(percent: number) => Promise<void>` | 워크시트 확대/축소 비율 설정 (퍼센트) |
80
+ | `freezeAt` | method | `(point: { r?: number; c?: number }) => Promise<void>` | 행/열 틀 고정 설정 |
81
+ | `addImage` | method | `(opts) => Promise<void>` | 워크시트에 이미지 삽입 |
82
+
83
+ ## `getDataTable` Options
84
+
85
+ | Parameter | Type | Description |
86
+ |-----------|------|-------------|
87
+ | `opt.headerRowIndex` | `number \| undefined` | 헤더 행 인덱스 (기본값: 데이터 범위의 시작 행) |
88
+ | `opt.checkEndColIndex` | `number \| undefined` | 데이터 끝을 판단할 열 인덱스. 이 열이 비어있는 행을 만나면 읽기를 중단한다 |
89
+ | `opt.usableHeaderNameFn` | `((headerName: string) => boolean) \| undefined` | 헤더 필터 함수. `false` 반환 시 해당 헤더 제외 |
90
+
91
+ ## `addImage` Options
92
+
93
+ | Parameter | Type | Description |
94
+ |-----------|------|-------------|
95
+ | `opts.bytes` | `Bytes` | 이미지 바이너리 데이터 |
96
+ | `opts.ext` | `string` | 이미지 확장자 (예: `"png"`, `"jpg"`) |
97
+ | `opts.from` | `{ r: number; c: number; rOff?: number \| string; cOff?: number \| string }` | 이미지 시작 위치. `r`/`c`는 0 기반 인덱스, `rOff`/`cOff`는 선택적 EMU 오프셋 |
98
+ | `opts.to` | `{ r: number; c: number; rOff?: number \| string; cOff?: number \| string } \| undefined` | 이미지 끝 위치. 생략 시 기본값은 `{ r: from.r + 1, c: from.c + 1 }` |
99
+
100
+ ## Usage
101
+
102
+ ```typescript
103
+ // getDataTable
104
+ const table = await ws.getDataTable();
105
+ // [{ "이름": "김철수", "나이": 30 }, ...]
106
+
107
+ // 특정 행부터 시작하는 경우
108
+ const table2 = await ws.getDataTable({ headerRowIndex: 1 });
109
+
110
+ // 헤더 필터링
111
+ const table3 = await ws.getDataTable({
112
+ usableHeaderNameFn: (name) => !name.startsWith("_"),
113
+ });
114
+
115
+ // 2차원 배열 쓰기
116
+ await ws.setDataMatrix([
117
+ ["이름", "나이"],
118
+ ["김철수", 30],
119
+ ]);
120
+
121
+ // 레코드 배열 쓰기 (헤더 자동 생성)
122
+ await ws.setRecords([
123
+ { name: "김철수", age: 30 },
124
+ ]);
125
+
126
+ // 행 복사 (스타일 포함)
127
+ await ws.copyRow(0, 5);
128
+
129
+ // 삽입 복사 (기존 행 이동)
130
+ await ws.insertCopyRow(0, 3);
131
+
132
+ // 틀 고정 (2행부터 고정)
133
+ await ws.freezeAt({ r: 1, c: 0 });
134
+
135
+ // 이미지 삽입
136
+ await ws.addImage({
137
+ bytes: imageBytes,
138
+ ext: "png",
139
+ from: { r: 1, c: 1 },
140
+ to: { r: 5, c: 4 },
141
+ });
142
+ ```
143
+
144
+ ## `insertCopyRow` 병합 셀 처리
145
+
146
+ - 삽입 지점을 관통하는 다중행 병합은 자동으로 1행 확장됨
147
+ - 원본 행의 단일행 병합만 대상 행에 복사됨
@@ -0,0 +1,33 @@
1
+ # ExcelAddressPoint
2
+
3
+ 셀 좌표를 나타내는 인터페이스이다. 모든 좌표는 0 기반이다.
4
+
5
+ ```typescript
6
+ export interface ExcelAddressPoint {
7
+ r: number;
8
+ c: number;
9
+ }
10
+ ```
11
+
12
+ | Field | Type | Description |
13
+ |-------|------|-------------|
14
+ | `r` | `number` | 행 인덱스 (0 기반) |
15
+ | `c` | `number` | 열 인덱스 (0 기반) |
16
+
17
+ ## Related Types
18
+
19
+ ### `ExcelAddressRangePoint`
20
+
21
+ 셀 범위 좌표를 나타내는 인터페이스이다.
22
+
23
+ ```typescript
24
+ export interface ExcelAddressRangePoint {
25
+ s: ExcelAddressPoint;
26
+ e: ExcelAddressPoint;
27
+ }
28
+ ```
29
+
30
+ | Field | Type | Description |
31
+ |-------|------|-------------|
32
+ | `s` | `ExcelAddressPoint` | 시작 좌표 |
33
+ | `e` | `ExcelAddressPoint` | 끝 좌표 |
@@ -0,0 +1,57 @@
1
+ # ExcelStyleOptions
2
+
3
+ 셀 스타일 옵션 인터페이스이다. [`ExcelCell.setStyle()`](../core-classes/excel-cell.md)에서 사용한다.
4
+
5
+ ```typescript
6
+ export interface ExcelStyleOptions {
7
+ background?: string;
8
+ border?: ExcelBorderPosition[];
9
+ horizontalAlign?: ExcelHorizontalAlign;
10
+ verticalAlign?: ExcelVerticalAlign;
11
+ numberFormat?: ExcelNumberFormat;
12
+ numberFormatCode?: string;
13
+ }
14
+ ```
15
+
16
+ | Field | Type | Description |
17
+ |-------|------|-------------|
18
+ | `background` | `string \| undefined` | 배경색 (ARGB 형식, 8자리 16진수. 예: `"00FF0000"` = 빨강. alpha는 반전 값) |
19
+ | `border` | `ExcelBorderPosition[] \| undefined` | 테두리 위치 배열 |
20
+ | `horizontalAlign` | `ExcelHorizontalAlign \| undefined` | 가로 정렬 |
21
+ | `verticalAlign` | `ExcelVerticalAlign \| undefined` | 세로 정렬 |
22
+ | `numberFormat` | `ExcelNumberFormat \| undefined` | 숫자 형식 프리셋 |
23
+ | `numberFormatCode` | `string \| undefined` | 커스텀 Excel formatCode 문자열 (예: `"0.000000"`, `"#,##0.00"`, `"0.00%"`). `numberFormat`과 동시 지정 시 이 필드가 우선 적용된다 |
24
+
25
+ ## Related Types
26
+
27
+ ### `ExcelNumberFormat`
28
+
29
+ 숫자 형식 이름이다. `ExcelStyleOptions.numberFormat`과 [`ExcelUtils`](../utilities/excel-utils.md)의 변환 메서드에서 사용한다.
30
+
31
+ ```typescript
32
+ export type ExcelNumberFormat = "number" | "string" | "DateOnly" | "DateTime" | "Time";
33
+ ```
34
+
35
+ ### `ExcelBorderPosition`
36
+
37
+ 테두리 위치를 나타내는 타입이다.
38
+
39
+ ```typescript
40
+ export type ExcelBorderPosition = "left" | "right" | "top" | "bottom";
41
+ ```
42
+
43
+ ### `ExcelHorizontalAlign`
44
+
45
+ 가로 정렬을 나타내는 타입이다.
46
+
47
+ ```typescript
48
+ export type ExcelHorizontalAlign = "center" | "left" | "right";
49
+ ```
50
+
51
+ ### `ExcelVerticalAlign`
52
+
53
+ 세로 정렬을 나타내는 타입이다.
54
+
55
+ ```typescript
56
+ export type ExcelVerticalAlign = "center" | "top" | "bottom";
57
+ ```
@@ -0,0 +1,28 @@
1
+ # ExcelValueType
2
+
3
+ 셀에 저장할 수 있는 값의 타입이다.
4
+
5
+ ```typescript
6
+ export type ExcelValueType = number | string | DateOnly | DateTime | Time | boolean | undefined;
7
+ ```
8
+
9
+ `DateOnly`, `DateTime`, `Time`은 `@simplysm/core-common` 패키지에서 가져온다.
10
+
11
+ ## Related Types
12
+
13
+ ### `ExcelCellType`
14
+
15
+ Excel 셀 타입이다. XML의 `t` 속성에 대응한다.
16
+
17
+ ```typescript
18
+ export type ExcelCellType = "s" | "b" | "str" | "n" | "inlineStr" | "e";
19
+ ```
20
+
21
+ | Value | Description |
22
+ |-------|-------------|
23
+ | `"s"` | 공유 문자열 (SharedString) |
24
+ | `"b"` | boolean |
25
+ | `"str"` | 수식 결과 문자열 |
26
+ | `"n"` | 숫자 |
27
+ | `"inlineStr"` | 인라인 문자열 (서식 있는 텍스트) |
28
+ | `"e"` | 에러 |
@@ -0,0 +1,23 @@
1
+ # ExcelXmlContentTypeData
2
+
3
+ `[Content_Types].xml` 데이터 구조이다. 내부 구현에 사용된다.
4
+
5
+ ```typescript
6
+ export interface ExcelXmlContentTypeData {
7
+ Types: {
8
+ $: { xmlns: string };
9
+ Default: { $: { Extension: string; ContentType: string } }[];
10
+ Override: { $: { PartName: string; ContentType: string } }[];
11
+ };
12
+ }
13
+ ```
14
+
15
+ | Field | Type | Description |
16
+ |-------|------|-------------|
17
+ | `Types.$` | `{ xmlns: string }` | 네임스페이스 |
18
+ | `Types.Default` | `Array` | 확장자별 기본 콘텐트 타입 |
19
+ | `Types.Default[].$.Extension` | `string` | 파일 확장자 |
20
+ | `Types.Default[].$.ContentType` | `string` | MIME 타입 |
21
+ | `Types.Override` | `Array` | 파일별 오버라이드 콘텐트 타입 |
22
+ | `Types.Override[].$.PartName` | `string` | 파일 경로 |
23
+ | `Types.Override[].$.ContentType` | `string` | MIME 타입 |
@@ -0,0 +1,29 @@
1
+ # ExcelXmlDrawingData
2
+
3
+ `drawing*.xml` 데이터 구조이다. 이미지 앵커 정보를 포함한다. 내부 구현에 사용된다.
4
+
5
+ ```typescript
6
+ export interface ExcelXmlDrawingData {
7
+ wsDr: {
8
+ $: { "xmlns": string; "xmlns:a"?: string; "xmlns:r"?: string };
9
+ twoCellAnchor?: {
10
+ from?: { col: string[]; colOff?: string[]; row: string[]; rowOff?: string[] }[];
11
+ to?: { col: string[]; colOff?: string[]; row: string[]; rowOff?: string[] }[];
12
+ pic?: {
13
+ nvPicPr?: { cNvPr?: { $: { id: string; name: string; descr?: string } }[]; cNvPicPr?: Array<{ "a:picLocks"?: Array<{ $: { noChangeAspect?: string } }> }> }[];
14
+ blipFill?: { "a:blip"?: Array<{ $: { "r:embed": string } }>; "a:stretch"?: Array<{ "a:fillRect": unknown[] }> }[];
15
+ spPr?: { "a:xfrm"?: Array<{ "a:off"?: Array<{ $: { x: string; y: string } }>; "a:ext"?: Array<{ $: { cx: string; cy: string } }> }>; "a:prstGeom"?: Array<{ "$": { prst: string }; "a:avLst": unknown[] }> }[];
16
+ }[];
17
+ clientData?: unknown[];
18
+ }[];
19
+ };
20
+ }
21
+ ```
22
+
23
+ | Field | Type | Description |
24
+ |-------|------|-------------|
25
+ | `wsDr.$` | `object` | 네임스페이스 |
26
+ | `wsDr.twoCellAnchor` | `Array \| undefined` | 두 셀 사이에 앵커된 이미지 목록 |
27
+ | `twoCellAnchor.from` | `Array \| undefined` | 시작 위치 (행/열/오프셋) |
28
+ | `twoCellAnchor.to` | `Array \| undefined` | 끝 위치 (행/열/오프셋) |
29
+ | `twoCellAnchor.pic` | `Array \| undefined` | 이미지 정보 (blip 관계 ID 포함) |
@@ -0,0 +1,39 @@
1
+ # ExcelXmlRelationshipData
2
+
3
+ `*.rels` 파일 데이터 구조이다. 내부 구현에 사용된다.
4
+
5
+ ```typescript
6
+ export interface ExcelXmlRelationshipData {
7
+ Relationships: {
8
+ $: { xmlns: string };
9
+ Relationship?: ExcelRelationshipData[];
10
+ };
11
+ }
12
+ ```
13
+
14
+ | Field | Type | Description |
15
+ |-------|------|-------------|
16
+ | `Relationships.$` | `{ xmlns: string }` | 네임스페이스 |
17
+ | `Relationships.Relationship` | `ExcelRelationshipData[] \| undefined` | 관계 항목 배열 |
18
+
19
+ ## Related Types
20
+
21
+ ### `ExcelRelationshipData`
22
+
23
+ 개별 Relationship 엔트리 데이터이다.
24
+
25
+ ```typescript
26
+ export interface ExcelRelationshipData {
27
+ $: {
28
+ Id: string;
29
+ Target: string;
30
+ Type: string;
31
+ };
32
+ }
33
+ ```
34
+
35
+ | Field | Type | Description |
36
+ |-------|------|-------------|
37
+ | `$.Id` | `string` | 관계 ID (예: `"rId1"`) |
38
+ | `$.Target` | `string` | 대상 파일 경로 |
39
+ | `$.Type` | `string` | 관계 타입 URI |
@@ -0,0 +1,42 @@
1
+ # ExcelXmlSharedStringData
2
+
3
+ `sharedStrings.xml` 데이터 구조이다. 내부 구현에 사용된다.
4
+
5
+ ```typescript
6
+ export interface ExcelXmlSharedStringData {
7
+ sst: {
8
+ $: { xmlns: string };
9
+ si?: ExcelXmlSharedStringDataSi[];
10
+ };
11
+ }
12
+ ```
13
+
14
+ | Field | Type | Description |
15
+ |-------|------|-------------|
16
+ | `sst.$` | `{ xmlns: string }` | 네임스페이스 |
17
+ | `sst.si` | `ExcelXmlSharedStringDataSi[] \| undefined` | 공유 문자열 항목 배열 |
18
+
19
+ ## Related Types
20
+
21
+ ### `ExcelXmlSharedStringDataSi`
22
+
23
+ SharedString 개별 항목이다. discriminated union으로, `t` 키가 있으면 단순 텍스트, `r` 키가 있으면 서식 있는 텍스트(rich text)이다.
24
+
25
+ ```typescript
26
+ export type ExcelXmlSharedStringDataSi =
27
+ | { t: ExcelXmlSharedStringDataText }
28
+ | { r: { t: ExcelXmlSharedStringDataText }[] };
29
+ ```
30
+
31
+ | Variant | Discriminant | Description |
32
+ |---------|-------------|-------------|
33
+ | `{ t: ... }` | `t` 키 존재 | 단순 텍스트 |
34
+ | `{ r: ... }` | `r` 키 존재 | 서식 있는 텍스트 (run 배열) |
35
+
36
+ ### `ExcelXmlSharedStringDataText`
37
+
38
+ SharedString 텍스트 데이터이다. 단순 문자열 또는 공백 보존 속성이 있는 객체이다.
39
+
40
+ ```typescript
41
+ export type ExcelXmlSharedStringDataText = [string | { $: { space?: "preserve" }; _?: string }];
42
+ ```
@@ -0,0 +1,97 @@
1
+ # ExcelXmlStyleData
2
+
3
+ `styles.xml` 데이터 구조이다. 내부 구현에 사용된다.
4
+
5
+ ```typescript
6
+ export interface ExcelXmlStyleData {
7
+ styleSheet: {
8
+ $: { xmlns: string };
9
+ numFmts?: [{ $: { count: string }; numFmt?: { $: { numFmtId: string; formatCode: string } }[] }];
10
+ fonts: [{ $: { count: string }; font: {}[] }];
11
+ fills: [{ $: { count: string }; fill: ExcelXmlStyleDataFill[] }];
12
+ borders: [{ $: { count: string }; border: ExcelXmlStyleDataBorder[] }];
13
+ cellXfs: [{ $: { count: string }; xf: ExcelXmlStyleDataXf[] }];
14
+ };
15
+ }
16
+ ```
17
+
18
+ | Field | Type | Description |
19
+ |-------|------|-------------|
20
+ | `styleSheet.numFmts` | `Array \| undefined` | 커스텀 숫자 형식 목록 |
21
+ | `styleSheet.fonts` | `Array` | 폰트 목록 |
22
+ | `styleSheet.fills` | `Array` | 채우기 스타일 목록 |
23
+ | `styleSheet.borders` | `Array` | 테두리 스타일 목록 |
24
+ | `styleSheet.cellXfs` | `Array` | 셀 서식(xf) 목록 |
25
+
26
+ ## Related Types
27
+
28
+ ### `ExcelXmlStyleDataXf`
29
+
30
+ 셀 서식(xf) 데이터이다.
31
+
32
+ ```typescript
33
+ export interface ExcelXmlStyleDataXf {
34
+ $: {
35
+ numFmtId?: string;
36
+ fontId?: string;
37
+ fillId?: string;
38
+ borderId?: string;
39
+ xfId?: string;
40
+ applyNumberFormat?: string;
41
+ applyFont?: string;
42
+ applyAlignment?: string;
43
+ applyFill?: string;
44
+ applyBorder?: string;
45
+ };
46
+ alignment?: [{ $: { horizontal?: "center" | "left" | "right"; vertical?: "center" | "top" | "bottom" } }];
47
+ }
48
+ ```
49
+
50
+ | Field | Type | Description |
51
+ |-------|------|-------------|
52
+ | `$.numFmtId` | `string \| undefined` | 숫자 형식 ID |
53
+ | `$.fontId` | `string \| undefined` | 폰트 ID |
54
+ | `$.fillId` | `string \| undefined` | 채우기 ID |
55
+ | `$.borderId` | `string \| undefined` | 테두리 ID |
56
+ | `$.xfId` | `string \| undefined` | 부모 xf ID |
57
+ | `$.applyNumberFormat` | `string \| undefined` | 숫자 형식 적용 여부 |
58
+ | `$.applyFont` | `string \| undefined` | 폰트 적용 여부 |
59
+ | `$.applyAlignment` | `string \| undefined` | 정렬 적용 여부 |
60
+ | `$.applyFill` | `string \| undefined` | 채우기 적용 여부 |
61
+ | `$.applyBorder` | `string \| undefined` | 테두리 적용 여부 |
62
+ | `alignment` | `Array \| undefined` | 정렬 설정 (horizontal, vertical) |
63
+
64
+ ### `ExcelXmlStyleDataFill`
65
+
66
+ 채우기 스타일 데이터이다.
67
+
68
+ ```typescript
69
+ export interface ExcelXmlStyleDataFill {
70
+ patternFill: [{ $: { patternType: "none" | "solid" | "gray125" }; fgColor?: [{ $: { rgb: string } }] }];
71
+ }
72
+ ```
73
+
74
+ | Field | Type | Description |
75
+ |-------|------|-------------|
76
+ | `patternFill[0].$.patternType` | `"none" \| "solid" \| "gray125"` | 패턴 유형 |
77
+ | `patternFill[0].fgColor` | `[{ $: { rgb: string } }] \| undefined` | 전경색 (ARGB) |
78
+
79
+ ### `ExcelXmlStyleDataBorder`
80
+
81
+ 테두리 스타일 데이터이다. 각 방향은 선택적이며, `style`과 `color`를 가진다.
82
+
83
+ ```typescript
84
+ export interface ExcelXmlStyleDataBorder {
85
+ top?: [{ $: { style: "thin" | "medium" }; color?: [{ $: { rgb: string } }] }];
86
+ left?: [{ $: { style: "thin" | "medium" }; color?: [{ $: { rgb: string } }] }];
87
+ right?: [{ $: { style: "thin" | "medium" }; color?: [{ $: { rgb: string } }] }];
88
+ bottom?: [{ $: { style: "thin" | "medium" }; color?: [{ $: { rgb: string } }] }];
89
+ }
90
+ ```
91
+
92
+ | Field | Type | Description |
93
+ |-------|------|-------------|
94
+ | `top` | `Array \| undefined` | 상단 테두리 (`"thin"` 또는 `"medium"`) |
95
+ | `left` | `Array \| undefined` | 좌측 테두리 |
96
+ | `right` | `Array \| undefined` | 우측 테두리 |
97
+ | `bottom` | `Array \| undefined` | 하단 테두리 |
@@ -0,0 +1,22 @@
1
+ # ExcelXmlWorkbookData
2
+
3
+ `workbook.xml` 데이터 구조이다. 내부 구현에 사용된다.
4
+
5
+ ```typescript
6
+ export interface ExcelXmlWorkbookData {
7
+ workbook: {
8
+ $: { "xmlns": string; "xmlns:r"?: string };
9
+ bookViews?: [{ workbookView: [{}] }];
10
+ sheets?: [{ sheet: { $: { "name": string; "sheetId": string; "r:id": string } }[] }];
11
+ };
12
+ }
13
+ ```
14
+
15
+ | Field | Type | Description |
16
+ |-------|------|-------------|
17
+ | `workbook.$` | `object` | 네임스페이스 |
18
+ | `workbook.bookViews` | `Array \| undefined` | 워크북 뷰 설정 |
19
+ | `workbook.sheets` | `Array \| undefined` | 시트 목록 |
20
+ | `workbook.sheets[0].sheet[].$.name` | `string` | 시트 이름 |
21
+ | `workbook.sheets[0].sheet[].$.sheetId` | `string` | 시트 ID |
22
+ | `workbook.sheets[0].sheet[].$["r:id"]` | `string` | 관계 ID |
@@ -0,0 +1,68 @@
1
+ # ExcelXmlWorksheetData
2
+
3
+ `worksheet*.xml` 데이터 구조이다. 내부 구현에 사용된다.
4
+
5
+ ```typescript
6
+ export interface ExcelXmlWorksheetData {
7
+ worksheet: {
8
+ $: { "xmlns": string; "xmlns:r"?: string };
9
+ dimension?: [{ $: { ref: string } }];
10
+ sheetViews?: [{ sheetView: { $: { workbookViewId: string; zoomScale?: string }; pane?: [{ $: { xSplit?: string; ySplit?: string; topLeftCell?: string; activePane?: string; state?: string } }] }[] }];
11
+ sheetFormatPr?: [{ $: { defaultRowHeight: string } }];
12
+ cols?: [{ col: { $: { min: string; max: string; width?: string; bestFit?: string; customWidth?: string } }[] }];
13
+ sheetData: [{ row?: ExcelRowData[] }];
14
+ mergeCells?: [{ $: { count: string }; mergeCell: { $: { ref: string } }[] }];
15
+ drawing?: { $: { "r:id": string } }[];
16
+ };
17
+ }
18
+ ```
19
+
20
+ | Field | Type | Description |
21
+ |-------|------|-------------|
22
+ | `worksheet.dimension` | `Array \| undefined` | 데이터 범위 (예: `"A1:C10"`) |
23
+ | `worksheet.sheetViews` | `Array \| undefined` | 시트 뷰 설정 (줌, 틀 고정) |
24
+ | `worksheet.sheetFormatPr` | `Array \| undefined` | 기본 행 높이 |
25
+ | `worksheet.cols` | `Array \| undefined` | 열 설정 (너비 등) |
26
+ | `worksheet.sheetData` | `Array` | 행 데이터 |
27
+ | `worksheet.mergeCells` | `Array \| undefined` | 병합 셀 정보 |
28
+ | `worksheet.drawing` | `Array \| undefined` | 드로잉 관계 참조 |
29
+
30
+ ## Related Types
31
+
32
+ ### `ExcelRowData`
33
+
34
+ 행 XML 데이터이다.
35
+
36
+ ```typescript
37
+ export interface ExcelRowData {
38
+ $: { r: string };
39
+ c?: ExcelCellData[];
40
+ }
41
+ ```
42
+
43
+ | Field | Type | Description |
44
+ |-------|------|-------------|
45
+ | `$.r` | `string` | 행 주소 (1 기반, 예: `"1"`, `"10"`) |
46
+ | `c` | `ExcelCellData[] \| undefined` | 셀 데이터 배열 |
47
+
48
+ ### `ExcelCellData`
49
+
50
+ 셀 XML 데이터이다.
51
+
52
+ ```typescript
53
+ export interface ExcelCellData {
54
+ $: { r: string; s?: string; t?: ExcelCellType };
55
+ v?: [string];
56
+ f?: [string];
57
+ is?: { t?: (string | { _?: string })[] }[];
58
+ }
59
+ ```
60
+
61
+ | Field | Type | Description |
62
+ |-------|------|-------------|
63
+ | `$.r` | `string` | 셀 주소 (예: `"A1"`, `"B3"`) |
64
+ | `$.s` | `string \| undefined` | 스타일 ID |
65
+ | `$.t` | `ExcelCellType \| undefined` | 셀 타입 |
66
+ | `v` | `[string] \| undefined` | 셀 값 |
67
+ | `f` | `[string] \| undefined` | 수식 |
68
+ | `is` | `Array \| undefined` | 인라인 문자열 데이터 |
@@ -0,0 +1,15 @@
1
+ # ExcelXml
2
+
3
+ XML 처리 클래스가 구현하는 인터페이스이다. `xml/` 디렉터리의 내부 클래스들이 이를 구현한다. 외부에서 직접 사용하지 않는다.
4
+
5
+ ```typescript
6
+ export interface ExcelXml {
7
+ readonly data: unknown;
8
+ cleanup(): void;
9
+ }
10
+ ```
11
+
12
+ | Field | Type | Description |
13
+ |-------|------|-------------|
14
+ | `data` | `unknown` | XML 파싱된 데이터 (read-only) |
15
+ | `cleanup` | `() => void` | `ZipCache.toBytes()` 직전에 호출되어 직렬화 전 데이터를 정리한다 |