LinusU / LinusU/ts-readme-generator

types not considered?

Open
#8 2 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
JavaScript
Stars
21
Forks
4
PR merge metrics
No merged PRs in 30d

Description

Hi @LinusU

very cool project, I'm considering using it on my library [kalkulationsbogen](https://github.com/fwilhe2/kalkulationsbogen).

When trying it out I noticed a few things that don't seem to work for my use-case as of now.

Given this type definitions file

```typescript
export declare type spreadsheetInput = row[];
export declare type row = cell[];
export declare type cell = complexCell | formulaCell | string;
export declare type complexCell = cellWithValue & cellWithRange;
export declare type formulaCell = cellWithFunction & cellWithRange;
declare type cellWithValue = {
value: string;
valueType?: valueType;
};
declare type cellWithFunction = {
functionName: string;
arguments: string[] | string;
};
declare type cellWithRange = {
range?: string;
};
export declare type valueType = "string" | "float" | "date" | "time" | "currency" | "percentage";
export declare type spreadsheetOutput = string;
/**
* Build a spreadsheet from data
* @param spreadsheet list of lists of cells
* @returns string Flat OpenDocument Spreadsheet document
*/
export declare function buildSpreadsheet(spreadsheet: spreadsheetInput): Promise;
declare type addressAbsolute = "none" | "column" | "row" | "columnAndRow";
/**
* Return "A1" style cell address given one-indexed column and row number
* @param column one-indexed column number
* @param row one-indexed row number
* @param absolute specify if column, row, both or none are prefixed with '$' to indicate they are absolute
* @returns String like 'A1' or 'C7'
*/
export declare function A1(column: number, row: number, absolute?: addressAbsolute): string;
export declare function columnIndex(i: number): string;
export {};
```

I get this api description

```markdown
### `buildSpreadsheet(spreadsheet)`

- `spreadsheet` (`spreadsheetInput`, required) - list of lists of cells
- returns `Promise` - string Flat OpenDocument Spreadsheet document

Build a spreadsheet from data

### `A1(column, row[, absolute])`

- `column` (`number`, required) - one-indexed column number
- `row` (`number`, required) - one-indexed row number
- `absolute` (`addressAbsolute`, optional) - specify if column, row, both or none are prefixed with '$' to indicate they are absolute
- returns `string` - String like 'A1' or 'C7'

Return "A1" style cell address given one-indexed column and row number

### `columnIndex(i)`

- `i` (`number`, required)
- returns `string`
```
Question: Are the types omitted on purpose or is this not yet implemented?

Also I'd appreciate if the name/path of the `readme.md` file and `index.d.ts` could be configured on the command line so they don't need to be in the root dir.

I might be able to contribute parts of those features if that's ok and I find the time to do that.

Best,
Florian

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by inspecting the command-line entry point and the handling of index.d.ts and readme.md. Check how TypeScript declarations become API documentation, then determine how both requested behaviors should be represented in the CLI. Done means generated documentation includes the relevant types and the README and declaration paths can be configured instead of being fixed at the repository root.

Written by the indexing model from the issue text.

Assessment

Tech stack
typescript
Domain
documentation, tooling
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
28/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.