@orizm/cli 2.1.2 → 2.2.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cli.cjs +66 -53
- package/dist/cli.cjs.map +1 -1
- package/dist/cli.js +63 -50
- package/dist/cli.js.map +1 -1
- package/dist/config/index.cjs +1 -1
- package/dist/config/index.cjs.map +1 -1
- package/dist/config/index.js +1 -1
- package/dist/config/index.js.map +1 -1
- package/package.json +5 -3
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/config/index.ts","../../src/config/functions.ts"],"sourcesContent":["export * from \"./functions.js\";\nexport type { OrizmConfigDef as OrizmConfig } from \"@orizm/common/config-validator\";\n","import { TableColumnDef } from \"@orizm/common/config-validator\";\nimport {\n CommonAuthorityRulesDefinition,\n CommonBooleanColumnDefinition,\n CommonBucketDefinition,\n CommonJsonColumnDefinition,\n CommonModuleColumnDefinition,\n CommonNumberColumnDefinition,\n CommonOrizmConfig,\n CommonReferenceColumnDefinition,\n CommonStorageColumnDefinition,\n CommonStringColumnDefinition,\n CommonTableDefinition,\n CommonTableModuleDefinition,\n} from \"../types\";\n\ntype DefineConfigInput = {\n tables?: { [tableName: string]: TableInput };\n tableModules?: { [moduleName: string]: TableModuleInput };\n buckets?: { [bucketName: string]: BucketInput };\n authorities?: CommonAuthorityRulesDefinition;\n};\n\nexport function defineConfig(config: DefineConfigInput): CommonOrizmConfig {\n const {\n tables = {},\n tableModules = {},\n buckets = {},\n authorities = [],\n } = config;\n return {\n tables: Object.entries(tables).map(([tableName, tableInput]) =>\n table(tableName, tableInput),\n ),\n tableModules: Object.entries(tableModules).map(\n ([moduleName, moduleInput]) => module(moduleName, moduleInput),\n ),\n buckets: Object.entries(buckets).map(([bucketName, bucketInput]) =>\n bucket(bucketName, bucketInput),\n ),\n authorities,\n };\n}\n\ntype TableInput = Omit<\n CommonTableDefinition,\n \"name\" | \"columns\" | \"formOptions\"\n> & {\n columns: { [columnName: string]: Column };\n formOptions?: {\n submissionColumns: { [columnName: string]: Column };\n };\n};\n\ntype TableModuleInput = Omit<\n CommonTableModuleDefinition,\n \"name\" | \"columns\"\n> & {\n columns: { [columnName: string]: Column };\n};\n\ntype Column =\n | StringColumn\n | Omit<CommonNumberColumnDefinition, \"name\">\n | Omit<CommonBooleanColumnDefinition, \"name\">\n | Omit<CommonJsonColumnDefinition, \"name\">\n | Omit<CommonReferenceColumnDefinition, \"name\">\n | Omit<CommonModuleColumnDefinition, \"name\">\n | Omit<CommonStorageColumnDefinition, \"name\">;\n\ntype StringColumn = Omit<CommonStringColumnDefinition, \"name\" | \"pattern\"> & {\n pattern?: string | RegExp;\n};\n\nfunction table(name: string, input: TableInput): CommonTableDefinition {\n const { columns, indexes, formOptions, ...rest } = input;\n\n const definition: CommonTableDefinition = {\n ...rest,\n name,\n columns: Object.entries(columns).map(([columnName, columnInput]) =>\n column(columnName, columnInput),\n ),\n };\n\n if (indexes) {\n definition.indexes = indexes.map((index) => ({\n ...index,\n columns: index.columns.map((columnName) => columnName),\n }));\n }\n\n if (formOptions) {\n definition.formOptions = {\n submissionColumns: Object.entries(formOptions.submissionColumns).map(\n ([columnName, columnInput]) => column(columnName, columnInput),\n ),\n };\n }\n\n return definition;\n}\n\nfunction module(\n name: string,\n input: TableModuleInput,\n): CommonTableModuleDefinition {\n return {\n ...input,\n name,\n columns: Object.entries(input.columns).map(([columnName, columnInput]) =>\n column(columnName, columnInput),\n ),\n };\n}\n\nfunction column(name: string, input: Column): TableColumnDef {\n if (isStringColumn(input)) {\n const { pattern, ...rest } = input;\n const definition: CommonStringColumnDefinition = { ...rest, name };\n if (pattern) {\n definition.pattern = pattern instanceof RegExp ? pattern.source : pattern;\n }\n return definition;\n }\n\n return {\n ...input,\n name,\n };\n}\n\nfunction isStringColumn(column: Column): column is StringColumn {\n return column.type === \"string\";\n}\n\ntype BucketInput = Omit<CommonBucketDefinition, \"name\" | \"accessControl\"> & {\n accessControl: CommonBucketDefinition[\"accessControl\"];\n};\n\nfunction bucket(name: string, input: BucketInput): CommonBucketDefinition {\n return {\n ...input,\n name,\n };\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;;;ACuBO,SAAS,aAAa,QAA8C;AACzE,QAAM;AAAA,IACJ,SAAS,CAAC;AAAA,IACV,eAAe,CAAC;AAAA,IAChB,UAAU,CAAC;AAAA,IACX,cAAc,CAAC;AAAA,EACjB,IAAI;AACJ,SAAO;AAAA,IACL,QAAQ,OAAO,QAAQ,MAAM,EAAE;AAAA,MAAI,CAAC,CAAC,WAAW,UAAU,MACxD,MAAM,WAAW,UAAU;AAAA,IAC7B;AAAA,IACA,cAAc,OAAO,QAAQ,YAAY,EAAE;AAAA,MACzC,CAAC,CAAC,YAAY,WAAW,MAAMA,QAAO,YAAY,WAAW;AAAA,IAC/D;AAAA,IACA,SAAS,OAAO,QAAQ,OAAO,EAAE;AAAA,MAAI,CAAC,CAAC,YAAY,WAAW,MAC5D,OAAO,YAAY,WAAW;AAAA,IAChC;AAAA,IACA;AAAA,EACF;AACF;AAgCA,SAAS,MAAM,MAAc,OAA0C;AACrE,QAAM,EAAE,SAAS,SAAS,aAAa,GAAG,KAAK,IAAI;AAEnD,QAAM,aAAoC;AAAA,IACxC,GAAG;AAAA,IACH;AAAA,IACA,SAAS,OAAO,QAAQ,OAAO,EAAE;AAAA,MAAI,CAAC,CAAC,YAAY,WAAW,MAC5D,OAAO,YAAY,WAAW;AAAA,IAChC;AAAA,EACF;AAEA,MAAI,SAAS;AACX,eAAW,UAAU,QAAQ,IAAI,CAAC,WAAW;AAAA,MAC3C,GAAG;AAAA,MACH,SAAS,MAAM,QAAQ,IAAI,CAAC,eAAe,UAAU;AAAA,IACvD,EAAE;AAAA,EACJ;AAEA,MAAI,aAAa;AACf,eAAW,cAAc;AAAA,MACvB,mBAAmB,OAAO,QAAQ,YAAY,iBAAiB,EAAE;AAAA,QAC/D,CAAC,CAAC,YAAY,WAAW,MAAM,OAAO,YAAY,WAAW;AAAA,MAC/D;AAAA,IACF;AAAA,EACF;AAEA,SAAO;AACT;AAEA,SAASA,QACP,MACA,OAC6B;AAC7B,SAAO;AAAA,IACL,GAAG;AAAA,IACH;AAAA,IACA,SAAS,OAAO,QAAQ,MAAM,OAAO,EAAE;AAAA,MAAI,CAAC,CAAC,YAAY,WAAW,MAClE,OAAO,YAAY,WAAW;AAAA,IAChC;AAAA,EACF;AACF;AAEA,SAAS,OAAO,MAAc,OAA+B;AAC3D,MAAI,eAAe,KAAK,GAAG;AACzB,UAAM,EAAE,SAAS,GAAG,KAAK,IAAI;AAC7B,UAAM,aAA2C,EAAE,GAAG,MAAM,KAAK;AACjE,QAAI,
|
|
1
|
+
{"version":3,"sources":["../../src/config/index.ts","../../src/config/functions.ts"],"sourcesContent":["export * from \"./functions.js\";\nexport type { OrizmConfigDef as OrizmConfig } from \"@orizm/common/config-validator\";\n","import { TableColumnDef } from \"@orizm/common/config-validator\";\nimport {\n CommonAuthorityRulesDefinition,\n CommonBooleanColumnDefinition,\n CommonBucketDefinition,\n CommonJsonColumnDefinition,\n CommonModuleColumnDefinition,\n CommonNumberColumnDefinition,\n CommonOrizmConfig,\n CommonReferenceColumnDefinition,\n CommonStorageColumnDefinition,\n CommonStringColumnDefinition,\n CommonTableDefinition,\n CommonTableModuleDefinition,\n} from \"../types\";\n\ntype DefineConfigInput = {\n tables?: { [tableName: string]: TableInput };\n tableModules?: { [moduleName: string]: TableModuleInput };\n buckets?: { [bucketName: string]: BucketInput };\n authorities?: CommonAuthorityRulesDefinition;\n};\n\nexport function defineConfig(config: DefineConfigInput): CommonOrizmConfig {\n const {\n tables = {},\n tableModules = {},\n buckets = {},\n authorities = [],\n } = config;\n return {\n tables: Object.entries(tables).map(([tableName, tableInput]) =>\n table(tableName, tableInput),\n ),\n tableModules: Object.entries(tableModules).map(\n ([moduleName, moduleInput]) => module(moduleName, moduleInput),\n ),\n buckets: Object.entries(buckets).map(([bucketName, bucketInput]) =>\n bucket(bucketName, bucketInput),\n ),\n authorities,\n };\n}\n\ntype TableInput = Omit<\n CommonTableDefinition,\n \"name\" | \"columns\" | \"formOptions\"\n> & {\n columns: { [columnName: string]: Column };\n formOptions?: {\n submissionColumns: { [columnName: string]: Column };\n };\n};\n\ntype TableModuleInput = Omit<\n CommonTableModuleDefinition,\n \"name\" | \"columns\"\n> & {\n columns: { [columnName: string]: Column };\n};\n\ntype Column =\n | StringColumn\n | Omit<CommonNumberColumnDefinition, \"name\">\n | Omit<CommonBooleanColumnDefinition, \"name\">\n | Omit<CommonJsonColumnDefinition, \"name\">\n | Omit<CommonReferenceColumnDefinition, \"name\">\n | Omit<CommonModuleColumnDefinition, \"name\">\n | Omit<CommonStorageColumnDefinition, \"name\">;\n\ntype StringColumn = Omit<CommonStringColumnDefinition, \"name\" | \"pattern\"> & {\n pattern?: string | RegExp;\n};\n\nfunction table(name: string, input: TableInput): CommonTableDefinition {\n const { columns, indexes, formOptions, ...rest } = input;\n\n const definition: CommonTableDefinition = {\n ...rest,\n name,\n columns: Object.entries(columns).map(([columnName, columnInput]) =>\n column(columnName, columnInput),\n ),\n };\n\n if (indexes) {\n definition.indexes = indexes.map((index) => ({\n ...index,\n columns: index.columns.map((columnName) => columnName),\n }));\n }\n\n if (formOptions) {\n definition.formOptions = {\n submissionColumns: Object.entries(formOptions.submissionColumns).map(\n ([columnName, columnInput]) => column(columnName, columnInput),\n ),\n };\n }\n\n return definition;\n}\n\nfunction module(\n name: string,\n input: TableModuleInput,\n): CommonTableModuleDefinition {\n return {\n ...input,\n name,\n columns: Object.entries(input.columns).map(([columnName, columnInput]) =>\n column(columnName, columnInput),\n ),\n };\n}\n\nfunction column(name: string, input: Column): TableColumnDef {\n if (isStringColumn(input)) {\n const { pattern, ...rest } = input;\n const definition: CommonStringColumnDefinition = { ...rest, name };\n if (pattern != null) {\n definition.pattern = pattern instanceof RegExp ? pattern.source : pattern;\n }\n return definition;\n }\n\n return {\n ...input,\n name,\n };\n}\n\nfunction isStringColumn(column: Column): column is StringColumn {\n return column.type === \"string\";\n}\n\ntype BucketInput = Omit<CommonBucketDefinition, \"name\" | \"accessControl\"> & {\n accessControl: CommonBucketDefinition[\"accessControl\"];\n};\n\nfunction bucket(name: string, input: BucketInput): CommonBucketDefinition {\n return {\n ...input,\n name,\n };\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;;;ACuBO,SAAS,aAAa,QAA8C;AACzE,QAAM;AAAA,IACJ,SAAS,CAAC;AAAA,IACV,eAAe,CAAC;AAAA,IAChB,UAAU,CAAC;AAAA,IACX,cAAc,CAAC;AAAA,EACjB,IAAI;AACJ,SAAO;AAAA,IACL,QAAQ,OAAO,QAAQ,MAAM,EAAE;AAAA,MAAI,CAAC,CAAC,WAAW,UAAU,MACxD,MAAM,WAAW,UAAU;AAAA,IAC7B;AAAA,IACA,cAAc,OAAO,QAAQ,YAAY,EAAE;AAAA,MACzC,CAAC,CAAC,YAAY,WAAW,MAAMA,QAAO,YAAY,WAAW;AAAA,IAC/D;AAAA,IACA,SAAS,OAAO,QAAQ,OAAO,EAAE;AAAA,MAAI,CAAC,CAAC,YAAY,WAAW,MAC5D,OAAO,YAAY,WAAW;AAAA,IAChC;AAAA,IACA;AAAA,EACF;AACF;AAgCA,SAAS,MAAM,MAAc,OAA0C;AACrE,QAAM,EAAE,SAAS,SAAS,aAAa,GAAG,KAAK,IAAI;AAEnD,QAAM,aAAoC;AAAA,IACxC,GAAG;AAAA,IACH;AAAA,IACA,SAAS,OAAO,QAAQ,OAAO,EAAE;AAAA,MAAI,CAAC,CAAC,YAAY,WAAW,MAC5D,OAAO,YAAY,WAAW;AAAA,IAChC;AAAA,EACF;AAEA,MAAI,SAAS;AACX,eAAW,UAAU,QAAQ,IAAI,CAAC,WAAW;AAAA,MAC3C,GAAG;AAAA,MACH,SAAS,MAAM,QAAQ,IAAI,CAAC,eAAe,UAAU;AAAA,IACvD,EAAE;AAAA,EACJ;AAEA,MAAI,aAAa;AACf,eAAW,cAAc;AAAA,MACvB,mBAAmB,OAAO,QAAQ,YAAY,iBAAiB,EAAE;AAAA,QAC/D,CAAC,CAAC,YAAY,WAAW,MAAM,OAAO,YAAY,WAAW;AAAA,MAC/D;AAAA,IACF;AAAA,EACF;AAEA,SAAO;AACT;AAEA,SAASA,QACP,MACA,OAC6B;AAC7B,SAAO;AAAA,IACL,GAAG;AAAA,IACH;AAAA,IACA,SAAS,OAAO,QAAQ,MAAM,OAAO,EAAE;AAAA,MAAI,CAAC,CAAC,YAAY,WAAW,MAClE,OAAO,YAAY,WAAW;AAAA,IAChC;AAAA,EACF;AACF;AAEA,SAAS,OAAO,MAAc,OAA+B;AAC3D,MAAI,eAAe,KAAK,GAAG;AACzB,UAAM,EAAE,SAAS,GAAG,KAAK,IAAI;AAC7B,UAAM,aAA2C,EAAE,GAAG,MAAM,KAAK;AACjE,QAAI,WAAW,MAAM;AACnB,iBAAW,UAAU,mBAAmB,SAAS,QAAQ,SAAS;AAAA,IACpE;AACA,WAAO;AAAA,EACT;AAEA,SAAO;AAAA,IACL,GAAG;AAAA,IACH;AAAA,EACF;AACF;AAEA,SAAS,eAAeC,SAAwC;AAC9D,SAAOA,QAAO,SAAS;AACzB;AAMA,SAAS,OAAO,MAAc,OAA4C;AACxE,SAAO;AAAA,IACL,GAAG;AAAA,IACH;AAAA,EACF;AACF;","names":["module","column"]}
|
package/dist/config/index.js
CHANGED
|
@@ -56,7 +56,7 @@ function column(name, input) {
|
|
|
56
56
|
if (isStringColumn(input)) {
|
|
57
57
|
const { pattern, ...rest } = input;
|
|
58
58
|
const definition = { ...rest, name };
|
|
59
|
-
if (pattern) {
|
|
59
|
+
if (pattern != null) {
|
|
60
60
|
definition.pattern = pattern instanceof RegExp ? pattern.source : pattern;
|
|
61
61
|
}
|
|
62
62
|
return definition;
|
package/dist/config/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/config/functions.ts"],"sourcesContent":["import { TableColumnDef } from \"@orizm/common/config-validator\";\nimport {\n CommonAuthorityRulesDefinition,\n CommonBooleanColumnDefinition,\n CommonBucketDefinition,\n CommonJsonColumnDefinition,\n CommonModuleColumnDefinition,\n CommonNumberColumnDefinition,\n CommonOrizmConfig,\n CommonReferenceColumnDefinition,\n CommonStorageColumnDefinition,\n CommonStringColumnDefinition,\n CommonTableDefinition,\n CommonTableModuleDefinition,\n} from \"../types\";\n\ntype DefineConfigInput = {\n tables?: { [tableName: string]: TableInput };\n tableModules?: { [moduleName: string]: TableModuleInput };\n buckets?: { [bucketName: string]: BucketInput };\n authorities?: CommonAuthorityRulesDefinition;\n};\n\nexport function defineConfig(config: DefineConfigInput): CommonOrizmConfig {\n const {\n tables = {},\n tableModules = {},\n buckets = {},\n authorities = [],\n } = config;\n return {\n tables: Object.entries(tables).map(([tableName, tableInput]) =>\n table(tableName, tableInput),\n ),\n tableModules: Object.entries(tableModules).map(\n ([moduleName, moduleInput]) => module(moduleName, moduleInput),\n ),\n buckets: Object.entries(buckets).map(([bucketName, bucketInput]) =>\n bucket(bucketName, bucketInput),\n ),\n authorities,\n };\n}\n\ntype TableInput = Omit<\n CommonTableDefinition,\n \"name\" | \"columns\" | \"formOptions\"\n> & {\n columns: { [columnName: string]: Column };\n formOptions?: {\n submissionColumns: { [columnName: string]: Column };\n };\n};\n\ntype TableModuleInput = Omit<\n CommonTableModuleDefinition,\n \"name\" | \"columns\"\n> & {\n columns: { [columnName: string]: Column };\n};\n\ntype Column =\n | StringColumn\n | Omit<CommonNumberColumnDefinition, \"name\">\n | Omit<CommonBooleanColumnDefinition, \"name\">\n | Omit<CommonJsonColumnDefinition, \"name\">\n | Omit<CommonReferenceColumnDefinition, \"name\">\n | Omit<CommonModuleColumnDefinition, \"name\">\n | Omit<CommonStorageColumnDefinition, \"name\">;\n\ntype StringColumn = Omit<CommonStringColumnDefinition, \"name\" | \"pattern\"> & {\n pattern?: string | RegExp;\n};\n\nfunction table(name: string, input: TableInput): CommonTableDefinition {\n const { columns, indexes, formOptions, ...rest } = input;\n\n const definition: CommonTableDefinition = {\n ...rest,\n name,\n columns: Object.entries(columns).map(([columnName, columnInput]) =>\n column(columnName, columnInput),\n ),\n };\n\n if (indexes) {\n definition.indexes = indexes.map((index) => ({\n ...index,\n columns: index.columns.map((columnName) => columnName),\n }));\n }\n\n if (formOptions) {\n definition.formOptions = {\n submissionColumns: Object.entries(formOptions.submissionColumns).map(\n ([columnName, columnInput]) => column(columnName, columnInput),\n ),\n };\n }\n\n return definition;\n}\n\nfunction module(\n name: string,\n input: TableModuleInput,\n): CommonTableModuleDefinition {\n return {\n ...input,\n name,\n columns: Object.entries(input.columns).map(([columnName, columnInput]) =>\n column(columnName, columnInput),\n ),\n };\n}\n\nfunction column(name: string, input: Column): TableColumnDef {\n if (isStringColumn(input)) {\n const { pattern, ...rest } = input;\n const definition: CommonStringColumnDefinition = { ...rest, name };\n if (pattern) {\n definition.pattern = pattern instanceof RegExp ? pattern.source : pattern;\n }\n return definition;\n }\n\n return {\n ...input,\n name,\n };\n}\n\nfunction isStringColumn(column: Column): column is StringColumn {\n return column.type === \"string\";\n}\n\ntype BucketInput = Omit<CommonBucketDefinition, \"name\" | \"accessControl\"> & {\n accessControl: CommonBucketDefinition[\"accessControl\"];\n};\n\nfunction bucket(name: string, input: BucketInput): CommonBucketDefinition {\n return {\n ...input,\n name,\n };\n}\n"],"mappings":";AAuBO,SAAS,aAAa,QAA8C;AACzE,QAAM;AAAA,IACJ,SAAS,CAAC;AAAA,IACV,eAAe,CAAC;AAAA,IAChB,UAAU,CAAC;AAAA,IACX,cAAc,CAAC;AAAA,EACjB,IAAI;AACJ,SAAO;AAAA,IACL,QAAQ,OAAO,QAAQ,MAAM,EAAE;AAAA,MAAI,CAAC,CAAC,WAAW,UAAU,MACxD,MAAM,WAAW,UAAU;AAAA,IAC7B;AAAA,IACA,cAAc,OAAO,QAAQ,YAAY,EAAE;AAAA,MACzC,CAAC,CAAC,YAAY,WAAW,MAAM,OAAO,YAAY,WAAW;AAAA,IAC/D;AAAA,IACA,SAAS,OAAO,QAAQ,OAAO,EAAE;AAAA,MAAI,CAAC,CAAC,YAAY,WAAW,MAC5D,OAAO,YAAY,WAAW;AAAA,IAChC;AAAA,IACA;AAAA,EACF;AACF;AAgCA,SAAS,MAAM,MAAc,OAA0C;AACrE,QAAM,EAAE,SAAS,SAAS,aAAa,GAAG,KAAK,IAAI;AAEnD,QAAM,aAAoC;AAAA,IACxC,GAAG;AAAA,IACH;AAAA,IACA,SAAS,OAAO,QAAQ,OAAO,EAAE;AAAA,MAAI,CAAC,CAAC,YAAY,WAAW,MAC5D,OAAO,YAAY,WAAW;AAAA,IAChC;AAAA,EACF;AAEA,MAAI,SAAS;AACX,eAAW,UAAU,QAAQ,IAAI,CAAC,WAAW;AAAA,MAC3C,GAAG;AAAA,MACH,SAAS,MAAM,QAAQ,IAAI,CAAC,eAAe,UAAU;AAAA,IACvD,EAAE;AAAA,EACJ;AAEA,MAAI,aAAa;AACf,eAAW,cAAc;AAAA,MACvB,mBAAmB,OAAO,QAAQ,YAAY,iBAAiB,EAAE;AAAA,QAC/D,CAAC,CAAC,YAAY,WAAW,MAAM,OAAO,YAAY,WAAW;AAAA,MAC/D;AAAA,IACF;AAAA,EACF;AAEA,SAAO;AACT;AAEA,SAAS,OACP,MACA,OAC6B;AAC7B,SAAO;AAAA,IACL,GAAG;AAAA,IACH;AAAA,IACA,SAAS,OAAO,QAAQ,MAAM,OAAO,EAAE;AAAA,MAAI,CAAC,CAAC,YAAY,WAAW,MAClE,OAAO,YAAY,WAAW;AAAA,IAChC;AAAA,EACF;AACF;AAEA,SAAS,OAAO,MAAc,OAA+B;AAC3D,MAAI,eAAe,KAAK,GAAG;AACzB,UAAM,EAAE,SAAS,GAAG,KAAK,IAAI;AAC7B,UAAM,aAA2C,EAAE,GAAG,MAAM,KAAK;AACjE,QAAI,
|
|
1
|
+
{"version":3,"sources":["../../src/config/functions.ts"],"sourcesContent":["import { TableColumnDef } from \"@orizm/common/config-validator\";\nimport {\n CommonAuthorityRulesDefinition,\n CommonBooleanColumnDefinition,\n CommonBucketDefinition,\n CommonJsonColumnDefinition,\n CommonModuleColumnDefinition,\n CommonNumberColumnDefinition,\n CommonOrizmConfig,\n CommonReferenceColumnDefinition,\n CommonStorageColumnDefinition,\n CommonStringColumnDefinition,\n CommonTableDefinition,\n CommonTableModuleDefinition,\n} from \"../types\";\n\ntype DefineConfigInput = {\n tables?: { [tableName: string]: TableInput };\n tableModules?: { [moduleName: string]: TableModuleInput };\n buckets?: { [bucketName: string]: BucketInput };\n authorities?: CommonAuthorityRulesDefinition;\n};\n\nexport function defineConfig(config: DefineConfigInput): CommonOrizmConfig {\n const {\n tables = {},\n tableModules = {},\n buckets = {},\n authorities = [],\n } = config;\n return {\n tables: Object.entries(tables).map(([tableName, tableInput]) =>\n table(tableName, tableInput),\n ),\n tableModules: Object.entries(tableModules).map(\n ([moduleName, moduleInput]) => module(moduleName, moduleInput),\n ),\n buckets: Object.entries(buckets).map(([bucketName, bucketInput]) =>\n bucket(bucketName, bucketInput),\n ),\n authorities,\n };\n}\n\ntype TableInput = Omit<\n CommonTableDefinition,\n \"name\" | \"columns\" | \"formOptions\"\n> & {\n columns: { [columnName: string]: Column };\n formOptions?: {\n submissionColumns: { [columnName: string]: Column };\n };\n};\n\ntype TableModuleInput = Omit<\n CommonTableModuleDefinition,\n \"name\" | \"columns\"\n> & {\n columns: { [columnName: string]: Column };\n};\n\ntype Column =\n | StringColumn\n | Omit<CommonNumberColumnDefinition, \"name\">\n | Omit<CommonBooleanColumnDefinition, \"name\">\n | Omit<CommonJsonColumnDefinition, \"name\">\n | Omit<CommonReferenceColumnDefinition, \"name\">\n | Omit<CommonModuleColumnDefinition, \"name\">\n | Omit<CommonStorageColumnDefinition, \"name\">;\n\ntype StringColumn = Omit<CommonStringColumnDefinition, \"name\" | \"pattern\"> & {\n pattern?: string | RegExp;\n};\n\nfunction table(name: string, input: TableInput): CommonTableDefinition {\n const { columns, indexes, formOptions, ...rest } = input;\n\n const definition: CommonTableDefinition = {\n ...rest,\n name,\n columns: Object.entries(columns).map(([columnName, columnInput]) =>\n column(columnName, columnInput),\n ),\n };\n\n if (indexes) {\n definition.indexes = indexes.map((index) => ({\n ...index,\n columns: index.columns.map((columnName) => columnName),\n }));\n }\n\n if (formOptions) {\n definition.formOptions = {\n submissionColumns: Object.entries(formOptions.submissionColumns).map(\n ([columnName, columnInput]) => column(columnName, columnInput),\n ),\n };\n }\n\n return definition;\n}\n\nfunction module(\n name: string,\n input: TableModuleInput,\n): CommonTableModuleDefinition {\n return {\n ...input,\n name,\n columns: Object.entries(input.columns).map(([columnName, columnInput]) =>\n column(columnName, columnInput),\n ),\n };\n}\n\nfunction column(name: string, input: Column): TableColumnDef {\n if (isStringColumn(input)) {\n const { pattern, ...rest } = input;\n const definition: CommonStringColumnDefinition = { ...rest, name };\n if (pattern != null) {\n definition.pattern = pattern instanceof RegExp ? pattern.source : pattern;\n }\n return definition;\n }\n\n return {\n ...input,\n name,\n };\n}\n\nfunction isStringColumn(column: Column): column is StringColumn {\n return column.type === \"string\";\n}\n\ntype BucketInput = Omit<CommonBucketDefinition, \"name\" | \"accessControl\"> & {\n accessControl: CommonBucketDefinition[\"accessControl\"];\n};\n\nfunction bucket(name: string, input: BucketInput): CommonBucketDefinition {\n return {\n ...input,\n name,\n };\n}\n"],"mappings":";AAuBO,SAAS,aAAa,QAA8C;AACzE,QAAM;AAAA,IACJ,SAAS,CAAC;AAAA,IACV,eAAe,CAAC;AAAA,IAChB,UAAU,CAAC;AAAA,IACX,cAAc,CAAC;AAAA,EACjB,IAAI;AACJ,SAAO;AAAA,IACL,QAAQ,OAAO,QAAQ,MAAM,EAAE;AAAA,MAAI,CAAC,CAAC,WAAW,UAAU,MACxD,MAAM,WAAW,UAAU;AAAA,IAC7B;AAAA,IACA,cAAc,OAAO,QAAQ,YAAY,EAAE;AAAA,MACzC,CAAC,CAAC,YAAY,WAAW,MAAM,OAAO,YAAY,WAAW;AAAA,IAC/D;AAAA,IACA,SAAS,OAAO,QAAQ,OAAO,EAAE;AAAA,MAAI,CAAC,CAAC,YAAY,WAAW,MAC5D,OAAO,YAAY,WAAW;AAAA,IAChC;AAAA,IACA;AAAA,EACF;AACF;AAgCA,SAAS,MAAM,MAAc,OAA0C;AACrE,QAAM,EAAE,SAAS,SAAS,aAAa,GAAG,KAAK,IAAI;AAEnD,QAAM,aAAoC;AAAA,IACxC,GAAG;AAAA,IACH;AAAA,IACA,SAAS,OAAO,QAAQ,OAAO,EAAE;AAAA,MAAI,CAAC,CAAC,YAAY,WAAW,MAC5D,OAAO,YAAY,WAAW;AAAA,IAChC;AAAA,EACF;AAEA,MAAI,SAAS;AACX,eAAW,UAAU,QAAQ,IAAI,CAAC,WAAW;AAAA,MAC3C,GAAG;AAAA,MACH,SAAS,MAAM,QAAQ,IAAI,CAAC,eAAe,UAAU;AAAA,IACvD,EAAE;AAAA,EACJ;AAEA,MAAI,aAAa;AACf,eAAW,cAAc;AAAA,MACvB,mBAAmB,OAAO,QAAQ,YAAY,iBAAiB,EAAE;AAAA,QAC/D,CAAC,CAAC,YAAY,WAAW,MAAM,OAAO,YAAY,WAAW;AAAA,MAC/D;AAAA,IACF;AAAA,EACF;AAEA,SAAO;AACT;AAEA,SAAS,OACP,MACA,OAC6B;AAC7B,SAAO;AAAA,IACL,GAAG;AAAA,IACH;AAAA,IACA,SAAS,OAAO,QAAQ,MAAM,OAAO,EAAE;AAAA,MAAI,CAAC,CAAC,YAAY,WAAW,MAClE,OAAO,YAAY,WAAW;AAAA,IAChC;AAAA,EACF;AACF;AAEA,SAAS,OAAO,MAAc,OAA+B;AAC3D,MAAI,eAAe,KAAK,GAAG;AACzB,UAAM,EAAE,SAAS,GAAG,KAAK,IAAI;AAC7B,UAAM,aAA2C,EAAE,GAAG,MAAM,KAAK;AACjE,QAAI,WAAW,MAAM;AACnB,iBAAW,UAAU,mBAAmB,SAAS,QAAQ,SAAS;AAAA,IACpE;AACA,WAAO;AAAA,EACT;AAEA,SAAO;AAAA,IACL,GAAG;AAAA,IACH;AAAA,EACF;AACF;AAEA,SAAS,eAAeA,SAAwC;AAC9D,SAAOA,QAAO,SAAS;AACzB;AAMA,SAAS,OAAO,MAAc,OAA4C;AACxE,SAAO;AAAA,IACL,GAAG;AAAA,IACH;AAAA,EACF;AACF;","names":["column"]}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@orizm/cli",
|
|
3
|
-
"version": "2.1
|
|
3
|
+
"version": "2.2.1",
|
|
4
4
|
"description": "Orizm CLI",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"repository": {
|
|
@@ -28,20 +28,22 @@
|
|
|
28
28
|
"handlebars": "4.7.7",
|
|
29
29
|
"prettier": "3.4.1",
|
|
30
30
|
"valibot": "1.1.0",
|
|
31
|
-
"@orizm/common": "2.
|
|
31
|
+
"@orizm/common": "2.3.0"
|
|
32
32
|
},
|
|
33
33
|
"bin": {
|
|
34
34
|
"orizm": "bin/index.js"
|
|
35
35
|
},
|
|
36
36
|
"devDependencies": {
|
|
37
37
|
"@types/cli-color": "2.0.2",
|
|
38
|
-
"@orizm/
|
|
38
|
+
"@orizm/eslint-config": "0.0.0",
|
|
39
|
+
"@orizm/internal-shared": "0.0.3",
|
|
39
40
|
"@orizm/package-configs": "0.0.0"
|
|
40
41
|
},
|
|
41
42
|
"license": "Apache-2.0",
|
|
42
43
|
"scripts": {
|
|
43
44
|
"dev": "tsup --watch",
|
|
44
45
|
"build": "tsup",
|
|
46
|
+
"lint": "eslint .",
|
|
45
47
|
"typecheck": "tsc --noEmit",
|
|
46
48
|
"typecheck:watch": "tsc --noEmit --watch",
|
|
47
49
|
"test": "vitest run",
|